# Transfers

## Transfer NFT

<mark style="color:green;">`POST`</mark> `https://api.nfty.dev/v1/transfers`

This endpoint transfers NFT item(s) from a source NFT Wallet to another address (which can either be an NFT Wallet or an external wallet address).

#### Headers

| Name          | Type   | Description               |
| ------------- | ------ | ------------------------- |
| Authorization | string | Your authentication token |

#### Request Body

| Name              | Type    | Description                                                                                                                                                                        |
| ----------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| from\_address     | string  | The source address. It must be associated with a NFT Wallet that your app controls.                                                                                                |
| to\_address       | string  | The destination address. It can be a NFT Wallet or any external address that supports NFTs.                                                                                        |
| contract\_address | string  | The contract address of the NFT you wish to transfer. Each collection of NFTs has its own address on the blockchain.                                                               |
| token\_id         | integer | The token id of the specific NFT item that you want to transfer.                                                                                                                   |
| amount            | integer | If this NFT supports multiple copies (as in ERC-1155), then you can specify the amount of NFTs you want to transfer. For ERC-721 tokens, this can be blank or you can set it to 1. |

{% tabs %}
{% tab title="200 Transfer successfully initiated with the returned request id.

Since this is a blockchain transaction, the transfer may not complete right away. You will receive a request id in the response, which you can save. Once the transaction is fully completed on the blockchain, you will receive a separate Webhook Event with the same request id. At that point, you can consider the transaction completed and update your product UI as needed. Before receiving the Webhook Event, you should consider the transaction as pending. You can also use the Requests API to check on the status." %}

```
{"request_id":"53e5079d941f14db8a24a8e8647e93071fdff93de9e424796010549fd3e573aa"}
```

{% endtab %}

{% tab title="422 Could not initiate a transfer. Please make sure that the from\_address is associated with an NFT Wallet that your app controls and that the contract\_address and token\_id are correct." %}

```
{"error_code":"", "errors":null}
```

{% endtab %}
{% endtabs %}

#### Example Request:

```
curl --request POST \
     --url https://api.nfty.dev/v1/transfers \
     --header 'Content-Type: application/json' \
     --header 'authorization: Bearer c4Vftx4kGiFYqpjM/3p4o5pgkmuthLWUNpXNlrig8EjlnSTeVgde4kEBdI1Uc1RFqWJBBRxkOmZ/QcHQXdQNjQ==' \
     --data '{
       "from_address": "0xfb0f5901044756ff25bcb1f91b5fc2e7b1b5c8c1",
       "to_address": "0x5da2770b7decc2b03487f23af148455770919f6e",
       "contract_address": "0x67fC09AE09c2964b289128347D8d080028e7ECea",
       "token_id": 1,
       "amount": 1
       }'
```

#### Example Response:

```
{"request_id":"53e5079d941f14db8a24a8e8647e93071fdff93de9e424796010549fd3e573aa"}
```
