> For the complete documentation index, see [llms.txt](https://docs.non-obvious.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.non-obvious.ai/sdks-guide/blockchain-sdks/evm-chains-sdk/nftmarketplace/transfernft.md).

# transferNFT

## Description

The `transferNFT` function allows users to transfer non-fungible tokens (NFTs) from their wallet to another user's wallet on a specified blockchain.&#x20;

It uses the appropriate smart contract for the selected blockchain to execute the transfer.

## Parameters

| Parameter    | Type   | Description                                                   |
| ------------ | ------ | ------------------------------------------------------------- |
| `blockchain` | string | The name of the blockchain where the NFT is being transferred |
| `privateKey` | string | The private key of the user's wallet                          |
| `tokenId`    | string | The ID of the NFT being transferred                           |
| `nftAddress` | string | The address of the NFT contract on the blockchain             |

## Response

| Field     | Type   | Description                                           |
| --------- | ------ | ----------------------------------------------------- |
| `code`    | number | Indicates success (1) or failure (0) of the operation |
| `receipt` | object | The receipt of the transfer transaction if successful |
| `error`   | string | The error message if the operation fails              |

## Example Request and Response

### Prerequisites

Before making requests with NO.AI SDK, you must have it installed.

You can install NO.AI SDK using either **`npm`** or **`yarn`**. Use the following commands to install NO.AI SDK:

```jsx
npm install @nest25/evm-chains-lib
OR
yarn add @nest25/evm-chains-lib
```

### Request

Here is an example of how to make a `transferNFT` request using the NO.AI SDK:

```jsx

const { NFTMarketPlace } =  require('@nest25/evm-chains-lib')
const nftMarketPlace = new NFTMarketPlace();
const privateKey = 'your private key here'
const contractAddress = 'your contract address here'

const main = async () => {
     const contract = await nftMarketPlace.transferNFT(
        'klay',
        privateKey,
        contractAddress,
        1,
    )
    console.log(contract);
}
main()
```

### Response

```jsx
```

## Use Cases

* **Crypto Wallets:** The `transferNFT` function can be used by crypto wallets to facilitate the transfer of NFTs between users on a specific blockchain.
* **NFT Marketplaces:** The function can be used by NFT marketplaces to allow users to transfer their NFTs to other users on the platform.
* **NFT Collectors**: The `transferNFT` function can be used by NFT collectors to transfer their NFTs to other collectors or buyers on a specific blockchain.

<br>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.non-obvious.ai/sdks-guide/blockchain-sdks/evm-chains-sdk/nftmarketplace/transfernft.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
