Skip to content

Kaito Platform API (2.0.0)

Platform services including webhooks and blockchain gateway operations.

Webhooks: Register endpoints for event notifications. Kaito signs requests using HMAC-SHA256 with Kaito-Timestamp and Kaito-Signature headers. Events include payment, payout, quote, checkout, identity, and acceptance categories.

Chain Gateway: Low-level blockchain operations for Ethereum, Polygon, Solana, and Bitcoin. Includes fee estimation and transaction broadcast for partners managing their own key material.

Download OpenAPI description
Languages
Servers
Mock server
https://developer.kaito.io/_mock/platform/
Production
https://api.kai2.io/
Sandbox
https://sandbox.api.kai2.io/

Webhook Endpoints

Manage webhook subscriptions

Operations

Register webhook endpoint

Request

Register a new webhook endpoint to receive event notifications.

Important: The webhook secret is only returned once at creation time. Store it securely for signature verification.

Security
oAuth2
Bodyapplication/jsonrequired
urlstring(uri)required
Example: "https://partner.example/webhooks/kaito"
secretstring or null

Secret used for signature validation (HMAC-SHA256). If omitted, Kaito will generate one and return it once at creation time.

eventsArray of stringsrequired
Example: ["payment.succeeded","payout.completed"]
curl -i -X POST \
  https://developer.kaito.io/_mock/platform/v1/webhooks/endpoints \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "url": "https://partner.example/webhooks/kaito",
    "secret": "string",
    "events": [
      "payment.succeeded",
      "payout.completed"
    ]
  }'

Responses

Webhook endpoint created

Headers
X-Trace-Idstring(TraceId)

Correlation id for troubleshooting

Example: "trc_01JH8K5P3V9M2K5Q7W6J3Z1A9B"
Bodyapplication/json
endpointobject(WebhookEndpoint)required
endpoint.​endpointIdstringrequired
Example: "whk_01JH..."
endpoint.​urlstring(uri)required
endpoint.​eventsArray of stringsrequired
endpoint.​enabledboolean
Default true
endpoint.​createdAtstring(date-time)required
secretstringrequired

Returned only once. Store securely.

Example: "whsec_XXXX"
Response
application/json
{ "endpoint": { "endpointId": "whk_01JH...", "url": "http://example.com", "events": [], "enabled": true, "createdAt": "2019-08-24T14:15:22Z" }, "secret": "whsec_XXXX" }

List webhook endpoints

Request

Security
oAuth2
curl -i -X GET \
  https://developer.kaito.io/_mock/platform/v1/webhooks/endpoints \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Webhook endpoints list

Headers
X-Trace-Idstring(TraceId)

Correlation id for troubleshooting

Example: "trc_01JH8K5P3V9M2K5Q7W6J3Z1A9B"
Bodyapplication/json
itemsArray of objects(WebhookEndpoint)
Response
application/json
{ "items": [ {} ] }

Get webhook endpoint

Request

Security
oAuth2
Path
endpointIdstringrequired
curl -i -X GET \
  'https://developer.kaito.io/_mock/platform/v1/webhooks/endpoints/{endpointId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Webhook endpoint details

Headers
X-Trace-Idstring(TraceId)

Correlation id for troubleshooting

Example: "trc_01JH8K5P3V9M2K5Q7W6J3Z1A9B"
Bodyapplication/json
endpointIdstringrequired
Example: "whk_01JH..."
urlstring(uri)required
eventsArray of stringsrequired
enabledboolean
Default true
createdAtstring(date-time)required
Response
application/json
{ "endpointId": "whk_01JH...", "url": "http://example.com", "events": [ "string" ], "enabled": true, "createdAt": "2019-08-24T14:15:22Z" }

Event Types

List available event types

Operations

Fee Estimation

Estimate network fees

Operations

Transaction Broadcast

Broadcast signed transactions

Operations