# Zapier

Zap die de geboortedatum, tijd, zone en coördinaten uit de trigger haalt, een kaart opvraagt bij de API en de Ascendant omzet naar de naam van het teken. Het verzoek hieronder is naar productie gestuurd precies in de vorm waarin het door de stap wordt samengesteld; de stappen in Zapier zijn geschreven volgens de Zapier‑documentatie van 2026-09-17.

<Aside type="caution" title="Betaald Zapier-abonnement vereist">
API by Zapier, Webhooks by Zapier en Formatter zijn premium‑applicaties. De Zapier‑documentatie markeert alle drie als niet beschikbaar op het Free‑abonnement, en de stap Lookup Table vereist een Professional‑abonnement of hoger. Op Free kun je [Make](/integrations/make/) of [n8n](/integrations/n8n/) gebruiken.
</Aside>

Maak eerst een sleutel aan, zoals beschreven in de sectie [Sleutel voor automatisering](/integrations/#ключ-для-автоматизації), met het gebied `chart`.

## 1. Plaats de sleutel in de verbinding

Headers die in de stap Webhooks by Zapier worden ingevoerd, worden opgeslagen in de stap zelf, en zijn zichtbaar voor iedereen die toegang heeft tot de Zap. API by Zapier bewaart ze in de verbinding.

1. Klik op **+ Add connection** op de pagina **Apps** en selecteer **API by Zapier**.
2. **Authentication type**: Static Headers (API key).
3. **Headers**: `X-Api-Key: ` gevolgd door je sleutel, op één regel.
4. **Domain filter**: `api.astroway.info`, zodat de verbinding niet naar een andere locatie kan worden gericht.

## 2. Roep de kaart op

Voeg een actie toe, selecteer **API by Zapier**, de gebeurtenis **API Request** en de verbinding.

- **Method**: `POST`.
- **URL**:

  ```
  https://api.astroway.info/v1/chart
  ```

- **Body**: JSON hieronder met trigger‑velden in plaats van waarden.

```json
{
  "date": "1990-05-15",
  "time": "14:30:00",
  "timezone": "Europe/Kyiv",
  "latitude": "50.45",
  "longitude": "30.52"
}
```

Vervang elke waarde door het overeenkomstige trigger‑veld en behoud de aanhalingstekens rond elk, ook bij getallen. Zapier plaatst het gekoppelde veld als platte tekst en voegt zelf geen aanhalingstekens toe, terwijl de API `"50.45"` als getal accepteert. Voeg de sleutel niet toe aan de Headers van de stap: die wordt door de verbinding ingevuld.

Test de stap. Het juiste antwoord begint met `"ok": true`, en `data.input.timezoneOffset` is in het voorbeeld `4`: de offset die Kiev die dag had.

## 3. Zet de Ascendant om naar een teken

Twee Formatter‑stappen.

**Formatter, gebeurtenis Numbers, omzetting Spreadsheet‑Style Formula.** Formule:

```
FLOOR(ASCENDANT / 30)
```

waarbij in plaats van `ASCENDANT` `data.houses.ascendant` uit stap 2 is ingevoegd. In het voorbeeld resulteert dit in `5`.

**Formatter, gebeurtenis Utilities, omzetting Lookup Table.** Lookup Key is het resultaat van de formule. Tabel:

| Key | Value |
|---|---|
| 0 | Aries |
| 1 | Taurus |
| 2 | Gemini |
| 3 | Cancer |
| 4 | Leo |
| 5 | Virgo |
| 6 | Libra |
| 7 | Scorpio |
| 8 | Sagittarius |
| 9 | Capricorn |
| 10 | Aquarius |
| 11 | Pisces |

In het voorbeeld is het resultaat `Virgo`. Om de Oekraïense namen te krijgen, vul je ze in de kolom Value in.

Zon en Maan worden op dezelfde manier berekend. Dit zijn het eerste en tweede record in `data.planets`, elk met hun eigen `longitude`: bijvoorbeeld 54.34 (Taurus) en 296.39 (Capricorn).

## Als je Webhooks by Zapier gebruikt

Het werkt, maar de sleutel zit in de stap en niet in de verbinding. Voor de kaart selecteer je de gebeurtenis **Custom Request**: die stuurt het Data‑veld precies zoals ingevoerd, dus de JSON hierboven gaat onveranderd. Stel **Method** `POST` in, en voeg in **Headers** zowel `X-Api-Key` met je sleutel als `Content-Type` met de waarde `application/json` toe.

## Wanneer een stap faalt

- **`400 INVALID_FIELD` met `timezone` in `details`**: de toegewezen zone is leeg, dit is een afkorting zoals `EST` of geen zone‑naam.
- **`400` met `date` of `time` in `details`**: het trigger‑formaat is niet `YYYY-MM-DD` / `HH:MM:SS`; voeg vóór de oproep een Formatter‑stap toe voor de datum.
- **`403 ENDPOINT_NOT_IN_SCOPE`**: het gebied van de sleutel bevat geen `chart`.
- **`429 KEY_BUDGET_EXHAUSTED`**: de sleutel heeft zijn budget opgebruikt; verhoog het in het dashboard.

API doet geen geocodering. Als de trigger alleen een plaatsnaam heeft, moeten de coördinaten uit de trigger zelf komen of uit een geocode‑service waarvoor je een sleutel hebt.
