curl -X POST https://api.occultapi.com/api/astro/celestial/ \
-H "X-API-Key: $OCCULT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"date_time":"2024-11-20T08:40:08.658Z","keys":["set_default_positions","set_hindu_rising"],"latitude":26.9124,"longitude":75.7873,"time_zone":5.5,"altitude":0,"planet_names":["SUN"]}'Bir veya daha fazla cisim için ham efemeris verileri: gezegenin nerede olduğu, ne hızla hareket ettiği, ne zaman doğup battığı, retro olup olmadığı. API'nin geri kalanının dayandığı astronomi katmanı burada doğrudan kullanıma açılır ve dokuz Vedik grahanın çok ötesine geçer — dış gezegenler, Kiron ve asteroitler, Uranyen kurgusal noktalar ve birkaç gezegen uydusu da sorgulanabilir. Anahtarlar iki türe ayrılır. `set_*` anahtarları mod değiştiricidir: konumların ya da doğuş ve batış zamanlarının nasıl hesaplanacağını değiştirir — yer merkezli, toposentrik veya güneş merkezli; görünür veya gerçek; nütasyonlu veya nütasyonsuz; sideral veya tropikal; Hindu doğuşu veya disk merkezi doğuşu — ve her biri null döndürür. `get_*` anahtarları ile `rise_time`, `set_time`, `is_retrograde` ve `is_stationary` ise değer döndürür. Anahtarlar listelediğiniz sırayla çalıştırıldığından, bir mod değiştirici yalnızca dizide kendisinden sonra gelen değer anahtarlarını etkiler. `planet_names` büyük harfli adlardan oluşan bir liste alır ve yanıt bu adlarla anahtarlanır; örneğin MARS için yapılan bir çağrı `{"data": {"MARS": {"get_longitude": 123.45}}}` olarak döner. Tanınmayan bir ad isteği başarısız kılmaz; o öğe `{"error": "Unknown planet '<name>'"}` olarak döner. Düğümlerin burada, /api/astro/chart/ endpoint'indeki 'northtruenode' yazımıyla değil, MEAN_NODE ve TRUE_NODE adlarıyla geçtiğine dikkat edin.
| Alan | Tür | Zorunlu | Notlar |
|---|---|---|---|
| altitude | number (double) | zorunlu | |
| date_time | string (date-time) | zorunlu | Hesaplamanın yapılacağı an, ISO 8601 biçiminde. Değere HER ZAMAN bir saat farkı ya da sonda Z ekleyin - saat dilimi içermeyen bir değer UTC değil, Asia/Kolkata (UTC+05:30) olarak okunur ve 200 koduyla bir önceki günün sonucunu döndürebilir. '2026-09-01T06:00:00Z' ile '2026-09-01 06:00:00' farklı anlardır ve farklı sonuç verir. BİÇİM kısıtı, enum değil. DRF DateTimeField: yalnızca ISO-8601 (DRF varsayılan giriş biçimleri), ör. "2026-09-01T06:00:00+05:30", "2026-09-01T06:00:00Z" veya "2026-09-01 06:00:00" (saat dilimi yoksa UTC varsayılır). |
| keys | array | zorunlu | Döndürülecek hesaplamaların adlarını içeren liste. Bu endpoint'in anahtar tablosuna bakın; tanınmayan bir ad varsa isteğin tamamı reddedilir. Kaç anahtar isterseniz isteyin bir çağrı bir kredi tutar; bu yüzden birkaç ayrı çağrı yapmak yerine ihtiyacınız olan her şeyi tek seferde isteyin. set_default_risingset_hindu_risingset_disc_center_refractionset_disc_bottom_refractionset_disc_center_no_refractionset_disc_bottom_no_refractionset_default_positionsset_true_positionsset_topocentric_positionsset_heliocentric_positionsset_barycentric_positionsset_astrometric_positionsString dizisi. `set_*` anahtarları Celestial nesnesindeki hesaplama bayraklarını değiştirir; `get_*` / `rise_time` / `set_time` / `is_*` anahtarları ise değer döndürür. |
| planet_names | array | zorunlu | SUNMOONMERCURYVENUSMARSJUPITERSATURNURANUSNEPTUNEPLUTOMEAN_NODETRUE_NODEEn az 1 öğeli string dizisi. Düğümlerin burada, harita çıktısındaki 'northtruenode' stiliyle değil, 'MEAN_NODE'/'TRUE_NODE' adlarıyla geçtiğine dikkat edin. Tanınmayan bir ad isteği başarısız kılmaz; o öğe {"error": "Unknown planet '<X>'"} olarak döner. |
| time_zone | number (double) | zorunlu | min -12 · max 14 |
| latitude | number (double) | isteğe bağlı | Yerin enlemi, ondalık derece cinsinden. Pozitif değer kuzeyi, negatif değer güneyi gösterir. Örnek: Jaipur için 26.9124, New York için 40.7128. Dakika ve saniye kabul edilmez - önce ondalık dereceye çevirin. min -89.9 · max 89.9 |
| longitude | number (double) | isteğe bağlı | Yerin boylamı, ondalık derece cinsinden. Pozitif değer doğuyu, negatif değer batıyı gösterir. Örnek: Jaipur için 75.7873, New York için -74.0060. İşarete dikkat edin: eksi işaretini unutursanız New York Çin'e düşer. min -180 · max 180 |
İstediğiniz hesaplamaları keys içinde tek tek sayın; yalnızca onlar hesaplanır. Bilinmeyen tek bir anahtar bile isteğin tamamını reddettirir. Kaç anahtar isterseniz isteyin ücret 1 kredi olur; bu yüzden hepsini tek istekte toplayın.
| Anahtar | Gereken ek alanlar | Açıklama | |
|---|---|---|---|
| get_altitude | date_time, latitude, longitude, altitude | Cismin ufkun ne kadar üzerinde olduğu, altı ondalık basamaklı derece cinsinden; negatif değer ufkun altında olduğunu gösterir. `latitude`, `longitude` ve metre cinsinden `altitude` gerekir. | |
| get_apsis | date_time | Bir sonraki günöte ve günberi, yani cismin Güneş'e en uzak ve en yakın olduğu noktalar. Her biri için UTC tarih-saat içeren bir `{Aphelion, Perihelion}` nesnesi döndürür; değerler verilen andan ileriye doğru aranarak bulunur. Yalnızca modelin kapsadığı cisimler için kullanılabilir. | |
| get_azimuth | date_time, latitude, longitude, altitude | Cismin ufuk boyunca hangi yönde aranacağı: kuzeyden saat yönünde ölçülen derece cinsinden, altı ondalık basamaklı tek bir sayı. `latitude`, `longitude` ve `altitude` gerekir; daha önce kırılmayı kapatan bir mod değiştirici ayarlanmadıysa atmosferik kırılmayı hesaba katar. | |
| get_declination | date_time | Dik açıklık, yani cismin gök ekvatorunun kuzeyine ya da güneyine olan açısal uzaklığı; `degrees`, `minutes` ve `seconds` alanlarından oluşan bir nesne olarak. | |
| get_distance | date_time | Gözlemciye uzaklık, astronomik birim cinsinden ve üç ondalık basamağa yuvarlanmış tek bir sayı olarak. Ay için bu değer bir AU'nun çok küçük bir kesridir. | |
| get_ecliptic_speeds | date_time | Cismin hareket hızı: günde derece cinsinden `longitude_speed` ve `latitude_speed` ile günde AU cinsinden `distance_speed` alanlarını içeren bir nesne; her biri altı ondalık basamaklıdır. Negatif boylam hızı, cismin retro olduğunu gösterir. | |
| get_equatorial_speeds | date_time | Ekvator koordinatlarındaki hareket: günde derece cinsinden `right_ascension_speed` ve `declination_speed` ile günde AU cinsinden `distance_speed` alanlarını içeren bir nesne; her biri altı ondalık basamaklıdır. | |
| get_illumination | date_time | Cismin o andaki görünür kadiri, altı ondalık basamaklı tek bir sayı olarak — değer ne kadar küçük ve negatifse cisim o kadar parlaktır. Yalnızca aydınlanma modelinin kapsadığı cisimler için kullanılabilir; diğerleri hata verir. | |
| get_latitude | date_time | Üç ondalık basamaklı derece cinsinden ekliptik enlem: cismin ekliptik düzleminin ne kadar üstünde ya da altında olduğu. Tek bir sayıdır; güney için negatiftir. | |
| get_longitude | date_time | Derece cinsinden ekliptik boylam: 0 ile 360 arasında, üç ondalık basamağa yuvarlanmış tek bir sayı. Değerin tropikal mi sideral mi olduğu, o an geçerli olan konum moduna bağlıdır. | |
| get_right_ascension | date_time | Sağ açıklık, yani boylamın ekvator koordinatlarındaki karşılığı; ondalık derece olarak değil, `hours`, `minutes` ve `seconds` alanlarından oluşan bir nesne olarak. | |
| is_retrograde | date_time | Cismin boylam hızı negatifse, yani zodyakta geriye doğru gidiyor görünüyorsa true. Tek bir boolean. | |
| is_stationary | date_time | Kaba bir durağanlık kontrolü: cismin günlük boylam hızının kesirli kısmı üç ondalık basamakta sıfıra yuvarlanıyorsa true olur. Boolean döndürür; bu test yüzünden kesin bir duraklama anı değil, yalnızca bir göstergedir. | |
| rise_time | date_time, geopos | Cismin doğuşu; verilen tarihin o konumdaki yerel gece yarısından (`time_zone` farkı) itibaren aranır. İki öğeli bir liste döndürür: önce `time_zone` ile belirlenen yerel saatte bir tarih-saat olarak doğuş anı, ardından ham Jülyen günü değerleri. 'Doğuş'un hangi tanıma göre hesaplanacağı, anahtar dizisinde bundan önce gelen doğuş veya disk mod değiştiricisine bağlıdır. Cisim arama aralığında doğmuyor ya da batmıyorsa - yüksek enlemde Ay veya kutup gündüzünde Güneş gibi - alttaki arama başarısız olur ve bu anahtar "2000-11-24T12:00:00Z" döndürür; bu gerçek bir an değil, sıfırıncı Jülyen günüdür. Tam olarak bu değeri gördüğünüzde sonuç yok sayın. /api/astro/sunrise/ ve /api/astro/moonrise/ aynı durumda null döndürür. | |
| set_astrometric_j_positions | — | J2000 ortalama ekinoksuna göre astrometrik konumlara geçer; nütasyon, aberasyon ve ışık sapmasının tümü kapalıdır. null döndürür. | |
| set_astrometric_positions | — | Astrometrik konumlara geçer: ışık süresi düzeltmesi uygulanır, ancak yıllık aberasyon ve kütleçekimsel ışık sapması uygulanmaz. null döndürür. | |
| set_barycentric_positions | — | Güneş sisteminin kütle merkezine göre hesaplanan barisentrik konumlara geçer. null döndürür; yalnızca fiziksel cisimlerde çalışır — düğümlerde ve yeröte noktalarında çalışmaz. | |
| set_default_positions | — | Değer değil, mod değiştirici: hızlarla birlikte görünür yer merkezli konumları ayarlar; bu endpoint'in varsayılanı olan TROPICAL mod budur. null döndürür. `set_*` mod değiştiricileri yalnızca `keys` dizisinde kendilerinden sonra gelen anahtarlara uygulanır, dolayısıyla sıra önemlidir - bunu en başa koyun ya da varsayılana dönmek için başka bir mod değiştiricinin arkasına ekleyin. /api/astro/star/ endpoint'indeki aynı adlı anahtarın ise SİDERAL konumları ayarladığına dikkat edin. | |
| set_default_rising | — | `rise_time` ve `set_time` için doğuş ve batışın varsayılan tanımına geri döner. Değer değil, mod değiştiricidir — null döndürür ve yalnızca kendisinden sonra listelenen anahtarları etkiler. | |
| set_disc_bottom_no_refraction | — | Doğuş ve batış zamanlarını, kırılma kapalıyken diskin alt kenarına göre hesaplar. null döndürür. | |
| set_disc_bottom_refraction | — | Doğuş ve batış zamanlarını, atmosferik kırılma uygulanmış olarak diskin alt kenarına göre hesaplar. null döndürür. | |
| set_disc_center_no_refraction | — | Doğuş ve batış zamanlarını, kırılma kapalıyken diskin merkezine göre hesaplar — gözlenen değil, geometrik değerler. null döndürür; sonraki `get_azimuth` ve `get_altitude` değerleri de atmosfer hesaba katılmadan hesaplanır. | |
| set_disc_center_refraction | — | Doğuş ve batış zamanlarını, atmosferik kırılma uygulanmış olarak diskin merkezine göre hesaplar. null döndürür; sonraki `get_azimuth` ve `get_altitude` değerlerinin de kırılmaya göre düzeltilmiş konumları kullanmasını sağlar. | |
| set_heliocentric_positions | — | Güneş'in merkezine göre hesaplanan güneş merkezli konumlara geçer. null döndürür. Bu modda Güneş, Ay düğümleri ve Ay'ın yeröte noktaları sıfır olarak döner. | |
| set_hindu_rising | — | Doğuş ve batış zamanlarını Hindu geleneğine göre hesaplar. null döndürür; dizide kendisinden sonra gelen `rise_time` ve `set_time` anahtarlarını etkiler. | |
| set_jpl_horizons_positions | — | Görünür konumları JPL Horizons'ın yöntemiyle hesaplamaya geçer; böylece sonuçları o servisle karşılaştırabilirsiniz. null döndürür. | |
| set_mean_equinox_positions | — | Nütasyonu kapatarak, tarihin ortalama ekinoksuna göre konumlara geçer. null döndürür. | |
| set_sidereal_positions | — | Sideral konumlara, yani tropikal boylamdan ayanamsanın çıkarıldığı değerlere geçer. null döndürür. Ayanamsanın kendisi başka bir yerde ayarlandığından, o an geçerli olan sideral mod kullanılır. | |
| set_time | date_time, geopos | Cismin batışı; verilen tarihin o konumdaki yerel gece yarısından (`time_zone` farkı) itibaren aranır. Yapısı `rise_time` ile aynıdır: [yerel tarih-saat, ham Jülyen günü değerleri]. `set_` önekine rağmen bu anahtar bir değer döndürür; mod değiştiricilerden biri değildir. Cisim arama aralığında doğmuyor ya da batmıyorsa - yüksek enlemde Ay veya kutup gündüzünde Güneş gibi - alttaki arama başarısız olur ve bu anahtar "2000-11-24T12:00:00Z" döndürür; bu gerçek bir an değil, sıfırıncı Jülyen günüdür. Tam olarak bu değeri gördüğünüzde sonuç yok sayın. /api/astro/sunrise/ ve /api/astro/moonrise/ aynı durumda null döndürür. | |
| set_topocentric_positions | latitude, longitude, altitude | Dünya'nın merkezine göre değil, gözlemcinin bulunduğu yere göre hesaplanan toposentrik konumlara geçer. `latitude`, `longitude` ve metre cinsinden `altitude` gerekir; null döndürür. Fark yalnızca Ay için belirgindir. | |
| set_true_positions | — | Işık süresini hesaba katmadan gerçek geometrik konumlara geçer — cismin göründüğü yer değil, gerçekte bulunduğu yer. null döndürür. |