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

# Register an OAuth client

> Registers a client with validated redirect URIs. The returned client_secret is present only for a confidential client; retain it privately.

No signed-in session is required. Endpoint-specific tokens, setup secrets or challenges may still be required.

Registers a client with validated redirect URIs. The returned client\_secret is present only for a confidential client; retain it privately.

[Request conventions](https://www.mill.fyi/api-reference/overview.md) · [API keys](https://www.mill.fyi/api-keys.md) · [MCP connections](https://www.mill.fyi/mcp-connections.md)


## OpenAPI

````yaml api-reference/openapi.json POST /oauth/register
openapi: 3.1.0
info:
  title: Mill HTTP API
  version: 1.0.6
  description: >-
    All registered task-board, account, OAuth, MCP transport and health
    operations. MCP tool schemas come from runtime validators; account
    operations follow their server handlers. Example data is fictional.
    Generation imports routes without issuing requests or connecting to a
    database.
servers:
  - url: https://mill-api.example.com
security: []
paths:
  /oauth/register:
    post:
      tags:
        - OAuth and MCP transport
      summary: Register an OAuth client
      description: >-
        Registers a client with validated redirect URIs. The returned
        client_secret is present only for a confidential client; retain it
        privately.


        No signed-in session is required. Endpoint-specific tokens, setup
        secrets or challenges may still be required.
      operationId: post_oauth_register
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                client_name:
                  default: MCP client
                  type: string
                  minLength: 1
                  maxLength: 120
                redirect_uris:
                  minItems: 1
                  maxItems: 20
                  type: array
                  items:
                    type: string
                    maxLength: 2048
                token_endpoint_auth_method:
                  default: client_secret_basic
                  type: string
                  enum:
                    - none
                    - client_secret_basic
                    - client_secret_post
                grant_types:
                  default:
                    - authorization_code
                  minItems: 1
                  maxItems: 2
                  type: array
                  items:
                    type: string
                    enum:
                      - authorization_code
                      - refresh_token
                response_types:
                  default:
                    - code
                  minItems: 1
                  maxItems: 1
                  type: array
                  items:
                    type: string
                    const: code
              required:
                - redirect_uris
      responses:
        '201':
          description: >-
            Successful response. Examples are illustrative; field values vary by
            record.
          content:
            application/json:
              schema:
                type: object
                properties:
                  client_id:
                    type: string
                  client_name:
                    type: string
                  redirect_uris:
                    type: array
                    items:
                      type: string
                  token_endpoint_auth_method:
                    type: string
                additionalProperties: true
                description: >-
                  Illustrative response shape. Fields can be absent in alternate
                  successful flows; see the operation description and example.
              example:
                client_id: 66666666-6666-4666-8666-666666666666
                client_name: Studio assistant
                redirect_uris:
                  - https://client.example.test/callback
                token_endpoint_auth_method: none
        default:
          description: >-
            OAuth failure with error and error_description. Consent/session
            authority may also return the standard Mill error envelope.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  error_description:
                    type: string
      security: []

````

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