> ## Documentation Index
> Fetch the complete documentation index at: https://docs.oneinbox.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# クイックスタート

> 最初の音声エージェントを構築し、電話番号を取得して、実際の通話を発信します — サードパーティのテレフォニーアカウント不要。

## 概要

数分で動作する音声エージェントと専用の電話番号を取得し、実際のアウトバウンド通話を発信します。

**行うこと：**

1. **エージェント**を作成する
2. **電話番号**を購入する — OneInbox から直接、Twilio アカウント不要
3. **発信する**
4. **結果を確認する**

すべての API リクエストは：

```
Authorization: Bearer <api_key>
```

***

## 前提条件

| 項目                  | 場所                                                                                   |
| ------------------- | ------------------------------------------------------------------------------------ |
| **OneInbox API キー** | [ダッシュボード](https://oneinbox-dashboard.vercel.app) → **API Keys** → **Create API key** |
| **ターミナル**           | `curl`（Mac ターミナル、Windows PowerShell、または WSL）                                         |

***

## ステップ 1 — エージェントを作成する

1 回の API 呼び出しです。名前を付けるだけで — OneInbox がデフォルトの LLM、ボイス、システムプロンプトを自動的に設定します。エージェントはすぐに通話を受ける準備ができています。

```bash theme={null}
curl -X POST https://api.oneinbox.ai/v1/agents \
  -H "Authorization: Bearer <api_key>" \
  -H "Content-Type: application/json" \
  -d '{ "name": "My First Agent" }'
```

```json theme={null}
{
  "id": "agt_abc123",
  "name": "My First Agent",
  "llm_id": "llm_xyz789",
  "created_at": "2026-06-01T10:00:00Z"
}
```

レスポンスから両方の ID を保存します：

* **`id`** — エージェント（ボイス、言語、通話の動作）
* **`llm_id`** — AI の頭脳（何を知っていて何ができるか）。複数のエージェントが 1 つの頭脳を共有できるように分離されています。

***

## ステップ 2 — 電話番号を購入する

OneInbox から直接番号を購入します — Twilio やテレフォニーアカウントは不要です。

**オプション A — 検索して特定の番号を選ぶ：**

```bash theme={null}
# 1. 利用可能な番号を検索
curl "https://api.oneinbox.ai/v1/phone-numbers/search?country=US&area_code=415&limit=10" \
  -H "Authorization: Bearer <api_key>"

# 2. 希望する番号を購入
curl -X POST https://api.oneinbox.ai/v1/phone-numbers/purchase \
  -H "Authorization: Bearer <api_key>" \
  -H "Content-Type: application/json" \
  -d '{
    "phone_number": "+14155551234",
    "friendly_name": "My First Number",
    "agent_id": "<agent_id>"
  }'
```

**オプション B — 自動割り当て（検索をスキップ）：**

```bash theme={null}
curl -X POST https://api.oneinbox.ai/v1/phone-numbers/purchase \
  -H "Authorization: Bearer <api_key>" \
  -H "Content-Type: application/json" \
  -d '{
    "country": "US",
    "area_code": "415",
    "friendly_name": "My First Number",
    "agent_id": "<agent_id>"
  }'
```

```json theme={null}
{
  "id": "phn_abc123",
  "phone_number": "+14155551234",
  "agent_id": "agt_abc123",
  "status": "active"
}
```

番号は双方向でライブです：発信でき、誰かがダイヤルするとエージェントに自動的に繋がります。

<Note>
  Twilio で既に番号をお持ちですか？持ち込み番号のパスは [電話番号](/jp/guides/phone-calls) を参照してください。
</Note>

***

## ステップ 3 — 発信する

新しい番号を発信者 ID として任意の番号に電話をかけます：

```bash theme={null}
curl -X POST https://api.oneinbox.ai/v1/calls \
  -H "Authorization: Bearer <api_key>" \
  -H "Content-Type: application/json" \
  -d '{
    "agent_id": "<agent_id>",
    "to_number": "+919876543210",
    "from_number": "+14155551234"
  }'
```

```json theme={null}
{
  "id": "call_abc123",
  "status": "initiated",
  "to_number": "+919876543210",
  "from_number": "+14155551234"
}
```

電話が鳴ります — 出るとエージェントとライブで話せます。

***

## ステップ 4 — 通話結果を確認する

通話終了後、レコードを取得します：

```bash theme={null}
curl https://api.oneinbox.ai/v1/calls/<call_id> \
  -H "Authorization: Bearer <api_key>"
```

```json theme={null}
{
  "id": "call_abc123",
  "status": "completed",
  "duration_seconds": 45,
  "messages": [
    { "role": "agent", "content": "Hi! How can I help?" },
    { "role": "user", "content": "I have a question about my order" }
  ],
  "outcome": "Interested",
  "ai_summary": "Caller asked about order status. Agent provided tracking info."
}
```

`messages`、`outcome`、`ai_summary` は通話終了後にのみ利用可能です。

***

## エージェントをカスタマイズする

エージェントはデフォルトですぐに動作します。ユースケースに合わせてカスタマイズする場合は、何も再作成せずに更新できます。

### 個性を与える

システムプロンプトでエージェントの役割と動作を定義し、最初のメッセージで通話の開始方法を制御します：

```bash theme={null}
# LLM にシステムプロンプトを設定
curl -X PATCH https://api.oneinbox.ai/v1/models/<llm_id> \
  -H "Authorization: Bearer <api_key>" \
  -H "Content-Type: application/json" \
  -d '{
    "system_prompt": "You are a helpful support agent for Acme Corp. Keep replies under two sentences. When the caller says goodbye, call end_call.",
    "temperature": 0.7
  }'

# エージェントに最初のメッセージと通話動作を設定
curl -X PATCH https://api.oneinbox.ai/v1/agents/<agent_id> \
  -H "Authorization: Bearer <api_key>" \
  -H "Content-Type: application/json" \
  -d '{
    "first_message": "Hi! Thanks for reaching out to Acme. How can I help?",
    "silence_timeout_seconds": 10,
    "enable_recording": true
  }'
```

### ツールを追加する

ツールを使うと、通話中にエージェントがアクションを実行できます — 人間に転送、通話を終了、SMS 送信、ミーティング予約など。各ツールを作成して LLM に接続します：

```bash theme={null}
# 人間のエージェントに転送
curl -X POST https://api.oneinbox.ai/v1/tools \
  -H "Authorization: Bearer <api_key>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "transfer_to_human",
    "type": "transfer_call",
    "description": "Transfer to a human when the caller asks to speak to a person.",
    "transfer_to": "+15105550100"
  }'

# 通話をきれいに終了
curl -X POST https://api.oneinbox.ai/v1/tools \
  -H "Authorization: Bearer <api_key>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "end_call",
    "type": "end_call",
    "description": "End the call after the task is done or the caller says goodbye."
  }'

# 両方のツールを LLM に接続
curl -X PATCH https://api.oneinbox.ai/v1/models/<llm_id> \
  -H "Authorization: Bearer <api_key>" \
  -H "Content-Type: application/json" \
  -d '{
    "tool_ids": ["<transfer_tool_id>", "<end_call_tool_id>"]
  }'
```

ツールタイプの全リストは [ツール](/jp/guides/tools) を参照してください — SMS、メール、カレンダー予約、データ抽出など。

### ナレッジベースを追加する

エージェントがドキュメントや URL から質問に答えられるようにします：

```bash theme={null}
# ナレッジベースソースを作成
curl -X POST https://api.oneinbox.ai/v1/knowledge-bases \
  -H "Authorization: Bearer <api_key>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Product FAQ",
    "source_type": "url",
    "url": "https://acme.com/faq"
  }'

# ナレッジベースをエージェントに接続
curl -X PATCH https://api.oneinbox.ai/v1/agents/<agent_id> \
  -H "Authorization: Bearer <api_key>" \
  -H "Content-Type: application/json" \
  -d '{
    "kb_ids": ["<kb_id>"]
  }'
```

ファイルのアップロード、URL の同期、ソースの管理については [ナレッジベース](/jp/guides/knowledge-bases) を参照してください。

***

## 次のステップ

<CardGroup cols={2}>
  <Card title="エージェント" icon="robot" href="/jp/concepts/agents">
    ボイス、言語、録音、動作の設定
  </Card>

  <Card title="ツール" icon="wrench" href="/jp/guides/tools">
    エージェントにアクションを与える — SMS、メール、データ取得、転送
  </Card>

  <Card title="ナレッジベース" icon="book" href="/jp/guides/knowledge-bases">
    ドキュメントをアップロードまたは URL を同期して回答の参照元にする
  </Card>

  <Card title="電話番号" icon="phone" href="/jp/guides/phone-calls">
    自分の Twilio 番号を持ち込むか、アウトバウンド/インバウンドの詳細を学ぶ
  </Card>
</CardGroup>
