API ReferenceUniversal API

Integra Universal API v1.0.0

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

Public-facing API for Integra services providing access to workflows, blockchain chains, and transaction data.

Base URLs:

Web: Integra API Support

Authentication

  • HTTP Authentication, scheme: bearer API key authentication handled by Gateway Worker. Requests are forwarded with X-Org-ID, X-API-Key-ID, and X-Org-Scopes headers.

Workflows

Workflow registry endpoints

listWorkflows

Code samples

# You can also use wget
curl -X GET https://api.integra.dev/v1/workflows \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
 
 
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};
 
fetch('https://api.integra.dev/v1/workflows',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 
import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}
 
r = requests.get('https://api.integra.dev/v1/workflows', headers = headers)
 
print(r.json())
 

GET /workflows

List workflows

Retrieve a paginated list of all workflows

Parameters

NameInTypeRequiredDescription
limitqueryintegerfalseMaximum number of results to return (1-100)
offsetqueryintegerfalseNumber of results to skip
searchquerystringfalseSearch query for workflow name or ID

Example responses

200 Response

{
  "workflows": [
    {
      "workflow_id": "string",
      "name": "string",
      "version": "string",
      "manifest": {},
      "github_sha": "string",
      "is_active": true,
      "created_at": "2019-08-24T14:15:22Z",
      "updated_at": "2019-08-24T14:15:22Z"
    }
  ],
  "pagination": {
    "total": 0,
    "limit": 0,
    "offset": 0,
    "has_more": true
  }
}

Responses

StatusMeaningDescriptionSchema
200OKSuccessful responseWorkflowListResponse
500Internal Server ErrorInternal server errorErrorResponse

getWorkflowById

Code samples

# You can also use wget
curl -X GET https://api.integra.dev/v1/workflows/{id} \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
 
 
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};
 
fetch('https://api.integra.dev/v1/workflows/{id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 
import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}
 
r = requests.get('https://api.integra.dev/v1/workflows/{id}', headers = headers)
 
print(r.json())
 

GET /workflows/{id}

Get workflow by ID

Retrieve a specific workflow by its ID

Parameters

NameInTypeRequiredDescription
idpathstringtrueWorkflow ID

Example responses

200 Response

{
  "workflow_id": "string",
  "name": "string",
  "version": "string",
  "manifest": {},
  "github_sha": "string",
  "is_active": true,
  "created_at": "2019-08-24T14:15:22Z",
  "updated_at": "2019-08-24T14:15:22Z"
}

Responses

StatusMeaningDescriptionSchema
200OKSuccessful responseWorkflow
404Not FoundResource not foundErrorResponse
500Internal Server ErrorInternal server errorErrorResponse

getWorkflowByName

Code samples

# You can also use wget
curl -X GET https://api.integra.dev/v1/workflows/by-name/{name} \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
 
 
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};
 
fetch('https://api.integra.dev/v1/workflows/by-name/{name}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 
import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}
 
r = requests.get('https://api.integra.dev/v1/workflows/by-name/{name}', headers = headers)
 
print(r.json())
 

GET /workflows/by-name/{name}

Get workflow by name

Retrieve a workflow by its name, optionally filtered by version

Parameters

NameInTypeRequiredDescription
namepathstringtrueWorkflow name
versionquerystringfalseWorkflow version

Example responses

200 Response

{
  "workflow_id": "string",
  "name": "string",
  "version": "string",
  "manifest": {},
  "github_sha": "string",
  "is_active": true,
  "created_at": "2019-08-24T14:15:22Z",
  "updated_at": "2019-08-24T14:15:22Z"
}

Responses

StatusMeaningDescriptionSchema
200OKSuccessful responseWorkflow
404Not FoundResource not foundErrorResponse
500Internal Server ErrorInternal server errorErrorResponse

Chains

Blockchain chain registry endpoints

listChains

Code samples

# You can also use wget
curl -X GET https://api.integra.dev/v1/chains \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
 
 
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};
 
