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

# Fulfill payment request

> Fulfill an open payment request from inside the authenticated app.



## OpenAPI

````yaml /api-reference/openapi.json post /payment-requests/{paymentRequestId}/fulfill
openapi: 3.1.1
info:
  title: Natural API
  version: 0.2.0
  description: >-
    Natural's payments API for autonomous agents.


    **Base URL:** `https://api.natural.co`


    Agents and coding assistants should prefer the hosted MCP server at
    `https://mcp.natural.co` when an MCP-aware host runs the agent, the Natural
    CLI for terminal/CI workflows, and the official SDKs for application
    runtimes they own. Use direct HTTP only for explicit low-level integrations,
    unsupported SDK gaps, or infrastructure work where REST is required.


    For support: support@natural.co
servers:
  - url: https://api.natural.co
    description: Production
security: []
tags:
  - name: Agents
    description: Agent management
  - name: Customers
    description: Customer management
  - name: Counterparties
    description: Counterparty management
  - name: Payments
    description: Payment operations
  - name: Transactions
    description: Transaction activity and history operations
  - name: Transfers
    description: Deposit and withdrawal operations
  - name: PaymentRequests
    description: Payment-request management
  - name: Approvals
    description: Approval review operations
  - name: Invitations
    description: Party invitation management
  - name: Identity
    description: Caller identity introspection
  - name: Parties
    description: Party and organization management
  - name: Wallets
    description: Wallet balance, deposits, withdrawals, and external accounts
  - name: External Accounts
    description: Linked external bank accounts
  - name: API Keys
    description: API key management
  - name: Agent Keys
    description: Agent key management
  - name: Webhooks
    description: Webhook endpoint management
  - name: Events
    description: Webhook event log access
