> ## 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.

# Håndter innkommende samtaler (API)

> Fra start til slutt: konfigurer en agent, tildel den til et telefonnummer, ta imot en samtale og se gjennom transkripsjonen.

<Note>
  Bygger du din første agent for hånd? Kontrollpanelet veileder deg
  gjennom akkurat denne flyten — bygg agenten, legg til et nummer,
  simuler, gjennomgå — med en veiviser. Start med
  [hurtigstart for kontrollpanelet](/nb/quickstart-dashboard).
</Note>

Standardflyten for å «svare på en telefon med en AI», fra terminalen.
Du skal:

1. Opprette en agent med en prompt og stemme.
2. Klargjøre (eller ta med) et telefonnummer og tilordne agenten som
   innkommende behandler.
3. Ringe nummeret. Se samtaleloggen, transkripsjonen og opptaket.

Totalt antall API-kall: fire. Total tid: under fem minutter.

## 1. Opprett en agent

En agent samler prompten, stemmen og produktnivået som skal håndtere
samtalen. Se [Agenter](/api-reference/agents) for alle
konfigurasjonsfeltene; minimumet er:

```bash 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":    "Acme Support",
    "prompt":  "You are a friendly support agent for Acme. Help callers with orders and returns. Keep answers short.",
    "voice":   "john",
    "product": "spark"
  }'
```

Lagre returnert `id` — du trenger den i trinn 2.

<Tip>
  Velg `spark` for enkel spørsmål og svar til lavest kostnad, eller
  `bolt` når hastighet er viktigst. Oppgrader til `storm-base-with-ack`
  når prompten din trenger dypere resonnering og kan tåle en
  halvtsekunds utfylling mens modellen tenker. Se
  [produktnivåer](/api-reference/agents#product-tiers-at-a-glance).
</Tip>

## 2. Skaff et telefonnummer

Hvis du bare trenger noe å ringe til, kan du klargjøre et demonummer
fra ThunderPhone-poolen:

```bash theme={null}
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"}'
```

Svaret inneholder en `id` og et `number` i E.164-format. Demonumre
starter med `status="provisioning"` og blir `active` i løpet av noen
sekunder — spør
[`GET /v1/phone-numbers/{id}`](/api-reference/phone-numbers#retrieve-a-phone-number)
for å følge overgangen hvis du trenger det.

<Note>
  For produksjon kan du hoppe over demonumre og
  [ta med dine egne numre via VoIP](/nb/guides/bring-your-own-numbers).
  Demonumre er kun for innkommende samtaler og har volumbegrensning.
</Note>

## 3. Tilordne agenten

Knytt agenten fra trinn 1 til nummerets innkommende retning:

```bash theme={null}
curl -X PATCH https://api.thunderphone.com/v1/phone-numbers/{phone_id} \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"inbound_agent_id": 12}'
```

Det er alt — nummeret er aktivt. Du kan også angi `outbound_agent_id`
i samme PATCH, slik at nummeret også er klart for utgående samtaler.

## 4. Ta imot en samtale

Ring nummeret fra telefonen din. Agenten svarer, introduserer seg i
henhold til prompten din, og samtalen begynner.

Mens samtalen pågår, vises den i
[`GET /v1/calls`](/api-reference/calls#list-calls) med
`status="in_progress"`. Når den avsluttes, oppdateres posten med
`end_reason`, `duration_seconds`, `billable_minutes` og (etter hvert)
en URL til opptaket og en AI-vurdering.

## 5. Undersøk resultatene

Hent listen over nylige samtaler:

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

Hent transkripsjonen:

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

Og URL-en til opptaket (kortvarig, signert):

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

Hvis du abonnerte på
[`telephony.complete`-webhooken](/nb/webhooks/events),
mottar du de samme dataene som en POST til serveren din — se
[call.complete](/nb/webhooks/call-complete).

***

## Neste trinn

<CardGroup cols={2}>
  <Card title="Dynamisk konfigurasjon per samtale" icon="bolt" href="/nb/guides/dynamic-call-config">
    Velg en annen agent for hver innringer basert på telefonnummeret eller
    egendefinert logikk i en webhook.
  </Card>

  <Card title="Legg til verktøyintegrasjoner" icon="screwdriver-wrench" href="/nb/guides/build-tool-integration">
    La agenten kalle API-ene dine midt i samtalen.
  </Card>

  <Card title="Motta call.complete-webhooks" icon="bolt" href="/nb/webhooks/call-complete">
    Send hver fullførte samtale til CRM- eller analysepipelinen din.
  </Card>

  <Card title="KI-vurdering og problemrapporter" icon="chart-line" href="/api-reference/calls#ai-call-grading">
    Vurder hver samtale automatisk, og send flaggede samtaler til gjennomgang.
  </Card>
</CardGroup>
