> ## 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.

# Decline payment request

> Decline an open payment request where the authenticated party is expected to pay.



## OpenAPI

````yaml /api-reference/openapi.json post /payment-requests/{paymentRequestId}/decline
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}/decline:
    post:
      tags:
        - PaymentRequests
      summary: Decline payment request
      description: >-
        Decline an open payment request where the authenticated party is
        expected to pay.
      operationId: paymentRequests.decline
      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.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      type:
                        description: Resource type
                        type: string
                        enum:
                          - paymentRequest
                      id:
                        type: string
                        pattern: ^prq_[0-9a-f]{32}$
                        description: Resource ID (prq_*)
                      attributes:
                        type: object
                        properties:
                          amount:
                            type: integer
                            description: Amount in cents
                          currency:
                            type: string
                            description: Currency code
                          status:
                            enum:
                              - OPEN
                              - PROCESSING
                              - COMPLETED
                              - FAILED
                              - RETURNED
                              - CANCELED
                              - DECLINED
                              - EXPIRED
                            type: string
                            description: Current status of the payment request
                          description:
                            anyOf:
                              - type: string
                                maxLength: 500
                              - type: 'null'
                            description: >-
                              Free-form description provided at creation.
                              Maximum 500 characters.
                          requesterName:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Display name of the party requesting payment
                          requesterEmail:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Email of the party requesting payment
                          payerName:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Display name of the payer
                          payerEmail:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Email of the payer if addressed by email
                          payerPhone:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: >-
                              Phone of the payer in E.164 format if addressed by
                              phone
                          payerPartyId:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: >-
                              Natural party ID (pty_*) resolved for the payer,
                              including agent owner parties
                          payerIdentifierType:
                            enum:
                              - email
                              - phone
                              - party_id
                              - agent_id
                              - handle
                            type: string
                            description: >-
                              Which identifier type was used to address the
                              payer
                          payerIdentifier:
                            type: string
                            description: The identifier value used to address the payer
                          paymentLinkUrl:
                            type: string
                            format: uri
                            description: URL the payer visits to complete payment
                          transactionId:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: >-
                              ID of the transaction created by the most recent
                              payment attempt, or null if no attempt yet
                          createdAt:
                            type: string
                            description: >-
                              ISO 8601 timestamp when the payment request was
                              created
                          updatedAt:
                            type: string
                            description: >-
                              ISO 8601 timestamp when the payment request was
                              last updated
                        required:
                          - amount
                          - currency
                          - status
                          - description
                          - requesterName
                          - requesterEmail
                          - payerName
                          - payerEmail
                          - payerPhone
                          - payerPartyId
                          - payerIdentifierType
                          - payerIdentifier
                          - paymentLinkUrl
                          - transactionId
                          - createdAt
                          - updatedAt
                        additionalProperties: false
                        title: PaymentRequestAttributes
                        description: Resource attributes
                      relationships:
                        type: object
                        properties:
                          requesterParty:
                            type: object
                            properties:
                              data:
                                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
                            required:
                              - data
                            additionalProperties: false
                            title: ToOneRelationship
                            description: Party requesting the payment
                          wallet:
                            type: object
                            properties:
                              data:
                                type: object
                                properties:
                                  type:
                                    description: Resource type
                                    type: string
                                    enum:
                                      - wallet
                                  id:
                                    type: string
                                    pattern: ^wal_[0-9a-f]{32}$
                                required:
                                  - type
                                  - id
                                additionalProperties: false
                                title: ResourceIdentifier
                                description: Related resource identifier
                            required:
                              - data
                            additionalProperties: false
                            title: ToOneRelationship
                            description: Wallet that receives the funds
                          payerParty:
                            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: >-
                              Resolved payer party, if the payer is known to
                              Natural
                          payment:
                            type: object
                            properties:
                              data:
                                anyOf:
                                  - type: object
                                    properties:
                                      type:
                                        description: Resource type
                                        type: string
                                        enum:
                                          - payment
                                      id:
                                        type: string
                                        pattern: ^pay_[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 submitted for this payment request, if one
                              exists.
                        required:
                          - requesterParty
                          - wallet
                          - payerParty
                          - payment
                        additionalProperties: false
                        title: PaymentRequestRelationships
                        description: Resource relationships
                    required:
                      - type
                      - id
                      - attributes
                      - relationships
                    additionalProperties: false
                    title: PaymentRequestResource
                required:
                  - data
                additionalProperties: false
                title: PaymentRequestResponse
              examples:
                default:
                  summary: Default
                  value:
                    data:
                      type: paymentRequest
                      id: prq_550e8400e29b41d4a716446655440000
                      attributes:
                        amount: 500
                        currency: USD
                        status: DECLINED
                        requesterName: Natural Coffee
                        requesterEmail: billing@natural.test
                        description: Invoice 7
                        payerName: Ada Lovelace
                        payerEmail: ada@example.com
                        payerPhone: '+14155550100'
                        payerPartyId: pty_550e8400e29b41d4a716446655440000
                        payerIdentifierType: party_id
                        payerIdentifier: pty_550e8400e29b41d4a716446655440000
                        paymentLinkUrl: https://app.natural.test/pay/token_123
                        transactionId: null
                        createdAt: '2026-04-15T00:00:00.000Z'
                        updatedAt: '2026-04-15T00:00:00.000Z'
                      relationships:
                        requesterParty:
                          data:
                            type: party
                            id: pty_019cd1798d617f65a79cb965dda9eac3
                        wallet:
                          data:
                            type: wallet
                            id: wal_550e8400e29b41d4a716446655440000
                        payerParty:
                          data:
                            type: party
                            id: pty_550e8400e29b41d4a716446655440000
                        payment:
                          data: null
          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

````