Skip to content
Tried

Documentation

Build on the Tried API.

A REST API over HTTPS with JSON bodies. Everything the dashboard does, the API does too.

Base URL
https://api.tried.com.au
Auth
Bearer API key
Format
JSON, UTF-8
Webhook signature
x-tried-signature

Quickstart

Create an engine, an agent and a number. Then call the number from your phone.

Three calls to a live agentbash
# Build your agent in the dashboard first, then copy its ID.

# 1. Connect your own number over SIP and point it at the agent
curl -X POST https://api.tried.com.au/import-phone-number \
  -H "Authorization: Bearer $TRIED_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "phone_number": "+61291234567",
    "termination_uri": "sip.example-carrier.com.au",
    "inbound_agents": [{ "agent_id": "agent_...", "weight": 1 }]
  }'

# 2. Place an outbound call from that number
curl -X POST https://api.tried.com.au/v2/create-phone-call \
  -H "Authorization: Bearer $TRIED_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from_number": "+61291234567",
    "to_number": "+61412555019",
    "override_agent_id": "agent_..."
  }'

Prefer the dashboard? Log in and start from a template.

Authentication

Create API keys in Settings, API Keys. Send the key as a bearer token on every request. Keys are shown once and stored only as a hash, so keep yours in a secret manager.

API reference

The main endpoints, grouped by resource.

Agents

Agents endpoints
POST/create-agentCreate an agent from a response engine and a voice
GET/get-agent/:agent_idFetch an agent, optionally at a version
GET/v2/list-agentsList agents
PATCH/update-agent/:agent_idUpdate the draft
POST/publish-agent-version/:agent_idPublish the draft as a new version
GET/list-agent-versions/:agent_idList published versions

Conversation flows

Conversation flows endpoints
POST/create-conversation-flowCreate a flow with nodes and edges
PATCH/update-conversation-flow/:idUpdate a flow

Calls

Calls endpoints
POST/v2/create-phone-callPlace an outbound call
POST/v3/create-web-callStart a browser call and get an access token
GET/v2/get-call/:call_idFetch a call with transcript and analysis
POST/v3/list-callsList and filter calls
POST/v2/stop-call/:call_idEnd a live call
POST/rerun-call-analysis/:call_idRun post-call analysis again

Numbers

Numbers endpoints
POST/import-phone-numberImport a number over SIP
PATCH/update-phone-number/:numberSet agents, weights, webhook and countries
GET/v2/list-phone-numbersList numbers

Knowledge bases and batch calls

Knowledge bases and batch calls endpoints
POST/create-knowledge-baseCreate from URLs, files or text
POST/add-knowledge-base-sources/:idAdd sources
POST/create-batch-callStart a batch from a list of recipients
GET/list-batch-callsList batches and progress

Account

Account endpoints
GET/get-concurrencyCurrent and maximum concurrent calls
GET/list-voicesAvailable voices
GET/agent-estimates/:agent_idCost and latency estimate for an agent

Webhooks

Set a workspace webhook URL, or override it per agent. We POST call_started, call_ended and call_analyzed with a 10 second timeout and up to 3 retries.

  1. call_started200 · 146 ms
  2. call_ended200 · 212 ms
  3. call_analyzed200 · 188 ms
call_analyzed (abridged)json
{
  "event": "call_analyzed",
  "call": {
    "call_id": "call_bdefa21365a5",
    "agent_id": "agent_aee5c1d2f0b7",
    "call_type": "phone_call",
    "from_number": "+61290001111",
    "to_number": "+61280001234",
    "duration_ms": 265000,
    "disconnection_reason": "user_hangup",
    "call_analysis": {
      "call_summary": "Caller booked a check-up for Thursday at 10:30.",
      "user_sentiment": "Positive",
      "call_successful": true,
      "custom_analysis_data": { "appointment_booked": true }
    }
  }
}

Verifying signatures

Each request carries x-tried-signature: v=<ts>,d=<hex>. Compute HMAC-SHA256 over the raw body followed by the timestamp, using your webhook key, and compare in constant time. Reject timestamps more than five minutes old.

A full example is in the webhooks guide.

The full reference, with every endpoint and field, is at docs.tried.com.au. Questions? Email hello@tried.com.au with API questions and an engineer will answer.

Have you Tried it yet?

Create an account, pick a template and talk to your new receptionist in the browser. You only pay for the minutes you use.