> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aixy-gateway.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Browser Create Organization

> Create an organization for the current personal account and rotate its session.

The Owner identity comes from the authenticated session. Existing credentials remain
unchanged. An SSO proof retains its originating connection and gains access only to
the organization it creates; other organizations retain their authentication policies.



## OpenAPI

````yaml /openapi.json post /api/auth/organizations
openapi: 3.1.0
info:
  title: Aixy Gateway API
  version: 0.1.0
  description: >-
    Route requests to configured AI providers through OpenAI- and
    Anthropic-compatible APIs. Aixy applies project access, model policies,
    guardrails, routing, budgets, and usage attribution before forwarding
    inference traffic.
servers:
  - url: https://api.aixy-gateway.com
    description: Aixy production gateway
security: []
tags:
  - name: operations
    description: Check process liveness and traffic readiness.
  - name: authentication
    description: Authenticate trusted server-side clients.
  - name: organizations
    description: Manage the organization and its lifecycle.
  - name: projects
    description: Create projects and manage project membership.
  - name: users
    description: Manage organization users, roles, and invitations.
  - name: teams
    description: Manage teams and team membership.
  - name: api-keys
    description: Manage project-scoped gateway API keys.
  - name: provider-credentials
    description: Manage organization and project provider credentials.
  - name: provider-catalog
    description: Discover providers supported by the gateway.
  - name: provider-models
    description: Discover and control models exposed by configured providers.
  - name: routing
    description: Configure stable model aliases, routing strategies, and fallbacks.
  - name: guardrails
    description: Configure prompt and sensitive-data protection policies.
  - name: identity connections
    description: Configure tenant-scoped enterprise identity federation.
  - name: playground
    description: Exercise configured models through the gateway.
  - name: cost-control
    description: Inspect spend and enforce budgets across tenant scopes.
  - name: metrics
    description: Inspect usage, token, latency, and error metrics.
  - name: activity
    description: Diagnose individual model requests and manage opt-in content capture.
  - name: monitors
    description: Configure operational monitors and notification channels.
  - name: audit
    description: Query, verify, and export the organization audit log.
  - name: telemetry exports
    description: Export telemetry to organization-owned destinations.
  - name: billing
    description: Inspect and manage the organization subscription.
  - name: models
    description: List models available to a project-scoped gateway API key.
  - name: inference
    description: Run model inference through the Aixy data plane.
  - name: pricing
    description: Manage versioned pricing attribution rules.
  - name: system
    description: Discover gateway capabilities and providers.
  - name: MCP beta
    description: Mcp beta operations exposed by the gateway.
  - name: cost-optimization
    description: Cost optimization operations exposed by the gateway.
  - name: custom domains
    description: Custom domains operations exposed by the gateway.
  - name: data processing
    description: Data processing operations exposed by the gateway.
  - name: feature flags
    description: Feature flags operations exposed by the gateway.
  - name: privacy
    description: Privacy operations exposed by the gateway.
  - name: roles
    description: Roles operations exposed by the gateway.
paths:
  /api/auth/organizations:
    post:
      tags:
        - authentication
      summary: Browser Create Organization
      description: >-
        Create an organization for the current personal account and rotate its
        session.


        The Owner identity comes from the authenticated session. Existing
        credentials remain

        unchanged. An SSO proof retains its originating connection and gains
        access only to

        the organization it creates; other organizations retain their
        authentication policies.
      operationId: browser_create_organization
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrganizationCreationRequest'
        required: true
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PersonalSessionResponse'
        '400':
          description: The request is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GatewayErrorResponse'
        '401':
          description: Authentication is required or invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GatewayErrorResponse'
        '403':
          description: The authenticated account cannot perform this operation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GatewayErrorResponse'
        '409':
          description: The request conflicts with the current resource state.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GatewayErrorResponse'
        '413':
          description: The request body exceeds the endpoint limit.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GatewayErrorResponse'
        '422':
          description: The request is semantically invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GatewayErrorResponse'
        '503':
          description: The control-plane capability is unavailable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GatewayErrorResponse'
        4XX:
          description: The request was rejected by validation or authorization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GatewayErrorResponse'
      security:
        - BrowserSession: []
components:
  schemas:
    OrganizationCreationRequest:
      properties:
        organization_name:
          type: string
          title: Organization Name
        organization_slug:
          type: string
          title: Organization Slug
        legal_acceptance:
          $ref: '#/components/schemas/LegalAcceptanceStatement'
        turnstile_token:
          anyOf:
            - type: string
              maxLength: 2048
            - type: 'null'
          title: Turnstile Token
          description: >-
            Single-use Turnstile token, required when registration protection is
            enabled.
          writeOnly: true
      additionalProperties: false
      type: object
      required:
        - organization_name
        - organization_slug
        - legal_acceptance
      title: OrganizationCreationRequest
    PersonalSessionResponse:
      properties:
        person:
          $ref: '#/components/schemas/PersonResponse'
        organizations:
          items:
            $ref: '#/components/schemas/OrganizationChoiceResponse'
          type: array
          title: Organizations
        account:
          anyOf:
            - $ref: '#/components/schemas/AccountResponse'
            - type: 'null'
        expires_at:
          type: string
          title: Expires At
        organization:
          anyOf:
            - $ref: '#/components/schemas/OrganizationResponse'
            - type: 'null'
        user:
          anyOf:
            - $ref: '#/components/schemas/AccountUserResponse'
            - type: 'null'
        permissions:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Permissions
      type: object
      required:
        - person
        - organizations
        - account
        - expires_at
      title: PersonalSessionResponse
    GatewayErrorResponse:
      properties:
        error:
          $ref: '#/components/schemas/GatewayErrorDetail'
      type: object
      required:
        - error
      title: GatewayErrorResponse
    LegalAcceptanceStatement:
      properties:
        terms_accepted:
          type: boolean
          title: Terms Accepted
        privacy_notice_acknowledged:
          type: boolean
          title: Privacy Notice Acknowledged
        terms_version:
          type: string
          title: Terms Version
        privacy_notice_version:
          type: string
          title: Privacy Notice Version
      type: object
      required:
        - terms_accepted
        - privacy_notice_acknowledged
        - terms_version
        - privacy_notice_version
      title: LegalAcceptanceStatement
    PersonResponse:
      properties:
        id:
          type: string
          title: Id
        email:
          type: string
          title: Email
        name:
          type: string
          title: Name
      type: object
      required:
        - id
        - email
        - name
      title: PersonResponse
    OrganizationChoiceResponse:
      properties:
        id:
          type: string
          title: Id
        name:
          type: string
          title: Name
        slug:
          type: string
          title: Slug
        user_id:
          type: string
          title: User Id
        role:
          type: string
          title: Role
        authentication_required:
          anyOf:
            - type: string
              const: sso
            - type: 'null'
          title: Authentication Required
      type: object
      required:
        - id
        - name
        - slug
        - user_id
        - role
      title: OrganizationChoiceResponse
    AccountResponse:
      properties:
        organization:
          $ref: '#/components/schemas/OrganizationResponse'
        user:
          $ref: '#/components/schemas/AccountUserResponse'
        permissions:
          items:
            type: string
          type: array
          title: Permissions
        expires_at:
          type: string
          title: Expires At
      type: object
      required:
        - organization
        - user
        - permissions
        - expires_at
      title: AccountResponse
    OrganizationResponse:
      properties:
        id:
          type: string
          title: Id
        object:
          type: string
          const: organization
          title: Object
          default: organization
        name:
          type: string
          title: Name
        slug:
          type: string
          title: Slug
      type: object
      required:
        - id
        - name
        - slug
      title: OrganizationResponse
    AccountUserResponse:
      properties:
        id:
          type: string
          title: Id
        object:
          type: string
          const: organization.user
          title: Object
          default: organization.user
        organization_id:
          type: string
          title: Organization Id
        email:
          type: string
          title: Email
        name:
          type: string
          title: Name
        role:
          type: string
          title: Role
        role_label:
          anyOf:
            - type: string
            - type: 'null'
          title: Role Label
        project_ids:
          items:
            type: string
          type: array
          title: Project Ids
      type: object
      required:
        - id
        - organization_id
        - email
        - name
        - role
        - project_ids
      title: AccountUserResponse
    GatewayErrorDetail:
      properties:
        code:
          type: string
          title: Code
        message:
          type: string
          title: Message
        details:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Details
      type: object
      required:
        - code
        - message
      title: GatewayErrorDetail
  securitySchemes:
    BrowserSession:
      type: apiKey
      description: Secure same-origin browser session cookie.
      in: cookie
      name: gateway_session

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.