fetch('https://api.integra.dev/v1/chains',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 
import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}
 
r = requests.get('https://api.integra.dev/v1/chains', headers = headers)
 
print(r.json())
 

GET /chains

List chains

Retrieve a paginated list of supported blockchain chains

Parameters

NameInTypeRequiredDescription
limitqueryintegerfalsenone
offsetqueryintegerfalsenone
searchquerystringfalsenone
network_typequerystringfalseFilter by network type (mainnet, testnet)
chain_typequerystringfalseFilter by chain type (evm, solana, etc.)
is_testnetquerybooleanfalseFilter by testnet status
layerquerystringfalseFilter by layer (L1, L2, etc.)

Enumerated Values

ParameterValue
network_typemainnet
network_typetestnet

Example responses

200 Response

{
  "chains": [
    {
      "id": 0,
      "chain_id": 0,
      "chain_name": "string",
      "display_name": "string",
      "chain_type": "string",
      "icon_url": "string",
      "logo_url": "string",
      "native_currency": {
        "symbol": "string",
        "name": "string",
        "decimals": 0
      },
      "network_type": "string",
      "layer": "string",
      "is_active": true,
      "is_testnet": true,
      "supports_eip1559": true,
      "rpc_providers": [
        {
          "id": 0,
          "chain_id": 0,
          "provider_name": "string",
          "provider_type": "string",
          "http_url": "string",
          "ws_url": "string",
          "is_default": 0,
          "is_healthy": 0
        }
      ],
      "block_explorers": [
        {
          "id": 0,
          "chain_id": 0,
          "explorer_name": "string",
          "base_url": "string",
          "api_url": "string",
          "is_default": 0
        }
      ]
    }
  ],
  "pagination": {
    "total": 0,
    "limit": 0,
    "offset": 0,
    "has_more": true
  }
}

Responses

StatusMeaningDescriptionSchema
200OKSuccessful responseChainListResponse
500Internal Server ErrorInternal server errorErrorResponse

getChainById

Code samples

# You can also use wget
curl -X GET https://api.integra.dev/v1/chains/{chainId} \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
 
 
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};
 
fetch('https://api.integra.dev/v1/chains/{chainId}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 
import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}
 
r = requests.get('https://api.integra.dev/v1/chains/{chainId}', headers = headers)
 
print(r.json())
 

GET /chains/{chainId}

Get chain by ID

Retrieve a specific chain by its ID, optionally including RPC providers and block explorers

Parameters

NameInTypeRequiredDescription
chainIdpathintegertrueChain ID
include_detailsquerybooleanfalseInclude RPC providers and block explorers

Example responses

200 Response

