Snakk AI - Voice Agent Platform API
  1. Agents
Snakk AI - Voice Agent Platform API
  • System
    • Simple health check
      GET
    • Detailed health check with dependency status
      GET
  • Tenants
    • Create new tenant (signup)
      POST
  • Agents
    • List all agents for tenant
      GET
    • Create new agent
      POST
    • Get agent details
      GET
    • Delete agent
      DELETE
    • Duplicate an agent
      POST
  • Tools
    • List tools/webhooks for agent
      GET
    • Add tool/webhook to agent
      POST
  • Calls
    • Start outbound call from database agent
      POST
    • Start outbound call with ad-hoc agent config (JSON)
      POST
    • List call history
      GET
    • Get call details
      GET
    • Diagnose recording issues
      GET
    • Call statistics
      GET
    • Fix recording data
      POST
  • Phone Numbers
    • List your phone numbers
      GET
    • Available numbers to claim
      GET
    • Claim a number from pool
      POST
    • Assign number to agent
      POST
    • Unassign number from agent
      POST
    • Release number (return to pool)
      POST
  • Statistics
    • Dashboard overview
    • Daily usage statistics
    • Monthly usage statistics
  • Subscription
    • Current subscription
    • Available plans
    • Request plan upgrade
  • Web Access
    • Generate web widget token
  • AI Tools
    • AI Prompt Generator
  • Account
    • Your account info
    • Regenerate API key
  • Platform Admin
    • Platform-wide overview (admin only)
  • Knowledge Base
    • List knowledge base files
    • Upload document to knowledge base
    • Delete knowledge base file
  • Chat Widget
    • Get chat widget config
    • Start chat session
    • Send chat message
    • Close chat session
    • List chat sessions
    • Get chat session details
    • Chat statistics
    • Get chat widget configuration
    • Update chat widget configuration
    • Close inactive sessions
    • Upload chat avatar/logo
    • Delete chat avatar/logo
    • Poll session status for human handoff
    • Poll session status (POST to avoid caching)
    • Get chat history
  • Version History
    • List agent version history
    • Get specific version details
    • Compare two versions
    • Restore agent to version
  • Workflows
    • List all workflows
    • Create workflow
    • Get workflow
    • Update workflow
    • Delete workflow
    • Publish workflow
    • Get version history
    • Rollback to version
    • Assign workflow to agent
    • Remove workflow from agent
  • Chat Operator
    • Get operator statistics
    • Get escalated chat queue
    • Get operator's active chats
    • Claim a chat from queue
    • Release a chat
    • Send message as operator
    • Update operator online status
    • Get contact requests
    • Update contact request
    • Create contact request
    • Subscribe to operator events (SSE)
    • Get all messages for a session
    • Update customer info for session
  • Chat Verification
    • Check if agent has protected tools
    • Initiate identity verification
    • Check verification status
  • Tool Logs
    • List tool call logs
    • Get single tool log
    • Get tool usage statistics
  • Schemas
    • Tenant
    • Agent
    • Call
    • ToolLog
    • AgentTool
  1. Agents

Create new agent

POST
/api/agents
Creates a new voice agent. After creation, add tools/webhooks via POST /api/agents/{agentId}/tools endpoint.

Request

Authorization
API Key
Add parameter in header
X-API-Key
Example:
X-API-Key: ********************
or
Body Params application/jsonRequired

Examples

Responses

🟢201Success
application/json
Agent created successfully. Next: Add phone number and tools.
Body

Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://snakk-backend-production.up.railway.app/api/agents' \
--header 'X-API-Key: <api-key>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "Support Agent",
    "description": "Handles customer support inquiries",
    "instructions": "Du er en hjelpsom support agent. Du snakker norsk og hjelper kunder med spørsmål.",
    "voice": "marin",
    "language": "no",
    "recording_enabled": true,
    "silent_recording_enabled": false,
    "recording_prompt": "Denne samtalen kan bli tatt opp. Er det greit for deg?",
    "greeting_message": "Hei! Velkommen til kundeservice. Hva kan jeg hjelpe deg med?",
    "greeting_speaks_first": true,
    "transfer_enabled": false,
    "transfer_number": "+4795837050",
    "knowledge_base_enabled": false,
    "allowed_embed_domains": [
        "example.com",
        "*.mycompany.no"
    ],
    "human_handoff_enabled": false,
    "human_handoff_message": "Connecting you to a representative...",
    "no_operator_message": "No operators available. Please leave your contact info.",
    "vad_type": "server_vad",
    "turn_detection_settings": {
        "threshold": 0.6,
        "prefix_padding_ms": 400,
        "silence_duration_ms": 700
    }
}'
Response Response Example
{
    "agent": {
        "id": "agent-uuid",
        "tenant_id": "tenant-uuid",
        "name": "Support Agent",
        "is_active": true,
        "created_at": "2025-11-23T10:00:00Z"
    }
}
Modified at 2025-12-17 20:24:06
Previous
List all agents for tenant
Next
Get agent details
Built with