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

# Tīmekļa aizķeru galapunkti

> Pārvaldiet vairākus tīmekļa aizķeru URL ar katra galapunkta slepenajiem parametriem un notikumu filtriem.

Uz galapunktiem balstītā tīmekļa aizķeru sistēma ļauj reģistrēt **vairākus**
mērķus katrai organizācijai, katram ar savu slepeno atslēgu, savu
statusu un savu abonementu notikumu tipu apakškopai. Šis ir
ieteicamais modelis visām jaunajām integrācijām.

Salīdziniet ar [mantoto vienas URL tīmekļa aizķeri](/api-reference/organizations#legacy-single-url-webhook),
kas tiek uzturēta atpakaļsaderībai, bet katrai
organizācijai atbalsta tikai vienu URL.

## Galapunkti

| Metode   | Ceļš                                                 | Nepieciešamā loma | Apraksts                                       |
| -------- | ---------------------------------------------------- | ----------------- | ---------------------------------------------- |
| `GET`    | `/v1/developer/webhook-endpoints`                    | `admin+`          | Uzskaitīt galapunktus                          |
| `POST`   | `/v1/developer/webhook-endpoints`                    | `admin+`          | Izveidot galapunktu                            |
| `PATCH`  | `/v1/developer/webhook-endpoints/{endpoint_id}`      | `admin+`          | Atjaunināt etiķeti / URL / notikumus / statusu |
| `DELETE` | `/v1/developer/webhook-endpoints/{endpoint_id}`      | `admin+`          | Dzēst galapunktu                               |
| `POST`   | `/v1/developer/webhook-endpoints/{endpoint_id}/test` | `admin+`          | Nosūtīt parakstītu testa piegādi               |

## Galapunkta objekts

```json theme={null}
{
  "id": "c4d5e6f7-...",
  "label": "Production — Call events",
  "url": "https://example.com/thunderphone/hook",
  "events": ["telephony.incoming", "telephony.complete"],
  "status": "active",
  "secret_hint": "a1b2…9f0e",
  "created_at": "2026-04-20T18:24:10.113Z",
  "updated_at": "2026-04-20T18:24:10.113Z"
}
```

| Lauks                      | Tips          | Apraksts                                                                                                                                                                                  |
| -------------------------- | ------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                       | UUID          | Galapunkta ID                                                                                                                                                                             |
| `label`                    | string        | Attēlojamais nosaukums, 1–120 rakstzīmes                                                                                                                                                  |
| `url`                      | string        | HTTPS URL; izstrādei atļauts `http://localhost`                                                                                                                                           |
| `events`                   | string masīvs | Abonēto notikumu tipi (skatiet [derīgās vērtības](#valid-event-types)). Tukšs masīvs abonē visus notikumus                                                                                |
| `status`                   | string        | `active`, `disabled` (manuāli apturēts) vai `failing` (iestatīts automātiski, kad piegādei beidzas 24 h atkārtošanas grafiks, nesaņemot nevienu 2xx)                                      |
| `secret_hint`              | string        | Parakstīšanas slepenās atslēgas pirmās 4 un pēdējās 4 rakstzīmes ar daudzpunkti (`a1b2…9f0e`) — pietiekami, lai salīdzinātu ar lokāli saglabāto slepeno atslēgu, neatklājot pilno vērtību |
| `created_at`, `updated_at` | timestamp     |                                                                                                                                                                                           |

<Note>
  Galapunkta pilnais `secret` tiek atgriezts **vienreiz** izveides laikā
  un nekad vairs. Glabājiet to droši — ja to pazaudējat, dzēsiet galapunktu
  un izveidojiet to no jauna.
</Note>

### Derīgie notikumu tipi

`events` tiek validēts pret šo precīzo kopu — vērtības ārpus saraksta
atgriež `400`. Katra tipa datu struktūru skatiet [Notikumu katalogā](/lv/webhooks/events).

* `telephony.incoming`, `telephony.complete`, `telephony.tool`
* `web.incoming`, `web.complete`, `web.tool`
* `call.graded`
* `issue.reported`
* `test-call.completed`
* `alert.triggered`

### Galapunktu statusi

* `active` — piegādes notiek parasti.
* `disabled` — manuāli apturēts, izmantojot `PATCH`. Pieprasījumi netiek sūtīti. Mēs
  nekad nemainām `disabled` galapunkta statusu; tā pārslēgšana atpakaļ uz
  `active` vienmēr ir jūsu lēmums.
* `failing` — tiek iestatīts automātiski, kad piegāde uz galapunktu iziet
  visu atkārtošanas grafiku (8 mēģinājumi 24 stundu laikā), nekad
  nesaņemot 2xx. Galapunkts ar kļūmes statusu nesaņem turpmāku datplūsmu.
  Kad galapunkts ir izlabots, ar `PATCH` atjauniniet tā statusu uz `active`;
  piegādes, kuru atkārtošanas grafiks vēl nav beidzies, turpinās no vietas,
  kur tās tika pārtrauktas.

***

## Uzskaitīt galapunktus

<CodeGroup>
  ```bash cURL theme={null}
  curl https://api.thunderphone.com/v1/developer/webhook-endpoints \
    -H "Authorization: Bearer sk_live_YOUR_API_KEY"
  ```
</CodeGroup>

Atgriež [Galapunktu objektu](#endpoint-object) masīvu.

***

## Izveidojiet galapunktu

<CodeGroup>
  ```bash cURL 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":  "Production — Call events",
      "url":    "https://example.com/thunderphone/hook",
      "events": ["telephony.incoming", "telephony.complete"]
    }'
  ```

  ```python Python theme={null}
  result = requests.post(
      "https://api.thunderphone.com/v1/developer/webhook-endpoints",
      headers={"Authorization": "Bearer sk_live_YOUR_API_KEY"},
      json={
          "label":  "Production — Call events",
          "url":    "https://example.com/thunderphone/hook",
          "events": ["telephony.incoming", "telephony.complete"],
      },
  ).json()
  secret = result["secret"]
  endpoint_id = result["id"]
  ```
</CodeGroup>

### Pieprasījuma lauki

| Lauks    | Tips   | Obligāts | Apraksts                                                                                                                                                         |
| -------- | ------ | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `label`  | virkne | jā       | 1–120 rakstzīmes                                                                                                                                                 |
| `url`    | virkne | jā       | HTTPS URL (`http` ir atļauts tikai `localhost` / `127.0.0.1`)                                                                                                    |
| `events` | masīvs | nē       | Tukša vai nenorādīta vērtība abonē visus notikumus. Jāizmanto vērtības, kas norādītas sadaļā [Derīgie notikumu tipi](#valid-event-types); dublikāti tiek noņemti |

Atgriež `201 Created` ar [galapunkta objektu](#endpoint-object) un papildu
augstākā līmeņa lauku `secret`, kas satur neapstrādāto parakstīšanas atslēgu —
48 rakstzīmju heksadecimālu virkni:

```json theme={null}
{
  "id": "c4d5e6f7-…",
  "label": "Production — Call events",
  "url": "https://example.com/thunderphone/hook",
  "events": ["telephony.incoming", "telephony.complete"],
  "status": "active",
  "secret_hint": "a1b2…9f0e",
  "created_at": "2026-04-20T18:24:10.113Z",
  "updated_at": "2026-04-20T18:24:10.113Z",
  "secret": "a1b2c37e08d94f5b16a2c8d90e7f3a4b5c6d7e8f90a19f0e"
}
```

<Warning>
  `secret` tiek atgriezts **tikai izveides laikā**. Turpmākajās `GET` atbildēs
  ir iekļauts tikai `secret_hint`. Pirms atbildes aizvēršanas nokopējiet pilno
  vērtību uz savu slepeno atslēgu pārvaldnieku.
</Warning>

***

## Atjauniniet galapunktu

<CodeGroup>
  ```bash cURL theme={null}
  curl -X PATCH https://api.thunderphone.com/v1/developer/webhook-endpoints/c4d5e6f7-... \
    -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "label":  "Production — Call + Grade events",
      "events": ["telephony.incoming", "telephony.complete", "call.graded"]
    }'
  ```
</CodeGroup>

| Lauks    | Tips   | Apraksts                                                                                                            |
| -------- | ------ | ------------------------------------------------------------------------------------------------------------------- |
| `label`  | virkne |                                                                                                                     |
| `url`    | virkne |                                                                                                                     |
| `events` | masīvs |                                                                                                                     |
| `status` | virkne | `active` vai `disabled`. Iestatiet `active`, lai atkārtoti iespējotu galapunktu, ko serveris atzīmējis kā `failing` |

Atgriež `200 OK` ar atjaunināto [galapunkta objektu](#endpoint-object).

***

## Nosūtiet testa piegādi

Nosūtiet sintētisku `webhook.test` notikumu uz vienu galapunktu, izmantojot parasto
piegādes plūsmu, tostarp kanonisku JSON serializāciju,
`X-ThunderPhone-Signature`, piegādes reģistrēšanu un atkārtoto mēģinājumu uzskaiti.
Tests ir vērsts uz atlasīto galapunktu neatkarīgi no tā `events` filtra.

<CodeGroup>
  ```bash cURL theme={null}
  curl -X POST https://api.thunderphone.com/v1/developer/webhook-endpoints/c4d5e6f7-.../test \
    -H "Authorization: Bearer sk_live_YOUR_API_KEY"
  ```
</CodeGroup>

Galapunkts saņem aploksni, piemēram:

```json theme={null}
{
  "data": {
    "message": "ThunderPhone webhook test",
    "sent_at": "2026-07-17T20:12:34.567890+00:00"
  },
  "event_id": "2ad6507c-7d19-4498-9b2d-7e8f944ab5a1",
  "type": "webhook.test"
}
```

API atgriež `200 OK` pēc pirmā mēģinājuma, pat ja mērķis
atgriež kļūdu. Lai uzzinātu piegādes rezultātu, pārbaudiet `success`, `status`, `response_code` un `error`:

```json theme={null}
{
  "success": true,
  "event_id": "2ad6507c-7d19-4498-9b2d-7e8f944ab5a1",
  "event_type": "webhook.test",
  "status": "delivered",
  "response_code": 204,
  "error": ""
}
```

`webhook.test` ir sintētisks, un to nevar pievienot galapunkta `events`
abonementam. Ja pirmais mēģinājums neizdodas, piegādei tiek izmantots tāds pats
atkārtoto mēģinājumu grafiks kā parastām notikumu piegādēm.

***

## Dzēst galapunktu

<CodeGroup>
  ```bash cURL theme={null}
  curl -X DELETE https://api.thunderphone.com/v1/developer/webhook-endpoints/c4d5e6f7-... \
    -H "Authorization: Bearer sk_live_YOUR_API_KEY"
  ```
</CodeGroup>

Atgriež `204 No Content`. Piegāde uz URL nekavējoties tiek pārtraukta;
jau sāktie atkārtošanas mēģinājumi tiek pārtraukti.

***

## Saistītā informācija

<CardGroup cols={2}>
  <Card title="Notikumu katalogs" icon="list" href="/lv/webhooks/events">
    Pilns to `events` vērtību saraksts, kurām varat abonēt paziņojumus.
  </Card>

  <Card title="Tīmekļa aizķeru pārskats" icon="bolt" href="/lv/webhooks/overview">
    Paraksta pārbaude un piegādes semantika.
  </Card>
</CardGroup>
