Get a pass window
One window, with sellable and holders resolved for it. A window is resolved within the project: a window id that belongs to another project, another team, or to nothing at all is a 404 RESOURCE_NOT_FOUND, so an id's existence never leaks.
| Field | Type | Notes |
|---|---|---|
| starts_at | string | ISO 8601, UTC. Store this. |
| ends_at | string | ISO 8601, UTC. |
| timezone | string | The IANA zone the plan's schedule was authored in. Render window times in this, never in UTC. |
| local_range | string | The same window as a person reads it, already in timezone: what the dashboard, the portal and the bot all print. |
| duration_minutes | integer | Derived from the two instants. |
| status | string | scheduled, open, closed or canceled. Set by the scheduler as the window's start and end pass; canceled only by an explicit cancel. |
| source | string | generated from the plan's slots, or manual when placed by hand. Manual windows survive a schedule rebuild; generated ones are regenerated. |
| sellable | boolean | Whether a buyer could purchase this window right now: the plan's sales cutoff, resolved for the whole page in one query rather than per row. |
| holders | integer | How many purchases currently hold the window. |
Why both UTC and a local range. A pass schedule is authored in the creator's zone and rendered in it everywhere else in the product. Returning only UTC would leave every consumer converting, and getting it wrong across a daylight-saving boundary. starts_at is for storing and comparing; local_range is for showing.
Request
- Base URL: https://api.subscriby.net
- URL: https://api.subscriby.net/v1/projects/{project}/pass-windows/{window}
- Auth: HTTP bearer
Path parameters
The project, resolved by the route binder.
The window, resolved within the project with its holder count and sale flag.
Response
The window.
Example response
{
"data": {
"id": "3d5a8c72-b016-4e94-8fa7-61c209d4e738",
"plan_id": "c4e82f16-93a7-4d5b-b81c-6e0f27a94d3b",
"plan_name": "Match Day Pass",
"starts_at": "2026-09-20T13:00:00+00:00",
"ends_at": "2026-09-20T16:00:00+00:00",
"timezone": "America/New_York",
"local_range": "Sun 20 Sep 2026, 09:00 – 12:00 EDT",
"duration_minutes": 180,
"status": "scheduled",
"source": "generated",
"sellable": true,
"holders": 38
}
}Changes
No recorded changes to this operation across all 1 revision of this API.