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

# Update a client ID

> Update client ID settings including domains and rate limits



## OpenAPI

````yaml /api-reference/openapi.v2.json put /v2/client-ids/{id}
openapi: 3.0.0
info:
  title: Request Network API
  description: API for easily creating and paying Requests with Request Network.
  version: 0.13.0
  contact: {}
servers:
  - url: https://api.request.network
    description: Production server
  - url: https://api.stage.request.network
    description: Staging server
  - url: http://127.0.0.1:8080
    description: Local development server
security: []
tags:
  - name: V2/Request
    description: Core payment request operations (V2)
  - name: V2/Payments
    description: Payment search and management operations (V2)
  - name: V2/Payouts
    description: Pay a request without creating one first (V2)
  - name: V2/Payer
    description: Crypto-to-fiat payer management operations (V2)
  - name: V2/Currencies
    description: Currency operations (V2)
  - name: V2/Client IDs
    description: Client ID management (V2)
  - name: V2/Payee Destination
    description: Payee destination management (V2)
externalDocs:
  description: Request Network Docs
  url: https://docs.request.network/request-network-api
paths:
  /v2/client-ids/{id}:
    put:
      tags:
        - Client IDs
        - V2/Client IDs
      summary: Update a client ID
      description: Update client ID settings including domains and rate limits
      operationId: ClientIdV2Controller_update_v2
      parameters:
        - name: id
          required: true
          in: path
          description: Client ID internal identifier
          schema:
            example: '123'
            type: string
        - name: x-api-key
          in: header
          description: API key for authentication
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                label:
                  type: string
                  minLength: 1
                  maxLength: 100
                allowedDomains:
                  type: array
                  items:
                    type: string
                    format: uri
                  minItems: 1
                  maxItems: 10
                  description: List of allowed domain origins (normalized)
                feePercentage:
                  type: string
                  minLength: 1
                  description: >-
                    Fee percentage (e.g., '1' = 1%, '2.5' = 2.5%, '2.55' =
                    2.55%). Maximum 2 decimal places. If set to '0', allows API
                    request fees to take precedence. If set to any other value,
                    overrides any fee passed via API. Set to null to unset.
                  nullable: true
                feeAddress:
                  type: string
                  description: >-
                    Wallet address to receive fees. Required if feePercentage is
                    set. Set to null to unset.
                  nullable: true
                operatorWalletAddress:
                  type: string
                  description: >-
                    Wallet address that will act as operator for commerce
                    payments. The API operator wallet will execute transactions
                    on behalf of this address. Can be a smart wallet that has
                    granted permissions to the API operator. Set to null to
                    unset. Note: Changing this will only affect new payments;
                    existing payments will continue using their original
                    operator address.
                  nullable: true
                defaultPreApprovalExpiry:
                  type: integer
                  exclusiveMinimum: true
                  description: >-
                    Default pre-approval expiry duration in seconds for commerce
                    transactions. If set, overrides the value passed in
                    /v2/commerce-payments/authorize/calldata endpoint. Set to
                    null to unset.
                  nullable: true
                  minimum: 0
                defaultAuthorizationExpiry:
                  type: integer
                  exclusiveMinimum: true
                  description: >-
                    Default authorization expiry duration in seconds for
                    commerce transactions. If set, overrides the value passed in
                    /v2/commerce-payments/authorize/calldata endpoint. Set to
                    null to unset.
                  nullable: true
                  minimum: 0
                status:
                  type: string
                  enum:
                    - active
                    - inactive
                    - revoked
            examples:
              updateBasicInfo:
                summary: Update basic client ID information
                value:
                  label: Updated Client ID Label
                  allowedDomains:
                    - https://newdomain.com
              addFeeConfiguration:
                summary: Add fee configuration to existing client ID
                value:
                  feePercentage: '1.5'
                  feeAddress: '0x6923831ACf5c327260D7ac7C9DfF5b1c3cB3C7D7'
              removeFeeConfiguration:
                summary: Remove fee configuration from client ID
                value:
                  feePercentage: null
                  feeAddress: null
              updateStatus:
                summary: Update client ID status
                value:
                  status: inactive
              updateOperatorWallet:
                summary: Update operator wallet address for commerce payments
                value:
                  operatorWalletAddress: '0x1234567890123456789012345678901234567890'
              removeOperatorWallet:
                summary: Remove operator wallet address (revert to API operator)
                value:
                  operatorWalletAddress: null
              setDefaultExpirySettings:
                summary: Set default expiry settings for commerce payments (in seconds)
                value:
                  defaultPreApprovalExpiry: 3600
                  defaultAuthorizationExpiry: 86400
              removeDefaultExpirySettings:
                summary: Remove default expiry settings
                value:
                  defaultPreApprovalExpiry: null
                  defaultAuthorizationExpiry: null
      responses:
        '200':
          description: Client ID updated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  clientId:
                    type: string
                  label:
                    type: string
                  allowedDomains:
                    type: array
                    items:
                      type: string
                  feePercentage:
                    type: string
                    nullable: true
                  feeAddress:
                    type: string
                    nullable: true
                  operatorWalletAddress:
                    type: string
                    nullable: true
                  defaultPreApprovalExpiry:
                    type: number
                    nullable: true
                  defaultAuthorizationExpiry:
                    type: number
                    nullable: true
                  status:
                    type: string
                  updatedAt:
                    type: string
        '400':
          description: Bad request - validation failed or cannot reactivate revoked ID
        '401':
          description: Unauthorized
        '404':
          description: Client ID not found
        '429':
          description: Too Many Requests

````