Platform
ScaiWave ScaiGrid ScaiCore ScaiBot ScaiDrive ScaiKey Models Tools & Services
Solutions
Organisations Developers Internet Service Providers Managed Service Providers AI-in-a-Box
Resources
Support Documentation Blog Downloads
Company
About Research Careers Investment Opportunities Contact
Log in

Admin — subscriptions

7 endpoints in this group. All paths are prefixed with /api/v1.

Endpoints in this group#


POST /api/v1/admin/subscriptions — Admin Create Subscription {#post-api-v1-admin-subscriptions}#

Parameters:

  • authorization (header, string, optional)

Body: AdminSubscriptionCreateRequest — {tenant_id, partner_id, service_slug, plan_id + 1 more}

Responses:

  • 201 — Successful Response. Returns: ApiResponse_SubscriptionResponse_ — {data, meta}
  • 422 — Validation Error. Returns: HTTPValidationError — {detail}

POST /api/v1/admin/subscriptions/bulk — Admin Bulk Subscription Action {#post-api-v1-admin-subscriptions-bulk}#

Apply the same lifecycle action to many subscriptions at once.

Best-effort: per-row failures are reported back with the reason rather than rolling back the whole batch.

Parameters:

  • authorization (header, string, optional)

Body: BulkActionRequest — {subscription_ids, action, reason}

Responses:

  • 200 — Successful Response. Returns: ApiResponse_BulkActionResult_ — {data, meta}
  • 422 — Validation Error. Returns: HTTPValidationError — {detail}

POST /api/v1/admin/subscriptions/{subscription_id}/cancel — Admin Cancel Subscription {#post-api-v1-admin-subscriptions-subscription-id-cancel}#

Cancel a subscription. Default is end-of-period (sets status='cancelling', cancel_requested_at=now); set immediate=true to terminate right away.

Parameters:

  • subscription_id (path, string, required)
  • authorization (header, string, optional)

Body: CancelRequest — {immediate, reason}

Responses:

  • 200 — Successful Response. Returns: ApiResponse_SubscriptionResponse_ — {data, meta}
  • 422 — Validation Error. Returns: HTTPValidationError — {detail}

GET /api/v1/admin/subscriptions/{subscription_id}/history — Admin Subscription History {#get-api-v1-admin-subscriptions-subscription-id-history}#

Audit-log entries scoped to this subscription, newest first.

Parameters:

  • subscription_id (path, string, required)
  • authorization (header, string, optional)

Responses:

  • 200 — Successful Response. Returns: ApiResponse_list_SubscriptionHistoryEntry__ — {data, meta}
  • 422 — Validation Error. Returns: HTTPValidationError — {detail}

POST /api/v1/admin/subscriptions/{subscription_id}/override — Admin Override Subscription {#post-api-v1-admin-subscriptions-subscription-id-override}#

Parameters:

  • subscription_id (path, string, required)
  • authorization (header, string, optional)

Body: AdminSubscriptionOverrideRequest — {plan_id, status}

Responses:

  • 200 — Successful Response. Returns: ApiResponse_SubscriptionResponse_ — {data, meta}
  • 422 — Validation Error. Returns: HTTPValidationError — {detail}

POST /api/v1/admin/subscriptions/{subscription_id}/resume — Admin Resume Subscription {#post-api-v1-admin-subscriptions-subscription-id-resume}#

Bring a subscription back to 'active' from 'cancelling' or 'suspended'.

Parameters:

  • subscription_id (path, string, required)
  • authorization (header, string, optional)

Responses:

  • 200 — Successful Response. Returns: ApiResponse_SubscriptionResponse_ — {data, meta}
  • 422 — Validation Error. Returns: HTTPValidationError — {detail}

POST /api/v1/admin/subscriptions/{subscription_id}/suspend — Admin Suspend Subscription {#post-api-v1-admin-subscriptions-subscription-id-suspend}#

Suspend an active subscription (admin-driven pause).

Parameters:

  • subscription_id (path, string, required)
  • authorization (header, string, optional)

Responses:

  • 200 — Successful Response. Returns: ApiResponse_SubscriptionResponse_ — {data, meta}
  • 422 — Validation Error. Returns: HTTPValidationError — {detail}
Updated 2026-05-18 01:48:40 View source (.md) rev 2