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

# Update Appclient

> Update Appclient



## OpenAPI

````yaml /api-reference/openapi.json patch /appClients/{appClientId}
openapi: 3.1.0
info:
  title: Cradl API
  version: '2026-07-02T07:54:37Z'
servers:
  - url: https://api.cradl.ai/{basePath}
    variables:
      basePath:
        default: v1
security: []
paths:
  /appClients/{appClientId}:
    patch:
      parameters:
        - in: path
          name: appClientId
          required: true
          schema:
            type: string
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchAppClientId'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppClient'
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: 400 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: 403 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: 404 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '415':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: 415 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: 500 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - OAuth2:
            - appclients:write
components:
  schemas:
    PatchAppClientId:
      title: PATCH /appClients/{appClientId}
      minProperties: 1
      type: object
      properties:
        metadata:
          type: object
        roleIds:
          type: array
          items:
            pattern: ^(cradl|las):role:[0-9A-Za-z-_]{1,32}$
            type: string
        name:
          maxLength: 4096
          type: string
          nullable: true
        description:
          maxLength: 4096
          type: string
          nullable: true
        loginUrls:
          type: array
          items:
            pattern: ^http://localhost.*|^https://.*
            type: string
        defaultLoginUrl:
          pattern: ^http://localhost.*|^https://.*
          type: string
      additionalProperties: false
    AppClient:
      title: appClient
      required:
        - appClientId
        - callbackUrls
        - clientId
        - createdBy
        - createdTime
        - defaultLoginUrl
        - description
        - hasSecret
        - loginUrls
        - logoutUrls
        - metadata
        - name
        - updatedBy
        - updatedTime
      type: object
      properties:
        updatedTime:
          pattern: >-
            ^[0-9]{4}-?[0-9]{2}-?[0-9]{2}(
            |T)?[0-9]{2}:?[0-9]{2}:?[0-9]{2}(.[0-9]{1,6})?(Z|[+][0-9]{2}(:|)[0-9]{2})$
          type: string
          nullable: true
        hasSecret:
          type: boolean
        metadata:
          type: object
          nullable: true
        updatedBy:
          maxLength: 4096
          type: string
          nullable: true
        clientId:
          type: string
        logoutUrls:
          type: array
          items:
            pattern: ^http://localhost.*|^https://.*
            type: string
          nullable: true
        description:
          maxLength: 4096
          type: string
          nullable: true
        callbackUrls:
          type: array
          items:
            pattern: ^http://localhost.*|^https://.*
            type: string
          nullable: true
        loginUrls:
          type: array
          items:
            pattern: ^http://localhost.*|^https://.*
            type: string
          nullable: true
        defaultLoginUrl:
          pattern: ^http://localhost.*|^https://.*
          type: string
          nullable: true
        roleIds:
          type: array
          items:
            pattern: ^(cradl|las):role:[0-9A-Za-z-_]{1,32}$
            type: string
          nullable: true
        createdBy:
          maxLength: 4096
          type: string
        name:
          maxLength: 4096
          type: string
          nullable: true
        mutable:
          type: boolean
        createdTime:
          pattern: >-
            ^[0-9]{4}-?[0-9]{2}-?[0-9]{2}(
            |T)?[0-9]{2}:?[0-9]{2}:?[0-9]{2}(.[0-9]{1,6})?(Z|[+][0-9]{2}(:|)[0-9]{2})$
          type: string
        clientSecret:
          type: string
        appClientId:
          pattern: ^(cradl|las):app-client:[a-z0-9-_]+$
          type: string
      additionalProperties: false
    Error:
      title: Error Schema
      type: object
      properties:
        message:
          type: string
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://auth.cradl.ai/oauth2/token
          scopes:
            actions.runs:read: Read permissions
            actions.runs:write: Write permissions
            actions:read: Read permissions
            actions:write: Write permissions
            agents.runs:read: Read permissions
            agents.runs:write: Write permissions
            agents.statistics:read: Read permissions
            agents:read: Read permissions
            agents:write: Write permissions
            appclients:read: Read permissions
            appclients:write: Write permissions
            documents:read: Read permissions
            documents:write: Write permissions
            hooks.runs:read: Read permissions
            hooks.runs:write: Write permissions
            hooks:read: Read permissions
            hooks:write: Write permissions
            logs:read: Read permissions
            models:read: Read permissions
            models:write: Write permissions
            organizations:read: Read permissions
            organizations:write: Write permissions
            predictions:read: Read permissions
            predictions:write: Write permissions
            users:read: Read permissions
            users:write: Write permissions
            validations.tasks:read: Read permissions
            validations.tasks:write: Write permissions
            validations:read: Read permissions
            validations:write: Write permissions
            workflows:read: Read permissions
            workflows:write: Write permissions

````