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

# List deposit methods

> Returns the deposit methods available to the selected account for an asset.

Use `method` to distinguish options on the same network, and use each method's stable `id` as `method_id` when claiming or listing deposit addresses. `maximum` combines the method's per-transaction cap with the account's remaining supported amount-based rolling limits. Supported count-based limits are listed separately in `period_limits`. These values are informational and may change before a deposit is processed.




## OpenAPI

````yaml /api-reference/openapi_v3_pws.json get /v1/accounts/{account_id}/funds/deposits/methods/{asset_symbol}
openapi: 3.1.0
info:
  title: Payward Services API
  description: >-
    The Payward Services (PWS) public API.


    PWS exposes Swaps (institutional FX-style trading), Conversion rules
    (rule-driven fiat ↔ crypto value movement), retail-style Quotes and Price
    Trigger Swaps, end-user Users / Verifications, Travel Rule address ownership
    verification, Funds (deposits, withdrawals, addresses, transactions),
    Portfolio, Earn, Reports, Webhooks, and Ramp (hosted fiat-to-crypto on-ramp
    checkout).


    All requests must be authenticated. All monetary values are decimal strings;
    all timestamps are ISO 8601 UTC. List endpoints are cursor-paginated. Errors
    follow a uniform shape (see `*ErrorResponse` schemas).
  version: v1
  contact:
    name: Payward Services API Support
    url: https://docs.payward.com
    email: api-support@payward.com
servers:
  - url: https://api.services.payward.com
    description: Production
security:
  - ApiKey: []
    ApiSign: []
    ApiNonce: []
tags:
  - name: Users
    description: >-
      Users and headless-user onboarding flows that the partner manages.


      - **Create User** provisions a user with full identity verification fields
      collected up front.

      - **Create Headless User** provisions a lightweight user when your
      licensing agreement allows you to manage KYC data outside Payward.

      - **Get User** retrieves the user's profile, verification status, and
      required actions.

      - **Update User** updates user profile fields and may re-trigger
      verification.


      Use the returned user `id` for calls that require the user's identifier.
  - name: Assets
    description: >-
      Catalog of assets available on the platform with retail-display metadata
      (logos, market data, descriptions).
  - name: Conversion rules
    description: >-
      Rule-driven fiat ↔ crypto value movement, including conversion rules and
      deposits.
  - name: Earn
    description: >-
      Manage auto-earn preferences and retrieve allocation and reward
      information.
  - name: Funds
    description: >-
      Deposits, withdrawals, addresses, methods, and the consolidated
      funding-transactions ledger.
  - name: Portfolio
    description: End-user portfolio summary, history, and transaction views.
  - name: Price Trigger Swaps
    description: Limit-style orders that execute when a configured price trigger is met.
  - name: On-chain Swaps
    description: >-
      Wallet-funded onchain quote trading for xStock and USDC pairs. On-chain
      quotes settle on-chain through the Payward on-chain proxy contract.
  - name: Ramp
    description: >-
      Hosted fiat-to-crypto on-ramp checkout: country / fiat / payment-method /
      cryptocurrency-asset discovery, transaction limits and prospective quotes,
      and the hosted checkout URL.
  - name: Reports
    description: Settlement and reconciliation reports for the partner.
  - name: Swaps
    description: >-
      Direct partner-to-Payward swap quotes and executions (institutional
      FX-style trading).
  - name: Travel Rule Verifications
    description: Travel Rule address ownership verification flows.
  - name: Verifications
    description: Identity verification (KYC) submission and status for end users.
  - name: Webhooks
    description: Manage webhook subscriptions for asynchronous event delivery.
