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

# Create Operator

> Create an operator for handling payments.



## OpenAPI

````yaml api-reference/payment-acceptance/payment-acceptance-api.yaml post /api/v1/operators
openapi: 3.1.1
info:
  title: Coinbase Commerce API
  description: API for processing payments on the PaymentEscrow smart contract protocol.
  version: v0.0.1
servers:
  - url: https://payments.coinbase.com
security: []
tags:
  - name: Payments
    description: >-
      Endpoints focused on handling payment transactions.


      This includes operations for authorizing funds without immediate capture,
      and capturing previously authorized funds directly via the PaymentEscrow
      smart contract protocol. The endpoints help ensure secure and controlled
      payment processing, including verifying signatures, and updating payment
      statuses.
  - name: Rewards
    description: >-
      Endpoints for managing reward operations.


      These endpoints allow you to independently allocate, distribute, send, and
      deallocate rewards on previously successful payment operations.
  - name: Campaigns
    description: >-
      Endpoints for managing reward campaigns.


      Create and manage campaigns that integrate with the Flywheel smart
      contract to provide reward functionality. Campaigns allow merchants to
      define reward structures with customizable parameters including reward
      percentages and maximum limits.
  - name: coinbase.engine.operator_api.v1.OperatorApiService
paths:
  /api/v1/operators:
    post:
      tags:
        - Operator
      summary: Create Operator
      description: Create an operator for handling payments.
      operationId: OperatorApiService_PostOperator
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: Name of the operator
                  title: Name
                  examples:
                    - test.operator
              description: Request payload for creating an operator.
              title: PostOperatorRequest
              required:
                - name
              examples:
                - name: test.operator
                  status: ACTIVATED
        description: Request payload for creating an operator.
        required: true
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  entity:
                    type: string
                    description: Entity type, usually 'operator'.
                    title: Entity
                    examples:
                      - operator
                  id:
                    type: string
                    description: Unique identifier of the operator.
                    title: Id
                    examples:
                      - op-324235
                  coinbaseUserId:
                    type: string
                    description: Unique coinbase user identifier of the operator.
                    title: Coinbase User Id
                    examples:
                      - cb-user-1234567890
                  name:
                    type: string
                    description: Name of the operator
                    title: Name
                    examples:
                      - Test operator
                  status:
                    description: Current status of the operator.
                    title: Status
                    examples:
                      - ACTIVATED
                    type: string
                    enum:
                      - ACTIVATED
                      - DEACTIVATED
                      - PENDING
                  smartAccountAddresses:
                    type: object
                    additionalProperties:
                      type: object
                      properties:
                        addresses:
                          type: array
                          items:
                            type: string
                      description: List of account addresses
                      title: Addresses
                      examples:
                        - addresses:
                            - 0xwallet1
                            - 0xwallet2
                    description: >-
                      Map of smart account addresses associated with the
                      operator, grouped by network ID.
                    title: Smart Account Addresses
                    examples:
                      - '8453':
                          addresses:
                            - 0xsmartaccount1
                            - 0xsmartaccount2
                  callbackSecret:
                    type: string
                    description: The secret to encrypt callback payload
                    title: Callback Secret
                  createdAt:
                    type: string
                    format: date-time
                    description: Timestamp when the operator was created.
                    title: Created At
                    examples:
                      - '2024-03-20T00:00:00.000Z'
                  updatedAt:
                    type: string
                    format: date-time
                    description: Timestamp when the operator was last updated.
                    title: Updated At
                    examples:
                      - '2024-03-20T00:00:00.000Z'
                description: Representation of an operator
                title: Operator
                required:
                  - entity
                  - id
                  - coinbaseUserId
                  - name
                  - status
                  - smartAccountAddresses
                  - callbackSecret
                  - createdAt
                  - updatedAt
                examples:
                  - entity: operator
                    id: op-324235
                    coinbaseUserId: cb-user-1234567890
                    name: test.operator
                    status: ACTIVATED
                    smartAccountAddresses:
                      - 0xwallet1
                      - 0xwallet2
                    createdAt: '2024-03-20T00:00:00.000Z'
                    updatedAt: '2024-03-20T00:00:00.000Z'
                    callbackSecret: secret
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    format: int32
                  message:
                    type: string
                  details:
                    type: array
                    items:
                      type: object
                      properties:
                        '@type':
                          type: string
                      additionalProperties: {}
      security:
        - Bearer: []
components:
  securitySchemes:
    Bearer:
      type: apiKey
      description: >-
        Authorization header using the Bearer scheme. Learn more about JWT
        tokens in the Coinbase Developer Portal.
      name: Authorization
      in: header

````