---
title: "Start an organization subscription checkout"
method: POST
path: "/api/v1/orgs/checkout"
tags: ["Billing"]
---

# Start an organization subscription checkout

`POST /api/v1/orgs/checkout`

## Request

- Base URL: `https://api.skills-hub.ai`
- URL: `https://api.skills-hub.ai/api/v1/orgs/checkout`
- Auth: one of:
  - HTTP bearer
  - API key in header `Authorization`

Creates a Stripe Checkout session (subscription mode) for the org paywall and returns the hosted checkout URL. Optional body `{ plan: "team" | "business" }` selects the tier (defaults to `team`). Requires an authenticated user; rejected if the caller already has an active subscription or already belongs to an organization.

## Response `200`

Successful response. The returned fields are described in this endpoint's summary/description; typed per-field response schemas are being added incrementally.

- object
  - `checkoutUrl` string, nullable

---

[API](https://skmtc.dev/skills-hub/apis/skills-hub-ai-api.md) · [All operations](https://skmtc.dev/skills-hub/apis/skills-hub-ai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/skills-hub/apis/skills-hub-ai-api/revisions/cb5d46d80300?raw)