paths:
  /payment-requests/{paymentRequestId}/fulfill:
    post:
      tags:
        - PaymentRequests
      summary: Fulfill payment request
      description: Fulfill an open payment request from inside the authenticated app.
      operationId: paymentRequests.fulfill
      parameters:
        - name: paymentRequestId
          in: path
          required: true
          schema:
            type: string
            pattern: ^prq_[0-9a-f]{32}$
        - name: Idempotency-Key
          in: header
          required: true
          schema:
            type: string
          description: >-
            Unique key for idempotent request handling. If a request with the
            same key was already processed, the original response is returned.
        - name: X-Agent-ID
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
          description: Agent ID (agt_xxx) identifying which agent is making the request.
        - name: X-Instance-ID
          in: header
          required: false
          schema:
            anyOf:
              - type: string
                maxLength: 1024
              - type: 'null'
          description: >-
            Required when X-Agent-ID is present. Session or conversation ID for
            agent observability.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                partyId:
                  type: string
                  pattern: ^pty_[0-9a-f]{32}$
                  description: >-
                    Effective payer party ID (pty_*) for delegated payment
                    request fulfillment.
                data:
                  type: object
                  properties:
                    attributes:
                      type: object
                      properties:
                        paymentSource:
                          anyOf:
                            - type: object
                              properties:
                                type:
                                  type: string
                                  enum:
                                    - wallet
                                walletId:
                                  type: string
                                  pattern: ^wal_[0-9a-f]{32}$
                              required:
                                - type
                                - walletId
                              additionalProperties: false
                            - type: object
                              properties:
                                type:
                                  type: string
                                  enum:
                                    - external_account
                                externalAccountId:
                                  type: string
                                  pattern: ^eac_[0-9a-f]{32}$
                              required:
                                - type
                                - externalAccountId
                              additionalProperties: false
                      required:
                        - paymentSource
                      additionalProperties: false
                  required:
                    - attributes
                  additionalProperties: false
              required:
                - data
              additionalProperties: false
            examples:
              default:
                summary: Default
                value:
                  data:
                    attributes:
                      paymentSource:
                        type: wallet
                        walletId: wal_550e8400e29b41d4a716446655440000
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      type:
                        type: string
                        enum:
                          - payment
                      id:
                        type: string
                        pattern: ^pay_[0-9a-f]{32}$
                      attributes:
                        type: object
                        properties:
                          amount:
                            type: integer
                            description: Amount in cents
                          currency:
                            type: string
                            description: Currency code
                          status:
                            enum:
                              - CREATED
                              - PROCESSING
                              - PENDING_CLAIM
                              - IN_REVIEW
                              - COMPLETED
                              - FAILED
                              - RETURNED
                              - APPROVAL_DENIED
                              - CANCELED
                            type: string
                            description: Payment status
                          description:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Payment description
                          createdAt:
                            type: string
                            description: When this payment was created
                          updatedAt:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: When this payment was last updated
                        required:
                          - amount
                          - currency
                          - status
                          - description
                          - createdAt
                          - updatedAt
                        additionalProperties: false
                        title: PaymentAttributes
                        description: Resource attributes
                      relationships:
                        type: object
                        properties:
                          sender:
                            type: object
                            properties:
                              data:
                                anyOf:
                                  - type: object
                                    properties:
                                      type:
                                        description: Resource type
                                        type: string
                                        enum:
                                          - party
                                      id:
                                        type: string
                                        pattern: ^pty_[0-9a-f]{32}$
                                    required:
                                      - type
                                      - id
                                    additionalProperties: false
                                    title: ResourceIdentifier
                                    description: Related resource identifier
                                  - type: 'null'
                            required:
                              - data
                            additionalProperties: false
                            title: NullableToOneRelationship
                            description: >-
                              Party that initiated the payment, when the sender
                              is on Natural.
                          recipient:
                            type: object
                            properties:
                              data:
                                anyOf:
                                  - type: object
                                    properties:
                                      type:
                                        description: Resource type
                                        type: string
                                        enum:
                                          - party
                                      id:
                                        type: string
                                        pattern: ^pty_[0-9a-f]{32}$
                                    required:
                                      - type
                                      - id
                                    additionalProperties: false
                                    title: ResourceIdentifier
                                    description: Related resource identifier
                                  - type: 'null'
                            required:
                              - data
                            additionalProperties: false
                            title: NullableToOneRelationship
                            description: Recipient party for this payment, when known.
                          recipientAgent:
                            type: object
                            properties:
                              data:
                                anyOf:
                                  - type: object
                                    properties:
                                      type:
                                        description: Resource type
                                        type: string
                                        enum:
                                          - agent
                                      id:
                                        type: string
                                        pattern: ^agt_[0-9a-f]{32}$
                                    required:
                                      - type
                                      - id
                                    additionalProperties: false
                                    title: ResourceIdentifier
                                    description: Related resource identifier
                                  - type: 'null'
                            required:
                              - data
                            additionalProperties: false
                            title: NullableToOneRelationship
                            description: >-
                              Recipient agent when the caller addressed an agent
                              ID. Null otherwise, including when the recipient
                              was addressed as an email, phone, or party ID.
                          transaction:
                            type: object
                            properties:
                              data:
                                anyOf:
                                  - type: object
                                    properties:
                                      type:
                                        description: Resource type
                                        type: string
                                        enum:
                                          - transaction
                                      id:
                                        type: string
                                    required:
                                      - type
                                      - id
                                    additionalProperties: false
                                    title: ResourceIdentifier
                                    description: Related resource identifier
                                  - type: 'null'
                            required:
                              - data
                            additionalProperties: false
                            title: NullableToOneRelationship
                            description: >-
                              Sender-side transaction row for this payment, when
                              available.
                          paymentRequest:
                            type: object
                            properties:
                              data:
                                anyOf:
                                  - type: object
                                    properties:
                                      type:
                                        description: Resource type
                                        type: string
                                        enum:
                                          - paymentRequest
                                      id:
                                        type: string
                                        pattern: ^prq_[0-9a-f]{32}$
                                    required:
                                      - type
                                      - id
                                    additionalProperties: false
                                    title: ResourceIdentifier
                                    description: Related resource identifier
                                  - type: 'null'
                            required:
                              - data
                            additionalProperties: false
                            title: NullableToOneRelationship
                            description: >-
                              Payment request that produced this payment, when
                              applicable.
                        required:
                          - sender
                          - recipient
                          - recipientAgent
                          - transaction
                          - paymentRequest
                        additionalProperties: false
                        title: PaymentRelationships
                        description: Resource relationships
                    required:
                      - type
                      - id
                      - attributes
                      - relationships
                    additionalProperties: false
                    title: PaymentResource
                required:
                  - data
                additionalProperties: false
              examples:
                default:
                  summary: Default
                  value:
                    data:
                      type: payment
                      id: pay_550e8400e29b41d4a716446655440000
                      attributes:
                        amount: 2500
                        currency: USD
                        status: PROCESSING
                        description: Invoice 7
                        createdAt: '2026-04-15T00:00:00.000Z'
                        updatedAt: '2026-04-15T00:00:00.000Z'
                      relationships:
                        sender:
                          data:
                            type: party
                            id: pty_550e8400e29b41d4a716446655440000
                        recipient:
                          data:
                            type: party
                            id: pty_019cd1798d617f65a79cb965dda9eac3
                        recipientAgent:
                          data: null
                        transaction:
                          data: null
                        paymentRequest:
                          data:
                            type: paymentRequest
                            id: prq_550e8400e29b41d4a716446655440000
          headers:
            X-RateLimit-Limit:
              description: Maximum requests allowed per window
              schema:
                type: integer
            X-RateLimit-Remaining:
              description: Requests remaining in current window
              schema:
                type: integer
            X-RateLimit-Reset:
              description: Unix timestamp when rate limit resets
              schema:
                type: integer
        '400':
          description: Validation Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    minItems: 1
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          description: Stable lower-snake-case public error code
                        detail:
                          type: string
                          description: Safe user-facing error detail
                        status:
                          type: string
                          description: HTTP status code as a string
                        source:
                          type: object
                          description: Location of the invalid request value
                          properties:
                            pointer:
                              type: string
                            parameter:
                              type: string
                            header:
                              type: string
                          additionalProperties: false
                        meta:
                          type: object
                          description: >-
                            Error metadata. Public responses include supportId
                            by default and may include allowlisted provider
                            recovery metadata.
                          properties:
                            supportId:
                              type: string
                              description: Request/support ID for troubleshooting
                            connectionStatus:
                              type: string
                              enum:
                                - login_required
                                - disconnected
                              description: >-
                                External account connection state when the error
                                is repairable by relinking
                            provider:
                              type: object
                              properties:
                                name:
                                  type: string
                                  enum:
                                    - plaid
                                  description: Provider that returned the underlying error
                                errorCode:
                                  type: string
                                  description: Provider error code, when available
                                errorType:
                                  type: string
                                  description: Provider error type, when available
                                requestId:
                                  type: string
                                  description: Provider request ID for troubleshooting
                              required:
                                - name
                              additionalProperties: false
                          required:
                            - supportId
                          additionalProperties: false
                      required:
                        - code
                        - detail
                        - status
                        - meta
                      additionalProperties: false
                required:
                  - errors
                additionalProperties: false
              examples:
                default:
                  summary: Default
                  value:
                    errors:
                      - code: invalid_value
                        detail: A request value is invalid.
                        status: '400'
                        meta:
                          supportId: req_a1b2c3d4e5f6
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    minItems: 1
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          description: Stable lower-snake-case public error code
                        detail:
                          type: string
                          description: Safe user-facing error detail
                        status:
                          type: string
                          description: HTTP status code as a string
                        source:
                          type: object
                          description: Location of the invalid request value
                          properties:
                            pointer:
                              type: string
                            parameter:
                              type: string
                            header:
                              type: string
                          additionalProperties: false
                        meta:
                          type: object
                          description: >-
                            Error metadata. Public responses include supportId
                            by default and may include allowlisted provider
                            recovery metadata.
                          properties:
                            supportId:
                              type: string
                              description: Request/support ID for troubleshooting
                            connectionStatus:
                              type: string
                              enum:
                                - login_required
                                - disconnected
                              description: >-
                                External account connection state when the error
                                is repairable by relinking
                            provider:
                              type: object
                              properties:
                                name:
                                  type: string
                                  enum:
                                    - plaid
                                  description: Provider that returned the underlying error
                                errorCode:
                                  type: string
                                  description: Provider error code, when available
                                errorType:
                                  type: string
                                  description: Provider error type, when available
                                requestId:
                                  type: string
                                  description: Provider request ID for troubleshooting
                              required:
                                - name
                              additionalProperties: false
                          required:
                            - supportId
                          additionalProperties: false
                      required:
                        - code
                        - detail
                        - status
                        - meta
                      additionalProperties: false
                required:
                  - errors
                additionalProperties: false
              examples:
                default:
                  summary: Default
                  value:
                    errors:
                      - code: unauthenticated
                        detail: Authentication is required.
                        status: '401'
                        meta:
                          supportId: req_a1b2c3d4e5f6
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    minItems: 1
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          description: Stable lower-snake-case public error code
                        detail:
                          type: string
                          description: Safe user-facing error detail
                        status:
                          type: string
                          description: HTTP status code as a string
                        source:
                          type: object
                          description: Location of the invalid request value
                          properties:
                            pointer:
                              type: string
                            parameter:
                              type: string
                            header:
                              type: string
                          additionalProperties: false
                        meta:
                          type: object
                          description: >-
                            Error metadata. Public responses include supportId
                            by default and may include allowlisted provider
                            recovery metadata.
                          properties:
                            supportId:
                              type: string
                              description: Request/support ID for troubleshooting
                            connectionStatus:
                              type: string
                              enum:
                                - login_required
                                - disconnected
                              description: >-
                                External account connection state when the error
                                is repairable by relinking
                            provider:
                              type: object
                              properties:
                                name:
                                  type: string
                                  enum:
                                    - plaid
                                  description: Provider that returned the underlying error
                                errorCode:
                                  type: string
                                  description: Provider error code, when available
                                errorType:
                                  type: string
                                  description: Provider error type, when available
                                requestId:
                                  type: string
                                  description: Provider request ID for troubleshooting
                              required:
                                - name
                              additionalProperties: false
                          required:
                            - supportId
                          additionalProperties: false
                      required:
                        - code
                        - detail
                        - status
                        - meta
                      additionalProperties: false
                required:
                  - errors
                additionalProperties: false
              examples:
                default:
                  summary: Default
                  value:
                    errors:
                      - code: forbidden
                        detail: You do not have permission to perform this action.
                        status: '403'
                        meta:
                          supportId: req_a1b2c3d4e5f6
        '404':
          description: >-
            Not Found — returned when the resource does not exist, or when it
            exists but is not accessible to your account. The two cases are
            intentionally indistinguishable, so that resource IDs cannot be
            enumerated by probing.
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    minItems: 1
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          description: Stable lower-snake-case public error code
                        detail:
                          type: string
                          description: Safe user-facing error detail
                        status:
                          type: string
                          description: HTTP status code as a string
                        source:
                          type: object
                          description: Location of the invalid request value
                          properties:
                            pointer:
                              type: string
                            parameter:
                              type: string
                            header:
                              type: string
                          additionalProperties: false
                        meta:
                          type: object
                          description: >-
                            Error metadata. Public responses include supportId
                            by default and may include allowlisted provider
                            recovery metadata.
                          properties:
                            supportId:
                              type: string
                              description: Request/support ID for troubleshooting
                            connectionStatus:
                              type: string
                              enum:
                                - login_required
                                - disconnected
                              description: >-
                                External account connection state when the error
                                is repairable by relinking
                            provider:
                              type: object
                              properties:
                                name:
                                  type: string
                                  enum:
                                    - plaid
                                  description: Provider that returned the underlying error
                                errorCode:
                                  type: string
                                  description: Provider error code, when available
                                errorType:
                                  type: string
                                  description: Provider error type, when available
                                requestId:
                                  type: string
                                  description: Provider request ID for troubleshooting
                              required:
                                - name
                              additionalProperties: false
                          required:
                            - supportId
                          additionalProperties: false
                      required:
                        - code
                        - detail
                        - status
                        - meta
                      additionalProperties: false
                required:
                  - errors
                additionalProperties: false
              examples:
                default:
                  summary: Default
                  value:
                    errors:
                      - code: not_found
                        detail: The requested resource was not found.
                        status: '404'
                        meta:
                          supportId: req_a1b2c3d4e5f6
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    minItems: 1
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          description: Stable lower-snake-case public error code
                        detail:
                          type: string
                          description: Safe user-facing error detail
                        status:
                          type: string
                          description: HTTP status code as a string
                        source:
                          type: object
                          description: Location of the invalid request value
                          properties:
                            pointer:
                              type: string
                            parameter:
                              type: string
                            header:
                              type: string
                          additionalProperties: false
                        meta:
                          type: object
                          description: >-
                            Error metadata. Public responses include supportId
                            by default and may include allowlisted provider
                            recovery metadata.
                          properties:
                            supportId:
                              type: string
                              description: Request/support ID for troubleshooting
                            connectionStatus:
                              type: string
                              enum:
                                - login_required
                                - disconnected
                              description: >-
                                External account connection state when the error
                                is repairable by relinking
                            provider:
                              type: object
                              properties:
                                name:
                                  type: string
                                  enum:
                                    - plaid
                                  description: Provider that returned the underlying error
                                errorCode:
                                  type: string
                                  description: Provider error code, when available
                                errorType:
                                  type: string
                                  description: Provider error type, when available
                                requestId:
                                  type: string
                                  description: Provider request ID for troubleshooting
                              required:
                                - name
                              additionalProperties: false
                          required:
                            - supportId
                          additionalProperties: false
                      required:
                        - code
                        - detail
                        - status
                        - meta
                      additionalProperties: false
                required:
                  - errors
                additionalProperties: false
              examples:
                default:
                  summary: Default
                  value:
                    errors:
                      - code: conflict
                        detail: The request conflicts with the current resource state.
                        status: '409'
                        meta:
                          supportId: req_a1b2c3d4e5f6
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    minItems: 1
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          description: Stable lower-snake-case public error code
                        detail:
                          type: string
                          description: Safe user-facing error detail
                        status:
                          type: string
                          description: HTTP status code as a string
                        source:
                          type: object
                          description: Location of the invalid request value
                          properties:
                            pointer:
                              type: string
                            parameter:
                              type: string
                            header:
                              type: string
                          additionalProperties: false
                        meta:
                          type: object
                          description: >-
                            Error metadata. Public responses include supportId
                            by default and may include allowlisted provider
                            recovery metadata.
                          properties:
                            supportId:
                              type: string
                              description: Request/support ID for troubleshooting
                            connectionStatus:
                              type: string
                              enum:
                                - login_required
                                - disconnected
                              description: >-
                                External account connection state when the error
                                is repairable by relinking
                            provider:
                              type: object
                              properties:
                                name:
                                  type: string
                                  enum:
                                    - plaid
                                  description: Provider that returned the underlying error
                                errorCode:
                                  type: string
                                  description: Provider error code, when available
                                errorType:
                                  type: string
                                  description: Provider error type, when available
                                requestId:
                                  type: string
                                  description: Provider request ID for troubleshooting
                              required:
                                - name
                              additionalProperties: false
                          required:
                            - supportId
                          additionalProperties: false
                      required:
                        - code
                        - detail
                        - status
                        - meta
                      additionalProperties: false
                required:
                  - errors
                additionalProperties: false
              examples:
                default:
                  summary: Default
                  value:
                    errors:
                      - code: invalid_value
                        detail: 'email: Invalid email address'
                        status: '422'
                        source:
                          pointer: /data/attributes/email
                        meta:
                          supportId: req_a1b2c3d4e5f6
        '428':
          description: Precondition Required
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    minItems: 1
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          description: Stable lower-snake-case public error code
                        detail:
                          type: string
                          description: Safe user-facing error detail
                        status:
                          type: string
                          description: HTTP status code as a string
                        source:
                          type: object
                          description: Location of the invalid request value
                          properties:
                            pointer:
                              type: string
                            parameter:
                              type: string
                            header:
                              type: string
                          additionalProperties: false
                        meta:
                          type: object
                          description: >-
                            Error metadata. Public responses include supportId
                            by default and may include allowlisted provider
                            recovery metadata.
                          properties:
                            supportId:
                              type: string
                              description: Request/support ID for troubleshooting
                            connectionStatus:
                              type: string
                              enum:
                                - login_required
                                - disconnected
                              description: >-
                                External account connection state when the error
                                is repairable by relinking
                            provider:
                              type: object
                              properties:
                                name:
                                  type: string
                                  enum:
                                    - plaid
                                  description: Provider that returned the underlying error
                                errorCode:
                                  type: string
                                  description: Provider error code, when available
                                errorType:
                                  type: string
                                  description: Provider error type, when available
                                requestId:
                                  type: string
                                  description: Provider request ID for troubleshooting
                              required:
                                - name
                              additionalProperties: false
                          required:
                            - supportId
                          additionalProperties: false
                      required:
                        - code
                        - detail
                        - status
                        - meta
                      additionalProperties: false
                required:
                  - errors
                additionalProperties: false
              examples:
                default:
                  summary: Default
                  value:
                    errors:
                      - code: mfa_required
                        detail: MFA verification required
                        status: '428'
                        meta:
                          supportId: req_a1b2c3d4e5f6
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    minItems: 1
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          description: Stable lower-snake-case public error code
                        detail:
                          type: string
                          description: Safe user-facing error detail
                        status:
                          type: string
                          description: HTTP status code as a string
                        source:
                          type: object
                          description: Location of the invalid request value
                          properties:
                            pointer:
                              type: string
                            parameter:
                              type: string
                            header:
                              type: string
                          additionalProperties: false
                        meta:
                          type: object
                          description: >-
                            Error metadata. Public responses include supportId
                            by default and may include allowlisted provider
                            recovery metadata.
                          properties:
                            supportId:
                              type: string
                              description: Request/support ID for troubleshooting
                            connectionStatus:
                              type: string
                              enum:
                                - login_required
                                - disconnected
                              description: >-
                                External account connection state when the error
                                is repairable by relinking
                            provider:
                              type: object
                              properties:
                                name:
                                  type: string
                                  enum:
                                    - plaid
                                  description: Provider that returned the underlying error
                                errorCode:
                                  type: string
                                  description: Provider error code, when available
                                errorType:
                                  type: string
                                  description: Provider error type, when available
                                requestId:
                                  type: string
                                  description: Provider request ID for troubleshooting
                              required:
                                - name
                              additionalProperties: false
                          required:
                            - supportId
                          additionalProperties: false
                      required:
                        - code
                        - detail
                        - status
                        - meta
                      additionalProperties: false
                required:
                  - errors
                additionalProperties: false
              examples:
                default:
                  summary: Default
                  value:
                    errors:
                      - code: rate_limited
                        detail: Too many requests. Please try again later.
                        status: '429'
                        meta:
                          supportId: req_a1b2c3d4e5f6
          headers:
            Retry-After:
              description: Seconds to wait before retrying
              schema:
                type: integer
            X-RateLimit-Limit:
              description: Maximum requests allowed per window
              schema:
                type: integer
            X-RateLimit-Remaining:
              description: Requests remaining in current window
              schema:
                type: integer
            X-RateLimit-Reset:
              description: Unix timestamp when rate limit resets
              schema:
                type: integer
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    minItems: 1
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          description: Stable lower-snake-case public error code
                        detail:
                          type: string
                          description: Safe user-facing error detail
                        status:
                          type: string
                          description: HTTP status code as a string
                        source:
                          type: object
                          description: Location of the invalid request value
                          properties:
                            pointer:
                              type: string
                            parameter:
                              type: string
                            header:
                              type: string
                          additionalProperties: false
                        meta:
                          type: object
                          description: >-
                            Error metadata. Public responses include supportId
                            by default and may include allowlisted provider
                            recovery metadata.
                          properties:
                            supportId:
                              type: string
                              description: Request/support ID for troubleshooting
                            connectionStatus:
                              type: string
                              enum:
                                - login_required
                                - disconnected
                              description: >-
                                External account connection state when the error
                                is repairable by relinking
                            provider:
                              type: object
                              properties:
                                name:
                                  type: string
                                  enum:
                                    - plaid
                                  description: Provider that returned the underlying error
                                errorCode:
                                  type: string
                                  description: Provider error code, when available
                                errorType:
                                  type: string
                                  description: Provider error type, when available
                                requestId:
                                  type: string
                                  description: Provider request ID for troubleshooting
                              required:
                                - name
                              additionalProperties: false
                          required:
                            - supportId
                          additionalProperties: false
                      required:
                        - code
                        - detail
                        - status
                        - meta
                      additionalProperties: false
                required:
                  - errors
                additionalProperties: false
              examples:
                default:
                  summary: Default
                  value:
                    errors:
                      - code: server_error
                        detail: Something went wrong.
                        status: '500'
                        meta:
                          supportId: req_a1b2c3d4e5f6
        '501':
          description: Not Implemented
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    minItems: 1
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          description: Stable lower-snake-case public error code
                        detail:
                          type: string
                          description: Safe user-facing error detail
                        status:
                          type: string
                          description: HTTP status code as a string
                        source:
                          type: object
                          description: Location of the invalid request value
                          properties:
                            pointer:
                              type: string
                            parameter:
                              type: string
                            header:
                              type: string
                          additionalProperties: false
                        meta:
                          type: object
                          description: >-
                            Error metadata. Public responses include supportId
                            by default and may include allowlisted provider
                            recovery metadata.
                          properties:
                            supportId:
                              type: string
                              description: Request/support ID for troubleshooting
                            connectionStatus:
                              type: string
                              enum:
                                - login_required
                                - disconnected
                              description: >-
                                External account connection state when the error
                                is repairable by relinking
                            provider:
                              type: object
                              properties:
                                name:
                                  type: string
                                  enum:
                                    - plaid
                                  description: Provider that returned the underlying error
                                errorCode:
                                  type: string
                                  description: Provider error code, when available
                                errorType:
                                  type: string
                                  description: Provider error type, when available
                                requestId:
                                  type: string
                                  description: Provider request ID for troubleshooting
                              required:
                                - name
                              additionalProperties: false
                          required:
                            - supportId
                          additionalProperties: false
                      required:
                        - code
                        - detail
                        - status
                        - meta
                      additionalProperties: false
                required:
                  - errors
                additionalProperties: false
              examples:
                default:
                  summary: Default
                  value:
                    errors:
                      - code: not_implemented
                        detail: This operation is not available.
                        status: '501'
                        meta:
                          supportId: req_a1b2c3d4e5f6
        '502':
          description: Bad Gateway
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    minItems: 1
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          description: Stable lower-snake-case public error code
                        detail:
                          type: string
                          description: Safe user-facing error detail
                        status:
                          type: string
                          description: HTTP status code as a string
                        source:
                          type: object
                          description: Location of the invalid request value
                          properties:
                            pointer:
                              type: string
                            parameter:
                              type: string
                            header:
                              type: string
                          additionalProperties: false
                        meta:
                          type: object
                          description: >-
                            Error metadata. Public responses include supportId
                            by default and may include allowlisted provider
                            recovery metadata.
                          properties:
                            supportId:
                              type: string
                              description: Request/support ID for troubleshooting
                            connectionStatus:
                              type: string
                              enum:
                                - login_required
                                - disconnected
                              description: >-
                                External account connection state when the error
                                is repairable by relinking
                            provider:
                              type: object
                              properties:
                                name:
                                  type: string
                                  enum:
                                    - plaid
                                  description: Provider that returned the underlying error
                                errorCode:
                                  type: string
                                  description: Provider error code, when available
                                errorType:
                                  type: string
                                  description: Provider error type, when available
                                requestId:
                                  type: string
                                  description: Provider request ID for troubleshooting
                              required:
                                - name
                              additionalProperties: false
                          required:
                            - supportId
                          additionalProperties: false
                      required:
                        - code
                        - detail
                        - status
                        - meta
                      additionalProperties: false
                required:
                  - errors
                additionalProperties: false
              examples:
                default:
                  summary: Default
                  value:
                    errors:
                      - code: bad_gateway
                        detail: >-
                          We couldn't complete that request because one of
                          Natural's services returned an unexpected response.
                          Please try again.
                        status: '502'
                        meta:
                          supportId: req_a1b2c3d4e5f6
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    minItems: 1
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          description: Stable lower-snake-case public error code
                        detail:
                          type: string
                          description: Safe user-facing error detail
                        status:
                          type: string
                          description: HTTP status code as a string
                        source:
                          type: object
                          description: Location of the invalid request value
                          properties:
                            pointer:
                              type: string
                            parameter:
                              type: string
                            header:
                              type: string
                          additionalProperties: false
                        meta:
                          type: object
                          description: >-
                            Error metadata. Public responses include supportId
                            by default and may include allowlisted provider
                            recovery metadata.
                          properties:
                            supportId:
                              type: string
                              description: Request/support ID for troubleshooting
                            connectionStatus:
                              type: string
                              enum:
                                - login_required
                                - disconnected
                              description: >-
                                External account connection state when the error
                                is repairable by relinking
                            provider:
                              type: object
                              properties:
                                name:
                                  type: string
                                  enum:
                                    - plaid
                                  description: Provider that returned the underlying error
                                errorCode:
                                  type: string
                                  description: Provider error code, when available
                                errorType:
                                  type: string
                                  description: Provider error type, when available
                                requestId:
                                  type: string
                                  description: Provider request ID for troubleshooting
                              required:
                                - name
                              additionalProperties: false
                          required:
                            - supportId
                          additionalProperties: false
                      required:
                        - code
                        - detail
                        - status
                        - meta
                      additionalProperties: false
                required:
                  - errors
                additionalProperties: false
              examples:
                default:
                  summary: Default
                  value:
                    errors:
                      - code: service_unavailable
                        detail: The service is temporarily unavailable.
                        status: '503'
                        meta:
                          supportId: req_a1b2c3d4e5f6
      security:
        - HTTPBearer: []
components:
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer

````