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

# Create

> Create provisions a durable static OAuth client for a pre-registered
 consumer, eligible for authorization_code + refresh_token only. A
 secret-based client's secret is returned once, on this response.



## OpenAPI

````yaml https://spec.speakeasy.com/conductor-one/conductorone/my-source-with-code-samples post /api/v1/iam/external_oauth_clients
openapi: 3.1.0
info:
  description: The C1 API is a HTTP API for managing C1 resources.
  title: C1 API
  version: 0.1.0-alpha
servers:
  - description: The C1 API server for the current tenant.
    url: https://{tenantDomain}.conductor.one
    variables:
      tenantDomain:
        default: example
        description: The domain of the tenant to use for this request.
security:
  - bearerAuth: []
    oauth: []
paths:
  /api/v1/iam/external_oauth_clients:
    post:
      tags:
        - External OAuth Client
      summary: Create
      description: |-
        Create provisions a durable static OAuth client for a pre-registered
         consumer, eligible for authorization_code + refresh_token only. A
         secret-based client's secret is returned once, on this response.
      operationId: c1.api.iam.v1.ExternalOAuthClientService.Create
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/c1.api.iam.v1.ExternalOAuthClientServiceCreateRequest
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/c1.api.iam.v1.ExternalOAuthClientServiceCreateResponse
          description: Successful response
components:
  schemas:
    c1.api.iam.v1.ExternalOAuthClientServiceCreateRequest:
      description: The ExternalOAuthClientServiceCreateRequest message.
      properties:
        authMethod:
          description: The authMethod field.
          enum:
            - EXTERNAL_O_AUTH_CLIENT_AUTH_METHOD_UNSPECIFIED
            - EXTERNAL_O_AUTH_CLIENT_AUTH_METHOD_CLIENT_SECRET_BASIC
            - EXTERNAL_O_AUTH_CLIENT_AUTH_METHOD_CLIENT_SECRET_POST
            - EXTERNAL_O_AUTH_CLIENT_AUTH_METHOD_PRIVATE_KEY_JWT
          type: string
          x-speakeasy-unknown-values: allow
        clientName:
          description: >-
            Operator-facing name shown on the consent screen and in the admin
            list.
          type: string
        publicJwks:
          description: >-
            RFC 7517 JWK Set. Required when auth_method is PRIVATE_KEY_JWT and
            rejected
             otherwise.
          type: string
        redirectUris:
          description: >-
            Exact redirect URIs the client may be sent to. Microsoft's fixed
            literal,
             for example, is registered here.
          items:
            type: string
          type:
            - array
            - 'null'
      title: External O Auth Client Service Create Request
      type: object
      x-speakeasy-name-override: ExternalOAuthClientServiceCreateRequest
    c1.api.iam.v1.ExternalOAuthClientServiceCreateResponse:
      description: The ExternalOAuthClientServiceCreateResponse message.
      properties:
        client:
          oneOf:
            - $ref: '#/components/schemas/c1.api.iam.v1.ExternalOAuthClientInfo'
            - type: 'null'
        clientSecret:
          description: Revealed once. Empty for PRIVATE_KEY_JWT.
          type: string
      title: External O Auth Client Service Create Response
      type: object
      x-speakeasy-name-override: ExternalOAuthClientServiceCreateResponse
    c1.api.iam.v1.ExternalOAuthClientInfo:
      description: >-
        ExternalOAuthClientInfo is the API representation of an
        ExternalOAuthClient.
      properties:
        authMethod:
          description: Token-endpoint authentication method. Populated for static clients.
          enum:
            - EXTERNAL_O_AUTH_CLIENT_AUTH_METHOD_UNSPECIFIED
            - EXTERNAL_O_AUTH_CLIENT_AUTH_METHOD_CLIENT_SECRET_BASIC
            - EXTERNAL_O_AUTH_CLIENT_AUTH_METHOD_CLIENT_SECRET_POST
            - EXTERNAL_O_AUTH_CLIENT_AUTH_METHOD_PRIVATE_KEY_JWT
          type: string
          x-speakeasy-unknown-values: allow
        clientId:
          description: The clientId field.
          type: string
        clientIdType:
          description: The clientIdType field.
          enum:
            - CLIENT_ID_TYPE_UNSPECIFIED
            - CLIENT_ID_TYPE_DCR
            - CLIENT_ID_TYPE_METADATA_URL
            - CLIENT_ID_TYPE_APP
            - CLIENT_ID_TYPE_STATIC
          type: string
          x-speakeasy-unknown-values: allow
        clientIdUrl:
          description: The clientIdUrl field.
          type: string
        clientName:
          description: The clientName field.
          type: string
        createdAt:
          format: date-time
          type:
            - string
            - 'null'
        redirectUris:
          description: >-
            Registered redirect URIs. Populated for static clients; DCR/CIMD
            derive
             their redirect set from the registration or metadata document.
          items:
            type: string
          type:
            - array
            - 'null'
        softwareId:
          description: >-
            DCR software_id from the client metadata document (empty for CIMD
            clients).
          type: string
        updatedAt:
          format: date-time
          type:
            - string
            - 'null'
        verifiedDomain:
          description: >-
            Verified domain from client_id_url (e.g. "cursor.com"). Empty for
            DCR clients.
          type: string
        wellKnownClient:
          description: The wellKnownClient field.
          enum:
            - WELL_KNOWN_CLIENT_UNSPECIFIED
            - WELL_KNOWN_CLIENT_UNKNOWN
            - WELL_KNOWN_CLIENT_CLAUDE_AI
            - WELL_KNOWN_CLIENT_CLAUDE_DESKTOP
            - WELL_KNOWN_CLIENT_CLAUDE_CODE
            - WELL_KNOWN_CLIENT_MCP_INSPECTOR
            - WELL_KNOWN_CLIENT_CHATGPT
            - WELL_KNOWN_CLIENT_VSCODE
            - WELL_KNOWN_CLIENT_CURSOR
            - WELL_KNOWN_CLIENT_WINDSURF
            - WELL_KNOWN_CLIENT_ZED
            - WELL_KNOWN_CLIENT_JETBRAINS
            - WELL_KNOWN_CLIENT_DOCKER_MCP_TOOLKIT
          type: string
          x-speakeasy-unknown-values: allow
      title: External O Auth Client Info
      type: object
      x-speakeasy-name-override: ExternalOAuthClientInfo
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http
    oauth:
      description: >-
        This API uses OAuth2 with the Client Credential flow.

        Client Credentials must be sent in the BODY, not the headers.

        For an example of how to implement this, refer to the
        [c1TokenSource.Token()](https://github.com/ConductorOne/conductorone-sdk-go/blob/3375fe7c0126d17e7ec4e711693dee7b791023aa/token_source.go#L101-L187)
        function.
      flows:
        clientCredentials:
          scopes: {}
          tokenUrl: /auth/v1/token
      type: oauth2

````