cURL
curl --request POST \ --url https://api.useadam.io/v1/adam/bank-transactions/upload \ --header 'Content-Type: application/json' \ --header 'X-API-Key: <api-key>' \ --data ' { "prompt": "Record debit 2024-01-10 -250.00 Office supplies STAPLES ref 7788; credit 2024-01-12 +2000.00 ACH Client ACME", "bank": "your-bank-uuid-here", "process_type": "async" } '
{ "status": "success", "message": "Bank transaction import queued for processing", "data": { "process_type": "async", "job_reference": "job_01HZXK8QBANKTX" } }
AI-assisted extraction — not a raw JSON array upload. prompt is required.
prompt
Business secret tyms_sk_... for all routes except Register business, which expects your partner secret.
tyms_sk_...
Hide child attributes
Content per type. For Base64, send raw bytes encoded as a string (no data:...;base64, prefix).
type
data:...;base64,
How file is encoded. Required on every attachment. Base64 payloads must use "type": "base64" explicitly — the API does not infer Base64 from the file string alone.
file
"type": "base64"
base64
url
raw
Filename with extension (recommended for type detection).
Bank account UUID.
async
direct
Import queued (async) or extracted rows returned (direct)
"success"
Single resource, array of resources, statement sections, or async job metadata — see each operation's example.
Pagination (page, limit, total) and/or report range (from, to). Cash flow may include previous_period_end.
page
limit
total
from
to
previous_period_end