curl --request POST \
--url https://api.triqai.com/v1/transactions/enrich \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--header 'X-API-Key: <api-key>' \
--data '
{
"title": "AMAZON MKTPLACE PMTS AMZN.COM/BILL WA",
"country": "US",
"type": "expense"
}
'{
"success": true,
"partial": true,
"data": {
"transaction": {
"category": {
"primary": {
"name": "<string>",
"code": {
"mcc": 123,
"sic": 123,
"naics": 123
}
},
"secondary": {
"name": "<string>",
"code": {
"mcc": 123,
"sic": 123,
"naics": 123
}
},
"tertiary": {
"name": "<string>",
"code": {
"mcc": 123,
"sic": 123,
"naics": 123
}
},
"confidence": {
"value": 50,
"reasons": [
"<string>"
]
}
},
"confidence": {
"value": 50,
"reasons": [
"<string>"
]
}
},
"entities": [
{
"role": "<string>",
"confidence": {
"value": 50,
"reasons": [
"<string>"
]
},
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"alias": [
"<string>"
],
"icon": "<string>",
"color": "<string>",
"website": "<string>",
"domain": "<string>",
"keywords": [
"<string>"
],
"description": "<string>"
}
}
]
},
"meta": {
"generatedAt": "2023-11-07T05:31:56Z",
"requestId": "<string>",
"version": "<string>",
"categoryVersion": "<string>",
"transactionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"errors": []
}
}{
"success": false,
"error": {
"code": "authentication_error",
"message": "API key is required"
},
"meta": {
"generatedAt": "2026-02-16T00:00:00Z",
"requestId": "f353ca91-4fc5-49f2-9b9e-304f83d11914",
"version": "1.1.2"
}
}{
"success": false,
"error": {
"code": "insufficient_credits",
"message": "Insufficient credits"
},
"meta": {
"generatedAt": "2026-02-16T00:00:00Z",
"requestId": "f353ca91-4fc5-49f2-9b9e-304f83d11914",
"version": "1.1.2"
}
}{
"success": false,
"error": {
"code": "authorization_error",
"message": "Access denied"
},
"meta": {
"generatedAt": "2026-02-16T00:00:00Z",
"requestId": "f353ca91-4fc5-49f2-9b9e-304f83d11914",
"version": "1.1.2"
}
}{
"success": false,
"error": {
"code": "DUPLICATE_REQUEST",
"message": "<string>",
"details": {
"requestId": "<string>",
"retryAfterSeconds": 2
}
}
}{
"success": false,
"error": {
"code": "validation_error",
"message": "Validation failed",
"details": {
"fieldErrors": {
"title": [
"Title is required"
]
}
}
},
"meta": {
"generatedAt": "2026-02-16T00:00:00Z",
"requestId": "f353ca91-4fc5-49f2-9b9e-304f83d11914",
"version": "1.1.2"
}
}{
"success": false,
"error": {
"code": "rate_limited",
"message": "Rate limit exceeded"
},
"meta": {
"generatedAt": "2026-02-16T00:00:00Z",
"requestId": "f353ca91-4fc5-49f2-9b9e-304f83d11914",
"version": "1.1.2"
}
}{
"success": false,
"error": {
"code": "CLIENT_DISCONNECTED",
"message": "<string>"
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fieldErrors": {}
}
},
"meta": {
"generatedAt": "2023-11-07T05:31:56Z",
"requestId": "<string>",
"version": "<string>"
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fieldErrors": {}
}
},
"meta": {
"generatedAt": "2023-11-07T05:31:56Z",
"requestId": "<string>",
"version": "<string>"
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fieldErrors": {}
}
},
"meta": {
"generatedAt": "2023-11-07T05:31:56Z",
"requestId": "<string>",
"version": "<string>"
}
}Transactions
Enrich transaction
Enriches a transaction and returns structured transaction + entity data.
POST
/
v1
/
transactions
/
enrich
curl --request POST \
--url https://api.triqai.com/v1/transactions/enrich \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--header 'X-API-Key: <api-key>' \
--data '
{
"title": "AMAZON MKTPLACE PMTS AMZN.COM/BILL WA",
"country": "US",
"type": "expense"
}
'{
"success": true,
"partial": true,
"data": {
"transaction": {
"category": {
"primary": {
"name": "<string>",
"code": {
"mcc": 123,
"sic": 123,
"naics": 123
}
},
"secondary": {
"name": "<string>",
"code": {
"mcc": 123,
"sic": 123,
"naics": 123
}
},
"tertiary": {
"name": "<string>",
"code": {
"mcc": 123,
"sic": 123,
"naics": 123
}
},
"confidence": {
"value": 50,
"reasons": [
"<string>"
]
}
},
"confidence": {
"value": 50,
"reasons": [
"<string>"
]
}
},
"entities": [
{
"role": "<string>",
"confidence": {
"value": 50,
"reasons": [
"<string>"
]
},
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"alias": [
"<string>"
],
"icon": "<string>",
"color": "<string>",
"website": "<string>",
"domain": "<string>",
"keywords": [
"<string>"
],
"description": "<string>"
}
}
]
},
"meta": {
"generatedAt": "2023-11-07T05:31:56Z",
"requestId": "<string>",
"version": "<string>",
"categoryVersion": "<string>",
"transactionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"errors": []
}
}{
"success": false,
"error": {
"code": "authentication_error",
"message": "API key is required"
},
"meta": {
"generatedAt": "2026-02-16T00:00:00Z",
"requestId": "f353ca91-4fc5-49f2-9b9e-304f83d11914",
"version": "1.1.2"
}
}{
"success": false,
"error": {
"code": "insufficient_credits",
"message": "Insufficient credits"
},
"meta": {
"generatedAt": "2026-02-16T00:00:00Z",
"requestId": "f353ca91-4fc5-49f2-9b9e-304f83d11914",
"version": "1.1.2"
}
}{
"success": false,
"error": {
"code": "authorization_error",
"message": "Access denied"
},
"meta": {
"generatedAt": "2026-02-16T00:00:00Z",
"requestId": "f353ca91-4fc5-49f2-9b9e-304f83d11914",
"version": "1.1.2"
}
}{
"success": false,
"error": {
"code": "DUPLICATE_REQUEST",
"message": "<string>",
"details": {
"requestId": "<string>",
"retryAfterSeconds": 2
}
}
}{
"success": false,
"error": {
"code": "validation_error",
"message": "Validation failed",
"details": {
"fieldErrors": {
"title": [
"Title is required"
]
}
}
},
"meta": {
"generatedAt": "2026-02-16T00:00:00Z",
"requestId": "f353ca91-4fc5-49f2-9b9e-304f83d11914",
"version": "1.1.2"
}
}{
"success": false,
"error": {
"code": "rate_limited",
"message": "Rate limit exceeded"
},
"meta": {
"generatedAt": "2026-02-16T00:00:00Z",
"requestId": "f353ca91-4fc5-49f2-9b9e-304f83d11914",
"version": "1.1.2"
}
}{
"success": false,
"error": {
"code": "CLIENT_DISCONNECTED",
"message": "<string>"
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fieldErrors": {}
}
},
"meta": {
"generatedAt": "2023-11-07T05:31:56Z",
"requestId": "<string>",
"version": "<string>"
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fieldErrors": {}
}
},
"meta": {
"generatedAt": "2023-11-07T05:31:56Z",
"requestId": "<string>",
"version": "<string>"
}
}{
"success": false,
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fieldErrors": {}
}
},
"meta": {
"generatedAt": "2023-11-07T05:31:56Z",
"requestId": "<string>",
"version": "<string>"
}
}Authorizations
Public API key
Headers
Required retry identity. X-Idempotency-Key is also accepted and must match when both are sent.
Required string length:
1 - 64Pattern:
^[a-zA-Z0-9_-]{1,64}$Body
application/json
Raw transaction description from the bank statement.
Required string length:
1 - 256ISO 3166-1 alpha-2 country code (e.g., US, GB, DE). Both upper and lowercase are accepted; the API normalizes to uppercase.
Pattern:
^[A-Za-z]{2}$Available options:
expense, income Optional enrichment controls. Use filters to skip specific entity types,
or pre-fill known entity data to improve accuracy and reduce latency.
Mutual exclusivity: a filter flag (e.g. noMerchant) cannot be combined with
pre-filled data for the same entity type.
Show child attributes
Show child attributes
Was this page helpful?
⌘I