List offerings
GET
/offerings
const url = 'https://quikstik-core.fly.dev/offerings?limit=50';const options = { method: 'GET', headers: { 'x-tenant-id': '2489E9AD-2EE2-8E00-8EC9-32D5F69181C0', Authorization: 'Bearer <token>' }};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://quikstik-core.fly.dev/offerings?limit=50' \ --header 'Authorization: Bearer <token>' \ --header 'x-tenant-id: 2489E9AD-2EE2-8E00-8EC9-32D5F69181C0'Returns a minimal list of offerings visible to the caller.
Notes:
- This is a contract skeleton. Filtering, publication rules, and channel visibility are TBD.
- Offerings are modeled broadly to allow time-based rentals, participant-based experiences, and traditional SKU commerce without forcing a single vertical.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Header Parameters
Section titled “Header Parameters”x-tenant-id
required
string format: uuid
Tenant identifier (UUID).
Authn/authz semantics are intentionally TBD for this contract slice; this header exists to keep the contract explicitly multi-tenant from day 0.
Query Parameters
Section titled “Query Parameters”cursor
string
Opaque pagination cursor (TBD).
limit
integer
Page size (TBD).
Responses
Section titled “Responses”Offerings page
Media typeapplication/json
object
items
required
Array<object>
object
offering_id
required
string format: uuid
catalog_product_id
Tenant-defined stable product identifier (e.g. Island Time v1: T1, T2, R1…).
This contract does not enumerate tenant-specific values.
string
display_name
required
Presentation-oriented name (not a stable identifier).
string
kind
Offering kind discriminator (vocabulary only). Examples: experience, rental, sku.
Semantics and allowed values are TBD.
string
next_cursor
Opaque pagination cursor (TBD).
string
Example generated
{ "items": [ { "offering_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "catalog_product_id": "example", "display_name": "example", "kind": "example" } ], "next_cursor": "example"}