cURL
# Export KINTRA_API for your environment first; the base URL is on the introduction page.
KEY="YOUR_TENANT_KEY_ID"
SECRET="YOUR_SIGNING_SECRET"
# The signature covers the path and query exactly as sent, so both are split
# off the base URL and reused for the request line below.
API_PATH="/${KINTRA_API#*://*/}"
API_HOST="${KINTRA_API%"$API_PATH"}"
METHOD="GET"
PATH_AND_QUERY="$API_PATH/gateway/internal-transactions/YOUR_INTERNAL_TRANSACTION_ID"
# No body on this method, so the signature covers an empty body string.
BODY=''
TIMESTAMP="$(date +%s)"
SIGNATURE="$(printf '%s' "$TIMESTAMP$METHOD$PATH_AND_QUERY$BODY" \
| openssl dgst -sha256 -hmac "$SECRET" | awk '{print $NF}')"
curl -sS -w '\n%{http_code}' -X "$METHOD" "$API_HOST$PATH_AND_QUERY" \
-H "X-Tenant-Key: $KEY" \
-H "X-Tenant-Timestamp: $TIMESTAMP" \
-H "X-Tenant-Signature: $SIGNATURE"const options = {
method: 'GET',
headers: {
'X-Tenant-Signature': '<x-tenant-signature>',
'X-Tenant-Timestamp': '<x-tenant-timestamp>',
'x-tenant-key': '<api-key>'
}
};
fetch('https://api.kintra.io/api/v1/gateway/internal-transactions/{internal_transaction_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.kintra.io/api/v1/gateway/internal-transactions/{internal_transaction_id}"
headers = {
"X-Tenant-Signature": "<x-tenant-signature>",
"X-Tenant-Timestamp": "<x-tenant-timestamp>",
"x-tenant-key": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text){
"success": true,
"data": {
"amount": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"metadata": null,
"notes": "<string>",
"onchain_asset_id": "<string>",
"redemption_id": "<string>",
"tenant_id": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"user_id": "<string>",
"blockchain_transaction_links": {
"blockchain_transaction": [
{
"id": "<string>",
"chain_id": 123,
"created_at": "2023-11-07T05:31:56Z",
"metadata": null,
"receipt_block_hash": "<string>",
"receipt_block_number": "<string>",
"receipt_block_timestamp": 123,
"receipt_gas_price": "<string>",
"receipt_gas_used": "<string>",
"receipt_status": 123,
"receipt_transaction_index": 123,
"tx_data": "<string>",
"tx_from": "<string>",
"tx_gas_limit": "<string>",
"tx_gas_price": "<string>",
"tx_hash": "<string>",
"tx_max_fee_per_gas": "<string>",
"tx_max_priority_fee_per_gas": "<string>",
"tx_nonce": 123,
"tx_to": "<string>",
"tx_type": 123,
"tx_value": "<string>",
"updated_at": "2023-11-07T05:31:56Z"
}
]
},
"onchain_asset": {
"asset_address": "<string>",
"chain_id": 123,
"created_at": "2023-11-07T05:31:56Z",
"decimals": 123,
"deploy_tx_hash": "<string>",
"deployed_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"key": "<string>",
"metadata": null,
"name": "<string>",
"status": "<string>",
"symbol": "<string>",
"total_owners": 123,
"total_txns": 123,
"type": "<string>",
"updated_at": "2023-11-07T05:31:56Z"
},
"reward": {
"id": "<string>",
"title": "<string>"
},
"tenant": {
"id": "<string>",
"name": "<string>",
"slug": "<string>"
},
"user": {
"email": "<string>",
"id": "<string>",
"username": "<string>"
}
},
"errors": [
{
"message": "<string>",
"path": "<string>"
}
],
"message": "<string>"
}{
"success": true,
"data": null,
"errors": [
{
"message": "<string>",
"path": "<string>"
}
],
"message": "<string>"
}{
"success": true,
"data": null,
"errors": [
{
"message": "<string>",
"path": "<string>"
}
],
"message": "<string>"
}{
"success": true,
"data": null,
"errors": [
{
"message": "<string>",
"path": "<string>"
}
],
"message": "<string>"
}Internal transactions
Get an internal transaction
Returns one internal transaction by id with its type, amount, status, notes, metadata and user_id, plus the linked onchain_asset, reward and blockchain_transaction_links. Call it to follow a single movement through to the onchain record behind it. Returns 404 when no transaction with that id belongs to your tenant.
GET
/
gateway
/
internal-transactions
/
{internal_transaction_id}
cURL
# Export KINTRA_API for your environment first; the base URL is on the introduction page.
KEY="YOUR_TENANT_KEY_ID"
SECRET="YOUR_SIGNING_SECRET"
# The signature covers the path and query exactly as sent, so both are split
# off the base URL and reused for the request line below.
API_PATH="/${KINTRA_API#*://*/}"
API_HOST="${KINTRA_API%"$API_PATH"}"
METHOD="GET"
PATH_AND_QUERY="$API_PATH/gateway/internal-transactions/YOUR_INTERNAL_TRANSACTION_ID"
# No body on this method, so the signature covers an empty body string.
BODY=''
TIMESTAMP="$(date +%s)"
SIGNATURE="$(printf '%s' "$TIMESTAMP$METHOD$PATH_AND_QUERY$BODY" \
| openssl dgst -sha256 -hmac "$SECRET" | awk '{print $NF}')"
curl -sS -w '\n%{http_code}' -X "$METHOD" "$API_HOST$PATH_AND_QUERY" \
-H "X-Tenant-Key: $KEY" \
-H "X-Tenant-Timestamp: $TIMESTAMP" \
-H "X-Tenant-Signature: $SIGNATURE"const options = {
method: 'GET',
headers: {
'X-Tenant-Signature': '<x-tenant-signature>',
'X-Tenant-Timestamp': '<x-tenant-timestamp>',
'x-tenant-key': '<api-key>'
}
};
fetch('https://api.kintra.io/api/v1/gateway/internal-transactions/{internal_transaction_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.kintra.io/api/v1/gateway/internal-transactions/{internal_transaction_id}"
headers = {
"X-Tenant-Signature": "<x-tenant-signature>",
"X-Tenant-Timestamp": "<x-tenant-timestamp>",
"x-tenant-key": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text){
"success": true,
"data": {
"amount": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"metadata": null,
"notes": "<string>",
"onchain_asset_id": "<string>",
"redemption_id": "<string>",
"tenant_id": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"user_id": "<string>",
"blockchain_transaction_links": {
"blockchain_transaction": [
{
"id": "<string>",
"chain_id": 123,
"created_at": "2023-11-07T05:31:56Z",
"metadata": null,
"receipt_block_hash": "<string>",
"receipt_block_number": "<string>",
"receipt_block_timestamp": 123,
"receipt_gas_price": "<string>",
"receipt_gas_used": "<string>",
"receipt_status": 123,
"receipt_transaction_index": 123,
"tx_data": "<string>",
"tx_from": "<string>",
"tx_gas_limit": "<string>",
"tx_gas_price": "<string>",
"tx_hash": "<string>",
"tx_max_fee_per_gas": "<string>",
"tx_max_priority_fee_per_gas": "<string>",
"tx_nonce": 123,
"tx_to": "<string>",
"tx_type": 123,
"tx_value": "<string>",
"updated_at": "2023-11-07T05:31:56Z"
}
]
},
"onchain_asset": {
"asset_address": "<string>",
"chain_id": 123,
"created_at": "2023-11-07T05:31:56Z",
"decimals": 123,
"deploy_tx_hash": "<string>",
"deployed_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"key": "<string>",
"metadata": null,
"name": "<string>",
"status": "<string>",
"symbol": "<string>",
"total_owners": 123,
"total_txns": 123,
"type": "<string>",
"updated_at": "2023-11-07T05:31:56Z"
},
"reward": {
"id": "<string>",
"title": "<string>"
},
"tenant": {
"id": "<string>",
"name": "<string>",
"slug": "<string>"
},
"user": {
"email": "<string>",
"id": "<string>",
"username": "<string>"
}
},
"errors": [
{
"message": "<string>",
"path": "<string>"
}
],
"message": "<string>"
}{
"success": true,
"data": null,
"errors": [
{
"message": "<string>",
"path": "<string>"
}
],
"message": "<string>"
}{
"success": true,
"data": null,
"errors": [
{
"message": "<string>",
"path": "<string>"
}
],
"message": "<string>"
}{
"success": true,
"data": null,
"errors": [
{
"message": "<string>",
"path": "<string>"
}
],
"message": "<string>"
}Authorizations
Tenant API key
Headers
Hex HMAC-SHA256 of the timestamp, the uppercase method, the url as sent and the request body, keyed by the signing secret.
Unix seconds. Checked before the signature.
Path Parameters
⌘I