{
  "id": 0,
  "chain_id": 0,
  "chain_name": "string",
  "display_name": "string",
  "chain_type": "string",
  "icon_url": "string",
  "logo_url": "string",
  "native_currency": {
    "symbol": "string",
    "name": "string",
    "decimals": 0
  },
  "network_type": "string",
  "layer": "string",
  "is_active": true,
  "is_testnet": true,
  "supports_eip1559": true,
  "rpc_providers": [
    {
      "id": 0,
      "chain_id": 0,
      "provider_name": "string",
      "provider_type": "string",
      "http_url": "string",
      "ws_url": "string",
      "is_default": 0,
      "is_healthy": 0
    }
  ],
  "block_explorers": [
    {
      "id": 0,
      "chain_id": 0,
      "explorer_name": "string",
      "base_url": "string",
      "api_url": "string",
      "is_default": 0
    }
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKSuccessful responseChain
400Bad RequestValidation errorErrorResponse
404Not FoundResource not foundErrorResponse
500Internal Server ErrorInternal server errorErrorResponse

getRpcProviders

Code samples

# You can also use wget
curl -X GET https://api.integra.dev/v1/chains/{chainId}/rpc-providers \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
 
 
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};
 
fetch('https://api.integra.dev/v1/chains/{chainId}/rpc-providers',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 
import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}
 
r = requests.get('https://api.integra.dev/v1/chains/{chainId}/rpc-providers', headers = headers)
 
print(r.json())
 

GET /chains/{chainId}/rpc-providers

Get RPC providers for chain

Retrieve all RPC providers for a specific chain

Parameters

NameInTypeRequiredDescription
chainIdpathintegertruenone

Example responses

200 Response

{
  "chain_id": 0,
  "rpc_providers": [
    {
      "id": 0,
      "chain_id": 0,
      "provider_name": "string",
      "provider_type": "string",
      "http_url": "string",
      "ws_url": "string",
      "is_default": 0,
      "is_healthy": 0
    }
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKSuccessful responseInline
400Bad RequestValidation errorErrorResponse
500Internal Server ErrorInternal server errorErrorResponse

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
» chain_idintegerfalsenonenone
» rpc_providers[RpcProvider]falsenonenone
»» idintegerfalsenonenone
»» chain_idintegerfalsenonenone
»» provider_namestringfalsenonenone
»» provider_typestringfalsenonenone
»» http_urlstringfalsenonenone
»» ws_urlstring¦nullfalsenonenone
»» is_defaultintegerfalsenonenone
»» is_healthyintegerfalsenonenone

getBlockExplorers

Code samples

# You can also use wget
curl -X GET https://api.integra.dev/v1/chains/{chainId}/block-explorers \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
 
 
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};
 
fetch('https://api.integra.dev/v1/chains/{chainId}/block-explorers',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 
import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}
 
r = requests.get('https://api.integra.dev/v1/chains/{chainId}/block-explorers', headers = headers)
 
print(r.json())
 

GET /chains/{chainId}/block-explorers

Get block explorers for chain

Retrieve all block explorers for a specific chain

Parameters

NameInTypeRequiredDescription
chainIdpathintegertruenone

Example responses

200 Response

{
  "chain_id": 0,
  "block_explorers": [
    {
      "id": 0,
      "chain_id": 0,
      "explorer_name": "string",
      "base_url": "string",
      "api_url": "string",
      "is_default": 0
    }
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKSuccessful responseInline
400Bad RequestValidation errorErrorResponse
500Internal Server ErrorInternal server errorErrorResponse

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
» chain_idintegerfalsenonenone
» block_explorers[BlockExplorer]falsenonenone
»» idintegerfalsenonenone
»» chain_idintegerfalsenonenone
»» explorer_namestringfalsenonenone
»» base_urlstringfalsenonenone
»» api_urlstring¦nullfalsenonenone
»» is_defaultintegerfalsenonenone

Transactions

Transaction indexing and retrieval endpoints

listTransactions

Code samples

# You can also use wget
curl -X GET https://api.integra.dev/v1/transactions \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
 
 
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};
 
fetch('https://api.integra.dev/v1/transactions',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 
import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}
 
r = requests.get('https://api.integra.dev/v1/transactions', headers = headers)
 
print(r.json())
 

GET /transactions

List transactions

Retrieve a paginated list of transactions with optional filters

Parameters

NameInTypeRequiredDescription
limitqueryintegerfalsenone
offsetqueryintegerfalsenone
searchquerystringfalsenone
chain_idqueryintegerfalsenone
contract_typequerystringfalsenone
contract_addressquerystringfalsenone
from_blockqueryintegerfalsenone
to_blockqueryintegerfalsenone
from_timestampquerystring(date-time)falsenone
to_timestampquerystring(date-time)falsenone

Example responses

200 Response

{
  "transactions": [
    {
      "id": "string",
      "chain_id": 0,
      "contract_type": "string",
      "contract_address": "string",
      "block_number": 0,
      "block_timestamp": "2019-08-24T14:15:22Z",
      "transaction_hash": "string",
      "transaction_data": {},
      "receipt_data": {},
      "raw_input": "string",
      "parsed_input": {},
      "parsed_events": [
        {}
      ],
      "document_data": {},
      "indexed_at": "2019-08-24T14:15:22Z",
      "event_published": "2019-08-24T14:15:22Z"
    }
  ],
  "pagination": {
    "total": 0,
    "limit": 0,
    "offset": 0,
    "has_more": true
  }
}

Responses

StatusMeaningDescriptionSchema
200OKSuccessful responseTransactionListResponse
500Internal Server ErrorInternal server errorErrorResponse

createTransaction

Code samples

# You can also use wget
curl -X POST https://api.integra.dev/v1/transactions \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
 
const inputBody = '{
  "chain_id": 0,
  "contract_type": "string",
  "contract_address": "string",
  "block_number": 0,
  "block_timestamp": "2019-08-24T14:15:22Z",
  "transaction_hash": "string",
  "transaction_data": {},
  "receipt_data": {},
  "raw_input": "string",
  "parsed_input": {},
  "parsed_events": [
    {}
  ],
  "document_data": {}
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};
 
fetch('https://api.integra.dev/v1/transactions',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 
import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}
 
r = requests.post('https://api.integra.dev/v1/transactions', headers = headers)
 
print(r.json())
 

POST /transactions

Create transaction

Create a new transaction record

Body parameter

{
  "chain_id": 0,
  "contract_type": "string",
  "contract_address": "string",
  "block_number": 0,
  "block_timestamp": "2019-08-24T14:15:22Z",
  "transaction_hash": "string",
  "transaction_data": {},
  "receipt_data": {},
  "raw_input": "string",
  "parsed_input": {},
  "parsed_events": [
    {}
  ],
  "document_data": {}
}

Parameters

NameInTypeRequiredDescription
bodybodyCreateTransactionRequesttruenone

Example responses

201 Response

{
  "id": "string",
  "chain_id": 0,
  "contract_type": "string",
  "contract_address": "string",
  "block_number": 0,
  "block_timestamp": "2019-08-24T14:15:22Z",
  "transaction_hash": "string",
  "transaction_data": {},
  "receipt_data": {},
  "raw_input": "string",
  "parsed_input": {},
  "parsed_events": [
    {}
  ],
  "document_data": {},
  "indexed_at": "2019-08-24T14:15:22Z",
  "event_published": "2019-08-24T14:15:22Z"
}

Responses

StatusMeaningDescriptionSchema
201CreatedTransaction created successfullyTransaction
400Bad RequestValidation errorErrorResponse
409ConflictResource conflictErrorResponse
500Internal Server ErrorInternal server errorErrorResponse

getTransactionById

Code samples

# You can also use wget
curl -X GET https://api.integra.dev/v1/transactions/{id} \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
 
 
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};
 
fetch('https://api.integra.dev/v1/transactions/{id}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 
import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}
 
r = requests.get('https://api.integra.dev/v1/transactions/{id}', headers = headers)
 
print(r.json())
 

GET /transactions/{id}

Get transaction by ID

Retrieve a specific transaction by its ID

Parameters

NameInTypeRequiredDescription
idpathstringtruenone

Example responses

200 Response

{
  "id": "string",
  "chain_id": 0,
  "contract_type": "string",
  "contract_address": "string",
  "block_number": 0,
  "block_timestamp": "2019-08-24T14:15:22Z",
  "transaction_hash": "string",
  "transaction_data": {},
  "receipt_data": {},
  "raw_input": "string",
  "parsed_input": {},
  "parsed_events": [
    {}
  ],
  "document_data": {},
  "indexed_at": "2019-08-24T14:15:22Z",
  "event_published": "2019-08-24T14:15:22Z"
}

Responses

StatusMeaningDescriptionSchema
200OKSuccessful responseTransaction
404Not FoundResource not foundErrorResponse
500Internal Server ErrorInternal server errorErrorResponse

updateTransactionStatus

Code samples

# You can also use wget
curl -X PATCH https://api.integra.dev/v1/transactions/{id}/status \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
 
const inputBody = '{
  "event_published": "2019-08-24T14:15:22Z"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};
 
