/api/v1/businesses/:id/contract-integrationsx-api-keySandbox + liveList contract integrations
List saved EVM ABI and Solana Anchor IDL integrations for the business.
When to use it
Use when rendering the contracts workspace, validating discovered operations, or selecting an integration before querying or executing actions.
| Field | Location | Required | Description | Example / default |
|---|---|---|---|---|
| id | path | Yes | Business ID. | - |
Success behavior
- Each integration includes discovered write and query operations so your system does not need to re-parse the ABI or IDL at runtime.
Common errors
- 401: Missing or invalid API key.
Sample response
json{
"data": [
{
"id": "int_123",
"businessId": "biz_123",
"name": "Counter program",
"chain": "sol",
"interfaceType": "anchor_idl",
"networkId": "sol-devnet",
"contractAddress": "11111111111111111111111111111111",
"programId": "11111111111111111111111111111111",
"abiHash": "idl_hash_123",
"status": "active",
"turnkeySmartContractInterfaceId": null,
"turnkeyLastSyncedAt": null,
"turnkeySyncError": null,
"availableWriteOperations": [
{ "operationKind": "solana_instruction", "name": "increment", "signature": "increment", "selector": "0102030405060708", "stateMutability": "nonpayable", "inputs": [{ "name": "amount", "type": "u32" }], "outputs": [] }
],
"availableQueryOperations": [
{ "operationKind": "solana_account_query", "name": "counterAccount", "signature": "account:counterAccount", "selector": "0807060504030201", "stateMutability": "view", "inputs": [{ "name": "address", "type": "pubkey" }], "outputs": [{ "name": "count", "type": "u32" }] }
]
}
]
}cURL example
bashcurl -X GET "https://api.paychainhq.io/api/v1/businesses/biz_123/contract-integrations" \
-H "Content-Type: application/json" \
-H "x-api-key: pk_live_your_business_key"Node.js example
tsconst response = await fetch('https://api.paychainhq.io/api/v1/businesses/biz_123/contract-integrations', {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'x-api-key': 'pk_live_your_business_key',
},
});
const payload = await response.json();
console.log(payload);