ShopEazydevelopers
API referenceStorefront APICatalogue

Open booking slots for a service

Credentials
  • Store key
Scopes
catalog:read
GET
/v1/store/products/{slug}/availability

Open slots, already netted off what is reserved (capacity-aware), from now (plus the service's lead time) to its booking horizon (default 30 days, at most 120). Mirrors the hosted storefront's slot picker.

Returns { enabled: false } for an item that is not a service, or a service that takes no online bookings: show an enquiry form instead.

from and to narrow the window (inclusive). They never widen it past the service's own: a from before now plus lead time, or a to past the horizon, is clamped. A non-numeric value, or from after to, is 400 invalid_parameter.

Old path, deprecated, sunset 1 Feb 2027: GET /v1/products/{slug}/availability.

Authorization

storeKey catalog:read
headerAuthorizationBearer <sez_pub_... (publishable) or sez_sk_... (secret)>

A per-store key from the console. Publishable keys are browser-safe; secret keys are server-only.

Scope: catalog:read

Path Parameters

slug*string

The item's store-unique slug.

Query Parameters

from?integer

Earliest slot start to return, epoch milliseconds.

Range0 <= value
to?integer

Latest slot start to return, epoch milliseconds.

Range0 <= value

Response Body

The availability.

application/json
  1. response
data*|
Example Request
curl -X GET 'https://api.shopeazy.co/v1/store/products/<slug>/availability' \  -H 'Authorization: Bearer sez_pub_...'
Example Response
{  "data": {    "enabled": true,    "timezone": "Africa/Johannesburg",    "durationMins": 60,    "capacityPerSlot": 2,    "days": [      {        "date": "2026-10-26",        "slots": [          {            "at": 1793012400000,            "remaining": 2          },          {            "at": 1793016000000,            "remaining": 2          },          {            "at": 1793019600000,            "remaining": 2          }        ]      },      {        "date": "2026-10-27",        "slots": [          {            "at": 1793084400000,            "remaining": 2          },          {            "at": 1793088000000,            "remaining": 2          },          {            "at": 1793091600000,            "remaining": 2          }        ]      },      {        "date": "2026-10-28",        "slots": [          {            "at": 1793170800000,            "remaining": 2          },          {            "at": 1793174400000,            "remaining": 2          },          {            "at": 1793178000000,            "remaining": 2          }        ]      }    ]  }}