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

# Withdraw to crypto address

<Tabs groupId="programming-language">
  <Tab value="Java" title="Java">
    ```java theme={null}
    TransfersService transfersService = IntxServiceFactory.createTransfersService(client);
    WithdrawToCryptoAddressRequest request = new WithdrawToCryptoAddressRequest.Builder()
        .portfolio("portfolio_id")
        .asset("ETH")
        .amount("1")
        .address("0x1234567890")
        .build();
    WithdrawToCryptoAddressResponse response = transfersService.withdrawToCryptoAddress(request);
    ```

    For more information, please visit the [INTX Java SDK](https://github.com/coinbase-samples/intx-sdk-java).
  </Tab>

  <Tab value=".NET" title=".NET">
    ```cs theme={null}
    var transfersService = new TransfersService(client);
    var request = new WithdrawToCryptoAddressRequest(
        Portfolio: "portfolio_id",
        Asset: "ETH",
        Amount: "1",
        Address: "0x1234567890"
    );
    var response = transfersService.WithdrawToCryptoAddress(request);
    ```

    For more information, please visit the [INTX .NET SDK](https://github.com/coinbase-samples/intx-sdk-dotnet).
  </Tab>

  <Tab value="Go" title="Go">
    ```go theme={null}
    transfersSvc := transfers.NewTransfersService(client)
    request := &transfers.CreateWithdrawalToCryptoAddressRequest{
        Portfolio: "portfolio_id",
        Asset: "ETH",
        Amount: "1",
        Address: "0x1234567890",
    }
    response, err := transfersSvc.CreateWithdrawalToCryptoAddress(context.Background(), request)
    ```

    For more information, please visit the [INTX Go SDK](https://github.com/coinbase-samples/intx-sdk-go).
  </Tab>

  <Tab value="Python" title="Python">
    ```python theme={null}
    client = IntxClient()
    request = WithdrawToCryptoAddressRequest(
        portfolio="portfolio_id",
        asset="ETH",
        amount="1",
        address="0x1234567890"
    )
    response = client.withdraw_to_crypto_address(request)
    ```

    For more information, please visit the [INTX Python SDK](https://github.com/coinbase-samples/intx-sdk-py).
  </Tab>

  <Tab value="Typescript" title="TS/JS">
    ```js theme={null}
    const transfersService = new TransfersService(client);

    transfersService.withdrawToCryptoAddress({
        portfolio: 'PORTFOLIO_ID_HERE',
        asset: 'ETH',
        amount: '1',
        address: '0x1234567890',
    }).then(async (response) => {
        console.log('Crypto Withdraw created: ', response);
    })
    ```

    For more information, please visit the [INTX TS SDK](https://github.com/coinbase-samples/intx-sdk-ts).
  </Tab>

  <Tab value="CLI" title="CLI">
    ```
    intxctl create-withdrawal-to-crypto-address --help
    ```

    For more information, please visit the [INTX CLI](https://github.com/coinbase-samples/intx-cli).
  </Tab>
</Tabs>


## OpenAPI

````yaml POST /api/v1/transfers/withdraw
openapi: 3.0.3
info:
  title: REST API
  description: >
    # Welcome to Coinbase INTX API

    ## Introduction

    The INTX APIs allow institutions to trade and manage orders on the
    International Exchange. The following API pages detail various REST API
    endpoints we offer.

    ## Getting Started

    To get started, please visit one of the following pages:

    - [Quickstart](/international-exchange/introduction/quickstart)

    -
    [Overview](/api-reference/international-exchange-api/rest-api/introduction)

    -
    [Authentication](/api-reference/international-exchange-api/rest-api/authentication)

    - [Rate Limits](/international-exchange/introduction/rate-limits-overview)

    ## FIX API

    - [FIX API reference](/international-exchange/fix-api/fix-api-overview)

    ## WebSocket API

    - [WebSocket API
    reference](/international-exchange/websocket-feed/websocket-overview)
  version: '1.0'
servers:
  - url: https://api.international.coinbase.com
security: []
paths:
  /api/v1/transfers/withdraw:
    post:
      tags:
        - Transfers
      summary: Withdraw to crypto address
      operationId: withdraw
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
                - portfolio
                - asset
                - amount
                - add_network_fee_to_total
                - network_arn_id
                - address
              properties:
                portfolio:
                  description: >-
                    Identifies the portfolio by UUID (e.g.,
                    `892e8c7c-e979-4cad-b61b-55a197932cf1`) or portfolio ID
                    (e.g., `5189861793641175`)
                  type: string
                asset:
                  description: >-
                    Identifies the asset by name (e.g., `BTC`), UUID (e.g.,
                    `291efb0f-2396-4d41-ad03-db3b2311cb2c`), or asset ID (e.g.,
                    `1482439423963469`)
                  type: string
                amount:
                  description: The amount of the asset being transferred
                  type: string
                add_network_fee_to_total:
                  description: >-
                    if true, deducts network fee from the portfolio, otherwise
                    deduct fee from the withdrawal
                  type: boolean
                network_arn_id:
                  description: >-
                    Identifies the blockchain network (e.g.,
                    `networks/ethereum-mainnet/assets/313ef8a9-ae5a-5f2f-8a56-572c0e2a4d5a`)
                  type: string
                  example: >-
                    networks/ethereum-mainnet/assets/313ef8a9-ae5a-5f2f-8a56-572c0e2a4d5a
                address:
                  description: Crypto address being validated against
                  type: string
                  example: '0x29d2D586e222D0610b04e71974699589379F13b5'
                nonce:
                  description: a unique integer representing the withdrawal request
                  type: integer
                  example: 30
                destination_tag:
                  description: >-
                    An identifier used to determine the account a crypto
                    transfer should be credited to. Not present for all asset
                    types.
                  type: string
      responses:
        '200':
          description: Withdrawal Successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateCryptoWithdrawalResult_V1'
        '400':
          description: Withdrawal Failed
      security:
        - auth_client_id: []
          auth_passphrase: []
          auth_signature: []
          auth_timestamp: []
components:
  schemas:
    CreateCryptoWithdrawalResult_V1:
      type: object
      properties:
        idem:
          description: Idempotent UUID representing the successful withdraw
          type: string
          example: 253b30a5-9b03-4cd2-9c76-d0f32b2bd733
  securitySchemes:
    auth_client_id:
      type: apiKey
      name: CB-ACCESS-KEY
      in: header
      description: The Client ID that owns the API Key for the request
    auth_passphrase:
      type: apiKey
      name: CB-ACCESS-PASSPHRASE
      in: header
      description: The pass phrase affiliated with the API Key
    auth_signature:
      type: apiKey
      name: CB-ACCESS-SIGN
      in: header
      description: >-
        A HMAC SHA-256 signature using the API Key secret on the string
        TIMESTAMP, METHOD, REQUEST_PATH, BODY
    auth_timestamp:
      type: apiKey
      name: CB-ACCESS-TIMESTAMP
      in: header
      description: The timestamp of when the request is being made

````