Přeskočit na obsah
AstroWay/api v2.190.0 · cs
všechny systémy jsou v pořádku

Formáty polí

Model, který hádá název pole, obdrží buď 400, nebo, což je horší, sebevědomou odpověď o jiné mapě. Níže je přesná smlouva.

Tělo požadavku na mapu

Sekce “Tělo požadavku na mapu”
PoleTyp a formátPovinné
dateYYYY-MM-DD, a musí to být skutečný kalendářní denano
timeHH:mm:ssano, nebo timeUnknown: true
timezoneOffsetčíslo, hodiny od UTC, např. 5.75ne, výchozí 0 (UTC)
timezonenázev zóny IANA, např. Europe/Kyiv, nebo autone, a pokud je odesláno, nahrazuje timezoneOffset
latitudedesetinné stupně, sever je kladnýano
longitudedesetinné stupně, východ je kladnýano
houseSystemjedno písmeno, výchozí Pne
cityřetězec, pouze pro popisne
zodiacTypetropical nebo siderealne

Krátké zápisy jsou odmítnuty

Sekce “Krátké zápisy jsou odmítnuty”

lat, lon, lng, long, tz, tzOffset, utcOffset, gmtOffset, timeZone, time_zone vrací 400 INVALID_FIELD s názvem správného pole:

{ "error": { "code": "INVALID_FIELD",
"message": "Unsupported field \"tz\". Rename it to \"timezoneOffset\" (numeric hours from UTC, e.g. 5.75; a zone name goes in timezone)." } }

Velikost písmen a oddělovače nemají význam: TZ_Offset a tzoffset jsou odmítnuty stejně. Oznámena jsou všechna nalezená pole najednou, nikoli jen první, abys je mohl opravit najednou.

Důvod je přísný: před touto kontrolou pole, které API nečetlo, tiše dávalo posun 0, a odpověď byla sebevědomá mapa pro UTC. Tři hodiny posunu jsou přibližně 45° ascendentu, což znamená jiné stoupající znamení a žádné varování.

timezone: název zóny místo posunu

Sekce “timezone: název zóny místo posunu”

Posun musí být ten, který hodiny ukazovaly přesně v dané datum, a ručně je snadné ho zadat chybně: Kyjev v květnu 1990 žil podle moskevského letního času, UTC+4, nikoli +3. Odešli timezone, a server vezme posun z databáze časových pásem, včetně letního času.

{ "date": "1990-05-15", "time": "14:30:00", "timezone": "Europe/Kyiv",
"latitude": 50.45, "longitude": 30.52 }
  • auto určuje zónu podle latitude a longitude. Blízko hranice je název přesnější.
  • Pokud timezone a timezoneOffset přišly společně, platí timezone. input.timezoneOffset v odpovědi ukazuje posun, který byl použit.
  • Čas, který nastal dvakrát (když se hodiny posouvaly zpět), se bere poprvé. Čas, který nenastal (když se hodiny posouvaly vpřed), obdrží posun, který platil před posunem.
  • Bez time (pouze datum nebo timeUnknown: true) se zóna čte pro místní poledne.
  • Odmítnuty jsou s 400 INVALID_FIELD: prázdná hodnota, zkratky jako EST nebo PST, posun zapsaný textem, jako +03:00, názvy, které nejsou v databázi, a auto bez souřadnic. UTC a GMT jsou přijaty.
  • Každý objekt je analyzován samostatně, takže chart1 a chart2 mohou být v různých zónách.

houseSystem: písmeno, ne název

Sekce “houseSystem: písmeno, ne název”

Přijímáno je přesně těchto 25 kódů Swiss Ephemeris:

P K R C E W B M O A T V D F G H I i L N Q S U X Y

Velikost písmen je významná: I je Sunshine podle Makranského, i podle Trindla. Název systému ("Placidus", "Koch") vrací 400. Dříve to fungovalo náhodně, protože engine čte z řetězce pouze první písmeno, a ze stejného důvodu "Zodiac" tiše dával Placidus.

Neznámý čas narození

Sekce “Neznámý čas narození”

Místo vymyšleného poledne předávej timeUnknown: true a nepředávej time. Pak houses, houseAspects, chartSect a siderealTime přijdou jako null, nikoli vymyšlené. Podrobnosti: Konvence API.

Neznámé klíče nejsou odmítnuty

Sekce “Neznámé klíče nejsou odmítnuty”

Tělo přijímá nadbytečná pole mlčky: neznámý klíč je jednoduše ignorován. Proto se chyba v názvu pole, která není v seznamu odmítnutí výše, neprojeví. Zkontroluj si specifikaci: /v1/openapi.json.

Užitečné?
Запропонувати правку

Aktualizováno: