Skip to main content
This quickstart walks through the smallest useful Feather flow:
  1. Create an agent
  2. Deploy its first version
  3. Dispatch a live outbound call

Prerequisites

  • A Feather account and API key
  • At least one configured STT config, TTS config, LLM config, and voice
  • An outbound phone number configured in your Feather organization

Step 1: Create an Agent

This example creates a voice agent with a prompt, default model selections, and no knowledge base yet.
curl -X POST "https://prod.featherhq.com/api/v1/agents" \
  -H "X-API-Key: $FEATHER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Demo Calling Agent",
    "description": "Qualifies and routes inbound or outbound conversations",
    "agentType": "CALL",
    "useKnowledgeBase": false,
    "prompt": {
      "system": "You are a concise and helpful assistant for Feather Labs. Introduce yourself clearly, answer questions directly, and capture the next step.",
      "variables": [
        {
          "name": "company",
          "required": false,
          "defaultValue": "Feather Labs"
        }
      ],
      "tools": [],
      "preBuiltTools": []
    },
    "voicemailMessage": null,
    "overrideSTTConfig": null,
    "sttConfigId": "YOUR_STT_CONFIG_ID",
    "ttsConfigId": "YOUR_TTS_CONFIG_ID",
    "llmConfigId": "YOUR_LLM_CONFIG_ID",
    "voiceId": "YOUR_VOICE_ID"
  }'
Save the returned agent.id and agent.version.id.

Step 2: Deploy the Version

Only deployed versions handle live traffic.
curl -X PATCH "https://prod.featherhq.com/api/v1/agents/AGENT_ID/versions/VERSION_ID/deploy" \
  -H "X-API-Key: $FEATHER_API_KEY"

Step 3: Dispatch a Test Call

Use direct dispatch to place a single outbound call without creating a workflow.
curl -X POST "https://prod.featherhq.com/api/v1/agent/AGENT_ID/dispatch" \
  -H "X-API-Key: $FEATHER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "versionId": "VERSION_ID",
    "outboundPhoneNumberId": "OUTBOUND_PHONE_NUMBER_ID",
    "leadId": "contact-123",
    "firstName": "Taylor",
    "toPhoneNumber": "+14155550123",
    "metadata": {
      "source": "quickstart"
    },
    "variables": {
      "company": "Feather Labs"
    }
  }'

Step 4: Inspect the Conversation

After the call completes, you can review:

Next Steps

Once the basic call flow works, expand into one of these:

SMS Threads

Start text conversations from deployed text agents.

Workflows

Automate call and text sequences over time.

Knowledge Base

Ground answers in your own documents.

Calendars

Let agents find availability and book meetings.