🕓 Catatan dari 2026-04-14, diperbarui 2026-05-09. TS / Python / PHP SDK sekarang hidup di public registries —
@astroway/sdk(npm),astroway(PyPI),astroway/sdk(Packagist). Detail di changelog.
Kamu ingin menghitung kartu natal dari kode. Berikut adalah cara tercepat — dalam 5 menit dari nol ke JSON yang berfungsi.
Langkah 1: Dapatkan API-kunci (30 detik)
Section titled “Langkah 1: Dapatkan API-kunci (30 detik)”Daftar di api.astroway.info/dashboard/sign-up. Rencana gratis: 10 000 kredit / bulan. Tanpa kartu.
Di dashboard tekan «Create key» → «Production» → salin. Kunci memiliki bentuk aw_live_aB3xY7pQ9rN2mK4jH8vC5tL6wZ1fD0eR.
Tips: ada juga kunci sandbox dengan awalan aw_test_ — mereka tidak mengurangi kredit. Gunakan mereka selama pengembangan.
Langkah 2: Pasang SDK
Section titled “Langkah 2: Pasang SDK”TypeScript
Section titled “TypeScript”npm install @astroway/sdkPython
Section titled “Python”pip install astrowayKedua SDK mencakup semua 723 endpoint dengan permintaan dan respons yang ditentukan.
Langkah 3: Kartu Natal Pertama
Section titled “Langkah 3: Kartu Natal Pertama”TypeScript
Section titled “TypeScript”import { Astroway } from '@astroway/sdk';
const client = new Astroway({ apiKey: process.env.ASTROWAY_API_KEY!,});
const chart = await client.chart({ date: '1990-07-14', time: '14:30:00', timezoneOffset: 3, // UTC+3, musim panas di Kiev latitude: 50.4501, longitude: 30.5234, houseSystem: 'P', // Placidus});
console.log(`Matahari: ${chart.planets[0].sign} di ${chart.planets[0].longitude}°`);console.log(`ASC: ${chart.houses.ascendant}°`);console.log(`Aspek: ${chart.aspects.length}`);Jalankan:
ASTROWAY_API_KEY=aw_live_... npx tsx chart.tsPython
Section titled “Python”from astroway import Astroway
client = Astroway(api_key="aw_live_your_key_here")
chart = client.chart( date="1990-07-14", time="14:30:00", timezone_offset=3, latitude=50.4501, longitude=30.5234, house_system="P",)
print(f"Matahari: {chart['planets'][0]['sign']} di {chart['planets'][0]['longitude']}°")print(f"ASC: {chart['houses']['ascendant']}°")print(f"Aspek: {len(chart['aspects'])}")Jalankan:
ASTROWAY_API_KEY=aw_live_... python3 chart.pyApa yang Dikembalikan API
Section titled “Apa yang Dikembalikan API”Kembali ke objek JSON dengan empat bagian utama:
planets
Section titled “planets”Array dengan 12 objek (Matahari, Bulan, Merkurius, Venus, Mars, Jupiter, Saturnus, Uranus, Neptunus, Pluto, Node Utara, Chiron):
{ "name": "Matahari", "longitude": 111.87, // longitude eklipsi dalam derajat "latitude": 0.0, "speed": 0.955, // derajat per hari (negatif = retrograd) "sign": "kanker", "signIndex": 3, "house": 10, "retrograde": false}houses
Section titled “houses”Kuspid rumah (12 buah), serta asc dan MC:
{ "system": "P", "cusps": [12.34, 43.21, ...], // 12 nilai "ascendant": 12.34, "mc": 280.12}aspects
Section titled “aspects”Array aspek antara planet:
{ "planet1": "Matahari", "planet2": "Bulan", "type": "sextile", // konjungsi, oposisi, trin, kuadrat, sekstil, kuintunk "orb": 1.36, // penyimpangan dari presisi dalam derajat "applying": true}chartSect
Section titled “chartSect”"diurnal" (Matahari di atas cakrawala saat lahir) atau "nocturnal" (di bawah cakrawala). Digunakan dalam astrologi klasik.
Apa Selanjutnya
Section titled “Apa Selanjutnya”Apa lagi yang bisa dicoba:
Sinastri — keserasian dua orang:
const sinastri = await client.sinastri({ chart1: { date: '1990-07-14', time: '14:30:00', timezoneOffset: 3, latitude: 50.45, longitude: 30.52 }, chart2: { date: '1992-03-22', time: '09:15:00', timezoneOffset: 2, latitude: 48.85, longitude: 2.35 },});console.log(`Skor keserasian: ${sinastri.compatibility.score}/100`);Transit saat ini ke kartu natal:
const transits = await client.transits({ // data kelahiran date: '1990-07-14', time: '14:30:00', timezoneOffset: 3, latitude: 50.4501, longitude: 30.5234, // tanggal transit transitDate: '2026-04-14',});Horoskop harian dengan transit nyata:
const horoskop = await client.horoskopHarian({ date: '1990-07-14', time: '14:30:00', timezoneOffset: 3, latitude: 50.4501, longitude: 30.5234,});console.log(horoskop.text);Kartu Human Design lengkap:
const hd = await client.humanDesign({ date: '1990-07-14', time: '14:30:00', timezoneOffset: 3, latitude: 50.4501, longitude: 30.5234,});console.log(`${hd.type} — ${hd.strategy} — Profil ${hd.profil}`);Biaya dalam Kredit
Section titled “Biaya dalam Kredit”- Kartu natal (
/chart): 20 kredit - Sinastri: 50 kredit
- Transit: 50 kredit
- Horoskop harian: 20 kredit
- Human Design: 50 kredit
Rencana gratis: 10 000 kredit / bulan = 500 kartu natal, atau 200 sinastri, atau beban campuran.
Pengolahan Kesalahan
Section titled “Pengolahan Kesalahan”Setiap respons mengandung header dengan kredit:
X-Credits-Used: 20X-Credits-Remaining: 4980X-Credits-Reset: 2026-05-01T00:00:00ZKetika kredit habis — Anda akan menerima 402 Payment Required. Ketika Anda mencapai batas tarif (Free: 10 permintaan / menit) — 429 Too Many Requests dengan header Retry-After.
SDK melempar kesalahan yang ditentukan, yang dapat ditangkap:
try { const chart = await client.chart({ ... });} catch (err) { if (err.code === 'credits_exhausted') { console.log('Upgrade rencana atau tunggu reset'); } else if (err.code === 'rate_limit_exceeded') { console.log(`Coba lagi dalam ${err.retryAfter} detik`); }}Dan itu Semua
Section titled “Dan itu Semua”Sekarang Anda memiliki:
- Kunci API yang berfungsi
- SDK yang terpasang
- Kartu natal pertama
- Contoh yang cukup untuk menambahkan sinastri, transit, horoskop
Baca lebih lanjut:
- Panduan lengkap «dari mana memulai» — lebih banyak detail
- Contoh: kartu natal — walkthrough yang lebih dalam
- Referensi API — semua 723 endpoint
Swiss Ephemeris yang sama dengan Solar Fire — dalam 4 baris kode.
Kunci gratis tanpa kartu. 5.000 panggilan per bulan sebelum pembayaran pertama.