create-phone-number
Set up and manage phone numbers in Vapi for inbound and outbound voice AI calls. Use when importing Twilio, Vonage, or Telnyx numbers, buying Vapi numbers, or configuring phone numbers for assistants.
Best use case
create-phone-number is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Set up and manage phone numbers in Vapi for inbound and outbound voice AI calls. Use when importing Twilio, Vonage, or Telnyx numbers, buying Vapi numbers, or configuring phone numbers for assistants.
Teams using create-phone-number should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/create-phone-number/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How create-phone-number Compares
| Feature / Agent | create-phone-number | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Set up and manage phone numbers in Vapi for inbound and outbound voice AI calls. Use when importing Twilio, Vonage, or Telnyx numbers, buying Vapi numbers, or configuring phone numbers for assistants.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Vapi Phone Number Setup
Import phone numbers from Twilio, Vonage, or Telnyx, or use Vapi's built-in numbers to connect voice assistants to real phone calls.
> **Setup:** Ensure `VAPI_API_KEY` is set. See the `setup-api-key` skill if needed.
## Quick Start — Buy a Vapi Number
Vapi provides free phone numbers for testing with daily call limits.
```bash
curl -X POST https://api.vapi.ai/phone-number \
-H "Authorization: Bearer $VAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "vapi",
"assistantId": "your-assistant-id",
"name": "Main Support Line"
}'
```
## Import from Twilio
```bash
curl -X POST https://api.vapi.ai/phone-number \
-H "Authorization: Bearer $VAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "twilio",
"number": "+11234567890",
"twilioAccountSid": "your-twilio-account-sid",
"twilioAuthToken": "your-twilio-auth-token",
"assistantId": "your-assistant-id",
"name": "Twilio Support Line"
}'
```
## Import from Vonage
```bash
curl -X POST https://api.vapi.ai/phone-number \
-H "Authorization: Bearer $VAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "vonage",
"number": "+11234567890",
"credentialId": "your-vonage-credential-id",
"assistantId": "your-assistant-id",
"name": "Vonage Support Line"
}'
```
## Import from Telnyx
```bash
curl -X POST https://api.vapi.ai/phone-number \
-H "Authorization: Bearer $VAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "telnyx",
"number": "+11234567890",
"credentialId": "your-telnyx-credential-id",
"assistantId": "your-assistant-id",
"name": "Telnyx Support Line"
}'
```
## Assign an Assistant
Every phone number can be linked to an assistant or squad for inbound calls:
```bash
curl -X PATCH https://api.vapi.ai/phone-number/{id} \
-H "Authorization: Bearer $VAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"assistantId": "your-assistant-id"
}'
```
Or assign a squad:
```bash
curl -X PATCH https://api.vapi.ai/phone-number/{id} \
-H "Authorization: Bearer $VAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"squadId": "your-squad-id"
}'
```
## Phone Number Hooks
Configure automated actions when calls come in:
```json
{
"hooks": [
{
"on": "call.ringing",
"do": [
{
"type": "say",
"exact": "Please hold while we connect you."
}
]
}
]
}
```
## Managing Phone Numbers
```bash
# List all phone numbers
curl https://api.vapi.ai/phone-number \
-H "Authorization: Bearer $VAPI_API_KEY"
# Get a phone number
curl https://api.vapi.ai/phone-number/{id} \
-H "Authorization: Bearer $VAPI_API_KEY"
# Update a phone number
curl -X PATCH https://api.vapi.ai/phone-number/{id} \
-H "Authorization: Bearer $VAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name": "Updated Name"}'
# Delete a phone number
curl -X DELETE https://api.vapi.ai/phone-number/{id} \
-H "Authorization: Bearer $VAPI_API_KEY"
```
## Inbound Call Flow
1. Caller dials your Vapi phone number
2. Vapi routes the call to the assigned assistant or squad
3. The assistant speaks its `firstMessage`
4. The conversation proceeds with the configured model, voice, and tools
## Outbound Call Flow
1. Create a call via `POST /call` with `phoneNumberId` and `customer.number`
2. Vapi dials the customer from your phone number
3. When answered, the assistant begins the conversation
## Free Number Limitations
- Cannot make international calls
- Daily call limits apply
- For production use, import your own Twilio/Vonage/Telnyx numbers
## References
- [Vapi Phone Numbers Docs](https://docs.vapi.ai/phone-numbers/import-twilio)
- [Free Telephony](https://docs.vapi.ai/free-telephony)
- [Phone Number Hooks](https://docs.vapi.ai/phone-numbers/phone-number-hooks)
## Additional Resources
This skills repository includes a **Vapi documentation MCP server** (`vapi-docs`) that gives your AI agent access to the full Vapi knowledge base. Use the `searchDocs` tool to look up anything beyond what this skill covers — advanced configuration, troubleshooting, SDK details, and more.
**Auto-configured:** If you cloned or installed these skills, the MCP server is already configured via `.mcp.json` (Claude Code), `.cursor/mcp.json` (Cursor), or `.vscode/mcp.json` (VS Code Copilot).
**Manual setup:** If your agent doesn't auto-detect the config, run:
```bash
claude mcp add vapi-docs -- npx -y mcp-remote https://docs.vapi.ai/_mcp/server
```
See the [README](../README.md#vapi-documentation-server-mcp) for full setup instructions across all supported agents.Related Skills
xfi-create-plan
Guide for creating engineering plans through a structured workflow. Use when planning new features, coordinating multi-agent work, or breaking down complex initiatives.
veriphone-automation
Automate Veriphone tasks via Rube MCP (Composio). Always search tools first for current schemas.
Swiss Phone Directory
Step-by-step guidance for swiss phone directory.
skill-create-flow
Create new high-quality agent skills with a standalone, repeatable workflow (no dependency on other skills). Use when you want to go from a vague skill idea → narrow scope → extract expert frameworks → write SKILL.md + examples/evals/index/changelog artifacts → self-validate with test prompts.
realphonevalidation-automation
Automate Realphonevalidation tasks via Rube MCP (Composio). Always search tools first for current schemas.
git-create-commit-skill
Use when creating git commits - mandates commits format with required scopes for all new commits, provides scope discovery from codebase structure, and prevents rationalization under pressure (emergency, fatigue, ambiguity)
create-target
Scaffold a new target type (e.g., Zed, Windsurf) for universal-ai-config
create-project
Initialize new projects with CAMI capabilities and recommended agent teams. Triggers on "create a new project", "start a new project", "initialize project", "set up project with agents", "what agents do I need for this project", "help me set up my project roster". Guides through project requirements, tech stack detection, agent team recommendations, and full CAMI initialization.
create-pr
JIRAチケットブランチからPRを自動作成するスキル。親ブランチ自動検出、JIRAリンク自動挿入、テンプレートに沿ったPR本文生成を行う。「PR作成」「PRを作って」「/create-pr」などのリクエストで使用。
create-plugin-scaffold
Create a new Cursor plugin scaffold with a valid manifest, component directories, and marketplace wiring. Use when starting a new plugin or adding a plugin to a multi-plugin repository.
create-my-tools-profile
Generate a personalized AI skill based on your configured Zapier MCP tools. Scans your enabled actions and creates instructions that help your AI assistant know when and how to use each tool. Use after setting up tools, or when you want to "create my tools profile", "personalize my assistant", or "make a skill from my tools".
create-mcp-json
Create an mcp.json client configuration from a server.json. Use when the user wants to generate a ready-to-use MCP client config for connecting to an MCP server.