> For the complete documentation index, see [llms.txt](https://docs.offblocks.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.offblocks.xyz/developer-guides/api-integration/blockchain-identifiers.md).

# Blockchain Identifiers

The OffBlocks API is chain-agnostic, meaning that our services can theoretically be integrated with a variety of different blockchains that support smart-contract functionality. This includes, but is not limited to, EVM-compatible L1 and L2 chains, Solana, and Tron.

To effectively set up entities such as users and accounts, perform compliance monitoring, and manage the transaction lifecycle, we employ universal identifiers for blockchain entities. We have chosen a CAIP-compatible ([Chain Agnostic Improvement Proposal](https://chainagnostic.org/)) naming convention for [Chain](https://chainagnostic.org/CAIPs/caip-2), [Account](https://chainagnostic.org/CAIPs/caip-10) and [Asset](https://chainagnostic.org/CAIPs/caip-19) identifiers, our internal Transaction identifier is also using [Account](https://chainagnostic.org/CAIPs/caip-10)-like structure for consistency.

### Chain Identifier

We use a blockchain namespace identifier suggested by [CAIP-2](https://chainagnostic.org/CAIPs/caip-2). Here are some examples of what it would look like for supported chains:

{% tabs %}
{% tab title="zkSync Era" %}

```json
// zkSync Era Mainnet
eip155:324

// zkSync Sepolia Testnet
eip155:300
```

{% endtab %}

{% tab title="Arbitrum" %}

```json
// Arbitrum One
eip155:42161

// Arbitrum Sepolia Testnet
eip155:421614
```

{% endtab %}

{% tab title="Polygon" %}

```json
// Polygon Mainnet
eip155:137

// Polygon Mumbai Testnet
eip155:80001
```

{% endtab %}

{% tab title="StarkNet" %}

```json
// StarkNet Mainnet
starknet:SN_MAIN

// StarkNet Sepolia
starknet:SN_SEPOLIA
```

{% endtab %}

{% tab title="Solana" %}

```json
// Solana Mainnet
solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp

// Solana Devnet
solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1

// Solana Testnet
solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z
```

{% endtab %}

{% tab title="Tron" %}

```json
// Tron Mainnet
tron:27Lqcw

// Tron Shasta Testnet
tron:4oPwXB

// Tron Nile Testnet
tron:6FhfKq
```

{% endtab %}
{% endtabs %}

### Account Identifier

We use a blockchain account identifier suggested by [CAIP-10](https://chainagnostic.org/CAIPs/caip-10). Here are some examples of what it would look like for supported chains:

{% tabs %}
{% tab title="zkSync Era" %}

```json
// zkSync Era Mainnet
eip155:324:0x22227A31dd842196A246d8f3b775998560eAa61d

// zkSync Sepolia Testnet
eip155:300:0x22227A31dd842196A246d8f3b775998560eAa61d
```

{% endtab %}

{% tab title="Arbitrum" %}

```json
// Arbitrum One
eip155:42161:0x22227A31dd842196A246d8f3b775998560eAa61d

// Arbitrum Sepolia Testnet
eip155:421614:0x22227A31dd842196A246d8f3b775998560eAa61d
```

{% endtab %}

{% tab title="Polygon" %}

```json
// Polygon Mainnet
eip155:137:0x22227A31dd842196A246d8f3b775998560eAa61d

// Polygon Mumbai Testnet
eip155:80001:0x22227A31dd842196A246d8f3b775998560eAa61d
```

{% endtab %}

{% tab title="StarkNet" %}

```json
// StarkNet Mainnet
starknet:SN_MAIN:0x02DdfB499765c064eaC5039E3841AA5f382E73B598097a40073BD8B48170Ab57

// StarkNet Sepolia
starknet:SN_SEPOLIA:0x02DdfB499765c064eaC5039E3841AA5f382E73B598097a40073BD8B48170Ab57
```

{% endtab %}

{% tab title="Solana" %}

```json
// Solana Mainnet
solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp:7S3P4HxJpyyigGzodYwHtCxZyUQe9JiBMHyRWXArAaKv

// Solana Devnet
solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1:DYw8jCTfwHNRJhhmFcbXvVDTqWMEVFBX6ZKUmG5CNSKK

// Solana Testnet
solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z:6LmSRCiu3z6NCSpF19oz1pHXkYkN4jWbj9K1nVELpDkT
```

{% endtab %}

{% tab title="Tron" %}

```json
// Tron Mainnet
tron:27Lqcw:TNPeeaaFB7K9cmo4uQpcU32zGK8G1NYqeL

// Tron Shasta Testnet
tron:4oPwXB:TNPeeaaFB7K9cmo4uQpcU32zGK8G1NYqeL

// Tron Nile Testnet
tron:6FhfKq:TNPeeaaFB7K9cmo4uQpcU32zGK8G1NYqeL
```

{% endtab %}
{% endtabs %}

### Transaction Identifier

We use a blockchain transaction identifier that is similar to the account identifier, as suggested by [CAIP-10](https://chainagnostic.org/CAIPs/caip-10), where the transaction hash replaces the account address. Here are some examples of what it would look like for supported chains:

{% tabs %}
{% tab title="zkSync Era" %}

```json
// zkSync Era Mainnet
eip155:324:0x4593e7f275383e76708718ead8f7226a804bea47fc9061ff649d105e943323e3

// zkSync Sepolia Testnet
eip155:300:0x4593e7f275383e76708718ead8f7226a804bea47fc9061ff649d105e943323e3
```

{% endtab %}

{% tab title="Arbitrum" %}

```json
// Arbitrum One
eip155:42161:0x4593e7f275383e76708718ead8f7226a804bea47fc9061ff649d105e943323e3

// Arbitrum Sepolia Testnet
eip155:421614:0x4593e7f275383e76708718ead8f7226a804bea47fc9061ff649d105e943323e3
```

{% endtab %}

{% tab title="Polygon" %}

```json
// Polygon Mainnet
eip155:137:0x4593e7f275383e76708718ead8f7226a804bea47fc9061ff649d105e943323e3

// Polygon Mumbai Testnet
eip155:80001:0x4593e7f275383e76708718ead8f7226a804bea47fc9061ff649d105e943323e3
```

{% endtab %}

{% tab title="StarkNet" %}

```json
// StarkNet Mainnet
starknet:SN_MAIN:0x03628d947d5aa8e2eeecbd49767ccea7ecce183b644f439bb8946a70576cff3c

// StarkNet Sepolia
starknet:SN_SEPOLIA:0x03628d947d5aa8e2eeecbd49767ccea7ecce183b644f439bb8946a70576cff3c
```

{% endtab %}

{% tab title="Solana" %}

```json
// Solana Mainnet
solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp:4agwj7yrJMc9K95v8zH1Bxg7vPPr5f5tN45Asu3asbjmc4iCaWDgQDWuYVvsrVzKkrJcB2ZXmbgToDvGX1kYgmz7

// Solana Devnet
solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1:4agwj7yrJMc9K95v8zH1Bxg7vPPr5f5tN45Asu3asbjmc4iCaWDgQDWuYVvsrVzKkrJcB2ZXmbgToDvGX1kYgmz7

// Solana Testnet
solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z:4agwj7yrJMc9K95v8zH1Bxg7vPPr5f5tN45Asu3asbjmc4iCaWDgQDWuYVvsrVzKkrJcB2ZXmbgToDvGX1kYgmz7
```

{% endtab %}

{% tab title="Tron" %}

```json
// Tron Mainnet
tron:27Lqcw:7e1c4712c81b5e2b960883dc4beb78c26f3549e862c139aab88206eb4a577430

// Tron Shasta Testnet
tron:4oPwXB:7e1c4712c81b5e2b960883dc4beb78c26f3549e862c139aab88206eb4a577430

// Tron Nile Testnet
tron:6FhfKq:7e1c4712c81b5e2b960883dc4beb78c26f3549e862c139aab88206eb4a577430
```

{% endtab %}
{% endtabs %}

### Asset Identifier

We use a blockchain asset identifier suggested by [CAIP-19](https://chainagnostic.org/CAIPs/caip-19). Here are some examples of what it would look like for supported chains:

{% tabs %}
{% tab title="zkSync Era" %}

```json
// zkSync Era Mainnet
eip155:324/erc20:0x6b175474e89094c44da98b954eedeac495271d0f

// zkSync Sepolia Testnet
eip155:300/erc20:0x6b175474e89094c44da98b954eedeac495271d0f
```

{% endtab %}

{% tab title="Arbitrum" %}

```json
// Arbitrum One
eip155:42161/erc20:0x6b175474e89094c44da98b954eedeac495271d0f

// Arbitrum Sepolia Testnet
eip155:421614/erc20:0x6b175474e89094c44da98b954eedeac495271d0f
```

{% endtab %}

{% tab title="Polygon" %}

```json
// Polygon Mainnet
eip155:137/erc20:0x6b175474e89094c44da98b954eedeac495271d0f

// Polygon Mumbai Testnet
eip155:80001/erc20:0x6b175474e89094c44da98b954eedeac495271d0f
```

{% endtab %}

{% tab title="StarkNet" %}

```json
// StarkNet Mainnet
starknet:SN_MAIN/erc20:0x053c91253bc9682c04929ca02ed00b3e423f6710d2ee7e0d5ebb06f3ecf368a8

// StarkNet Sepolia
starknet:SN_SEPOLIA/erc20:0x053c91253bc9682c04929ca02ed00b3e423f6710d2ee7e0d5ebb06f3ecf368a8
```

{% endtab %}

{% tab title="Solana" %}

```json
// Solana Mainnet
solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp/token:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v

// Solana Devnet
solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1/token:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v

// Solana Testnet
solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z/token:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
```

{% endtab %}

{% tab title="Tron" %}

```json
// Tron Mainnet
tron:27Lqcw/trc20:TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t

// Tron Shasta Testnet
tron:4oPwXB/trc20:TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t

// Tron Nile Testnet
tron:6FhfKq/trc20:TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t
```

{% endtab %}
{% endtabs %}


---

# 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, and the optional `goal` query parameter:

```
GET https://docs.offblocks.xyz/developer-guides/api-integration/blockchain-identifiers.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
