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

# Cancel crypto withdrawal

> Cancels a withdrawal that is still awaiting a signature and releases the reserved funds.



## OpenAPI

````yaml /api-reference/openapi.json post /crypto-withdrawals/{id}/cancel
openapi: 3.1.0
info:
  title: Reap API
  version: 1.0.0
  description: Reap platform API
servers:
  - url: https://sg.sandbox.api.reap.global
    description: Singapore sandbox
  - url: https://sg.prod.api.reap.global
    description: Singapore production
  - url: https://mx.sandbox.api.reap.global
    description: Mexico sandbox
  - url: https://mx.prod.api.reap.global
    description: Mexico production
  - url: https://sandbox.api.reap.global
    description: Singapore sandbox (alias)
  - url: https://prod.api.reap.global
    description: Singapore production (alias)
security:
  - bearerAuth: []
tags:
  - name: Accounts
  - name: Activities
  - name: Card Designs
  - name: Card Shipments
  - name: Card Transactions
  - name: Cards
  - name: Companies
  - name: Crypto Deposits
  - name: Crypto Withdrawals
  - name: Disputes
  - name: Fiat Deposits
  - name: Fraud Alerts
  - name: Policies
  - name: Simulation
  - name: Users
  - name: Virtual Asset Postings
  - name: Virtual Assets
  - name: Webhooks
  - name: Agentic
paths:
  /crypto-withdrawals/{id}/cancel:
    post:
      tags:
        - Crypto Withdrawals
      summary: Cancel crypto withdrawal
      description: >-
        Cancels a withdrawal that is still awaiting a signature and releases the
        reserved funds.
      operationId: cancel_crypto-withdrawals
      parameters:
        - name: id
          in: path
          required: true
          schema:
            description: Crypto withdrawal ID
            type: string
            format: uuid
        - name: Reap-Version
          in: header
          required: true
          schema:
            type: string
            enum:
              - '2025-02-14'
            description: API version (YYYY-MM-DD)
            example: '2025-02-14'
      responses:
        '200':
          description: Crypto withdrawal resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CryptoWithdrawal'
        '404':
          description: Crypto withdrawal not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                        const: CRYPTO_WITHDRAWAL_NOT_FOUND
                      message:
                        type: string
                      detail:
                        anyOf:
                          - type: object
                            additionalProperties: {}
                          - type: 'null'
                    required:
                      - code
                      - message
                      - detail
                required:
                  - error
                title: CryptoWithdrawalNotFoundError
        '409':
          description: The withdrawal cannot be cancelled in its current state
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                        const: CRYPTO_WITHDRAWAL_CANNOT_CANCEL
                      message:
                        type: string
                      detail:
                        anyOf:
                          - type: object
                            additionalProperties: {}
                          - type: 'null'
                    required:
                      - code
                      - message
                      - detail
                required:
                  - error
                title: CryptoWithdrawalCannotCancelError
components:
  schemas:
    CryptoWithdrawal:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Unique withdrawal identifier
        accountId:
          type: string
          format: uuid
          description: Account the funds are withdrawn from
        chainId:
          type: string
          enum:
            - ETHEREUM_MAINNET
            - ETHEREUM_SEPOLIA
            - BASE_MAINNET
            - BASE_SEPOLIA
            - ARBITRUM_ONE_MAINNET
            - ARBITRUM_ONE_SEPOLIA
            - POLYGON_MAINNET
            - POLYGON_AMOY
            - SOLANA_MAINNET
            - SOLANA_DEVNET
          description: Blockchain network the transfer happens on
          example: ETHEREUM_MAINNET
        asset:
          $ref: '#/components/schemas/AssetInfo'
        amount:
          type: string
          examples:
            - '100.000000'
          description: >-
            Gross amount requested, with decimals applied. The fee is taken out
            of this rather than charged on top.
        netAmount:
          type: string
          examples:
            - '99.750000'
          description: 'Amount the destination receives: the gross less the fee'
        fee:
          type: object
          properties:
            amount:
              type: string
              examples:
                - '0.250000'
              description: Fee retained, with decimals applied
            asset:
              $ref: '#/components/schemas/AssetInfo'
          required:
            - amount
            - asset
          description: Fee charged for the withdrawal, fixed at the time it was requested
        destinationAddress:
          type: string
          description: Address the funds are sent to
        status:
          type: string
          enum:
            - PENDING_SIGNATURE
            - PROCESSING
            - COMPLETED
            - EXPIRED
            - CANCELLED
            - FAILED
          description: Current withdrawal status
          example: PENDING_SIGNATURE
        failureReason:
          anyOf:
            - type: string
              enum:
                - REJECTED_BY_COMPLIANCE
                - ACCOUNT_RESTRICTED
                - TRANSACTION_FAILED
              description: >-
                - `REJECTED_BY_COMPLIANCE`: Rejected by compliance review

                - `ACCOUNT_RESTRICTED`: The account was restricted while the
                withdrawal was open

                - `TRANSACTION_FAILED`: The transfer did not go through on chain
              example: REJECTED_BY_COMPLIANCE
            - type: 'null'
          description: What went wrong. Set only when the status is `FAILED`.
        transactionId:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            On-chain transaction identifier. Present once the transfer has been
            submitted to the network, which happens while the status is still
            `PROCESSING`.
        expiresAt:
          type: string
          description: >-
            When the signature window closes. Past this point the withdrawal is
            closed and the funds become spendable again.
        completedAt:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            When the transfer was observed to be irreversible on-chain, which is
            when the status became `COMPLETED`. Null until then.
        createdAt:
          type: string
          description: ISO 8601 creation timestamp
        updatedAt:
          type: string
          description: ISO 8601 last update timestamp
      required:
        - id
        - accountId
        - chainId
        - asset
        - amount
        - netAmount
        - fee
        - destinationAddress
        - status
        - failureReason
        - transactionId
        - expiresAt
        - completedAt
        - createdAt
        - updatedAt
    AssetInfo:
      type: object
      properties:
        symbol:
          type: string
          examples:
            - USDC
            - USDT
            - ETH
          description: Asset symbol
        name:
          anyOf:
            - type: string
            - type: 'null'
          examples:
            - USD Coin
            - Ethereum
          description: Full asset name
        decimals:
          type: integer
          minimum: 0
          maximum: 9007199254740991
          examples:
            - 6
            - 18
          description: Number of decimal places
        logoUri:
          anyOf:
            - type: string
            - type: 'null'
          description: URI to asset logo image
      required:
        - symbol
        - name
        - decimals
        - logoUri
      description: Asset metadata
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API key as Bearer token

````