Barbatus API Reference
Overview
The Barbatus API provides endpoints for session management, conversation handling, and API key operations in the TKM AI Agency Platform.
Endpoints
Initialize Session
POST /initialize_session
Initializes a new session for a user in an organization.
Request Body
{
"user_id": "string",
"organization_id": "string"
}
Response
{
"success": true,
"session_id": "string",
"conversation_id": "string",
"user_id": "string",
"organization_id": "string"
}
Create New Conversation
POST /new_conversation
Creates a new conversation for a user.
Request Body
{
"user_id": "string",
"organization_id": "string"
}
Response
{
"success": true,
"conversation_id": "string"
}
Verify Session
POST /verify_session
Verifies if a session and its associated conversation are valid.
Request Body
{
"user_id": "string",
"conversation_id": "string"
}
Response
{
"success": true,
"valid": true
}
Generate API Key
POST /generate_api_key
Generates a new API key for a user with specified permissions.
Request Body
{
"user_id": "string",
"permissions": ["string"]
}
Response
{
"success": true,
"api_key": "string",
"metadata": {
"created_at": "string",
"permissions": ["string"]
}
}
List API Keys
GET /list_api_keys/{user_id}
Lists all API keys for a user.
Parameters
Name | Type | In | Required | Description |
---|---|---|---|---|
user_id | string | path | Yes | The user ID |
Response
{
"api_keys": [
{
"key": "string",
"created_at": "string",
"permissions": ["string"],
"active": true
}
]
}
Revoke API Key
POST /revoke_api_key
Revokes an API key.
Request Body
{
"user_id": "string",
"api_key": "string"
}
Response
{
"success": true,
"message": "API key revoked successfully"
}
Verify API Key
POST /verify_api_key
Verifies if an API key is valid.
Request Body
{
"api_key": "string"
}
Response
{
"valid": true
}
Error Responses
500 Internal Server Error
{
"detail": "Error message"
}
Integration Notes
Session Management
- Sessions are organization-specific
- Each session can have multiple conversations
- Sessions include user authentication and authorization
API Key Management
- Keys can have specific permissions
- Keys can be revoked at any time
- Active status tracking
- Creation timestamp tracking