コンテンツにスキップ

エラーハンドリング

エラーレスポンス形式

全エラーは以下の JSON 形式で返す。

{ "error": "<メッセージ>" }

400 Bad Request

リクエストのパースまたはバリデーションに失敗した場合に返す。S3 への書き込みは一切行わない。

原因 条件
log_id 未指定 フィールドが空または欠落
generated_at 未指定 フィールドが空または欠落
generated_at 形式不正 整数(Unix タイムスタンプ)としてパースできない値
prompt 未指定 フィールドが空または欠落
image 未指定 image フィールドが存在しない

500 Internal Server Error

S3 への書き込みに失敗した場合に返す。

原因 条件
prompt.json 保存失敗 S3 PutObject がエラーを返した
image.jpg 保存失敗 S3 PutObject がエラーを返した

設計上の注意点

  • S3 への書き込みは prompt.json → image.jpg の順に逐次実行する。prompt.json の書き込みに失敗した時点で処理を中断し、image.jpg の書き込みは行わない。
  • リトライは行わない。S3 エラーは即座に 500 を返す。
  • generated_at は Unix タイムスタンプ(エポック秒の整数)で受け取り、UTC に変換して S3 パスの日付部分({yyyy}/{mm}/{dd})に使用する。