fetch('https://api.integra.dev/v1/transactions/{id}/status',
{
  method: 'PATCH',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 
import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}
 
r = requests.patch('https://api.integra.dev/v1/transactions/{id}/status', headers = headers)
 
print(r.json())
 

PATCH /transactions/{id}/status

Update transaction status

Update the event_published status of a transaction

Body parameter

{
  "event_published": "2019-08-24T14:15:22Z"
}

Parameters

NameInTypeRequiredDescription
idpathstringtruenone
bodybodyobjecttruenone
» event_publishedbodystring(date-time)truenone

Example responses

200 Response

{
  "id": "string",
  "chain_id": 0,
  "contract_type": "string",
  "contract_address": "string",
  "block_number": 0,
  "block_timestamp": "2019-08-24T14:15:22Z",
  "transaction_hash": "string",
  "transaction_data": {},
  "receipt_data": {},
  "raw_input": "string",
  "parsed_input": {},
  "parsed_events": [
    {}
  ],
  "document_data": {},
  "indexed_at": "2019-08-24T14:15:22Z",
  "event_published": "2019-08-24T14:15:22Z"
}

Responses

StatusMeaningDescriptionSchema
200OKTransaction updated successfullyTransaction
400Bad RequestValidation errorErrorResponse
404Not FoundResource not foundErrorResponse
500Internal Server ErrorInternal server errorErrorResponse

getTransactionByHash

Code samples

# You can also use wget
curl -X GET https://api.integra.dev/v1/transactions/by-hash/{hash} \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
 
 
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};
 
fetch('https://api.integra.dev/v1/transactions/by-hash/{hash}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 
import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}
 
r = requests.get('https://api.integra.dev/v1/transactions/by-hash/{hash}', headers = headers)
 
print(r.json())
 

GET /transactions/by-hash/{hash}

Get transaction by hash

Retrieve a transaction by its hash

Parameters

NameInTypeRequiredDescription
hashpathstringtruenone

Example responses

200 Response

{
  "id": "string",
  "chain_id": 0,
  "contract_type": "string",
  "contract_address": "string",
  "block_number": 0,
  "block_timestamp": "2019-08-24T14:15:22Z",
  "transaction_hash": "string",
  "transaction_data": {},
  "receipt_data": {},
  "raw_input": "string",
  "parsed_input": {},
  "parsed_events": [
    {}
  ],
  "document_data": {},
  "indexed_at": "2019-08-24T14:15:22Z",
  "event_published": "2019-08-24T14:15:22Z"
}

Responses

StatusMeaningDescriptionSchema
200OKSuccessful responseTransaction
404Not FoundResource not foundErrorResponse
500Internal Server ErrorInternal server errorErrorResponse

getTransactionsByBlock

Code samples

# You can also use wget
curl -X GET https://api.integra.dev/v1/transactions/by-block/{chainId}/{blockNumber} \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
 
 
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};
 
fetch('https://api.integra.dev/v1/transactions/by-block/{chainId}/{blockNumber}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 
import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}
 
r = requests.get('https://api.integra.dev/v1/transactions/by-block/{chainId}/{blockNumber}', headers = headers)
 
print(r.json())
 

GET /transactions/by-block/{chainId}/{blockNumber}

Get transactions by block

Retrieve all transactions for a specific block

Parameters

NameInTypeRequiredDescription
chainIdpathintegertruenone
blockNumberpathintegertruenone

Example responses

200 Response

{
  "chain_id": 0,
  "block_number": 0,
  "transactions": [
    {
      "id": "string",
      "chain_id": 0,
      "contract_type": "string",
      "contract_address": "string",
      "block_number": 0,
      "block_timestamp": "2019-08-24T14:15:22Z",
      "transaction_hash": "string",
      "transaction_data": {},
      "receipt_data": {},
      "raw_input": "string",
      "parsed_input": {},
      "parsed_events": [
        {}
      ],
      "document_data": {},
      "indexed_at": "2019-08-24T14:15:22Z",
      "event_published": "2019-08-24T14:15:22Z"
    }
  ],
  "count": 0
}

