This is the support view for every public server operation, including preview operations. Every row is generated from the API contract itself, so a new operation cannot appear in the API without appearing here exactly once.
Use the machine-readable JSON for release automation. Use OpenAPI 3.1 for client generation. Each operation links to its workflow guide. When a row changes support state, the changelog records the release that moved it.
Reading the matrix
- Stable classifies the operation identity and schema as a first-class,
generated source contract. It does not by itself claim a deployment or package
release. Use each REST/SDK lane’s
liveorRCevidence for artifact availability; an operation with no live lane remains a candidate and must not be inferred from an older released version. Evidence is contract-revision specific: finding the same operation ID in an older package does not mean that package implements the request, response, enum, or error contract displayed in the current row. Routes absent from the matrix are not registered public server contracts. - Operation support is not field-level backporting. A
liveSDK lane says that operation exists in the verified artifact; compare the pinned package signature with the current schema for fields added later. Specifically, every0.8.0SDK hascreatePerformanceGroup, but its typed create request omits the newer RESTinclusionModefield. Use REST/raw request forflexible_datesuntil a typed release adds it. - Auth states secret-key access and the exact
mse_capability alternatives for the 26 operations that deliberately accept a browser manage token. - Schemas are named request and primary success schemas.
no bodyis an explicit contract, not missing documentation. - Reliability distinguishes transient read/header-replay retries from single-attempt mutations and shows only the rate budgets runtime enforces.
- Side effects name documented webhook events and durable audit surfaces. “No public side effect declared” does not exclude metrics, traces, caches, or internal diagnostic logging.
- Expand Error contract for the exact operation status/code set.
Health
| Operation | Auth | Schemas | Reliability and errors | Side effects | REST and SDK source |
|---|---|---|---|---|---|
getReadinessGET /health/readystable | None | no body → 200 ReadinessReport | transient-read; readiness 30/60sError contract429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
Charts
| Operation | Auth | Schemas | Reliability and errors | Side effects | REST and SDK source |
|---|---|---|---|---|---|
listChartsGET /v1/chartsstable | Secret key only | no body → 200 ChartPage | transient-read; no published operation budgetError contract401 bad_key, 404 workspace_not_found_or_disabled, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
createChartPOST /v1/chartsstable | Secret key only | ChartCreateRequest → 201 ChartEnvelope | exact-header-replay; no published operation budgetError contract400 name_required|invalid_idempotency_key, 401 bad_key, 403 forbidden, 409 idempotency_conflict|idempotency_in_progress, 422 workspace_not_found_or_disabled|invalid_chart, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveChartGET /v1/charts/{chartId}stable | Secret key only | no body → 200 ChartDocument | transient-read; no published operation budgetError contract401 bad_key, 404 not_found, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
updateChartPUT /v1/charts/{chartId}stable | Secret key only | ChartUpdateRequest → 200 ChartSaveEnvelope | single-attempt; no published operation budgetError contract400 expectedUpdatedAt_required, 401 bad_key, 403 forbidden|edit_not_allowed|feature_policy_violation, 404 not_found|chart_not_found, 409 conflict|draft_snapshot_missing|draft_snapshot_invalid|safe_mode_violation|published_snapshot_missing|published_snapshot_invalid, 413 chart_too_large, 422 invalid_chart, 500, 503 maintenance_mode | audit: chart-semantic-audit | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
deleteChartDELETE /v1/charts/{chartId}stable | Secret key only | no body → 200 DeleteChartResult | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden, 404 not_found, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
copyChartPOST /v1/charts/{chartId}/duplicatestable | Secret key only | ChartCopyRequest → 201 ChartEnvelope | exact-header-replay; no published operation budgetError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden, 404 not_found, 409 idempotency_conflict|idempotency_in_progress, 422 workspace_not_found_or_disabled, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
archiveChartPOST /v1/charts/{chartId}/archivestable | Secret key only | no body → 200 ChartEnvelope | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden, 404 not_found, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
unarchiveChartPOST /v1/charts/{chartId}/unarchivestable | Secret key only | no body → 200 ChartEnvelope | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden, 404 not_found, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
publishChartPOST /v1/charts/{chartId}/publishstable | Secret key only | no body → 200 PublishChartResult | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden, 404 not_found, 409 review_required|conflict, 422 nothing_to_publish|invalid_chart, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
createPanoramaManifestJobPOST /v1/charts/{chartId}/panorama-manifestsstable | Secret key only | PanoramaManifestCreateRequest → 202 PanoramaManifestCreateResult | single-attempt; panorama-manifest-create 10/86400sError contract401 bad_key, 403 forbidden|module_not_enabled, 404 chart_not_found, 409 chart_empty|conflict, 413 manifest_too_large, 422 invalid_request|manifest_invalid|attachments_required|attachments_unreferenced, 429 rate_limited, 500, 503 queue_unavailable|maintenance_mode | No public side effect declared | REST: RCNode: RCPython: RCPHP: RCJava: RCGo: RCRuby: RC.NET: RC |
retrievePanoramaManifestJobGET /v1/charts/{chartId}/panorama-manifests/{jobId}stable | Secret key only | no body → 200 PanoramaManifestStatusResult | transient-read; no published operation budgetError contract401 bad_key, 404 chart_not_found|not_found, 500 | No public side effect declared | REST: RCNode: RCPython: RCPHP: RCJava: RCGo: RCRuby: RC.NET: RC |
Templates
| Operation | Auth | Schemas | Reliability and errors | Side effects | REST and SDK source |
|---|---|---|---|---|---|
instantiateTemplatePOST /v1/templates/{templateId}/instantiatestable | Secret key only | TemplateInstantiateRequest → 201 ChartEnvelope | exact-header-replay; no published operation budgetError contract400 invalid_request|invalid_idempotency_key, 401 bad_key, 403 forbidden, 404 template_not_found, 409 template_version_mismatch|idempotency_conflict|idempotency_in_progress, 413 payload_too_large, 422 invalid_version|invalid_chart|unsafe_chart_asset|workspace_not_found_or_disabled, 500, 503 template_artifact_unavailable|template_integrity_error|maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
Events
| Operation | Auth | Schemas | Reliability and errors | Side effects | REST and SDK source |
|---|---|---|---|---|---|
listEventsGET /v1/eventsstable | Secret key only | no body → 200 EventPage | transient-read; no published operation budgetError contract401 bad_key, 404 workspace_not_found_or_disabled, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
createEventPOST /v1/eventsstable | Secret key only | EventCreateRequest → 201 EventEnvelope | exact-header-replay; no published operation budgetError contract400 chartId_required|invalid_idempotency_key, 401 bad_key, 402 insufficient_credits, 403 forbidden, 404 chart_not_found, 409 event_exists|idempotency_conflict|idempotency_in_progress, 422 invalid_currency|invalid_slug|invalid_region|chart_not_published|workspace_not_found_or_disabled|invalid_description|invalid_ends_at|invalid_timezone|invalid_locale|ends_before_starts|invalid_external_ref|invalid_event_inventory, 500, 503 maintenance_mode | webhook: event.created | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
copyEventPOST /v1/events/{eventKey}/duplicatestable | Secret key only | EventCopyRequest → 201 EventEnvelope | exact-header-replay; no published operation budgetError contract400 invalid_idempotency_key, 401 bad_key, 402 insufficient_credits, 403 forbidden|mode_mismatch, 404 not_found, 409 event_exists|idempotency_conflict|idempotency_in_progress, 422 invalid_name|invalid_slug|invalid_starts_at|invalid_copy_blocks|invalid_copy_channels|chart_unavailable|workspace_not_found_or_disabled|invalid_event_inventory|inventory_limit_exceeded, 500, 503 maintenance_mode | webhook: event.created | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveEventGET /v1/events/{eventKey}stable | Secret key only | no body → 200 EventDetail | transient-read; no published operation budgetError contract401 bad_key, 403 mode_mismatch, 404 not_found, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveEventConfigurationBindingGET /v1/events/{eventKey}/event-configurationstable | Secret key only | no body → 200 EventConfigurationBinding | transient-read; no published operation budgetError contract401 bad_key, 404 not_found|version_not_found, 409 configuration_inventory_state_conflict|configuration_inventory_seat_conflict, 500, 503 configuration_artifact_unavailable|configuration_artifact_integrity_error|configuration_inventory_state_invalid|configuration_inventory_state_conflict | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
updateEventConfigurationBindingPUT /v1/events/{eventKey}/event-configurationstable | Secret key only | EventConfigurationBindingUpdateRequest → 200 EventConfigurationBinding | single-attempt; no published operation budgetError contract401 bad_key, 403 module_not_enabled, 404 not_found|version_not_found, 409 event_not_editable|configuration_binding_conflict|version_not_published|event_chart_provenance_missing|incompatible_configuration|configuration_binding_invalid|configuration_inventory_state_conflict|configuration_inventory_seat_conflict, 422 invalid_request, 500, 503 configuration_artifact_unavailable|configuration_artifact_integrity_error|event_chart_unavailable|configuration_inventory_state_invalid|configuration_inventory_state_conflict|configuration_inventory_commit_pending|maintenance_mode | webhook: seat.blocked, seat.released; audit: event-configuration-binding-audit, event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
updateEventPATCH /v1/events/{eventKey}stable | Secret key only | EventUpdateRequest → 200 EventEnvelope | single-attempt; no published operation budgetError contract400 nothing_to_update, 401 bad_key, 403 mode_mismatch, 404 not_found|chart_unavailable, 409 performance_group_locked|season_event_locked, 422 invalid_section_states|unknown_section|invalid_section_state|invalid_currency|invalid_description|invalid_ends_at|invalid_timezone|invalid_locale|ends_before_starts, 500, 503 maintenance_mode | audit: event-log | REST: RCNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
deleteEventDELETE /v1/events/{eventKey}stable | Secret key only | no body → 200 Ok | single-attempt; no published operation budgetError contract401 bad_key, 403 mode_mismatch, 404 not_found, 409 performance_group_locked|season_event_locked, 500, 503 maintenance_mode | No public side effect declared | REST: RCNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
updateEventPosterPUT /v1/events/{eventKey}/posterstable | Secret key only | BinaryImage → 200 EventEnvelope | single-attempt; no published operation budgetError contract400 empty_body, 401 bad_key, 403 mode_mismatch|forbidden, 404 not_found, 413 image_too_large, 415 unsupported_image, 422 image_dimensions_unsupported, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
deleteEventPosterDELETE /v1/events/{eventKey}/posterstable | Secret key only | no body → 200 EventEnvelope | single-attempt; no published operation budgetError contract401 bad_key, 403 mode_mismatch|forbidden, 404 not_found|no_poster, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
updateEventChartPOST /v1/events/{eventKey}/update-chartstable | Secret key only | EventChartUpdateRequest → 200 EventChartUpdateResult | single-attempt; no published operation budgetError contract401 bad_key, 403 mode_mismatch, 404 not_found|chart_not_found|chart_unavailable, 409 event_not_mutable|event_configuration_bound|channel_assignment_would_drop|season_inventory_locked|seats_would_vanish|order_edit_in_progress, 500, 503 maintenance_mode | audit: event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
closeEventPOST /v1/events/{eventKey}/closestable | Secret key only | no body → 200 SalesAliasResult | single-attempt; no published operation budgetError contract401 bad_key, 403 mode_mismatch, 404 not_found, 409 event_not_mutable|invalid_sales_transition|sales_revision_conflict, 500, 503 maintenance_mode | audit: sales-transition-audit | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
reopenEventPOST /v1/events/{eventKey}/reopenstable | Secret key only | no body → 200 SalesAliasResult | single-attempt; no published operation budgetError contract401 bad_key, 403 mode_mismatch, 404 not_found, 409 event_not_mutable|invalid_sales_transition|sales_not_ready|sales_revision_conflict, 500, 503 maintenance_mode | audit: sales-transition-audit | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
archiveEventPOST /v1/events/{eventKey}/archivestable | Secret key only | no body → 200 ArchiveEventResult | single-attempt; no published operation budgetError contract401 bad_key, 403 mode_mismatch, 404 not_found, 409 event_not_mutable|performance_group_locked|season_event_locked, 500, 503 maintenance_mode | No public side effect declared | REST: RCNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
unarchiveEventPOST /v1/events/{eventKey}/unarchivestable | Secret key only | no body → 200 UnarchiveEventResult | single-attempt; no published operation budgetError contract401 bad_key, 403 mode_mismatch, 404 not_found, 409 event_not_archived|sales_revision_conflict, 500, 503 maintenance_mode | audit: sales-transition-audit | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
listTicketReleasesGET /v1/events/{eventKey}/releasesstable | Secret key only | no body → 200 TicketReleaseList | transient-read; no published operation budgetError contract401 bad_key, 403 mode_mismatch, 404 not_found, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
updateTicketReleasesPUT /v1/events/{eventKey}/releasesstable | Secret key only | TicketReleaseReplaceRequest → 200 TicketReleaseList | single-attempt; no published operation budgetError contract401 bad_key, 403 mode_mismatch, 404 not_found, 422 invalid_request|unknown_field|invalid_releases|too_many_releases|invalid_release|invalid_release_id|duplicate_release_id|invalid_release_name|invalid_release_category|unknown_release_category|release_category_has_tiers|invalid_release_price|invalid_previous_price|invalid_release_quota|invalid_release_window|invalid_release_action|action_url_not_allowed|action_url_required|invalid_action_url, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
closeTicketReleasePOST /v1/events/{eventKey}/releases/{releaseId}/closestable | Secret key only | no body → 200 TicketReleaseList | single-attempt; no published operation budgetError contract401 bad_key, 403 mode_mismatch, 404 not_found|release_not_found, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
Inventory
| Operation | Auth | Schemas | Reliability and errors | Side effects | REST and SDK source |
|---|---|---|---|---|---|
holdObjectsPOST /v1/events/{eventKey}/holdstable | Secret key only | HoldRequest → 201 HoldResponse | single-attempt; server-inventory 600/60sError contract400 selections_required, 401 bad_key, 403 mode_mismatch|channel_access_denied, 404 not_found, 409 event_closed|conflict, 422 hold_quantity_exceeded|invalid_selection, 429 rate_limited, 500, 503 maintenance_mode | webhook: hold.created, seat.released; audit: event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
extendHoldPOST /v1/events/{eventKey}/extendstable | Secret key only | ExtendHoldRequest → 200 ExtendHoldResult | single-attempt; server-inventory 600/60sError contract400 holdId_required, 401 bad_key, 403 mode_mismatch|channel_access_denied, 404 not_found, 409 cannot_extend|order_edit_in_progress, 429 rate_limited, 500, 503 maintenance_mode | webhook: hold.extended; audit: event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
holdBestAvailablePOST /v1/events/{eventKey}/best-availablestable | Secret key only | BestAvailableRequest → 200 BestAvailableHoldResponse | single-attempt; server-inventory 600/60sError contract400 qty_required|invalid_zone, 401 bad_key, 403 mode_mismatch|channel_access_denied, 404 not_found|chart_unavailable, 409 event_closed|conflict, 422 unknown_zone|invalid_selection, 429 rate_limited, 500, 503 maintenance_mode | webhook: hold.created; audit: event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
blockBestAvailablePOST /v1/events/{eventKey}/best-available-blockstable | Secret key only | BestAvailableBlockRequest → 200 BestAvailableBlockResponse | single-attempt; server-inventory 600/60sError contract400 qty_required|invalid_zone|releaseAt_required|blockRef_required, 401 bad_key, 403 mode_mismatch|channel_access_denied, 404 not_found|chart_unavailable, 409 event_closed|conflict, 422 unknown_zone|invalid_selection, 429 rate_limited, 500, 503 maintenance_mode | webhook: seat.blocked; audit: event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
bookBestAvailablePOST /v1/events/{eventKey}/best-available-bookstable | Secret key only | BestAvailableBookRequest → 200 BestAvailableBookResponse | single-attempt; server-inventory 600/60sError contract400 bookingRef_required|qty_required|invalid_zone, 401 bad_key, 403 mode_mismatch|channel_access_denied, 404 not_found|chart_unavailable, 409 event_closed|conflict, 422 unknown_zone|invalid_selection, 429 rate_limited, 500, 503 maintenance_mode | webhook: seat.booked, event.soldout; audit: event-log, inventory-booking-lifecycle | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveHoldGET /v1/events/{eventKey}/holds/{holdId}stable | Secret key only | no body → 200 HoldInspection | transient-read; no published operation budgetError contract401 bad_key, 403 mode_mismatch|channel_access_denied, 404 not_found|hold_not_found, 409 legacy_hold_requires_restart, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
releaseObjectsPOST /v1/events/{eventKey}/releasestable | Secret key only | ReleaseRequest → 200 ReleaseResult | single-attempt; no published operation budgetError contract400 labels_and_holdId_required, 401 bad_key, 403 mode_mismatch, 404 not_found, 409 order_edit_in_progress, 500, 503 maintenance_mode | webhook: seat.released; audit: event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
bookObjectsPOST /v1/events/{eventKey}/bookstable | Secret key only | BookRequest → 200 BookResult | single-attempt; no published operation budgetError contract400 hold_or_labels_and_bookingRef_required|blockRef_invalid|holdId_and_blockRef_mutually_exclusive, 401 bad_key, 403 mode_mismatch|channel_access_denied, 404 not_found, 409 hold_not_active|legacy_hold_requires_restart|conflict, 500, 503 maintenance_mode | webhook: seat.booked, event.soldout; audit: event-log, inventory-booking-lifecycle | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
boxOfficeBookObjectsPOST /v1/events/{eventKey}/box-bookstable | Secret key only | BoxOfficeBookRequest → 200 BookResult | single-attempt; no published operation budgetError contract400 labels_and_bookingRef_required, 401 bad_key, 403 mode_mismatch|channel_access_denied|forbidden, 404 not_found, 409 conflict, 500, 503 maintenance_mode | webhook: seat.booked, event.soldout; audit: event-log, inventory-booking-lifecycle | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
unbookObjectsPOST /v1/events/{eventKey}/unbookstable | Secret key; mse_: event:cancel | UnbookRequest → 200 UnbookResult | single-attempt; manage-session 300/60sError contract400 labels_and_bookingRef_required, 401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 409 booking_mismatch, 429 rate_limited, 500, 503 maintenance_mode | webhook: seat.released; audit: event-log, inventory-booking-lifecycle | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
blockObjectsPOST /v1/events/{eventKey}/blockstable | Secret key; mse_: event:block | BlockRequest → 200 BlockResult | single-attempt; manage-session 300/60sError contract400 labels_required, 401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 409 conflict, 429 rate_limited, 500, 503 maintenance_mode | webhook: seat.blocked; audit: event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
unblockObjectsPOST /v1/events/{eventKey}/unblockstable | Secret key; mse_: event:block | LabelsRequest → 200 UnblockResult | single-attempt; manage-session 300/60sError contract400 labels_required, 401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 429 rate_limited, 500, 503 maintenance_mode | webhook: seat.released; audit: event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
unblockAllObjectsPOST /v1/events/{eventKey}/unblock-allstable | Secret key; mse_: event:block | no body → 200 UnblockAllResult | single-attempt; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 429 rate_limited, 500, 503 maintenance_mode | webhook: seat.released; audit: event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
putUpForResalePUT /v1/events/{eventKey}/actions/put-up-for-resalestable | Secret key; mse_: event:block | ResaleListRequest → 200 ResaleListEnvelope | single-attempt; manage-session 300/60sError contract400 objects_required, 401 bad_key|bad_manage_session|manage_session_expired, 403 forbidden|mode_mismatch, 404 not_found, 409 not_booked|order_edit_in_progress|resale_unsupported_on_seatlayer_checkout, 422 invalid_listing_id, 429 rate_limited, 500, 503 maintenance_mode | webhook: object.resale.listed | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
removeFromResalePUT /v1/events/{eventKey}/actions/remove-from-resalestable | Secret key; mse_: event:block | ResaleUnlistRequest → 200 ResaleUnlistEnvelope | single-attempt; manage-session 300/60sError contract400 objects_required, 401 bad_key|bad_manage_session|manage_session_expired, 403 forbidden|mode_mismatch, 404 not_found, 409 order_edit_in_progress, 429 rate_limited, 500, 503 maintenance_mode | webhook: object.resale.unlisted | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
listResaleListingsGET /v1/events/{eventKey}/resale-listingsstable | Secret key; mse_: event:view | no body → 200 ResaleListingList | transient-read; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 forbidden|mode_mismatch, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveResaleSummaryGET /v1/events/{eventKey}/resale-summarystable | Secret key; mse_: event:view | no body → 200 ResaleSummary | transient-read; manage-session 300/60sError contract400 invalid_since, 401 bad_key|bad_manage_session|manage_session_expired, 403 forbidden|mode_mismatch, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveAvailabilityGET /v1/events/{eventKey}/availabilitystable | Secret key; mse_: event:view | no body → 200 AvailabilityEnvelope | transient-read; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
updateAvailabilityPOST /v1/events/{eventKey}/availabilitystable | Secret key; mse_: event:block | AvailabilityUpdateRequest → 200 AvailabilityUpdateResult | single-attempt; manage-session 300/60sError contract400 rules_required, 401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found|chart_unavailable, 422 invalid_availability_rule, 429 rate_limited, 500, 503 maintenance_mode | audit: event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveHoldTtlGET /v1/events/{eventKey}/hold-ttlstable | Secret key; mse_: event:view | no body → 200 HoldTtlEnvelope | transient-read; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
updateHoldTtlPOST /v1/events/{eventKey}/hold-ttlstable | Secret key; mse_: event:block | HoldTtlRequest → 200 HoldTtlUpdateResult | single-attempt; manage-session 300/60sError contract400 holdTtlMs_required|holdTtlMs_must_be_positive_number_or_null, 401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
Reports
| Operation | Auth | Schemas | Reliability and errors | Side effects | REST and SDK source |
|---|---|---|---|---|---|
listInventoryBookingsGET /v1/events/{eventKey}/bookingsstable | Secret key; mse_: event:view or event:reports | no body → 200 InventoryBookingPage | transient-read; manage-session 300/60sError contract400 invalid_cursor|invalid_booking_state|invalid_booking_window, 401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveInventoryBookingGET /v1/events/{eventKey}/bookings/{bookingRef}stable | Secret key; mse_: event:view or event:reports | no body → 200 InventoryBookingDetail | transient-read; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
listInventoryBookingChangesGET /v1/events/{eventKey}/booking-changesstable | Secret key; mse_: event:view or event:reports | no body → 200 InventoryBookingChangePage | transient-read; manage-session 300/60sError contract400 invalid_after, 401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveEventReportGET /v1/events/{eventKey}/reportstable | Secret key; mse_: event:reports | no body → 200 EventReportEnvelope | transient-read; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveEventLogGET /v1/events/{eventKey}/logstable | Secret key; mse_: event:reports | no body → 200 EventLogPage | transient-read; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveChannelReportGET /v1/events/{eventKey}/channels/reportstable | Secret key; mse_: event:channels:viewevent:reports: Includes configured booked-value fields in the channel report. | no body → 200 ChannelReportEnvelope | transient-read; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
Sales channels
| Operation | Auth | Schemas | Reliability and errors | Side effects | REST and SDK source |
|---|---|---|---|---|---|
listChannelsGET /v1/events/{eventKey}/channelsstable | Secret key; mse_: event:channels:view | no body → 200 ChannelList | transient-read; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
createChannelPOST /v1/events/{eventKey}/channelsstable | Secret key; mse_: event:channels:manage | ChannelCreateRequest → 201 ChannelMutationEnvelope | single-attempt; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 409 channel_name_taken, 422 channel_name_required|invalid_access_intent|channel_request_invalid, 429 rate_limited, 500, 503 maintenance_mode | audit: channel-audit, event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
updateChannelPATCH /v1/events/{eventKey}/channels/{channelId}stable | Secret key; mse_: event:channels:manage | ChannelUpdateRequest → 200 ChannelMutationEnvelope | single-attempt; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found|chart_unavailable, 409 channel_name_taken|channel_archived|channel_access_intent_forbids|channel_intent_switch_blocked|channel_pricing_conflict, 422 channel_name_required|invalid_access_intent|invalid_channel_pricing|channel_request_invalid, 429 rate_limited, 500, 503 maintenance_mode | audit: channel-audit, event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
updateChannelAssignmentsPOST /v1/events/{eventKey}/channels/assignmentsstable | Secret key; mse_: event:channels:manage | ChannelAssignmentRequest → 200 AssignmentResult | single-attempt; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 409 channel_archived|channel_assignment_conflict|channel_assignment_would_drop, 422 labels_required|assignment_version_required|invalid_channel_destination|too_many_units|channel_request_invalid, 429 rate_limited, 500, 503 maintenance_mode | audit: channel-audit, event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
listChannelAllocationGET /v1/events/{eventKey}/channels/allocationstable | Secret key; mse_: event:channels:view | no body → 200 ChannelAllocationPage | transient-read; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveChannelAccessPreviewGET /v1/events/{eventKey}/channels/previewstable | Secret key; mse_: event:channels:view | no body → 200 ChannelPreview | transient-read; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 422 invalid_channel_scope, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
pauseChannelPOST /v1/events/{eventKey}/channels/{channelId}/pausestable | Secret key; mse_: event:channels:manage | ChannelReasonRequest → 200 ChannelMutationEnvelope | single-attempt; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 409 channel_archived, 422 channel_state_invalid|channel_request_invalid, 429 rate_limited, 500, 503 maintenance_mode | audit: channel-audit, event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
unpauseChannelPOST /v1/events/{eventKey}/channels/{channelId}/unpausestable | Secret key; mse_: event:channels:manage | ChannelReasonRequest → 200 ChannelMutationEnvelope | single-attempt; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 409 channel_archived, 422 channel_state_invalid|channel_request_invalid, 429 rate_limited, 500, 503 maintenance_mode | audit: channel-audit, event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
archiveChannelPOST /v1/events/{eventKey}/channels/{channelId}/archivestable | Secret key; mse_: event:channels:manage | ChannelArchiveRequest → 200 ChannelArchiveResult | single-attempt; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 409 channel_archive_blocked_by_holds|channel_archived|order_edit_in_progress, 422 destination_required|invalid_channel_destination|channel_request_invalid, 429 rate_limited, 500, 503 maintenance_mode | audit: channel-audit, event-log | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
Buyer access
| Operation | Auth | Schemas | Reliability and errors | Side effects | REST and SDK source |
|---|---|---|---|---|---|
createBuyerAccessSessionPOST /v1/events/{eventKey}/buyer-access-sessionsstable | Secret key only | BuyerAccessSessionRequest → 201 BuyerAccessReveal | single-attempt; no published operation budgetError contract401 bad_key, 403 buyer_access_mode_mismatch, 404 not_found, 409 channel_access_intent_forbids, 422 invalid_allowed_origin|include_public_required|invalid_channel_scope|invalid_expiry|invalid_max_quantity|invalid_reference, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
listBuyerAccessSessionsGET /v1/events/{eventKey}/buyer-access-sessionsstable | Secret key only | no body → 200 BuyerAccessSessionList | transient-read; no published operation budgetError contract401 bad_key, 404 not_found, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
revokeBuyerAccessSessionDELETE /v1/events/{eventKey}/buyer-access-sessions/{sessionId}stable | Secret key only | no body → 200 BuyerAccessRevokeResult | single-attempt; no published operation budgetError contract401 bad_key, 404 not_found, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
createAccessLinkPOST /v1/events/{eventKey}/channels/{channelId}/access-linksstable | Secret key; mse_: event:channels:manage | AccessLinkCreateRequest → 201 AccessLinkReveal | single-attempt; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 409 channel_unavailable|channel_access_intent_forbids|too_many_access_links, 422 invalid_expiry|invalid_max_redemptions|invalid_max_quantity|invalid_session_ttl|invalid_include_public|invalid_label, 429 rate_limited, 500, 503 maintenance_mode | audit: channel-audit | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
listAccessLinksGET /v1/events/{eventKey}/channels/{channelId}/access-linksstable | Secret key; mse_: event:channels:view | no body → 200 AccessLinkList | transient-read; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
rotateAccessLinkPOST /v1/events/{eventKey}/channels/{channelId}/access-links/{linkId}/rotatestable | Secret key; mse_: event:channels:manage | AccessLinkRotateRequest → 201 AccessLinkReveal | single-attempt; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 409 channel_unavailable|channel_access_intent_forbids|access_link_not_active, 422 end_active_sessions_required, 429 rate_limited, 500, 503 maintenance_mode | audit: channel-audit | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
revokeAccessLinkDELETE /v1/events/{eventKey}/channels/{channelId}/access-links/{linkId}stable | Secret key; mse_: event:channels:manage | no body → 200 AccessLinkRevokeResult | single-attempt; manage-session 300/60sError contract401 bad_key|bad_manage_session|manage_session_expired, 403 mode_mismatch|forbidden, 404 not_found, 409 channel_unavailable|access_link_not_active, 429 rate_limited, 500, 503 maintenance_mode | audit: channel-audit | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
Platform
| Operation | Auth | Schemas | Reliability and errors | Side effects | REST and SDK source |
|---|---|---|---|---|---|
createManageSessionPOST /v1/events/{eventKey}/manage-sessionsstable | Secret key only | ManageSessionRequest → 201 ManageSessionReveal | single-attempt; no published operation budgetError contract401 bad_key, 403 mode_mismatch|forbidden, 404 not_found, 422 invalid_allowed_origin|invalid_capabilities|invalid_expiry, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
revokeManageSessionDELETE /v1/events/{eventKey}/manage-sessions/{id}stable | Secret key only | no body → 200 Ok | single-attempt; no published operation budgetError contract401 bad_key, 403 mode_mismatch|forbidden, 404 not_found, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
createDesignerSessionPOST /v1/designer/sessionsstable | Secret key only | DesignerSessionRequest → 201 DesignerSessionEnvelope | single-attempt; no published operation budgetError contract400 workspaceId_and_chartId_required, 401 bad_key, 403 forbidden, 404 workspace_not_found_or_disabled|chart_not_found, 422 invalid_allowed_origin|invalid_authority|invalid_can_publish|conflicting_authority|invalid_designer_mode|safe_mode_options_require_safe_mode|invalid_safe_mode_options|invalid_expiry|invalid_features, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
revokeDesignerSessionDELETE /v1/designer/sessions/{id}stable | Secret key only | no body → 200 Ok | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden, 404 not_found, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
listWorkspacesGET /v1/workspacesstable | Secret key only | no body → 200 WorkspaceList | transient-read; no published operation budgetError contract401 bad_key, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
createWorkspacePOST /v1/workspacesstable | Secret key only | WorkspaceCreateRequest → 201 WorkspaceEnvelope | exact-header-replay; no published operation budgetError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden, 409 external_ref_exists|idempotency_conflict|idempotency_in_progress, 422 invalid_name|invalid_external_ref|invalid_region, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
updateWorkspacePATCH /v1/workspaces/{workspaceId}stable | Secret key only | WorkspaceUpdateRequest → 200 WorkspaceEnvelope | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden, 404 not_found, 409 default_workspace_required|default_workspace_must_be_active|external_ref_exists, 422 invalid_name|invalid_external_ref|invalid_status|invalid_default|invalid_region, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveWorkspaceGET /v1/workspaces/{workspaceId}stable | Secret key only | no body → 200 WorkspaceEnvelope | transient-read; no published operation budgetError contract401 bad_key, 404 not_found, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
Webhooks
| Operation | Auth | Schemas | Reliability and errors | Side effects | REST and SDK source |
|---|---|---|---|---|---|
listWebhooksGET /v1/webhooksstable | Secret key only | no body → 200 WebhookList | transient-read; no published operation budgetError contract401 bad_key, 500 | No public side effect declared | REST: RCNode: RCPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
createWebhookPOST /v1/webhooksstable | Secret key only | WebhookCreateRequest → 201 WebhookCreateEnvelope | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden, 422 invalid_url|invalid_events|invalid_mode|invalid_environment, 500, 503 maintenance_mode | No public side effect declared | REST: RCNode: RCPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
updateWebhookPATCH /v1/webhooks/{webhookId}stable | Secret key only | WebhookUpdateRequest → 200 WebhookEnvelope | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden, 404 not_found, 422 invalid_url|invalid_events|invalid_mode|invalid_environment, 500, 503 maintenance_mode | No public side effect declared | REST: RCNode: RCPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
deleteWebhookDELETE /v1/webhooks/{webhookId}stable | Secret key only | no body → 200 Ok | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden, 404 not_found, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
rotateWebhookSecretPOST /v1/webhooks/{id}/rotate-secretstable | Secret key only | no body → 200 WebhookRotateSecretEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden, 404 not_found, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: RCNode: RCPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
listWebhookDeliveriesGET /v1/webhooks/{webhookId}/deliveriesstable | Secret key only | no body → 200 WebhookDeliveryPage | transient-read; no published operation budgetError contract401 bad_key, 404 not_found, 500 | No public side effect declared | REST: RCNode: RCPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
Performance Groups
| Operation | Auth | Schemas | Reliability and errors | Side effects | REST and SDK source |
|---|---|---|---|---|---|
listPerformanceGroupsGET /v1/performance-groupsstable | Secret key only | no body → 200 PerformanceGroupPage | transient-read; no published operation budgetError contract401 bad_key, 404 workspace_not_found_or_disabled, 422 invalid_state|invalid_mode, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
createPerformanceGroupPOST /v1/performance-groupsstable | Secret key only | PerformanceGroupCreateRequest → 201 PerformanceGroupEnvelope | exact-header-replay; no published operation budgetError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden, 404 incompatible_performances, 409 idempotency_conflict|idempotency_in_progress|event_already_grouped|external_ref_exists|incompatible_performances, 422 invalid_name|invalid_external_ref|invalid_event_keys|invalid_inclusion_mode|invalid_selection_mode|invalid_audience|invalid_checkout_mode|incompatible_performances, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrievePerformanceGroupGET /v1/performance-groups/{performanceGroupKey}stable | Secret key only | no body → 200 PerformanceGroupEnvelope | transient-read; no published operation budgetError contract401 bad_key, 404 not_found, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
updatePerformanceGroupPATCH /v1/performance-groups/{performanceGroupKey}stable | Secret key only | PerformanceGroupUpdateRequest → 200 PerformanceGroupEnvelope | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden, 404 not_found, 409 group_not_editable|group_not_active|checkout_mode_required|group_has_holds|revision_mismatch|incompatible_performances, 422 invalid_expected_revision|invalid_name|invalid_external_ref|invalid_selection_mode|invalid_audience|invalid_sales_state|invalid_checkout_mode, 500, 503 lifecycle_unavailable|maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
deletePerformanceGroupDELETE /v1/performance-groups/{performanceGroupKey}stable | Secret key only | no body → 204 undefined | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden, 404 not_found, 409 group_not_draft, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
activatePerformanceGroupPOST /v1/performance-groups/{performanceGroupKey}/activatestable | Secret key only | PerformanceGroupLifecycleRequest → 200 PerformanceGroupLifecycleEnvelope | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden, 404 not_found|group_not_found, 409 group_not_draft|group_not_active|group_closing|revision_mismatch|activation_mismatch|lifecycle_operation_mismatch|event_lock_refused|registry_mismatch|activation_repair_required, 422 invalid_expected_revision, 500, 503 recovery_pending|lifecycle_unavailable|maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
closePerformanceGroupPOST /v1/performance-groups/{performanceGroupKey}/closestable | Secret key only | PerformanceGroupLifecycleRequest → 200 PerformanceGroupLifecycleEnvelope | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden, 404 not_found|group_not_found, 409 group_not_draft|group_not_active|group_closing|revision_mismatch|activation_mismatch|lifecycle_operation_mismatch|event_lock_refused|registry_mismatch|activation_repair_required, 422 invalid_expected_revision, 500, 503 recovery_pending|lifecycle_unavailable|maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrievePerformanceGroupLifecycleGET /v1/performance-groups/{performanceGroupKey}/lifecycle/{operationId}stable | Secret key only | no body → 200 PerformanceGroupLifecycleEnvelope | transient-read; no published operation budgetError contract401 bad_key, 404 not_found|group_not_found, 409 group_not_draft|group_not_active|group_closing|revision_mismatch|activation_mismatch|lifecycle_operation_mismatch|event_lock_refused|registry_mismatch|activation_repair_required, 500, 503 recovery_pending|lifecycle_unavailable | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
createPerformanceGroupBuyerAccessSessionPOST /v1/performance-groups/{performanceGroupKey}/buyer-access-sessionsstable | Secret key only | PerformanceGroupBuyerAccessSessionRequest → 201 PerformanceGroupBuyerAccessReveal | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden|buyer_access_mode_mismatch, 404 not_found, 409 performance_group_not_active|channel_access_intent_forbids|activation_mismatch|member_set_mismatch, 422 invalid_allowed_origin|include_public_required|invalid_expiry|invalid_max_quantity|invalid_reference|invalid_channel_scope, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
listPerformanceGroupBuyerAccessSessionsGET /v1/performance-groups/{performanceGroupKey}/buyer-access-sessionsstable | Secret key only | no body → 200 PerformanceGroupBuyerAccessSessionList | transient-read; no published operation budgetError contract401 bad_key, 404 not_found, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
revokePerformanceGroupBuyerAccessSessionDELETE /v1/performance-groups/{performanceGroupKey}/buyer-access-sessions/{sessionId}stable | Secret key only | no body → 200 PerformanceGroupBuyerAccessRevokeResult | single-attempt; no published operation budgetError contract401 bad_key, 404 not_found, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrievePerformanceGroupHoldGET /v1/performance-groups/{performanceGroupKey}/holds/{operationId}stable | Secret key only | no body → 200 PerformanceGroupHoldEnvelope | transient-read; no published operation budgetError contract401 bad_key, 404 not_found, 409 performance_group_integrity_error, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
bookPerformanceGroupHoldPOST /v1/performance-groups/{performanceGroupKey}/holds/{operationId}/bookstable | Secret key only | PerformanceGroupBookRequest → 200 PerformanceGroupBookingEnvelope | single-attempt; no published operation budgetError contract401 bad_key, 403 forbidden, 404 not_found, 409 hold_not_active|book_operation_mismatch|book_failed, 422 invalid_request, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrievePerformanceGroupBookingGET /v1/performance-groups/{performanceGroupKey}/bookings/{actionId}stable | Secret key only | no body → 200 PerformanceGroupBookingEnvelope | transient-read; no published operation budgetError contract401 bad_key, 404 not_found, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
Seasons
| Operation | Auth | Schemas | Reliability and errors | Side effects | REST and SDK source |
|---|---|---|---|---|---|
listSeasonsGET /v1/seasonsstable | Secret key only | no body → 200 SeasonPage | transient-read; season-api 600/60sError contract401 bad_key, 404 workspace_not_found_or_disabled, 422 invalid_state|invalid_mode, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
validateSeasonPOST /v1/seasons/validatestable | Secret key only | SeasonValidateRequest → 200 SeasonValidationEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden|module_not_enabled|module_required, 404 workspace_not_found_or_disabled, 422 invalid_selection, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
createSeasonPOST /v1/seasonsstable | Secret key only | SeasonCreateRequest → 201 SeasonEnvelope | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled|module_required, 404 event_not_found|workspace_not_found_or_disabled, 409 idempotency_conflict|idempotency_in_progress|workspace_mismatch|mode_mismatch|chart_mismatch|chart_unavailable|currency_mismatch|venue_mismatch|timezone_mismatch, 422 invalid_name|invalid_edition|invalid_event_keys|invalid_event_count|channel_restricted_inventory|unsupported_season_inventory, 429 rate_limited, 500, 503 channel_state_unavailable|maintenance_mode | No public side effect declared | REST: RCNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveSeasonGET /v1/seasons/{seasonKey}stable | Secret key only | no body → 200 SeasonEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found|season_not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
updateSeasonPATCH /v1/seasons/{seasonKey}stable | Secret key only | SeasonUpdateRequest → 200 SeasonEnvelope | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden, 404 not_found|season_not_found, 409 not_a_draft|revision_mismatch|idempotency_conflict|idempotency_in_progress, 422 invalid_name|invalid_edition|invalid_expected_revision, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
deleteSeasonDELETE /v1/seasons/{seasonKey}stable | Secret key only | no body → 204 undefined | exact-header-replay; season-api 600/60sError contract401 bad_key, 403 forbidden, 404 not_found|season_not_found, 409 not_a_draft, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
activateSeasonPOST /v1/seasons/{seasonKey}/activatestable | Secret key only | SeasonLifecycleRequest → 200 SeasonLifecycleEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden|module_not_enabled|module_required, 404 not_found|season_not_found, 409 revision_mismatch|not_a_draft|chart_mismatch|chart_unavailable, 422 invalid_expected_revision, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.structure.activated; audit: season-lifecycle-audit | REST: RCNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
closeSeasonPOST /v1/seasons/{seasonKey}/closestable | Secret key only | SeasonLifecycleRequest → 200 SeasonLifecycleEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden, 404 not_found|season_not_found, 409 revision_mismatch|sales_open|sales_not_ended|not_active, 422 invalid_expected_revision, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.structure.closed; audit: season-lifecycle-audit | REST: RCNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
archiveSeasonPOST /v1/seasons/{seasonKey}/archivestable | Secret key only | SeasonLifecycleRequest → 200 SeasonLifecycleEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden, 404 not_found|season_not_found, 409 not_closed|revision_mismatch|lifecycle_transition_pending|lifecycle_operation_mismatch, 422 invalid_expected_revision, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.structure.archived; audit: season-lifecycle-audit | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveSeasonLifecycleGET /v1/seasons/{seasonKey}/lifecycle/{operationId}stable | Secret key only | no body → 200 SeasonLifecycleEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found|season_not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
createSeasonPlanPOST /v1/seasons/{seasonKey}/plansstable | Secret key only | SeasonPlanCreateRequest → 201 SeasonPlanEnvelope | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled|module_required, 404 not_found|season_not_found|event_not_found, 409 not_a_draft|revision_mismatch|duplicate_plan_name|chart_mismatch|chart_unavailable|workspace_mismatch|mode_mismatch|currency_mismatch|venue_mismatch|timezone_mismatch|environment_mismatch|event_not_active|source_group_not_found|source_group_not_active|source_group_changed|direct_group_overlap|source_group_overlap|duplicate_event|idempotency_conflict|idempotency_in_progress, 422 invalid_name|invalid_event_keys|invalid_event_count|channel_restricted_inventory|unsupported_season_inventory, 429 rate_limited, 500, 503 channel_state_unavailable|maintenance_mode | No public side effect declared | REST: RCNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveSeasonPlanGET /v1/seasons/{seasonKey}/plans/{planKey}stable | Secret key only | no body → 200 SeasonPlanEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found|season_not_found|plan_not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
publishSeasonPlanPOST /v1/seasons/{seasonKey}/plans/{planKey}/publishstable | Secret key only | SeasonLifecycleRequest → 200 SeasonPlanPublishEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden|module_not_enabled|module_required, 404 not_found|season_not_found|plan_not_found, 409 not_a_draft|revision_mismatch|chart_unavailable|chart_mismatch|season_not_active|sales_not_ended, 422 invalid_expected_revision|channel_restricted_inventory|unsupported_season_inventory, 429 rate_limited, 500, 503 channel_state_unavailable|maintenance_mode | webhook: season.plan.published; audit: season-lifecycle-audit | REST: RCNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
supersedeSeasonPlanPOST /v1/seasons/{seasonKey}/plans/{planKey}/supersedestable | Secret key only | SeasonLifecycleRequest → 200 SeasonPlanPublishEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden, 404 not_found|season_not_found|plan_not_found, 409 not_published|sales_not_ended|revision_mismatch, 422 invalid_expected_revision, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.plan.superseded; audit: season-lifecycle-audit | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
openSeasonSalesPOST /v1/seasons/{seasonKey}/sales/openstable | Secret key only | SeasonLifecycleRequest → 200 SeasonSalesOpenEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden|module_not_enabled|module_required, 404 not_found|season_not_found, 409 coupled_lifecycle|invalid_transition|revision_mismatch, 422 invalid_expected_revision|channel_restricted_inventory|unsupported_season_inventory, 429 rate_limited, 500, 503 channel_state_unavailable|maintenance_mode | webhook: season.sales.opened; audit: season-lifecycle-audit | REST: RCNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
pauseSeasonSalesPOST /v1/seasons/{seasonKey}/sales/pausestable | Secret key only | SeasonLifecycleRequest → 200 SeasonEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden, 404 not_found|season_not_found, 409 invalid_transition|revision_mismatch, 422 invalid_expected_revision, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.sales.paused; audit: season-lifecycle-audit | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
resumeSeasonSalesPOST /v1/seasons/{seasonKey}/sales/resumestable | Secret key only | SeasonLifecycleRequest → 200 SeasonSalesOpenEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden|module_not_enabled|module_required, 404 not_found|season_not_found, 409 coupled_lifecycle|invalid_transition|revision_mismatch, 422 invalid_expected_revision|channel_restricted_inventory|unsupported_season_inventory, 429 rate_limited, 500, 503 channel_state_unavailable|maintenance_mode | webhook: season.sales.opened; audit: season-lifecycle-audit | REST: RCNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
endSeasonSalesPOST /v1/seasons/{seasonKey}/sales/endstable | Secret key only | SeasonLifecycleRequest → 200 SeasonEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden, 404 not_found|season_not_found, 409 invalid_transition|revision_mismatch, 422 invalid_expected_revision, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.sales.ended; audit: season-lifecycle-audit | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
duplicateSeasonToLivePOST /v1/seasons/{seasonKey}/duplicate-to-livestable | Secret key only | SeasonDuplicateRequest → 201 SeasonEnvelope | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled|module_required, 404 not_found|season_not_found|event_not_found, 409 test_season_required|workspace_mismatch|mode_mismatch|chart_mismatch|idempotency_conflict|idempotency_in_progress, 422 invalid_name|invalid_event_keys|invalid_event_count|channel_restricted_inventory|unsupported_season_inventory, 429 rate_limited, 500, 503 channel_state_unavailable|maintenance_mode | No public side effect declared | REST: RCNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
createSeasonBuyerAccessSessionPOST /v1/seasons/{seasonKey}/buyer-access-sessionsstable | Secret key only | SeasonBuyerAccessSessionRequest → 201 SeasonBuyerAccessReveal | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden|module_not_enabled, 404 not_found, 409 season_not_active|plan_not_published|plan_selection_required|chart_unavailable|chart_mismatch|channel_restricted_inventory|unsupported_season_inventory, 422 invalid_allowed_origin|include_public_required|invalid_expiry|invalid_max_quantity|invalid_reference|invalid_session_purpose|invalid_plan_activation_id|channel_authority_unsupported, 429 rate_limited, 500, 503 channel_state_unavailable|maintenance_mode | No public side effect declared | REST: RCNode: RCPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
listSeasonBuyerAccessSessionsGET /v1/seasons/{seasonKey}/buyer-access-sessionsstable | Secret key only | no body → 200 SeasonBuyerAccessSessionList | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: RCNode: RCPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
revokeSeasonBuyerAccessSessionDELETE /v1/seasons/{seasonKey}/buyer-access-sessions/{sessionId}stable | Secret key only | no body → 200 SeasonBuyerAccessRevokeResult | single-attempt; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveSeasonHoldGET /v1/seasons/{seasonKey}/holds/{operationId}stable | Secret key only | no body → 200 SeasonHoldEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
bookSeasonHoldPOST /v1/seasons/{seasonKey}/holds/{operationId}/bookstable | Secret key only | SeasonBookRequest → 200 SeasonBookingEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden, 404 not_found, 409 hold_not_active|book_operation_mismatch|book_failed, 422 invalid_request, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.booking.confirmed, season.operation.partial_terminal | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveSeasonBookingGET /v1/seasons/{seasonKey}/bookings/{actionId}stable | Secret key only | no body → 200 SeasonBookingEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
cancelSeasonBookingPOST /v1/seasons/{seasonKey}/bookings/{actionId}/cancelstable | Secret key only | SeasonCancelRequest → 200 SeasonBookingEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden, 404 not_found, 409 booking_not_cancellable|cancel_operation_mismatch|active_occurrence_return|hosted_order_use_refund, 422 invalid_request|right_disposition_required, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.booking.cancelled, season.operation.partial_terminal | REST: RCNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
validateSeasonBuyerRehearsalPOST /v1/seasons/{seasonKey}/buyer-rehearsals/validatestable | Secret key only | no body → 200 SeasonBuyerRehearsalEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden, 404 not_found, 409 rehearsal_incomplete, 422 invalid_request, 429 rate_limited, 500, 503 maintenance_mode | audit: season-lifecycle-audit | REST: RCNode: RCPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
createSeasonHolderImportPOST /v1/seasons/{seasonKey}/importsstable | Secret key only | SeasonHolderImportRequest → 201 SeasonHolderImportEnvelope | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled, 404 not_found|season_not_found, 409 season_not_active|plan_not_published|import_mismatch|idempotency_conflict|idempotency_in_progress, 422 invalid_request|invalid_rows|invalid_row|invalid_successor_plan|unknown_seat|duplicate_row_id|invalid_holder_email|invalid_holder_name, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
createSeasonHolderImportFromSeasonPOST /v1/seasons/{seasonKey}/imports/from-seasonstable | Secret key only | SeasonHolderImportFromSeasonRequest → 201 SeasonHolderImportFromSeasonEnvelope | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled, 404 not_found|season_not_found|source_season_not_found, 409 season_not_active|plan_not_published|source_too_large|import_mismatch|idempotency_conflict|idempotency_in_progress, 422 invalid_request|invalid_source_season|invalid_successor_plan|invalid_rows, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveSeasonHolderImportGET /v1/seasons/{seasonKey}/imports/{importId}stable | Secret key only | no body → 200 SeasonHolderImportEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
createSeasonRenewalOffersPOST /v1/seasons/{seasonKey}/renewal-offersstable | Secret key only | SeasonRenewalOfferCreateRequest → 201 SeasonRenewalOfferList | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled, 404 not_found, 409 season_not_active|plan_not_published|plan_selection_required|offer_plan_mismatch|idempotency_conflict|idempotency_in_progress, 422 invalid_successor_plan|invalid_deadline, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.renewal.offered, season.renewal.lapsed | REST: RCNode: RCPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
listSeasonRenewalOffersGET /v1/seasons/{seasonKey}/renewal-offersstable | Secret key only | no body → 200 SeasonRenewalOfferList | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | webhook: season.renewal.lapsed | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveSeasonRenewalOfferGET /v1/seasons/{seasonKey}/renewal-offers/{offerId}stable | Secret key only | no body → 200 SeasonRenewalOfferEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | webhook: season.renewal.lapsed | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
extendSeasonRenewalOfferPOST /v1/seasons/{seasonKey}/renewal-offers/{offerId}/extendstable | Secret key only | SeasonRenewalOfferExtendRequest → 200 SeasonRenewalOfferEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 404 not_found, 409 offer_terminal|order_edit_in_progress, 422 invalid_deadline, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.renewal.lapsed | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
inspectSeasonRenewalOfferGET /v1/seasons/{seasonKey}/renewal-offers/{offerId}/inspectstable | Secret key only | no body → 200 SeasonRenewalOfferEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | webhook: season.renewal.lapsed | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
commitSeasonRenewalOfferPOST /v1/seasons/{seasonKey}/renewal-offers/{offerId}/commitstable | Secret key only | SeasonRenewalOfferCommitRequest → 200 SeasonRenewalOfferEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden, 404 not_found, 409 intent_required|plan_activation_mismatch|commit_mismatch|plan_not_published|payment_in_progress, 422 invalid_request, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.renewal.lapsed, season.renewal.renewed, season.operation.partial_terminal | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
declineSeasonRenewalOfferPOST /v1/seasons/{seasonKey}/renewal-offers/{offerId}/declinestable | Secret key only | no body → 200 SeasonRenewalOfferEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 404 not_found, 409 offer_terminal|order_edit_in_progress|payment_in_progress, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.renewal.lapsed, season.renewal.declined | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
releaseSeasonRenewalOfferPOST /v1/seasons/{seasonKey}/renewal-offers/{offerId}/releasestable | Secret key only | no body → 200 SeasonRenewalOfferEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 404 not_found, 409 offer_not_lapsed|order_edit_in_progress|payment_in_progress, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.renewal.lapsed, season.renewal.released | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
listSeasonPerformancesGET /v1/seasons/{seasonKey}/performancesstable | Secret key only | no body → 200 SeasonPerformanceList | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
createSeasonPerformancesPOST /v1/seasons/{seasonKey}/performancesstable | Secret key only | SeasonPerformanceCreateRequest → 201 SeasonPerformanceCreateEnvelope | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 402 insufficient_credits, 403 forbidden|module_not_enabled, 404 not_found|event_not_found, 409 season_not_draft|chart_mismatch|chart_unavailable|revision_mismatch|idempotency_conflict, 422 invalid_title_pattern|invalid_repeat|invalid_timezone|timezone_mismatch|invalid_first_starts_at|invalid_count|invalid_dates|invalid_venue|invalid_duration|invalid_region|invalid_plan_keys|too_many_performances|incompatible_events, 429 rate_limited, 500, 503 maintenance_mode | webhook: event.created; audit: season-lifecycle-audit | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
attachSeasonPerformancesPOST /v1/seasons/{seasonKey}/performances/attachstable | Secret key only | SeasonPerformanceAttachRequest → 200 SeasonPerformanceList | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled, 404 not_found|event_not_found|plan_not_found, 409 season_not_draft|plan_not_draft|plan_source_group_locked|revision_mismatch, 422 invalid_event_keys|invalid_plan_keys|too_many_performances|incompatible_events, 429 rate_limited, 500, 503 maintenance_mode | audit: season-lifecycle-audit | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
deleteSeasonPerformanceDELETE /v1/seasons/{seasonKey}/performances/{eventKey}stable | Secret key only | no body → 200 SeasonPerformanceList | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled, 404 not_found|event_not_found, 409 season_not_draft|plan_not_draft|plan_source_group_locked|revision_mismatch, 422 too_few_performances, 429 rate_limited, 500, 503 maintenance_mode | audit: season-lifecycle-audit | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
updateSeasonPlanPATCH /v1/seasons/{seasonKey}/plans/{planKey}stable | Secret key only | SeasonPlanUpdateRequest → 200 SeasonPackageEnvelope | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled, 404 not_found|plan_not_found, 409 season_not_draft|plan_not_draft|plan_source_group_locked|duplicate_plan_name|duplicate_event|revision_mismatch, 422 invalid_request|invalid_name|invalid_event_keys|too_few_performances|incompatible_events, 429 rate_limited, 500, 503 maintenance_mode | audit: season-lifecycle-audit | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
deleteSeasonPlanDELETE /v1/seasons/{seasonKey}/plans/{planKey}stable | Secret key only | no body → 204 undefined | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled, 404 not_found|plan_not_found, 409 season_not_draft|plan_not_draft|last_plan|revision_mismatch, 422 too_few_performances, 429 rate_limited, 500, 503 maintenance_mode | audit: season-lifecycle-audit | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
publishSeasonPOST /v1/seasons/{seasonKey}/publishstable | Secret key only | no body → 200 SeasonPublishEnvelope | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled, 404 not_found|season_not_found|plan_not_found, 409 too_few_performances|publish_pending|revision_mismatch|source_group_changed|chart_mismatch|chart_unavailable, 422 channel_restricted_inventory, 429 rate_limited, 500, 503 channel_state_unavailable|maintenance_mode | webhook: season.structure.activated, season.plan.published; audit: season-lifecycle-audit | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
createSeasonCheckoutTestPOST /v1/seasons/{seasonKey}/checkout-testsstable | Secret key only | SeasonCheckoutTestRequest → 200 SeasonCheckoutTestEnvelope | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled, 404 not_found|plan_not_found, 409 season_not_active|plan_not_published, 422 invalid_plan_key|invalid_quantity, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.hold.committed, season.hold.released | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
listSeasonCheckoutTestsGET /v1/seasons/{seasonKey}/checkout-testsstable | Secret key only | no body → 200 SeasonCheckoutTestList | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
replaceSeasonPackagePricesPUT /v1/seasons/{seasonKey}/plans/{planKey}/pricesstable | Secret key only | SeasonPackagePricesRequest → 200 SeasonPackagePricesEnvelope | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled, 404 not_found|plan_not_found, 422 invalid_prices|invalid_currency|currency_mismatch|invalid_category_key|duplicate_category_key|invalid_unit_price, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
listSeasonPricesGET /v1/seasons/{seasonKey}/pricesstable | Secret key only | no body → 200 SeasonPriceList | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
attachSeasonPlanPerformancePOST /v1/seasons/{seasonKey}/plans/{planKey}/performancesstable | Secret key only | SeasonAttachPerformanceRequest → 200 SeasonAmendmentPerformanceEnvelope | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled, 404 not_found|plan_not_found|event_not_found, 409 season_not_published|plan_not_published|revision_mismatch|amendment_in_flight|chart_mismatch|chart_unavailable|idempotency_conflict, 422 invalid_event_key|incompatible_events|too_many_performances, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.performance.added, season.amendment.applied; audit: season-lifecycle-audit | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
deleteSeasonPlanPerformanceDELETE /v1/seasons/{seasonKey}/plans/{planKey}/performances/{eventKey}stable | Secret key only | no body → 200 SeasonRemovePerformanceEnvelope | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled, 404 not_found|plan_not_found, 409 season_not_published|plan_not_published|revision_mismatch|amendment_in_flight|idempotency_conflict, 422 too_few_performances, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.performance.removed, season.amendment.applied; audit: season-lifecycle-audit | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
markSeasonPerformancePastPOST /v1/seasons/{seasonKey}/performances/{eventKey}/paststable | Secret key only | SeasonMarkPastRequest → 200 SeasonPerformanceList | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled, 404 not_found|event_not_found, 409 season_not_published|idempotency_conflict, 422 not_yet_past, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.performance.past, season.amendment.applied; audit: season-lifecycle-audit | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
listSeasonOccurrencesGET /v1/seasons/{seasonKey}/occurrencesstable | Secret key only | no body → 200 SeasonOccurrenceList | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found|season_not_found, 409 plan_not_published|plan_selection_required, 422 invalid_plan_activation_id, 429 rate_limited, 500 | No public side effect declared | REST: RCNode: RCPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
returnSeasonOccurrenceInventoryPOST /v1/seasons/{seasonKey}/occurrences/{eventKey}/returnsstable | Secret key only | SeasonOccurrenceReturnRequest → 200 SeasonOccurrenceInventoryActionEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden|module_not_enabled, 404 not_found, 409 occurrence_action_mismatch|request_mismatch|source_not_active|conflict|hosted_order_use_date_cancel, 422 invalid_request, 429 rate_limited, 500, 503 participant_unavailable|order_edit_in_progress|maintenance_mode | webhook: season.occurrence.returned | REST: pendingNode: RCPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
reclaimSeasonOccurrenceInventoryPOST /v1/seasons/{seasonKey}/occurrences/{eventKey}/reclaimsstable | Secret key only | SeasonOccurrenceReclaimRequest → 200 SeasonOccurrenceInventoryActionEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 forbidden|module_not_enabled, 404 not_found, 409 occurrence_action_mismatch|request_mismatch|source_not_active|return_not_active|conflict|hosted_order_use_date_cancel, 422 invalid_request, 429 rate_limited, 500, 503 participant_unavailable|order_edit_in_progress|maintenance_mode | webhook: season.occurrence.reclaimed | REST: pendingNode: RCPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
createSeasonAmendmentPOST /v1/seasons/{seasonKey}/amendmentsstable | Secret key only | SeasonAmendmentRequest → 201 SeasonAmendmentEnvelope | exact-header-replay; season-api 600/60sError contract400 invalid_idempotency_key, 401 bad_key, 403 forbidden|module_not_enabled, 404 not_found|season_not_found|occurrence_not_in_plan, 409 occurrence_membership_immutable|occurrence_shared_across_plans|plan_not_published|plan_selection_required|inventory_identity_changed|idempotency_conflict|idempotency_in_progress, 422 invalid_request|invalid_kind|invalid_plan_activation_id, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: RCNode: RCPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
listSeasonAmendmentsGET /v1/seasons/{seasonKey}/amendmentsstable | Secret key only | no body → 200 SeasonAmendmentList | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: RCNode: RCPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
retrieveSeasonAmendmentGET /v1/seasons/{seasonKey}/amendments/{amendmentId}stable | Secret key only | no body → 200 SeasonAmendmentEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveSeasonReportGET /v1/seasons/{seasonKey}/reportsstable | Secret key only | no body → 200 SeasonReportEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
listSeasonOperationsGET /v1/seasons/{seasonKey}/operationsstable | Secret key only | no body → 200 SeasonOperationList | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
retrieveSeasonSupportLookupGET /v1/seasons/{seasonKey}/support-lookupsstable | Secret key only | no body → 200 SeasonSupportLookupEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 422 lookup_ref_required, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
listSeasonOutboxGET /v1/seasons/{seasonKey}/outboxstable | Secret key only | no body → 200 SeasonOutboxList | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
replaySeasonOutboxPOST /v1/seasons/{seasonKey}/outbox/{occurrenceId}/replaystable | Secret key only | no body → 200 SeasonOutboxReplayEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
listSeasonAuditGET /v1/seasons/{seasonKey}/auditstable | Secret key only | no body → 200 SeasonAuditEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
exportSeasonSupportSnapshotGET /v1/seasons/{seasonKey}/exportstable | Secret key only | no body → 200 SeasonSupportExportEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: liveNode: livePython: livePHP: liveJava: liveGo: liveRuby: live.NET: live |
listSeasonHoldersGET /v1/seasons/{seasonKey}/holdersstable | Secret key only | no body → 200 SeasonHolderPage | transient-read; season-api 600/60sError contract400 invalid_status|invalid_cursor, 401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
refundSeasonOrderPOST /v1/seasons/{seasonKey}/orders/{orderId}/refundstable | Secret key only | SeasonOrderRefundRequest → 200 SeasonOrderRefundEnvelope | exact-header-replay; season-api 600/60sError contract400 idempotency_key_required|invalid_idempotency_key, 401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 409 not_refundable|already_refunded|gateway_not_connected|order_edit_in_progress|refund_unavailable|refund_failed|idempotency_conflict|idempotency_in_progress, 422 invalid_amount, 429 rate_limited, 500, 502 refund_recovery_required, 503 maintenance_mode | webhook: season.order.refunded, season.booking.cancelled; audit: order-audit | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
cancelSeasonOrderPOST /v1/seasons/{seasonKey}/orders/{orderId}/cancelstable | Secret key only | SeasonOrderCancelRequest → 200 SeasonOrderCancelEnvelope | exact-header-replay; season-api 600/60sError contract400 idempotency_key_required|invalid_idempotency_key, 401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 409 box_office_order_use_dashboard|not_online_order|order_edit_in_progress|refund_in_progress|order_not_cancellable|order_changed|payment_method_unknown|cancellation_reconciliation_required|idempotency_conflict|idempotency_in_progress, 422 invalid_reason|cancellation_reason_required|used_tickets_acknowledgement_required|external_refund_confirmation_required, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.booking.cancelled; audit: order-audit | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
cancelSeasonOrderDatePOST /v1/seasons/{seasonKey}/orders/{orderId}/dates/{eventKey}/cancelstable | Secret key only | SeasonOrderDateCancelRequest → 200 SeasonOrderDateCancelEnvelope | exact-header-replay; season-api 600/60sError contract400 idempotency_key_required|invalid_idempotency_key, 401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 409 order_not_active|date_not_held|date_already_used|idempotency_conflict|idempotency_in_progress, 422 invalid_request, 429 rate_limited, 500, 503 maintenance_mode | webhook: season.occurrence.returned; audit: order-audit | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
resendSeasonOrderTicketsPOST /v1/seasons/{seasonKey}/orders/{orderId}/resendstable | Secret key only | SeasonOrderResendRequest → 200 SeasonOrderResendEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 409 no_tickets|no_buyer_email|order_edit_in_progress|order_changed, 422 invalid_email, 429 rate_limited, 500, 502 resend_failed, 503 maintenance_mode | audit: order-audit | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
retrieveSeasonHostedRenewalsGET /v1/seasons/{seasonKey}/renewal-hostedstable | Secret key only | no body → 200 SeasonHostedRenewals | transient-read; season-api 600/60sError contract401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
rotateSeasonRenewalOfferLinkPOST /v1/seasons/{seasonKey}/renewal-offers/{offerId}/linkstable | Secret key only | no body → 201 SeasonRenewalLinkEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
updateSeasonRenewalOfferContactPOST /v1/seasons/{seasonKey}/renewal-offers/{offerId}/contactstable | Secret key only | SeasonRenewalContactRequest → 200 SeasonRenewalContactEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 422 invalid_holder_email|invalid_holder_name, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
createSeasonRenewalNoticesPOST /v1/seasons/{seasonKey}/renewal-noticesstable | Secret key only | SeasonRenewalNoticesRequest → 200 SeasonRenewalNoticesEnvelope | single-attempt; season-api 600/60sError contract401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 409 checkout_mode_not_seatlayer, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
resendSeasonRenewalOfferPOST /v1/seasons/{seasonKey}/renewal-offers/{offerId}/resendstable | Secret key only | no body → 202 Ok | single-attempt; season-api 600/60sError contract401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 409 offer_not_open|checkout_mode_not_seatlayer, 422 holder_email_missing, 429 rate_limited, 500, 503 maintenance_mode | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
retrieveSeasonSalesReportGET /v1/seasons/{seasonKey}/reports/salesstable | Secret key only | no body → 200 SeasonSalesReportEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
retrieveSeasonSeatsReportGET /v1/seasons/{seasonKey}/reports/seatsstable | Secret key only | no body → 200 SeasonSeatsReportEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
exportSeasonHoldersCsvGET /v1/seasons/{seasonKey}/reports/holders.csvstable | Secret key only | no body → 200 SeasonCsvDownload | transient-read; season-api 600/60sError contract400 invalid_status|invalid_cursor, 401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 413 download_too_large, 429 rate_limited, 500, 503 holders_unavailable | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
exportSeasonOrdersCsvGET /v1/seasons/{seasonKey}/reports/orders.csvstable | Secret key only | no body → 200 SeasonCsvDownload | transient-read; season-api 600/60sError contract401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 409 season_sold_elsewhere, 429 rate_limited, 500 | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |
retrieveSeasonSeatCountsGET /v1/seasons/{seasonKey}/seat-countsstable | Secret key only | no body → 200 SeasonSeatCountsEnvelope | transient-read; season-api 600/60sError contract401 bad_key, 403 publishable_key_not_allowed, 404 not_found, 429 rate_limited, 500 | No public side effect declared | REST: RCNode: pendingPython: pendingPHP: pendingJava: pendingGo: pendingRuby: pending.NET: pending |