URL: https://www.canath.io
Service: AI-native peer-to-peer money transfer
API base: https://www.canath.io/api
All API calls except registration require:
Authorization: Bearer pa_live_XXXXXXXXXXXXXXXXXXXXXXXX
The API key is obtained from POST /api/agent/register and is shown exactly once — store it immediately.
POST https://www.canath.io/api/agent/register
Content-Type: application/json
{
"email": "jane@example.com",
"name": "Jane Smith",
"password": "their-chosen-password",
"agentName": "ChatGPT"
}
Response:
{
"apiKey": "pa_live_...",
"agentHandle": "PA-XK7M3Q2R",
"isNewAccount": true
}
Store the apiKey immediately — it is shown only once.
If isNewAccount is false, the user already has an account — skip steps 2–4 and go straight to transfers.
POST https://www.canath.io/api/agent/setup-link Authorization: Bearer pa_live_...
Response: { "url": "https://checkout.stripe.com/..." }
Send this URL to the user. They click it, enter their card on Stripe's page. You never see the card details.
POST https://www.canath.io/api/agent/connect-link Authorization: Bearer pa_live_...
Response: { "url": "https://connect.stripe.com/setup/..." }
Send this URL to the user. They set up their payout account (debit card — no routing numbers needed) on Stripe's page.
GET https://www.canath.io/api/account/handle Authorization: Bearer pa_live_...
Response: { "agentHandle": "PA-XK7M3Q2R" }
Tell the user their handle — others use it to send them money.
GET https://www.canath.io/api/agents/lookup?email=john@example.com Authorization: Bearer pa_live_...
Or by handle: ?handle=PA-XXXXXXXX
Show: "Send $50 to John Smith? Fee: $0.75. Total charged: $50.75."
Wait for explicit confirmation before proceeding.
POST https://www.canath.io/api/transfers
Authorization: Bearer pa_live_...
Content-Type: application/json
{
"recipientHandle": "PA-XK7M3Q2R",
"amount": 50.00,
"currency": "USD",
"note": "For dinner"
}
GET https://www.canath.io/api/transfers Authorization: Bearer pa_live_...
| Status | Meaning | Action |
|---|---|---|
| 401 | Invalid API key or wrong password | Call /api/agent/register again with the correct password |
| 402 | Card declined or needs re-auth | Call /api/agent/setup-link to generate a fresh card setup link |
| 404 | Recipient not found | Ask user to verify email or create a Canath account first at www.canath.io |
| 500 | Server error | Wait briefly and retry once |
Canath · www.canath.io · AI-native peer-to-peer money transfer · @canath12