Responses

StatusMeaningDescriptionSchema
200OKSuccessful responseInline
400Bad RequestValidation errorErrorResponse
500Internal Server ErrorInternal server errorErrorResponse

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
» chain_idintegerfalsenonenone
» block_numberintegerfalsenonenone
» transactions[Transaction]falsenonenone
»» idstringfalsenonenone
»» chain_idintegerfalsenonenone
»» contract_typestringfalsenonenone
»» contract_addressstringfalsenonenone
»» block_numberintegerfalsenonenone
»» block_timestampstring(date-time)falsenonenone
»» transaction_hashstringfalsenonenone
»» transaction_dataobjectfalsenonenone
»» receipt_dataobjectfalsenonenone
»» raw_inputstringfalsenonenone
»» parsed_inputobject¦nullfalsenonenone
»» parsed_events[object]¦nullfalsenonenone
»» document_dataobject¦nullfalsenonenone
»» indexed_atstring(date-time)¦nullfalsenonenone
»» event_publishedstring(date-time)¦nullfalsenonenone
» countintegerfalsenonenone

getTransactionsByContract

Code samples

# You can also use wget
curl -X GET https://api.integra.dev/v1/transactions/by-contract/{chainId}/{address} \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
 
 
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};
 
fetch('https://api.integra.dev/v1/transactions/by-contract/{chainId}/{address}',
{
  method: 'GET',
 
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
 
import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}
 
r = requests.get('https://api.integra.dev/v1/transactions/by-contract/{chainId}/{address}', headers = headers)
 
print(r.json())
 

GET /transactions/by-contract/{chainId}/{address}

Get transactions by contract

Retrieve all transactions for a specific contract with pagination

Parameters

NameInTypeRequiredDescription
chainIdpathintegertruenone
addresspathstringtruenone
limitqueryintegerfalsenone
offsetqueryintegerfalsenone

Example responses

200 Response

{
  "chain_id": 0,
  "contract_address": "string",
  "transactions": [
    {
      "id": "string",
      "chain_id": 0,
      "contract_type": "string",
      "contract_address": "string",
      "block_number": 0,
      "block_timestamp": "2019-08-24T14:15:22Z",
      "transaction_hash": "string",
      "transaction_data": {},
      "receipt_data": {},
      "raw_input": "string",
      "parsed_input": {},
      "parsed_events": [
        {}
      ],
      "document_data": {},
      "indexed_at": "2019-08-24T14:15:22Z",
      "event_published": "2019-08-24T14:15:22Z"
    }
  ],
  "pagination": {
    "total": 0,
    "limit": 0,
    "offset": 0,
    "has_more": true
  }
}

Responses

StatusMeaningDescriptionSchema
200OKSuccessful responseInline
400Bad RequestValidation errorErrorResponse
500Internal Server ErrorInternal server errorErrorResponse

Response Schema

Schemas

Workflow

{
  "workflow_id": "string",
  "name": "string",
  "version": "string",
  "manifest": {},
  "github_sha": "string",
  "is_active": true,
  "created_at": "2019-08-24T14:15:22Z",
  "updated_at": "2019-08-24T14:15:22Z"
}
 

Properties

NameTypeRequiredRestrictionsDescription
workflow_idstringfalsenonenone
namestringfalsenonenone
versionstringfalsenonenone
manifestobjectfalsenonenone
github_shastring¦nullfalsenonenone
is_activebooleanfalsenonenone
created_atstring(date-time)¦nullfalsenonenone
updated_atstring(date-time)¦nullfalsenonenone

WorkflowListResponse

{
  "workflows": [
    {
      "workflow_id": "string",
      "name": "string",
      "version": "string",
      "manifest": {},
      "github_sha": "string",
      "is_active": true,
      "created_at": "2019-08-24T14:15:22Z",
      "updated_at": "2019-08-24T14:15:22Z"
    }
  ],
  "pagination": {
    "total": 0,
    "limit": 0,
    "offset": 0,
    "has_more": true
  }
}
 

Properties

NameTypeRequiredRestrictionsDescription
workflows[Workflow]falsenonenone
paginationPaginationMetafalsenonenone

Chain

{
  "id": 0,
  "chain_id": 0,
  "chain_name": "string",
  "display_name": "string",
  "chain_type": "string",
  "icon_url": "string",
  "logo_url": "string",
  "native_currency": {
    "symbol": "string",
    "name": "string",
    "decimals": 0
  },
  "network_type": "string",
  "layer": "string",
  "is_active": true,
  "is_testnet": true,
  "supports_eip1559": true,
  "rpc_providers": [
    {
      "id": 0,
      "chain_id": 0,
      "provider_name": "string",
      "provider_type": "string",
      "http_url": "string",
      "ws_url": "string",
      "is_default": 0,
      "is_healthy": 0
    }
  ],
  "block_explorers": [
    {
      "id": 0,
      "chain_id": 0,
      "explorer_name": "string",
      "base_url": "string",
      "api_url": "string",
      "is_default": 0
    }
  ]
}
 

Properties

NameTypeRequiredRestrictionsDescription
idintegerfalsenonenone
chain_idintegerfalsenonenone
chain_namestringfalsenonenone
display_namestringfalsenonenone
chain_typestring¦nullfalsenonenone
icon_urlstring¦nullfalsenonenone
logo_urlstring¦nullfalsenonenone
native_currencyobjectfalsenonenone
» symbolstringfalsenonenone
» namestringfalsenonenone
» decimalsintegerfalsenonenone
network_typestring¦nullfalsenonenone
layerstring¦nullfalsenonenone
is_activebooleanfalsenonenone
is_testnetbooleanfalsenonenone
supports_eip1559booleanfalsenonenone
rpc_providers[RpcProvider]falsenonenone
block_explorers[BlockExplorer]falsenonenone

ChainListResponse

{
  "chains": [
    {
      "id": 0,
      "chain_id": 0,
      "chain_name": "string",
      "display_name": "string",
      "chain_type": "string",
      "icon_url": "string",
      "logo_url": "string",
      "native_currency": {
        "symbol": "string",
        "name": "string",
        "decimals": 0
      },
      "network_type": "string",
      "layer": "string",
      "is_active": true,
      "is_testnet": true,
      "supports_eip1559": true,
      "rpc_providers": [
        {
          "id": 0,
          "chain_id": 0,
          "provider_name": "string",
          "provider_type": "string",
          "http_url": "string",
          "ws_url": "string",
          "is_default": 0,
          "is_healthy": 0
        }
      ],
      "block_explorers": [
        {
          "id": 0,
          "chain_id": 0,
          "explorer_name": "string",
          "base_url": "string",
          "api_url": "string",
          "is_default": 0
        }
      ]
    }
  ],
  "pagination": {
    "total": 0,
    "limit": 0,
    "offset": 0,
    "has_more": true
  }
}
 

Properties

NameTypeRequiredRestrictionsDescription
chains[Chain]falsenonenone
paginationPaginationMetafalsenonenone

RpcProvider

{
  "id": 0,
  "chain_id": 0,
  "provider_name": "string",
  "provider_type": "string",
  "http_url": "string",
  "ws_url": "string",
  "is_default": 0,
  "is_healthy": 0
}
 

Properties

NameTypeRequiredRestrictionsDescription
idintegerfalsenonenone
chain_idintegerfalsenonenone
provider_namestringfalsenonenone
provider_typestringfalsenonenone
http_urlstringfalsenonenone
ws_urlstring¦nullfalsenonenone
is_defaultintegerfalsenonenone
is_healthyintegerfalsenonenone

BlockExplorer

{
  "id": 0,
  "chain_id": 0,
  "explorer_name": "string",
  "base_url": "string",
  "api_url": "string",
  "is_default": 0
}
 

Properties

NameTypeRequiredRestrictionsDescription
idintegerfalsenonenone
chain_idintegerfalsenonenone
explorer_namestringfalsenonenone
base_urlstringfalsenonenone
api_urlstring¦nullfalsenonenone
is_defaultintegerfalsenonenone

Transaction

{
  "id": "string",
  "chain_id": 0,
  "contract_type": "string",
  "contract_address": "string",
  "block_number": 0,
  "block_timestamp": "2019-08-24T14:15:22Z",
  "transaction_hash": "string",
  "transaction_data": {},
  "receipt_data": {},
  "raw_input": "string",
  "parsed_input": {},
  "parsed_events": [
    {}
  ],
  "document_data": {},
  "indexed_at": "2019-08-24T14:15:22Z",
  "event_published": "2019-08-24T14:15:22Z"
}
 

Properties

NameTypeRequiredRestrictionsDescription
idstringfalsenonenone
chain_idintegerfalsenonenone
contract_typestringfalsenonenone
contract_addressstringfalsenonenone
block_numberintegerfalsenonenone
block_timestampstring(date-time)falsenonenone
transaction_hashstringfalsenonenone
transaction_dataobjectfalsenonenone
receipt_dataobjectfalsenonenone
raw_inputstringfalsenonenone
parsed_inputobject¦nullfalsenonenone
parsed_events[object]¦nullfalsenonenone
document_dataobject¦nullfalsenonenone
indexed_atstring(date-time)¦nullfalsenonenone
event_publishedstring(date-time)¦nullfalsenonenone

TransactionListResponse

{
  "transactions": [
    {
      "id": "string",
      "chain_id": 0,
      "contract_type": "string",
      "contract_address": "string",
      "block_number": 0,
      "block_timestamp": "2019-08-24T14:15:22Z",
      "transaction_hash": "string",
      "transaction_data": {},
      "receipt_data": {},
      "raw_input": "string",
      "parsed_input": {},
      "parsed_events": [
        {}
      ],
      "document_data": {},
      "indexed_at": "2019-08-24T14:15:22Z",
      "event_published": "2019-08-24T14:15:22Z"
    }
  ],
  "pagination": {
    "total": 0,
    "limit": 0,
    "offset": 0,
    "has_more": true
  }
}
 

Properties

NameTypeRequiredRestrictionsDescription
transactions[Transaction]falsenonenone
paginationPaginationMetafalsenonenone

CreateTransactionRequest

{
  "chain_id": 0,
  "contract_type": "string",
  "contract_address": "string",
  "block_number": 0,
  "block_timestamp": "2019-08-24T14:15:22Z",
  "transaction_hash": "string",
  "transaction_data": {},
  "receipt_data": {},
  "raw_input": "string",
  "parsed_input": {},
  "parsed_events": [
    {}
  ],
  "document_data": {}
}
 

Properties

NameTypeRequiredRestrictionsDescription
chain_idintegertruenonenone
contract_typestringtruenonenone
contract_addressstringtruenonenone
block_numberintegertruenonenone
block_timestampstring(date-time)truenonenone
transaction_hashstringtruenonenone
transaction_dataobjecttruenonenone
receipt_dataobjecttruenonenone
raw_inputstringtruenonenone
parsed_inputobjectfalsenonenone
parsed_events[object]falsenonenone
document_dataobjectfalsenonenone

PaginationMeta

{
  "total": 0,
  "limit": 0,
  "offset": 0,
  "has_more": true
}
 

Properties

NameTypeRequiredRestrictionsDescription
totalintegerfalsenonenone
limitintegerfalsenonenone
offsetintegerfalsenonenone
has_morebooleanfalsenonenone

ErrorResponse

{
  "error": {
    "type": "string",
    "code": "string",
    "message": "string",
    "request_id": "string",
    "details": {}
  }
}
 

Properties

NameTypeRequiredRestrictionsDescription
errorobjectfalsenonenone
» typestringfalsenonenone
» codestringfalsenonenone
» messagestringfalsenonenone
» request_idstringfalsenonenone
» detailsobjectfalsenonenone