Ga naar inhoud
AstroWay/api v2.190.0 · nl
alle systemen normaal

Veldformaten

Een model dat de veldnaam raadt, krijgt of 400, of, nog erger, een definitief antwoord over een andere kaart. Hieronder de exacte contract.

VeldType en formaatVerplicht
dateYYYY-MM-DD, en dit moet een echte kalenderdag zijnja
timeHH:mm:ssja, of timeUnknown: true
timezoneOffsetgetal, uren vanaf UTC, bijv. 5.75nee, standaard 0 (UTC)
timezoneIANA zone naam, bijv. Europe/Kyiv, of autonee, en wanneer verzonden, vervangt het timezoneOffset
latitudedecimale graden, noord positiefja
longitudedecimale graden, oost positiefja
houseSysteméén letter, standaard Pnee
citystring, alleen labelnee
zodiacTypetropical of siderealnee

lat, lon, lng, long, tz, tzOffset, utcOffset, gmtOffset, timeZone, time_zone geven 400 INVALID_FIELD terug met de juiste veldnaam:

{ "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)." } }

Hoofdlettergevoeligheid en scheidingstekens zijn niet toegestaan: TZ_Offset en tzoffset worden evenmin geaccepteerd. Alle gevonden velden worden in één keer gerapporteerd, niet alleen de eerste, zodat je ze in één keer kunt corrigeren.

De reden is streng: vóór deze controle gaf een veld dat de API niet las stilzwijgend een offset van 0, en het antwoord was een definitieve kaart voor UTC. Een verschuiving van drie uur is ongeveer 45° ascendant, dus een ander opkomend teken, zonder enige waarschuwing.

timezone: zone‑naam in plaats van offset

Section titled “timezone: zone‑naam in plaats van offset”

De offset moet die zijn die de klokken op die specifieke datum hadden, en handmatig kan die gemakkelijk fout worden opgegeven: Kiev in mei 1990 volgde Moskou zomertijd, UTC+4, niet +3. Stuur timezone en de server haalt de offset uit de tijdzone‑database, inclusief zomertijd.

{ "date": "1990-05-15", "time": "14:30:00", "timezone": "Europe/Kyiv",
"latitude": 50.45, "longitude": 30.52 }
  • auto bepaalt de zone op basis van latitude en longitude. Dicht bij een grens is de naam nauwkeuriger.
  • Als timezone en timezoneOffset samen worden verzonden, heeft timezone voorrang. input.timezoneOffset in het antwoord toont de gebruikte offset.
  • Tijd die twee keer voorkwam (wanneer de klokken teruggingen) wordt genomen bij de eerste keer. Tijd die ontbrak (wanneer de klokken vooruit gingen) krijgt de offset die gold vóór de overgang.
  • Zonder time (alleen datum of timeUnknown: true) wordt de zone gelezen op de lokale middag.
  • Wordt afgewezen met 400 INVALID_FIELD: lege waarde, afkortingen zoals EST of PST, offset geschreven als tekst, zoals +03:00, namen die niet in de database staan, en auto zonder coördinaten. UTC en GMT worden geaccepteerd.
  • Elk object wordt afzonderlijk verwerkt, dus chart1 en chart2 kunnen in verschillende zones staan.

Exact deze 25 codes van Swiss Ephemeris worden geaccepteerd:

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

Hoofdlettergevoeligheid is belangrijk: I is Sunshine volgens McRansky, i volgens Trundle. Een systeemnaam ("Placidus", "Koch") geeft 400. Voorheen werkte het willekeurig, omdat de engine alleen de eerste letter van de string leest, en om die reden gaf "Zodiac" stilzwijgend Placidus.

In plaats van een verzonnen middag, stuur timeUnknown: true en stuur geen time. Dan komen houses, houseAspects, chartSect en siderealTime als null terug, niet verzonnen. Details: API-conventies.

Het lichaam accepteert stilzwijgend extra velden: een onbekende sleutel wordt simpelweg genegeerd. Daarom zal een fout in een veldnaam die niet in de bovenstaande afwijzingslijst staat, niet opgemerkt worden. Raadpleeg de specificatie: /v1/openapi.json.

Nuttig?
Запропонувати правку

Laatst bewerkt: