# Integrasi tanpa kode

Semua pada halaman ini dilakukan untuk produksi 2026-09-17. Workflow untuk n8n telah diimpor dan dijalankan di n8n yang sebenarnya; langkah untuk Zapier dan Make ditulis berdasarkan dokumentasi sendiri dari alat-alat ini, dan permintaan yang mereka buat telah dikirim dalam bentuk yang persis seperti itu.

## Dari Mana Permintaan Datang

Ini menentukan kunci yang diperlukan.

- **Zapier, Make dan n8n** mengirimkannya dari server mereka. Diperlukan kunci "Hanya Server" dengan cakupan endpoint dan anggaran seperti yang dijelaskan di bawah. Petunjuk: [Zapier](/integrations/zapier/), [Make](/integrations/make/), [n8n](/integrations/n8n/).
- **Bubble** juga mengirim permintaan dari server mereka, dan kunci berada di header yang tetap di sana: [Bubble](/integrations/bubble/).
- **FlutterFlow** dikompilasi menjadi aplikasi yang dipegang oleh pengguna, jadi panggilan harus dilakukan secara privat: [FlutterFlow](/integrations/flutterflow/).
- **Wix, Squarespace, Shopify, Webflow dan Tilda** menampilkan halaman di browser pengunjung. Sisipkan widget, bukan kunci: [pembuat situs](/integrations/site-builders/).
- **WordPress** meminta dari server Anda sendiri. Kunci dikelola oleh [plugin AstroWay](https://wordpress.org/plugins/astroway/).

<Aside type="caution">
Kunci publik `pk_` tidak bekerja dengan Zapier, Make atau n8n. Mereka menolak permintaan tanpa origin dari daftar mereka, dan alat-alat ini tidak mengirimkan origin. Dari halaman situs, mereka hanya mendapatkan `/v1/public/*` dan `/v1/embed/*`.
</Aside>

## Kunci untuk Otomatisasi

Siapa pun yang dapat mengedit Zap, skrip, atau workflow melihat kunci di dalamnya. Jadi, berikan setiap otomatisasi kunci sendiri dan batasi sesuatu yang dilakukannya.

1. Di dashboard, buka [Kunci API](https://api.astroway.info/dashboard/keys) dan klik **Kunci Baru**. Beri nama sesuai otomatisasi, misalnya `zapier-intake-form`.
2. Di bidang **Di mana kunci ini akan digunakan?**, biarkan **Hanya Server**.
3. Salin kunci. Dialog menampilkan kunci sepenuhnya sekali; nanti tersedia melalui **Tampilkan** di menu kunci.
4. Di menu kunci, buka **Cakupan Endpoint** dan daftarkan path yang dipanggil otomatisasi, satu per baris: `chart` untuk horoscope kelahiran, `public/horoscope/*` untuk horoscope harian.
5. Di menu yang sama, buka **Atur Anggaran** dan tentukan berapa kredit kunci ini dapat habiskan per siklus.

Pemanggilan di luar daftar mendapat `403 ENDPOINT_NOT_IN_SCOPE`. Kunci yang kehabisan anggaran mendapat `429 KEY_BUDGET_EXHAUSTED`, bahkan ketika akun masih memiliki kredit, jadi otomatisasi yang terjebak akan berhenti pada jumlah yang ditentukan. Keduanya batasan bekerja di setiap harga dan dijelaskan di bagian [Autentikasi](/authentication/).

## Kirim Waktu Lahir, Bukan Offset

Formulir memberikan tanggal, waktu pada jam, dan lokasi. Kirim mereka seperti ini:

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

- **`timezone`** adalah nama zona, dan server menemukan sendiri offset dari UTC yang dipegang jam pada tanggal tersebut, termasuk waktu musim panas. Kyiv 1990-05-15 menggunakan UTC+4, bukan +3: itulah kesalahan yang diberikan offset yang dimasukkan secara manual. Kirim `auto` untuk mengambil zona dari koordinat.
- **Tanpa `timezone` dan tanpa offset** perhitungan chart dilakukan untuk UTC. Jawabannya tetap `200`, jadi periksa bidang telah dipetakan dengan benar.
- **`timezone` kosong** ditolak dengan `400`, karena jika tidak, bidang formulir yang tidak diisi akan dibaca sebagai UTC.
- **`date`** dalam format `YYYY-MM-DD`, **`time`** dalam format `HH:MM:SS`. Jika formulir menyimpannya dengan cara lain, gunakan formatting tanggal di alat itu sendiri.
- **Angka bisa datang sebagai teks.** `"latitude": "50.45"` diterima, dan itulah cara sebagian besar bidang formulir mengirimkannya.
- **API tidak melakukan geocoding.** Koordinat harus datang dari formulir atau dari langkah geocoding di alat. Bidang `city` hanya untuk label.

Aturan untuk mengubah jam dan tanggal sebelum 1970 dijelaskan di [format bidang](/agent-setup/field-formats/#timezone-nama-zona-ganti-offset).

## Cara Mengubah Bujur Menjadi Tanda

`POST /v1/chart` merespon dalam derajat di sepanjang zodiak, di dalam `{ "ok": true, "data": { ... } }`. Tanda sama dengan `floor(longitude / 30)`, dihitung dari nol:

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

Di mana tiga nilai paling populer berada:

- **Matahari**: entri di `data.planets` dengan `"name": "Sun"`, pertama.
- **Bulan**: entri di `data.planets` dengan `"name": "Moon"`, kedua.
- **Ascendant**: `data.houses.ascendant`.
- **Offset yang digunakan**: `data.input.timezoneOffset`.

Untuk contoh di atas: Matahari 54.34, jadi Taurus; Bulan 296.39, Capricorn; Ascendant 159.26, Virgo; offset 4.

## Berapa Biayanya

- `POST /v1/chart` memakan 20 kredit. Tabel lengkap di halaman [Harga Endpoint](/credits/).
- Permintaan yang sama, dikirim lagi dalam lima menit, dikembalikan dari cache dan tidak dikenakan biaya. Pengujian yang mengulangi satu tubuh tidak menghabiskan anggaran.
- `GET /v1/public/horoscope/daily` tidak memakan kredit. Tanpa kunci atau dengan kunci di harga Free, dihitung dalam batas 30 permintaan per jam dari alamat IP, dan platform otomatisasi membagi alamat mereka antara klien. Kunci di harga berbayar memiliki batas sendiri.
