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

# Rychlý start (API)

> Vyřiďte první telefonní hovor pomocí AI agenta ve čtyřech voláních REST.

Tento průvodce vás provede čtyřmi voláními REST API potřebnými k přijetí
vašeho prvního telefonního hovoru s hlasovým AI agentem.

<Info>
  Budete potřebovat [účet ThunderPhone](https://app.thunderphone.com).
  Registrace je zdarma a zabere méně než minutu. Dáváte přednost klikání před curl?
  [Rychlý start v dashboardu](/cs/quickstart-dashboard) vás dovede ke stejnému
  prvnímu hovoru bez psaní kódu.
</Info>

## Krok 1: Získejte klíč API

<Steps>
  <Step title="Přihlaste se">
    Otevřete [app.thunderphone.com](https://app.thunderphone.com).
  </Step>

  <Step title="Přejděte na Klíče">
    V dashboardu přejděte na **Organizace → Klíče**.
  </Step>

  <Step title="Vytvořte klíč">
    Klikněte na **Vytvořit klíč**, pojmenujte ho a zkopírujte
    hodnotu `sk_live_...`. Nezpracovaný klíč se zobrazí **pouze jednou** — ihned ho uložte
    do správce tajných údajů.
  </Step>
</Steps>

<Tip>
  Nedaří se vám? Průvodce [Vytvoření serverového klíče API](/cs/guides/api-keys) popisuje
  tento postup krok za krokem a kopilot v aplikaci vám může
  jednotlivé ovládací prvky průběžně zvýraznit.
</Tip>

V celém tomto průvodci nahraďte `sk_live_YOUR_API_KEY` hodnotou, kterou jste
právě zkopírovali. Klíč automaticky identifikuje vaši organizaci, takže
do adres URL nikdy nemusíte uvádět ID organizace.

## Krok 2: Vytvořte agenta

Agent určuje, jak AI zpracovává konverzace — výzvu, hlas,
produktovou úroveň, nástroje a způsobilost pro widget.

<CodeGroup>
  ```bash cURL theme={null}
  curl -X POST https://api.thunderphone.com/v1/agents \
    -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "name":   "Customer Support",
      "prompt": "You are a friendly support agent for Acme Corp. Help with orders, returns, and product info. Be concise and helpful.",
      "voice":  "john",
      "product": "spark"
    }'
  ```

  ```python Python theme={null}
  import os, requests

  agent = requests.post(
      "https://api.thunderphone.com/v1/agents",
      headers={"Authorization": f"Bearer {os.environ['THUNDERPHONE_API_KEY']}"},
      json={
          "name":   "Customer Support",
          "prompt": "You are a friendly support agent for Acme Corp. Help with orders, returns, and product info. Be concise and helpful.",
          "voice":  "john",
          "product": "spark",
      },
  ).json()
  print("Agent id:", agent["id"])
  ```

  ```javascript Node.js theme={null}
  const agent = await fetch("https://api.thunderphone.com/v1/agents", {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.THUNDERPHONE_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      name:    "Customer Support",
      prompt:  "You are a friendly support agent for Acme Corp. Help with orders, returns, and product info. Be concise and helpful.",
      voice:   "john",
      product: "spark",
    }),
  }).then((r) => r.json());
  console.log("Agent id:", agent.id);
  ```
</CodeGroup>

<Tip>
  Produktové úrovně: `spark` je optimalizovaný na náklady, `bolt` na rychlost a
  `storm-base` / `storm-extra` na inteligenci při složitých výzvách. Úplné
  srovnání najdete v části [Agenti](/api-reference/agents#product-tiers-at-a-glance).
</Tip>

## Krok 3: Zřiďte telefonní číslo

Tento požadavek požádá demonstrační fond ThunderPhone o číslo a přiřadí
vašeho nového agenta jako obsluhu příchozích hovorů. (Chcete-li přenést vlastní číslo od poskytovatele VoIP,
viz [připojení VoIP](/api-reference/voip-connections).)

<CodeGroup>
  ```bash cURL theme={null}
  # First provision
  curl -X POST https://api.thunderphone.com/v1/phone-numbers \
    -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{"area_code": "415"}'

  # Then assign the agent you created in Step 2
  curl -X PATCH https://api.thunderphone.com/v1/phone-numbers/<id-from-previous> \
    -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{"inbound_agent_id": 12}'
  ```

  ```python Python theme={null}
  number = requests.post(
      "https://api.thunderphone.com/v1/phone-numbers",
      headers={"Authorization": f"Bearer {os.environ['THUNDERPHONE_API_KEY']}"},
      json={"area_code": "415"},
  ).json()
  requests.patch(
      f"https://api.thunderphone.com/v1/phone-numbers/{number['id']}",
      headers={"Authorization": f"Bearer {os.environ['THUNDERPHONE_API_KEY']}"},
      json={"inbound_agent_id": agent["id"]},
  )
  print("Your ThunderPhone number:", number["number"])
  ```
</CodeGroup>

Vaše nové číslo začíná ve stavu `status="provisioning"` a během
několika sekund přejde do stavu `active`; než zavřete prohlížeč,
bude číslo připraveno přijímat hovory.

## Krok 4 (volitelné): Nastavte webhook

Pro události v reálném čase (dynamické směrování hovorů, zpracování po hovoru) přidejte
koncový bod webhooku. Odebírejte pouze události, které potřebujete.

```bash theme={null}
curl -X POST https://api.thunderphone.com/v1/developer/webhook-endpoints \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "label":  "Prod webhook",
    "url":    "https://your-server.com/thunderphone-webhook",
    "events": ["telephony.incoming", "telephony.complete"]
  }'
```

Odpověď obsahuje jednorázový klíč `secret` — zkopírujte jej do svého správce
tajemství. Tento klíč použijte k ověření hlavičky
`X-ThunderPhone-Signature` u příchozích požadavků (viz
[přehled webhooků](/cs/webhooks/overview)).

## Krok 5: Otestujte svého agenta

Zavolejte na číslo, které jste právě zřídili. Agent hovor přijme, představí
se a bude se řídit vaším promptem.

Po skončení hovor zkontrolujte:

```bash theme={null}
curl https://api.thunderphone.com/v1/calls \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"
```

Přejděte do konkrétního hovoru a načtěte přepis a adresu URL nahrávky:

```bash theme={null}
curl https://api.thunderphone.com/v1/calls/{call_id}/transcript \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"
curl https://api.thunderphone.com/v1/calls/{call_id}/audio \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"
```

***

## Další kroky

<CardGroup cols={2}>
  <Card title="Přidejte nástroje funkcí" icon="screwdriver-wrench" href="/cs/tools/overview">
    Umožněte svému agentovi volat vaše API během konverzace.
  </Card>

  <Card title="Provádějte odchozí hovory" icon="arrow-up-right" href="/api-reference/outbound-calls">
    Spouštějte hovory z vlastního kódu.
  </Card>

  <Card title="Zpracovávejte webhooky" icon="bolt" href="/cs/webhooks/overview">
    Reagujte na události hovorů v reálném čase.
  </Card>

  <Card title="Úplná reference API" icon="book" href="/api-reference/introduction">
    Dokumentace každého veřejného koncového bodu.
  </Card>
</CardGroup>
