コンテンツにスキップ
AstroWay/api v2.190.0 · ja
すべてのシステムが正常です

フィールド形式

フィールド名を推測するモデルは、400 を受け取るか、さらに悪いことに別のチャートについて自信のある応答を返します。以下が正確な契約です。

フィールド型とフォーマット必須
dateYYYY-MM-DD、実在するカレンダーの日である必要がありますはい
timeHH:mm:ssはい、または timeUnknown: true
timezoneOffset数値、UTC からの時間差(例: 5.75いいえ、デフォルトは 0 (UTC)
timezoneIANA タイムゾーン名、例: Europe/Kyiv、または autoいいえ、送信された場合は timezoneOffset を上書きします
latitude十進法の度数、北が正はい
longitude十進法の度数、東が正はい
houseSystem1文字、デフォルトは Pいいえ
city文字列、ラベルのみいいえ
zodiacTypetropical または siderealいいえ

latlonlnglongtztzOffsetutcOffsetgmtOffsettimeZonetime_zone は正しいフィールド名を示す 400 INVALID_FIELD を返します:

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

大文字小文字と区切りは許容されません:TZ_Offsettzoffset も同様に拒否されます。すべて の検出されたフィールドが一度に報告され、最初の1つだけでなく、一度に修正できるようになっています。

厳格な理由: このチェック以前に API が読んでいなかったフィールドは黙ってオフセット 0 を与え、UTC 用の自信のあるチャートが返されていました。3時間のオフセットは約 45° のアセンダントに相当し、別の上昇星座となり、警告は全く出ませんでした。

timezone: オフセットの代わりにタイムゾーン名

Section titled “timezone: オフセットの代わりにタイムゾーン名”

オフセットは その日の 時計が示すものでなければなりませんが、手動で誤って指定しやすいです。例として、1990年5月のキエフはモスクワ夏時間で UTC+4 であり、+3 ではありません。timezone を送信すると、サーバーはタイムゾーンデータベースからオフセットと夏時間情報を取得します。

{ "date": "1990-05-15", "time": "14:30:00", "timezone": "Europe/Kyiv",
"latitude": 50.45, "longitude": 30.52 }
  • autolatitudelongitude からタイムゾーンを決定します。境界付近では名前の方が正確です。
  • timezonetimezoneOffset が同時に送信された場合、timezone が優先されます。レスポンスの input.timezoneOffset は使用されたオフセットを示します。
  • 時計が2回戻された(夏時間終了)場合、最初の時刻が使用されます。時計が進められた(夏時間開始)場合、その時刻は変更前のオフセットが適用されます。
  • time がない場合(日付のみまたは timeUnknown: true)、タイムゾーンは現地正午で読み取られます。
  • 400 INVALID_FIELD が返されます:空の値、ESTPST のような略称、テキストで記述されたオフセット(例: +03:00)、データベースに存在しない名前、座標なしの autoUTCGMT は受け入れられます。
  • 各オブジェクトは個別に処理されるため、chart1chart2 は異なるタイムゾーンに設定できます。

houseSystem: 文字で、名前ではありません

Section titled “houseSystem: 文字で、名前ではありません”

以下の 25 の 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

大文字小文字は重要です:I は MacRae の Sunshine、i は Trundle のものです。システム名("Placidus""Koch")は 400 を返します。以前はエンジンが文字列の最初の文字だけを読み取っていたため、偶然に動作し、同じ理由で "Zodiac" は黙って Placidus を返していました。

架空の正午を送る代わりに timeUnknown: true を使用し、time は送信しないでください。そうすると houseshouseAspectschartSectsiderealTimenull になり、架空の値は返されません。詳細は: API コンベンション

リクエストボディは余分なフィールドを黙って受け入れます:未知のキーは単に無視されます。そのため、上記の除外リストにないフィールド名の誤りは検出されません。仕様を確認してください:/v1/openapi.json

参考になりましたか?
Запропонувати правку

最終更新日: