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

# Provision Client Endpoint



## OpenAPI

````yaml /openapi.json post /v1/provisioning/clients
openapi: 3.1.0
info:
  description: Causeloop Platform Backend
  title: Causeloop API
  version: 1.0.0
servers: []
security: []
paths:
  /v1/provisioning/clients:
    post:
      tags:
        - provisioning
      summary: Provision Client Endpoint
      operationId: provision_client_endpoint_v1_provisioning_clients_post
      parameters:
        - in: header
          name: Idempotency-Key
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Idempotency-Key
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProvisionClientRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProvisionClientResponse'
          description: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
      security:
        - HTTPBearer: []
components:
  schemas:
    ProvisionClientRequest:
      properties:
        isolation_mode:
          anyOf:
            - type: string
            - type: 'null'
          title: Isolation Mode
        issue_api_key:
          default: true
          title: Issue Api Key
          type: boolean
        organization:
          $ref: '#/components/schemas/ProvisionOrganization'
        owner:
          $ref: '#/components/schemas/ProvisionOwner'
        send_owner_invite:
          default: true
          title: Send Owner Invite
          type: boolean
        workspace:
          anyOf:
            - $ref: '#/components/schemas/ProvisionWorkspace'
            - type: 'null'
      required:
        - organization
        - owner
      title: ProvisionClientRequest
      type: object
    ProvisionClientResponse:
      properties:
        api_key:
          anyOf:
            - $ref: '#/components/schemas/ProvisionedApiKey'
            - type: 'null'
        created:
          title: Created
          type: boolean
        organization:
          $ref: '#/components/schemas/ProvisionOrganizationOut'
        owner:
          $ref: '#/components/schemas/ProvisionOwnerOut'
        owner_invite:
          anyOf:
            - $ref: '#/components/schemas/ProvisionedInvite'
            - type: 'null'
        workspace:
          $ref: '#/components/schemas/ProvisionWorkspaceOut'
      required:
        - created
        - organization
        - workspace
        - owner
      title: ProvisionClientResponse
      type: object
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          title: Detail
          type: array
      title: HTTPValidationError
      type: object
    ProvisionOrganization:
      properties:
        name:
          minLength: 1
          title: Name
          type: string
        plan:
          default: free
          enum:
            - free
            - starter
            - growth
            - enterprise
          title: Plan
          type: string
        seats:
          default: 10
          minimum: 0
          title: Seats
          type: integer
        slug:
          minLength: 1
          pattern: ^[a-z0-9][a-z0-9-]*$
          title: Slug
          type: string
        timezone:
          default: UTC
          title: Timezone
          type: string
      required:
        - name
        - slug
      title: ProvisionOrganization
      type: object
    ProvisionOwner:
      properties:
        email:
          format: email
          title: Email
          type: string
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
      required:
        - email
      title: ProvisionOwner
      type: object
    ProvisionWorkspace:
      properties:
        name:
          minLength: 1
          title: Name
          type: string
      required:
        - name
      title: ProvisionWorkspace
      type: object
    ProvisionedApiKey:
      properties:
        id:
          title: Id
          type: string
        note:
          default: shown once — store it securely; it cannot be retrieved again
          title: Note
          type: string
        scopes:
          items:
            type: string
          title: Scopes
          type: array
        secret:
          title: Secret
          type: string
      required:
        - id
        - secret
        - scopes
      title: ProvisionedApiKey
      type: object
    ProvisionOrganizationOut:
      properties:
        id:
          title: Id
          type: string
        name:
          title: Name
          type: string
        plan:
          title: Plan
          type: string
        slug:
          title: Slug
          type: string
      required:
        - id
        - slug
        - name
        - plan
      title: ProvisionOrganizationOut
      type: object
    ProvisionOwnerOut:
      properties:
        email:
          title: Email
          type: string
        membership_id:
          title: Membership Id
          type: string
        role:
          title: Role
          type: string
        user_id:
          title: User Id
          type: string
      required:
        - user_id
        - membership_id
        - email
        - role
      title: ProvisionOwnerOut
      type: object
    ProvisionedInvite:
      properties:
        expires_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Expires At
        id:
          title: Id
          type: string
        url:
          title: Url
          type: string
      required:
        - id
        - url
      title: ProvisionedInvite
      type: object
    ProvisionWorkspaceOut:
      properties:
        id:
          title: Id
          type: string
        name:
          title: Name
          type: string
      required:
        - id
        - name
      title: ProvisionWorkspaceOut
      type: object
    ValidationError:
      properties:
        ctx:
          title: Context
          type: object
        input:
          title: Input
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          title: Location
          type: array
        msg:
          title: Message
          type: string
        type:
          title: Error Type
          type: string
      required:
        - loc
        - msg
        - type
      title: ValidationError
      type: object
  securitySchemes:
    HTTPBearer:
      scheme: bearer
      type: http

````