KonPro API Documentation
Complete API documentation for creating AI-powered avatars, managing voices, generating videos, and integrating interactive avatar widgets into your applications. The API is RESTful and returns JSON responses.
Overview
KonPro provides a comprehensive API for creating AI-powered avatars, managing voices, generating videos, and integrating interactive avatar widgets into your applications. The API is RESTful and returns JSON responses.
Base URL
All API requests should be made to:
https://api.konpro.aiAuthentication
API Key Authentication
All API endpoints require authentication using an API key. Include your API key in the request headers:
x-api-key: YOUR_API_KEYGenerating API Keys
To generate an API key for your application:
- Visit KonPro Studio
- Log in to your account
- Navigate to the API Keys section in the Settings page
- Click "Generate New Key"
- Copy and securely store your API key
Important
API keys should be kept secret and never exposed in client-side code.
Example API Request
curl -X GET https://api.konpro.ai/v1/avatars \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json"// JavaScript/Node.js example
const response = await fetch('https://api.konpro.ai/v1/avatars', {
headers: {
'x-api-key': 'YOUR_API_KEY',
'Content-Type': 'application/json'
}
});API Endpoints
/v1/avatarsRetrieve a list of all available avatars
/v1/voicesRetrieve a list of all available voices
/v1/video-avatarsGenerate a video with an avatar speaking the provided text
/v1/widget/sessionsCreate a session token for embedding the interactive avatar widget
/v1/agentic-avatarsCreate an AI-powered avatar with brain/knowledge base integration
/v1/brainsRetrieve a list of all available brains/knowledge bases
/v1/api-keys/validateValidate an API key and retrieve its metadata
Rate Limiting
API requests are rate limited to ensure fair usage and system stability.
Default Limits
- Public API: 100 requests per minute
- Studio API: 60 requests per minute
- Inference API: 10 requests per minute
- Widget Sessions: 20 sessions per hour
Rate Limit Headers
All responses include rate limit information:
X-RateLimit-Limit- Maximum requests per periodX-RateLimit-Remaining- Remaining requests in current windowX-RateLimit-Reset- Time when the rate limit resets
Error Handling
The API uses standard HTTP status codes to indicate success or failure of requests.
HTTP Status Codes
| Status Code | Description |
|---|---|
| 200 | Success |
| 201 | Created |
| 400 | Bad Request - Invalid parameters |
| 401 | Unauthorized - Invalid or missing API key |
| 403 | Forbidden - Insufficient permissions |
| 404 | Not Found - Resource doesn't exist |
| 429 | Too Many Requests - Rate limit exceeded |
| 500 | Internal Server Error |
| 503 | Service Unavailable |
Error Response Format
{
"error": {
"code": "INVALID_REQUEST",
"message": "The request body is invalid",
"details": {
"field": "avatar_id",
"reason": "Avatar ID is required"
}
},
"request_id": "req-123456"
}