Normalized observation API
A common model for public booking schedules.
Standardize offered dates and starts, booking horizons, posted prices, public inventory states, changes, and source lineage across supported booking systems.
One contract for comparable questions.
The paid product will map approved provider-native fields into a stable Fron Research model. Raw source meaning is retained. Ambiguous or incomplete fields stay unknown.
| Question | Normalized answer |
|---|---|
| What was offered online? | Place, offering, service date, start time, duration, and the exact party configuration used for the query. |
| How far ahead was the public schedule open? |
|
| How much time remained before a start? |
|
| What price was displayed? | Decimal amount, currency, price basis, and separate tax and fee inclusion fields. |
| What public inventory state was returned? | An approved state and state basis, with remaining units only when the provider explicitly supports that meaning. |
| What changed? | Baseline, unchanged, changed, or comparison unknown, with the prior comparable record and changed field list. |
ScheduleObservation v1.
A normalized row represents one source, observation time, service date, offering, requested party configuration, and bookable start. The same contract can support JSON, CSV, Parquet, webhooks, scheduled files, and research tables.
Design contract, not a live paid API. The field names below are defined. Commercial publication still requires an approved source and field allowlist, a proof-bound normalizer, and an isolated product read plane.
| Group | Selected fields | Meaning | Boundary |
|---|---|---|---|
| Source | source.providersource.sourceKeysource.providerNativeId | Provider and approved provider-native identity. | Native IDs are not assumed to be unique businesses or physical places. |
| Observation | observation.observedAtobservation.publicBookingHorizonDaysobservation.unknownReasons | Collection time, proven booking horizon, record state, freshness, and unknown causes. | A failed or partial observation does not become zero or unavailable. |
| Offering and slot | offering.offeringKeyslot.startsAtUtcslot.observationToStartMinutesslot.lastObservedAvailableLeadTimeMinutes | Normalized product and time fields for longitudinal comparison. | Lead time refers to our observation relative to the service start, not the customer booking event. |
| Price | price.amountprice.currencyprice.basisprice.includesFees | Displayed public price with basis and charge treatment kept separate. | Price is not realized revenue or proof of a transaction. |
| Public inventory | publicInventory.statepublicInventory.stateBasispublicInventory.remainingUnitspublicInventory.pressureIndicator | Provider-returned state and an optional, separately versioned public-surface indicator. | Pressure is not demand, capacity, occupancy, utilization, bookings, or revenue. |
| Lineage | lineage.lineageIdlineage.derivationVersionlineage.normalizerVersion | Opaque source evidence pointer and pinned transformation versions. | Every normalized record remains reproducible against approved evidence. |
Normalization without invented certainty.
Fron Research defines and versions the common fields. Provider-specific mappings prove how each field was derived. The model preserves differences that should not be flattened.
Changing row grain, enum meaning, field names, or null semantics requires a new major schema version.
Approved source fields and provider entity types remain attached to the common model.
Null means unknown. It never silently means zero, unavailable, or not offered.
API reads, webhooks, and cache misses can only read the product cache. They cannot trigger a provider request.
Free technical sample
Inspect current coverage metadata.
This static sample documents source-qualified provider coverage for PlaceFull, PartyWirks, Recras, and Funbutler. It is not a sample of the normalized schedule observation contract.
Generated 2026-08-09. Every measure retains its native entity type, evidence boundary, source field, and qualification.
Paid product design
Define the first API you would buy.
Specify the decision, provider or cohort, refresh requirement, history window, and delivery format. Qualified requests will determine the first commercially released observation surface.
Founding self-service plans are being tested from $149 per month. No payment is taken here.