Skip to main content

Chat — the Veltro AI agent, programmatically

Talk to the same AI agent that runs Veltro's own dashboard chat — from your own system. It can create payment links, invoices, subscription plans, donation jars, and payouts; look up wallet balances and transaction history; and more, all in natural language.

POST /api/v1/chat

Scope: read minimum — a read-only key gets a read-only agent (it can look things up but cannot create/send/mutate anything). Priced as agent_call ($0.005 once your monthly quota is used up). Capped at 15 requests/10s per account regardless of your plan.

FieldTypeRequiredNotes
messagestringone of message/messagesMax 4000 chars
messagesarrayone of message/messagesUp to 40 turns — { role: "user" | "assistant", content }
curl -X POST https://veltro.online/api/v1/chat \
-H "Authorization: Bearer vltro_live_xxx" \
-H "Content-Type: application/json" \
-d '{ "message": "Create a 100 USDC payment link for ACME Corp" }'
{
"reply": "Done — here's the payment link for ACME Corp: https://veltro.online/pay/xK2p9qLmZ1",
"tool_results": [
{
"tool": "createPaymentLink",
"input": { "amount_usd": 100, "description": "ACME Corp" },
"result": { "id": "...", "slug": "xK2p9qLmZ1", "url": "https://veltro.online/pay/xK2p9qLmZ1" }
}
],
"provider": "mistral-small",
"usage": { "inputTokens": 412, "outputTokens": 58 }
}

tool_results lists every tool the agent actually ran, in order, with its raw input and output — parse this instead of scraping reply if you need structured data (a URL, a calldata payload, an OFAC screening result).

The agent never signs a transaction. Any prepare* tool result (subscribe, donate, batch payout) is unsigned calldata — your system (or the end user's own wallet) must sign and broadcast it, same as calling the underlying REST endpoint directly.

No system role is accepted in messages — this prevents a caller from overriding Veltro's built-in safety rules (mandatory OFAC screening, never inventing an email or wallet address, never signing) via a spoofed system message.