API keys are the recommended authentication method for Yativo Crypto integrations. They let your server authenticate programmatically without user sessions, and can be scoped to the minimum permissions your integration requires.Documentation Index
Fetch the complete documentation index at: https://docs.yativo.com/llms.txt
Use this file to discover all available pages before exploring further.
Crypto-Relevant Permissions
| Permission | What It Unlocks |
|---|---|
read | Read balances, transaction history, asset info, analytics |
write | Create accounts, add wallets, configure gas stations, manage customers |
transactions | Initiate sends, execute swaps, fund cards |
webhooks | Create and manage webhook subscriptions |
read, write, and transactions at minimum.
Create an API Key
POST/apikey/create
Current 6-digit TOTP code from your authenticator app.
A descriptive name (e.g., “Crypto Backend — Production”).
Array of permission scopes.
Days until expiry. Omit for a non-expiring key.
cURL
Response
Authenticate with an API Key
Method 1: Exchange for Bearer token (recommended for production)access_token as Authorization: Bearer {token} on all subsequent requests. Refresh it before expiry using the same endpoint.
Method 2: Header-based (for simpler integrations)
Server-to-Server Pattern
Here’s a complete server-to-server setup using the Bearer token method with auto-refresh:Key Management
| Operation | Endpoint |
|---|---|
| List all keys | GET /apikey/list |
| Get a key | GET /apikey/{id} |
| Revoke a key | POST /apikey/{id}/revoke (requires X-2FA-Token) |
| Rotate secret | POST /apikey/{id}/rotate (requires X-2FA-Token) |
| Update permissions | PUT /apikey/{id}/permissions (requires X-2FA-Token) |
Best Practices for Crypto Integrations
Use separate keys per environment
Use separate keys per environment
Create dedicated API keys for sandbox and production. Never use a production key for testing.
Scope permissions minimally
Scope permissions minimally
A key used only for reading balances and transaction history should only have
read. Only grant transactions to services that actually initiate transfers.Rotate keys on a schedule
Rotate keys on a schedule
Rotate API secrets periodically (e.g., every 90 days) and immediately if you suspect a key has been exposed. The
rotate endpoint generates a new secret without requiring you to delete and recreate the key.Store secrets in environment variables
Store secrets in environment variables
Never hardcode API keys in source code. Use environment variables or a secrets manager and inject at runtime.

