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

# Cancel an async entity transfer request

> 
    Cancels a pending (async) entity transfer request.
    The transfer must be in a 'PendingLiquidation' state to be cancellable.
    
    This endpoint requires authentication, and the user must be authorized based on the origin entity type:
    - For Fund origins: the fund manager, collaborators, or privileged roles can cancel
    - For Org origins: only maintainer and accountant roles can cancel
    



## OpenAPI

````yaml https://api.endaoment.org/oas-json post /v1/transfers/async-entity-transfers/{id}/cancel
openapi: 3.0.0
info:
  title: Endaoment API
  description: The official Endaoment API endpoints
  version: 0.0.1
  contact: {}
servers:
  - url: https://api.endaoment.org
    description: Production
security: []
tags: []
paths:
  /v1/transfers/async-entity-transfers/{id}/cancel:
    post:
      tags:
        - Transfers
      summary: Cancel an async entity transfer request
      description: |2-

            Cancels a pending (async) entity transfer request.
            The transfer must be in a 'PendingLiquidation' state to be cancellable.
            
            This endpoint requires authentication, and the user must be authorized based on the origin entity type:
            - For Fund origins: the fund manager, collaborators, or privileged roles can cancel
            - For Org origins: only maintainer and accountant roles can cancel
            
      operationId: InternalTransfersController_cancelAsyncEntityTransfer
      parameters:
        - name: id
          required: true
          in: path
          description: Unique identifier of the async entity transfer to cancel
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: Async entity transfer request successfully cancelled
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityTransferDto'
        '400':
          description: Invalid transfer ID or transfer is not in a cancellable state
        '401':
          description: User is not authenticated
        '403':
          description: User does not have permission to cancel this transfer
      security:
        - bearer: []
components:
  schemas:
    EntityTransferDto:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the transfer
          format: uuid
          example: 123e4567-e89b-12d3-a456-426614174000
        type:
          type: string
          description: Type of transfer, always "entity" for EntityTransferDto
          enum:
            - GrantTransfer
            - EntityTransfer
          example: entity
        status:
          type: string
          description: Status of the transfer (deprecated)
          enum:
            - PendingReview
            - Approved
            - Rejected
          example: approved
          deprecated: true
        transactionHash:
          type: object
          description: Transaction hash of the donation made to the target entity
          example: '0x1234567890abcdef'
          nullable: true
        netAmount:
          type: object
          description: >-
            Net output amount for the transfer (total - fees) in USDC smallest
            currency unit (1000000 = 1 USD)
          example: '1000000'
          nullable: true
        fee:
          type: object
          description: >-
            Fee charged on this transfer in USDC smallest currency unit (1000000
            = 1 USD)
          example: '10000'
          nullable: true
        createdAtUtc:
          type: string
          description: UTC timestamp when the transfer was created
          format: date-time
          example: '2024-03-20T10:30:00Z'
        requestedAmount:
          type: object
          description: >-
            Requested amount for the transfer in USDC smallest currency unit
            (1000000 = 1 USD) (only for async transfers)
          example: '1000000'
          nullable: true
        updatedAtUtc:
          type: string
          description: UTC timestamp when the transfer was last updated
          format: date-time
          example: '2024-03-20T10:30:00Z'
        asyncStatus:
          type: string
          description: Current status of the async transfer request
          enum:
            - PendingLiquidation
            - Liquidated
            - Cancelled
          example: pending
        chainId:
          type: object
          description: Chain ID where the transfer occurred (null for async transfers)
          example: 1
          nullable: true
      required:
        - id
        - type
        - status
        - transactionHash
        - netAmount
        - fee
        - createdAtUtc
        - requestedAmount
        - updatedAtUtc
        - asyncStatus
        - chainId
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http

````