Infrastructure API
The Infrastructure API provides an interface for managing essential infrastructure services required to build modern Web3 applications.
RPC Service
Create a RPC API Key
Create a new RPC API key for a project.
POST /rpc/api-key
Body Fields
Field | Type | Description | Required |
---|---|---|---|
name | string | Name of the API key | Yes |
description | string | Description of the API key | No |
Possible Errors
Code | Description |
---|---|
40300000 | Forbidden |
40020001 | Max RPC API keys limit reached |
40405001 | Project owner not found |
50000001 | Internal server error |
422001101 | RPC API key name is missing |
curl --location --request POST "https://api.apillon.io/rpc/api-key" \
--header "Authorization: Basic :credentials" \
--header "Content-Type: application/json" \
--data-raw "{
\"name\": \"RPC API Key\",
\"description\": \"Description of the API key\"
}"
{
"status": 201,
"data": {
"id": 4,
"projectUuid": "d0c34b5e-1fd6-473e-81f8-e89ee479f7aa",
"name": "RPC API Key",
"description": "Description of the API key",
"uuid": "60020364-7edc-495a-a0a2-df695bb1cc3f"
}
}
List RPC API Keys
Retrieve a list of RPC API keys associated with a project.
GET /rpc/api-key
Query Parameters
All query parameters from listing request
Response Fields
Field | Type | Description |
---|---|---|
id | number | Unique identifier of the RPC API key |
projectUuid | string | UUID of the project the RPC API key belongs to |
name | string | Name of the RPC API key |
uuid | string | Unique identifier of the RPC API key returned by Dwellir |
description | string | Description of the RPC API key |
createTime | DateTime | Creation timestamp |
updateTime | DateTime | Last updated timestamp |
curl --location --request GET "https://api.apillon.io/rpc/api-key" \
--header "Authorization: Basic :credentials"
{
"status": 200,
"data": {
"items": [
{
"id": 4,
"createTime": "2024-09-09T11:15:26.000Z",
"updateTime": "2024-09-10T13:18:31.000Z",
"projectUuid": "cfd85992-8f79-4486-97cf-2406bd722d90",
"name": "RPC API Key",
"description": "Description of the API key",
"uuid": "60020364-7edc-495a-a0a2-df695bb1cc3f"
}
],
"total": 1,
"page": 1,
"limit": 20
}
}
Get a RPC API Key
Retrieve the details of a specific RPC API key by its ID along with the list of RPC endpoints marked as favorite for this API key.
GET /rpc/api-key/:id
URL Parameters
Field | Type | Description | Required |
---|---|---|---|
id | number | Unique identifier of the RPC API key | Yes |
Response Fields
Field | Type | Description |
---|---|---|
id | number | Unique identifier of the RPC API key |
name | string | Name of the RPC API key |
description | string | Description of the RPC API key |
projectUuid | string | Unique identifier of the project |
uuid | string | Unique identifier of the RPC API key |
createTime | DateTime | Creation timestamp |
updateTime | DateTime | Last updated timestamp |
urls | array | Array of favorite URLs for the RPC API key |
URL Fields
Field | Type | Description |
---|---|---|
id | number | Unique identifier of the RPC Endpoint |
apiKeyId | number | Unique identifier of the RPC API key |
chainName | string | Name of the chain the RPC Endpoint belongs to |
network | string | Network of the RPC Endpoint (Usually mainnet, testnet, etc.) |
httpsUrl | string | HTTPS URL of the RPC Endpoint |
wssUrl | string | WSS URL of the RPC Endpoint |
createTime | DateTime | Creation timestamp |
updateTime | DateTime | Last updated timestamp |
Possible Errors
Code | Description |
---|---|
40300000 | Forbidden |
40420001 | RPC API key not found |
curl --location --request GET "https://api.apillon.io/rpc/api-key/:id" \
--header "Authorization: Basic :credentials"
{
"id": "60020364-7edc-495a-a0a2-df695bb1cc3f",
"status": 200,
"data": {
"createTime": "2024-09-09T11:15:26.000Z",
"updateTime": "2024-09-10T13:18:31.000Z",
"name": "RPC API Key",
"description": null,
"project_uuid": "d0c34b5e-1fd6-473e-81f8-e89ee479f7aa",
"uuid": "60020364-7edc-495a-a0a2-df695bb1cc3f",
"urls": [
{
"id": 77,
"chainName": "Ethereum",
"network": "mainnet",
"httpsUrl": "https://mainnet.apillon.io/60020364-7edc-495a-a0a2-df695bb1cc3f",
"wssUrl": "wss://mainnet.apillon.io/60020364-7edc-495a-a0a2-df695bb1cc3f",
"createTime": "2024-09-10T12:55:44.000Z",
"updateTime": "2024-09-12T13:57:26.000Z",
}
]
}
}
List RPC Endpoints
Retrieve a list of available RPC endpoints by Dwellir.
GET /rpc/endpoints
Response Fields
Field | Type | Description |
---|---|---|
id | number | Unique identifier of the RPC Endpoint |
image_url | string | URL of the RPC Endpoint chain image |
name | string | Name of the RPC Endpoint chain |
networkId | number | Network ID of the RPC Endpoint |
networkName | string | Network of the RPC Endpoint (Usually Mainnet, Testnet, etc.) |
nodes | array | Array of nodes for the RPC Endpoint |
type | string | Type of the Entity (will be 'network') |
version | string | Version of the RPC Endpoint |
Node Fields
Field | Type | Description |
---|---|---|
id | number | Unique identifier of the RPC Endpoint Node |
https | string | HTTPS URL of the RPC Endpoint Node |
wss | string | WSS URL of the RPC Endpoint Node |
type | string | Type of the Entity (will be 'node') |
node_type | string | Type of the RPC Endpoint Node |
version | string | Version of the RPC Endpoint Node |
curl --location --request GET "https://api.apillon.io/rpc/endpoints" \
--header "Authorization: Basic :credentials"
{
"status": 200,
"data": [{
"id": 1,
"image_url": "https://apillon.io/images/chains/ethereum.svg",
"name": "Ethereum",
"networkId": 31,
"networkName": "Mainnet",
"nodes": [{
"id": 1,
"https": "https://mainnet.apillon.io/<key>",
"wss": "wss://mainnet.apillon.io/<key>",
"type": "node",
"node_type": "Archive",
"version": "1.0"
}],
"type": "network",
"version": "1.0"
}]
}