# Step-by-step Integration

### Open your Project → go to the **ioID** tab

<figure><img src="/files/9eNnO4nzeuvTAg05Y6ks" alt=""><figcaption></figcaption></figure>

Make sure your DePINscan project already exists (see [Project Integration](/developer/project-integration.md)).

From the DePINscan dashboard, select your project and switch to the **ioID** tab.

On this page, choose one of two integration flows:

***

### Option A — Autopilot (IoTeX-managed)

<figure><img src="/files/Meo2EhQriJJVIQfCq4th" alt=""><figcaption></figcaption></figure>

Best when you want a zero-ops setup with no gas management on your side.

> **Note:** To unlock advanced ioID features (e.g., device-level permissions, automation, or token-bound account behavior), you’ll need to **transfer each device NFT to the device’s actual owner** once Autopilot completes.

***

### Option B — Manual (Builder-managed)

Choose this if you want to control the ioID and user binding process manually.

#### 1. Create or Import your Device NFT contract

You have two ways to set the contract used to represent devices:

* **Create from Template:**\
  Use the built-in “Use Template” flow to deploy a standard Device NFT on IoTeX mainnet.

  Please refer to this [template reference contract](https://github.com/iotexproject/ioID-v2-contracts/blob/master/src/deviceNFT/DeviceNFTTemplate.sol) for more details.&#x20;
*

```
<figure><img src="/files/hzm6MrcGoy04mTTufA4c" alt=""><figcaption></figcaption></figure>
```

* **Import Existing Contract:**\
  If you already issue device NFTs to owners, import your contract by address.

{% hint style="info" %}
**NOTE**: This option is currently supported on IoTeX, Ethereum and Polygon
{% endhint %}

<figure><img src="/files/jZ42T7EwqW588fYmjnoh" alt=""><figcaption></figcaption></figure>

***

#### 2. Send Device Ownership via API

<figure><img src="/files/EWBBuNzYLjVnGNkWO8qJ" alt=""><figcaption></figcaption></figure>

Once your Device NFT contract is set:

* Use the [ioID API](/developer/ioid-integration/example-call.md) to **submit device ownership metadata** (mapping each device to its owner).

{% hint style="info" %}
Please go to the [Example Call](/developer/map-integration/example-call.md) page for more details
{% endhint %}


---

# Agent Instructions: 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.depinscan.io/developer/ioid-integration/step-by-step-integration.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.
