POST /v1/scoreSlot detail
Opening a slot in the Sealect operator view fires /v1/score. Score, status, confidence, hard gates and data freshness sit on the slot, next to the booking, not on a separate chart.
Sealect is a separate booking and operations platform for water-sports schools: bookings, recurring slots, staff, activities, payments. Its operator workflow is a natural environment to exercise Goable's public suitability API in a real scheduling loop. Status: planned, not yet live.
Sealect and Goable are separate products built by the same founder. Sealect is used as a reference integration to test Goable's public API in a real booking workflow. It receives no preferential production API access, no special scoring logic and no separate service-level terms. Being founder-linked is stated plainly here so a reader never mistakes it for an independent, arm's-length customer validation.
Sealect Business runs water-sports schools: manual and online bookings, activities and offers, recurring slots, team roles, Stripe payments, CRM and analytics. Sealect.app is the separate consumer surface for discovering and booking water activities, with geolocated search.
That makes the relationship with Goable straightforward. Sealect owns booking, operator workflow, and customer and slot data. Goable provides weather-to-suitability decision support and score provenance. An operator uses it to weigh whether to open, hold, move or propose an alternative for a slot, without Goable becoming the booking system.
Sealect manages the exact operational moments in which weather changes a decision: an operator creates activities and slots, reviews the coming week, communicates changes, and records what occurred. That gives Goable a place to test whether score context is understandable and actionable in a real scheduling workflow, without turning Goable into a booking system. The test is comprehension and fit, not a performance claim.
The first phase wires three surfaces that map onto objects Sealect already has: the slot, the weekly calendar, and the session close. Recovery and alternatives are deliberately deferred to a later phase.
POST /v1/scoreOpening a slot in the Sealect operator view fires /v1/score. Score, status, confidence, hard gates and data freshness sit on the slot, next to the booking, not on a separate chart.
POST /v1/score/seriesHourly series across the next seven days for the week view: a discreet colour overlay per slot with hour-level drill-down. Cached aggressively, since the planner is the most-revisited surface.
POST /v1/score/:id/outcomeWhen a session closes, the tenant POSTs back with a reason_category, not free text. That structured cause is what lets calibration separate a weather decision from a staff, payment or demand cancellation.
Sealect manages the exact objects weather acts on: activities, recurring slots, staff, bookings, cancellations, outcomes.
Score, series and structured outcomes sit inside a real operator surface, not a demo harness.
An operator can read the verdict, the confidence and the reason a session did or did not run.
Sealect remains the workflow product. Goable never becomes the booking system.
One founder-linked integration is not an independent measure of forecast skill or booking conversion.
Suitability is decision support. The operator owns every go or no-go call.
Whether local outcomes improve the curve is measured against a holdout, not assumed.
A reference integration validates the workflow, not the market.
A cancellation can come from weather, staff, payment, equipment, customer or demand. So "ran, cancelled, no-show" is not enough to calibrate suitability. At close, Sealect records a structured reason_category. Only weather and safety outcomes count as evidence for or against the forecast score; the rest are recorded as business facts and excluded from calibration.
An operator opens a slot. /v1/score returns a verdict, confidence and hard gates, audit-logged.
They act on it: the activity runs as planned, is moved, or is cancelled.
At close, the tenant records what happened and, crucially, why: weather, operational, demand, safety.
Only weather and safety outcomes feed the local curve, and only after holdout, validation and rollback checks pass.
Daily, where operators record a structured outcome. Ingestion is for quality checks and monitoring, not an automatic nightly refit.
Evidence-gated. A candidate update is measured against a holdout baseline and is promoted only after validation and rollback checks. It can be rejected or rolled back.
Outcomes are kept one year by default; longer only under a written retention schedule. A batch later found mislabelled can be recalled (voided) so it stops influencing calibration, without a destructive delete.
Sealect calls the same public /v1 endpoints, with the same scoring logic and the same production gates, as any external customer. There is no internal API and no preferential cell.
Same plan limits and the same service commitments offered to comparable booking-platform customers. The two teams may collaborate on test environments, implementation feedback and issue reproduction; that is a support relationship, not a service privilege.
If deployed in production, Sealect uses the public plan and usage model applicable to comparable booking-platform customers. Any pilot work is separately scoped and does not change production scoring or availability.
Because the same founder builds both, rough edges surface in days: latency, an awkward field, a confusing verdict, a provider that failed. The engine evolves to that feedback, without special-casing Sealect.
/v1/recommend-spot is deferred on purpose. Sealect works with individual schools and their offers, not a shared, verified catalogue of operational alternatives, so proposing a nearby option risks suggesting a competitor, an unverified location or unreal availability. Where availability, catalogue coverage and operator rules permit, a later phase may surface a suitable alternative slot, activity or location that the same operator already controls.
Sealect is one booking workflow. Any booking platform can integrate Goable the same way, on the same public API, and hold it to the same discipline.