paths:
  /v1/accounts/{account_id}/funds/deposits/methods/{asset_symbol}:
    get:
      tags:
        - Funds
      summary: List deposit methods
      description: >
        Returns the deposit methods available to the selected account for an
        asset.


        Use `method` to distinguish options on the same network, and use each
        method's stable `id` as `method_id` when claiming or listing deposit
        addresses. `maximum` combines the method's per-transaction cap with the
        account's remaining supported amount-based rolling limits. Supported
        count-based limits are listed separately in `period_limits`. These
        values are informational and may change before a deposit is processed.
      operationId: listDepositMethods
      parameters:
        - name: account_id
          in: path
          required: true
          description: Public identifier of the account that will receive deposits.
          example: WVSD33HRMGSZUBM7
          schema:
            type: string
            minLength: 1
            maxLength: 64
        - name: asset_symbol
          in: path
          required: true
          description: >-
            Asset symbol to discover deposit methods for. Use a symbol returned
            by the PWS Assets API.
          example: BTC
          schema:
            type: string
            minLength: 1
            maxLength: 16
        - $ref: '#/components/parameters/PageSize'
        - $ref: '#/components/parameters/PageToken'
      responses:
        '200':
          description: Deposit methods available for the selected account and asset.
          headers:
            Request-Id:
              $ref: '#/components/headers/RequestId'
            X-RateLimit-Limit:
              $ref: '#/components/headers/RateLimitLimit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/RateLimitRemaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/RateLimitReset'
            Strict-Transport-Security:
              $ref: '#/components/headers/StrictTransportSecurity'
            X-Content-Type-Options:
              $ref: '#/components/headers/XContentTypeOptions'
            Content-Security-Policy:
              $ref: '#/components/headers/ContentSecurityPolicy'
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DepositMethodsResult'
              examples:
                bitcoin:
                  summary: Bitcoin deposit method
                  value:
                    data:
                      - id: 2fa11f79-eeba-4d4e-afda-029abff6e29e
                        network: Bitcoin
                        network_info:
                          explorer: https://mempool.space/tx/
                          confirmations: '3'
                          est_confirmation_time: '45'
                        minimum:
                          symbol: BTC
                          name: Bitcoin
                          type: crypto
                          amount: '0.0001'
        '400':
          description: Validation error
          headers:
            Request-Id:
              $ref: '#/components/headers/RequestId'
            X-RateLimit-Limit:
              $ref: '#/components/headers/RateLimitLimit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/RateLimitRemaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/RateLimitReset'
            Strict-Transport-Security:
              $ref: '#/components/headers/StrictTransportSecurity'
            X-Content-Type-Options:
              $ref: '#/components/headers/XContentTypeOptions'
            Content-Security-Policy:
              $ref: '#/components/headers/ContentSecurityPolicy'
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestError'
              examples:
                invalid-request:
                  summary: Invalid request
                  value:
                    error:
                      type: funding_error
                      instance: 5f4d2a8e-91a4-4d6c-8a17-9b1e2c3f4a5b
                      causes:
                        - field: asset_symbol
                          message: must contain between 1 and 16 characters
                      status: 400
                      code: bad_request
        '401':
          description: Authentication required
          headers:
            Request-Id:
              $ref: '#/components/headers/RequestId'
            X-RateLimit-Limit:
              $ref: '#/components/headers/RateLimitLimit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/RateLimitRemaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/RateLimitReset'
            Strict-Transport-Security:
              $ref: '#/components/headers/StrictTransportSecurity'
            X-Content-Type-Options:
              $ref: '#/components/headers/XContentTypeOptions'
            Content-Security-Policy:
              $ref: '#/components/headers/ContentSecurityPolicy'
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthenticatedError'
              examples:
                authentication-failed:
                  summary: Authentication failed
                  value:
                    error:
                      type: funding_error
                      instance: 5f4d2a8e-91a4-4d6c-8a17-9b1e2c3f4a5b
                      code: unauthenticated
                      status: 401
        '403':
          description: Forbidden
          headers:
            Request-Id:
              $ref: '#/components/headers/RequestId'
            X-RateLimit-Limit:
              $ref: '#/components/headers/RateLimitLimit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/RateLimitRemaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/RateLimitReset'
            Strict-Transport-Security:
              $ref: '#/components/headers/StrictTransportSecurity'
            X-Content-Type-Options:
              $ref: '#/components/headers/XContentTypeOptions'
            Content-Security-Policy:
              $ref: '#/components/headers/ContentSecurityPolicy'
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
              examples:
                caller-is-not-allowed:
                  summary: Caller is not allowed
                  value:
                    error:
                      type: funding_error
                      instance: 5f4d2a8e-91a4-4d6c-8a17-9b1e2c3f4a5b
                      code: forbidden
                      status: 403
        '429':
          description: Rate limit exceeded
          headers:
            Request-Id:
              $ref: '#/components/headers/RequestId'
            X-RateLimit-Limit:
              $ref: '#/components/headers/RateLimitLimit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/RateLimitRemaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/RateLimitReset'
            Strict-Transport-Security:
              $ref: '#/components/headers/StrictTransportSecurity'
            X-Content-Type-Options:
              $ref: '#/components/headers/XContentTypeOptions'
            Content-Security-Policy:
              $ref: '#/components/headers/ContentSecurityPolicy'
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
            Retry-After:
              $ref: '#/components/headers/RetryAfter'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceExhaustedError'
              examples:
                rate-limit-exceeded:
                  summary: Rate limit exceeded
                  value:
                    error:
                      type: funding_error
                      instance: 5f4d2a8e-91a4-4d6c-8a17-9b1e2c3f4a5b
                      code: resource_exhausted
                      status: 429
        '500':
          description: Internal server error
          headers:
            Request-Id:
              $ref: '#/components/headers/RequestId'
            X-RateLimit-Limit:
              $ref: '#/components/headers/RateLimitLimit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/RateLimitRemaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/RateLimitReset'
            Strict-Transport-Security:
              $ref: '#/components/headers/StrictTransportSecurity'
            X-Content-Type-Options:
              $ref: '#/components/headers/XContentTypeOptions'
            Content-Security-Policy:
              $ref: '#/components/headers/ContentSecurityPolicy'
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalError'
              examples:
                internal-error:
                  summary: Internal server error
                  value:
                    error:
                      type: funding_error
                      instance: 5f4d2a8e-91a4-4d6c-8a17-9b1e2c3f4a5b
                      code: internal
                      status: 500
        '503':
          description: Service unavailable
          headers:
            Request-Id:
              $ref: '#/components/headers/RequestId'
            X-RateLimit-Limit:
              $ref: '#/components/headers/RateLimitLimit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/RateLimitRemaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/RateLimitReset'
            Strict-Transport-Security:
              $ref: '#/components/headers/StrictTransportSecurity'
            X-Content-Type-Options:
              $ref: '#/components/headers/XContentTypeOptions'
            Content-Security-Policy:
              $ref: '#/components/headers/ContentSecurityPolicy'
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnavailableError'
              examples:
                service-unavailable:
                  summary: Service unavailable
                  value:
                    error:
                      type: funding_error
                      instance: 5f4d2a8e-91a4-4d6c-8a17-9b1e2c3f4a5b
                      code: unavailable
                      status: 503
        '504':
          description: Request deadline exceeded
          headers:
            Request-Id:
              $ref: '#/components/headers/RequestId'
            X-RateLimit-Limit:
              $ref: '#/components/headers/RateLimitLimit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/RateLimitRemaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/RateLimitReset'
            Strict-Transport-Security:
              $ref: '#/components/headers/StrictTransportSecurity'
            X-Content-Type-Options:
              $ref: '#/components/headers/XContentTypeOptions'
            Content-Security-Policy:
              $ref: '#/components/headers/ContentSecurityPolicy'
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeadlineExceededError'
              examples:
                request-deadline-exceeded:
                  summary: Request deadline exceeded
                  value:
                    error:
                      type: funding_error
                      instance: 5f4d2a8e-91a4-4d6c-8a17-9b1e2c3f4a5b
                      code: deadline_exceeded
                      status: 504
      security:
        - ApiKey: []
          ApiSign: []
          ApiNonce: []
components:
  parameters:
    PageSize:
      name: page_size
      in: query
      description: Maximum number of results to return. Defaults to 20 when omitted.
      required: false
      schema:
        type: integer
        format: int32
        minimum: 1
        maximum: 25
        default: 20
      style: form
      example: 20
    PageToken:
      name: page_token
      in: query
      description: >-
        Opaque token returned as `next_page_token` in the previous response.
        Omit to request the first page.
      required: false
      schema:
        type: string
        minLength: 1
        maxLength: 256
      style: form
      example: MjoyRHuBXSgoe0mDHt-iFALROW46EGdvk_trgja31Vwr7H4
  headers:
    RequestId:
      description: >-
        Unique identifier for tracing this request across services. Include in
        support tickets.
      schema:
        type: string
        format: uuid
        example: 5f4d2a8e-91a4-4d6c-8a17-9b1e2c3f4a5b
    RateLimitLimit:
      description: Total requests allowed in the current window.
      schema:
        type: integer
        example: 1000
    RateLimitRemaining:
      description: Requests remaining in the current window.
      schema:
        type: integer
        example: 955
    RateLimitReset:
      description: Unix timestamp (seconds) when the rate-limit window resets.
      schema:
        type: integer
        format: int64
        example: 1713182400
    StrictTransportSecurity:
      description: >-
        Enforces HTTPS for the configured period. Always `max-age=63072000;
        includeSubDomains; preload`.
      schema:
        type: string
        example: max-age=63072000; includeSubDomains; preload
    XContentTypeOptions:
      description: Disables MIME sniffing. Always `nosniff`.
      schema:
        type: string
        enum:
          - nosniff
        example: nosniff
    ContentSecurityPolicy:
      description: >-
        Prevents embedding and resource loading. Always `default-src 'none';
        frame-ancestors 'none'`.
      schema:
        type: string
        example: default-src 'none'; frame-ancestors 'none'
    CacheControl:
      description: Prevents caching of sensitive financial data. Always `no-store`.
      schema:
        type: string
        enum:
          - no-store
        example: no-store
    RetryAfter:
      description: Seconds the client should wait before retrying.
      schema:
        type: integer
        example: 30
  schemas:
    DepositMethodsResult:
      description: Deposit methods available for the requested asset.
      type: object
      required:
        - data
      properties:
        data:
          description: >-
            Available deposit methods. Empty when the account has no eligible
            methods for the asset.
          type: array
          items:
            $ref: '#/components/schemas/DepositMethod'
        next_page_token:
          description: >-
            Opaque token for retrieving the next page. Absent when there are no
            more results.
          type: string
          minLength: 1
          maxLength: 256
    BadRequestError:
      description: Request validation failed or the request could not be processed.
      allOf:
        - $ref: '#/components/schemas/PwsValidationErrorEnvelope'
        - type: object
          required:
            - error
          properties:
            error:
              allOf:
                - $ref: '#/components/schemas/PwsValidationError'
                - type: object
                  required:
                    - status
                    - code
                  properties:
                    status:
                      type: integer
                      format: int32
                      enum:
                        - 400
                    code:
                      type: string
                      enum:
                        - bad_request
    UnauthenticatedError:
      description: Authentication credentials are missing, invalid, or not accepted.
      allOf:
        - $ref: '#/components/schemas/PwsGeneralErrorEnvelope'
        - type: object
          required:
            - error
          properties:
            error:
              allOf:
                - $ref: '#/components/schemas/PwsGeneralError'
                - type: object
                  required:
                    - status
                    - code
                  properties:
                    status:
                      type: integer
                      format: int32
                      enum:
                        - 401
                    code:
                      type: string
                      enum:
                        - unauthenticated
    ForbiddenError:
      description: The authenticated caller is not allowed to perform this operation.
      allOf:
        - $ref: '#/components/schemas/PwsGeneralErrorEnvelope'
        - type: object
          required:
            - error
          properties:
            error:
              allOf:
                - $ref: '#/components/schemas/PwsGeneralError'
                - type: object
                  required:
                    - status
                    - code
                  properties:
                    status:
                      type: integer
                      format: int32
                      enum:
                        - 403
                    code:
                      type: string
                      enum:
                        - forbidden
    ResourceExhaustedError:
      description: The request was rate limited or a resource quota was exhausted.
      allOf:
        - $ref: '#/components/schemas/PwsGeneralErrorEnvelope'
        - type: object
          required:
            - error
          properties:
            error:
              allOf:
                - $ref: '#/components/schemas/PwsGeneralError'
                - type: object
                  required:
                    - status
                    - code
                  properties:
                    status:
                      type: integer
                      format: int32
                      enum:
                        - 429
                    code:
                      type: string
                      enum:
                        - resource_exhausted
    InternalError:
      description: An unexpected server-side error occurred.
      allOf:
        - $ref: '#/components/schemas/PwsGeneralErrorEnvelope'
        - type: object
          required:
            - error
          properties:
            error:
              allOf:
                - $ref: '#/components/schemas/PwsGeneralError'
                - type: object
                  required:
                    - status
                    - code
                  properties:
                    status:
                      type: integer
                      format: int32
                      enum:
                        - 500
                    code:
                      type: string
                      enum:
                        - internal
    UnavailableError:
      description: The service is temporarily unavailable.
      allOf:
        - $ref: '#/components/schemas/PwsGeneralErrorEnvelope'
        - type: object
          required:
            - error
          properties:
            error:
              allOf:
                - $ref: '#/components/schemas/PwsGeneralError'
                - type: object
                  required:
                    - status
                    - code
                  properties:
                    status:
                      type: integer
                      format: int32
                      enum:
                        - 503
                    code:
                      type: string
                      enum:
                        - unavailable
    DeadlineExceededError:
      description: The upstream service did not complete the request before the deadline.
      allOf:
        - $ref: '#/components/schemas/PwsGeneralErrorEnvelope'
        - type: object
          required:
            - error
          properties:
            error:
              allOf:
                - $ref: '#/components/schemas/PwsGeneralError'
                - type: object
                  required:
                    - status
                    - code
                  properties:
                    status:
                      type: integer
                      format: int32
                      enum:
                        - 504
                    code:
                      type: string
                      enum:
                        - deadline_exceeded
    DepositMethod:
      description: A deposit method available to the selected account.
      type: object
      required:
        - id
      properties:
        id:
          description: Stable identifier used to claim and list deposit addresses.
          type: string
          format: uuid
        network:
          description: Customer-facing blockchain network or deposit-method name.
          type: string
          minLength: 1
        method:
          description: >-
            Customer-facing funding-method label. Present only when more than
            one deposit method is available on the same network.
          type: string
          minLength: 1
        network_info:
          description: Blockchain network metadata.
          allOf:
            - $ref: '#/components/schemas/NetworkInfo'
        fee:
          description: >-
            Fixed deposit fee, denominated in the asset returned by Funding.
            Omitted when no fixed fee applies.
          allOf:
            - $ref: '#/components/schemas/FundingAmount'
        fee_percentage:
          description: >-
            Percentage points charged on the deposit. For example, `1.5` means
            1.5 percent. Omitted when no percentage fee applies.
          type: string
          minLength: 1
          maxLength: 64
          pattern: ^[0-9]+(\.[0-9]+)?$
        minimum:
          description: >-
            Minimum amount accepted per deposit transaction. Omitted when the
            method has no minimum.
          allOf:
            - $ref: '#/components/schemas/FundingAmount'
        maximum:
          description: >-
            Maximum amount for a new deposit based on the method's
            per-transaction cap and remaining amount-based rolling limits.
            Omitted when neither bound applies. A count-based entry in
            `period_limits` may still prevent another deposit.
          allOf:
            - $ref: '#/components/schemas/FundingAmount'
        address_setup_fee:
          description: >-
            One-time fee applied to the first creditable deposit received at the
            address, denominated in the asset returned by Funding. It is not
            charged when the address is claimed. Omitted when no setup fee
            applies.
          allOf:
            - $ref: '#/components/schemas/FundingAmount'
        period_limits:
          description: >-
            Rolling limits exposed by this API for deposits through this method.
            This list is informational and may not include every policy that
            applies. Omitted when there are no supported limits to report.
          type: array
          items:
            $ref: '#/components/schemas/DepositLimit'
    PwsValidationErrorEnvelope:
      description: Error envelope for request validation failures.
      type: object
      required:
        - error
      properties:
        error:
          $ref: '#/components/schemas/PwsValidationError'
    PwsValidationError:
      description: Standard PWS API error object for request validation failures.
      type: object
      required:
        - type
        - status
        - instance
        - code
      properties:
        type:
          description: Machine-readable error class.
          type: string
        status:
          description: HTTP status code returned for this error.
          type: integer
          format: int32
        instance:
          description: Request identifier for this specific error occurrence.
          type: string
        code:
          description: Stable machine-readable error code.
          type: string
        doc_url:
          description: Optional link to documentation for this error.
          type: string
          format: uri
        causes:
          description: Validation failures that contributed to the error.
          type: array
          items:
            $ref: '#/components/schemas/PwsErrorCause'
    PwsGeneralErrorEnvelope:
      description: Error envelope for operational or domain failures.
      type: object
      required:
        - error
      properties:
        error:
          $ref: '#/components/schemas/PwsGeneralError'
    PwsGeneralError:
      description: Standard PWS API error object for non-validation failures.
      allOf:
        - $ref: '#/components/schemas/PwsErrorBase'
        - type: object
          properties:
            causes:
              description: Additional error details, when present.
              type: array
              items:
                type: object
                additionalProperties: true
    NetworkInfo:
      description: Blockchain network metadata exposed to deposit clients.
      type: object
      required:
        - explorer
        - confirmations
        - est_confirmation_time
      properties:
        explorer:
          description: >-
            Blockchain explorer URL or transaction URL template supplied by
            Funding.
          type: string
          minLength: 1
        confirmations:
          description: >-
            Required confirmation count or network-specific confirmation
            description.
          type: string
          minLength: 1
        est_confirmation_time:
          description: Estimated time to reach the required confirmations.
          type: string
          minLength: 1
        contract_address:
          description: Token contract address on this network, when applicable.
          type: string
          minLength: 1
    FundingAmount:
      description: Decimal amount denominated in an asset.
      type: object
      required:
        - symbol
        - type
        - amount
      properties:
        symbol:
          description: Asset symbol the amount is denominated in.
          type: string
          minLength: 1
          maxLength: 16
        name:
          description: Human-readable English asset name.
          type: string
          minLength: 1
          maxLength: 64
        type:
          $ref: '#/components/schemas/FundingAssetType'
        amount:
          description: Decimal amount represented as a string to preserve precision.
          type: string
          minLength: 1
          maxLength: 64
          pattern: ^[0-9]+(\.[0-9]+)?$
    DepositLimit:
      description: >-
        One account-specific limit for deposits through a method and rolling
        time window.
      type: object
      required:
        - type
        - period
        - period_seconds
        - remaining
        - maximum
      properties:
        type:
          description: Unit controlled by the limit.
          allOf:
            - $ref: '#/components/schemas/DepositLimitType'
        period:
          description: Human-readable label for the rolling time window.
          allOf:
            - $ref: '#/components/schemas/DepositLimitPeriod'
        period_seconds:
          description: Exact rolling-window duration in seconds.
          type: integer
          format: int64
          minimum: 1
          maximum: 4294967295
        asset:
          description: >-
            Asset in which an `amount` limit is denominated. Present for amount
            limits and omitted for count-based limits.
          allOf:
            - $ref: '#/components/schemas/FundingAssetReference'
        remaining:
          description: >-
            Remaining amount or deposit count in this rolling window. A negative
            value means the limit is already exceeded.
          type: string
          minLength: 1
          maxLength: 64
          pattern: ^-?[0-9]+(\.[0-9]+)?$
        maximum:
          description: Maximum amount or deposit count allowed in this rolling window.
          type: string
          minLength: 1
          maxLength: 64
          pattern: ^[0-9]+(\.[0-9]+)?$
    PwsErrorCause:
      description: A single request validation failure.
      type: object
      required:
        - field
        - message
      properties:
        field:
          description: Dot-notation path to the offending request field.
          type: string
        message:
          description: Human-readable explanation of the failed validation rule.
          type: string
    PwsErrorBase:
      description: Common fields present on every PWS API error object.
      type: object
      required:
        - type
        - status
        - instance
        - code
      properties:
        type:
          description: Machine-readable error class.
          type: string
        status:
          description: HTTP status code returned for this error.
          type: integer
          format: int32
        instance:
          description: Request identifier for this specific error occurrence.
          type: string
        code:
          description: Stable machine-readable error code.
          type: string
        doc_url:
          description: Optional link to documentation for this error.
          type: string
          format: uri
    FundingAssetType:
      description: Public classification of an asset used by Funding resources.
      type: string
      enum:
        - fiat
        - crypto
        - stablecoin
        - xstock
    DepositLimitType:
      description: >-
        Type of deposit limit exposed by this API. Additional deposit controls
        may apply.
      type: string
      enum:
        - amount
        - deposit_attempts
        - successful_deposits
    DepositLimitPeriod:
      description: >-
        Human-readable rolling-window label. `daily`, `weekly`, and `monthly`
        mean rolling 24-hour, 7-day, and 30-day windows; `custom` uses
        `period_seconds`.
      type: string
      enum:
        - daily
        - weekly
        - monthly
        - custom
    FundingAssetReference:
      description: Reference to an asset by ticker symbol and classification.
      type: object
      required:
        - symbol
        - type
      properties:
        symbol:
          description: Asset ticker symbol, such as BTC, USD, or TSLAx.
          type: string
          minLength: 1
          maxLength: 16
        type:
          $ref: '#/components/schemas/FundingAssetType'
  securitySchemes:
    ApiKey:
      type: apiKey
      name: API-Key
      in: header
      description: Your public API key. Identifies the partner making the request.
    ApiSign:
      type: apiKey
      name: API-Sign
      in: header
      description: HMAC signature over the request, computed with your private key.
    ApiNonce:
      type: apiKey
      name: API-Nonce
      in: header
      description: Monotonically increasing nonce included in the request signature.

````