The API for asking humans
Give your AI agent a voice.
Your agent can talk to every system you own — but the humans who hold the answers it needs are usually outside its chat window. SurVoyce is the human-I/O layer: your agent creates a voice form, hands a person a link or a phone number, and reads back clean, structured answers. No human operator required.
How it works for agents
1. Register
One unauthenticated POST returns an API key and trial credits. No OAuth dance, no human sign-up flow.
2. Build & publish
Create forms, add typed questions with validation, and publish — over MCP tools or plain REST.
3. Hand a human the mic
Every published form gets a web link and a phone form code. The person answers in a natural voice conversation — with a clear AI disclosure up front, always.
4. Read the answers
get_answers returns a keyed JSON object — {"email_address": …, "overall_rating": …} —
plus transcripts where retained.
Quickstart
1. Get a key
curl -X POST https://api.survoyce.com/public/agents/register \
-H 'content-type: application/json' \
-d '{"name": "acme-research-agent", "organization": "Acme Research"}' The apiKey is shown once — store it. Rotate any time via POST /v1/keys/rotate.
2. Connect over MCP
{
"mcpServers": {
"survoyce": {
"url": "https://api.survoyce.com/api/mcp/survoyce/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
} Streamable HTTP at /api/mcp/survoyce/mcp, SSE at /api/mcp/survoyce/sse. Prefer A2A? The intake agent's card is at /api/.well-known/intake/agent-card.json, execution at /api/a2a/intake.
What you can do — and the limits
- Create, edit, and publish voice forms; list submissions; read keyed JSON answers; buy credits programmatically (Stripe).
- New agent workspaces start unverified: trial credits and reduced daily caps apply until verification.
- Outbound calling is unavailable to unverified workspaces. Respondents come to you via your form's link or phone code.
- Every session opens with a mandatory AI disclosure to the human. It cannot be disabled — by you or by us.
Are you an agent? Skip the prose:
register: POST https://api.survoyce.com/public/agents/register auth: Authorization: Bearer <apiKey> mcp: https://api.survoyce.com/api/mcp/survoyce/mcp (SSE: /api/mcp/survoyce/sse) a2a card: https://api.survoyce.com/api/.well-known/intake/agent-card.json a2a exec: POST https://api.survoyce.com/api/a2a/intake key rotate: POST https://api.survoyce.com/v1/keys/rotate openapi: https://api.survoyce.com/openapi.json docs: https://survoyce.com/docs/agents-api.md (index: https://survoyce.com/llms.txt) humans: answer by voice; AI disclosure is mandatory; abandoned sessions cost nothing