All API requests require an API key in the Authorization header.
curl 'https://api.smavatar.com/api/v1/...' \
-H 'Authorization: Bearer sma_your_api_key'
API keys start with sma_ followed by 32 random characters.
Organization (your account)
└── Project
└── API Keys (multiple per project)
└── Jobs
Create multiple projects to separate applications. Create multiple keys per project for different environments (dev, staging, production).
| Endpoint | Limit |
|---|---|
| Job creation | 60 per hour |
| Job status | 300 per hour |
| MCP tools | 600 per hour |
Exceeding limits returns 429 Too Many Requests with a Retry-After header.
Do:
Don't:
# .env (never commit)
SMAVATAR_API_KEY=sma_your_key_here
SMAVATAR_PROJECT_ID=your-project-uuid
// Node.js
const apiKey = process.env.SMAVATAR_API_KEY
# Python
import os
api_key = os.environ.get('SMAVATAR_API_KEY')
If a key is compromised:
Revoked keys stop working immediately.
Invalid API Key (401)
{
"statusCode": 401,
"message": "Invalid API key"
}
Wrong Project (403)
{
"statusCode": 403,
"message": "API key does not have access to this project"
}