## Create organization **post** `/v1/organizations` Onboards the authenticated user's partner Organization: creates the local Organization + the creator's admin membership atomically, then mirrors it to WorkOS (creates the WorkOS org and binds the creator as admin). 409 `organization_already_exists` when the user already has an organization (v0: one organization per user). ### Body Parameters - `name: string` - `type: optional "BROKERAGE" or "TPA" or "GENERAL_AGENT" or 3 more` * `BROKERAGE` - BROKERAGE * `TPA` - TPA * `GENERAL_AGENT` - GENERAL_AGENT * `CHANNEL_PARTNER` - CHANNEL_PARTNER * `CONSULTING_FIRM` - CONSULTING_FIRM * `API_PLATFORM` - API_PLATFORM - `"BROKERAGE"` - `"TPA"` - `"GENERAL_AGENT"` - `"CHANNEL_PARTNER"` - `"CONSULTING_FIRM"` - `"API_PLATFORM"` ### Returns - `id: string` Prefixed organization identifier (`org_`). - `idp_org_id: string` IdP-issued tenant id (WorkOS org id). - `idp_provider: "workos" or "vitable"` * `workos` - WorkOS * `vitable` - Vitable - `"workos"` - `"vitable"` - `name: string` Human-readable organization name. - `super_in: boolean` Whether this organization reads across every organization. - `type: "BROKERAGE" or "TPA" or "GENERAL_AGENT" or 3 more` * `BROKERAGE` - Brokerage * `TPA` - TPA * `GENERAL_AGENT` - General Agent * `CHANNEL_PARTNER` - Channel Partner * `CONSULTING_FIRM` - Consulting Firm * `API_PLATFORM` - API Platform - `"BROKERAGE"` - `"TPA"` - `"GENERAL_AGENT"` - `"CHANNEL_PARTNER"` - `"CONSULTING_FIRM"` - `"API_PLATFORM"` ### Example ```http curl https://api.vitablehealth.com/v1/organizations \ -H 'Content-Type: application/json' \ -d '{ "name": "Acme Brokerage" }' ``` #### Response ```json { "id": "org_abc123def456", "name": "Acme Brokerage", "type": "BROKERAGE", "idp_org_id": "org_01J0WORKOS", "idp_provider": "workos", "super_in": false } ```