ReWords.AI API

キューと制限

ReWords.AI API の同時実行数、30 件のキュー、送信と読み取りのレート制限、ポーリング、画像サイズの上限、Retry-After と冪等なリトライ。

キュー

  • 1 つのアカウントで同時に処理されるジョブは最大 10 件です。
  • その後ろに最大 30 件のジョブがキューで待機します。待機中は GET /edits/{id} が queue_position (前で待っているジョブの数。実行中のジョブは数えないので、0 は次に開始することを意味します)と estimated_seconds (完了までの見込み時間)を返します。
  • すでに 30 件が待機しているときは、POST /edits が Retry-After ヘッダー付きで 503 queue_full を返します。課金はされません。
  • ジョブはキューを出てから最大 10 分間実行されることがあります。待ち時間は含まれないため、キューが満杯の場合、 最後のジョブは最悪で約 30 分かかります。ほとんどのジョブは 1〜2 分で、10 件中 9 件は 3 分以内に終わります。

レート制限

各アカウント(すべてのキーで共有)は、任意の直近 60 秒間に次の回数までリクエストできます:

リクエスト上限
送信:POST /ocr、POST /edits30
読み取り:GET /edits/{id}、GET /account240 回

有効なキーを持つリクエストはすべて数えられます。エラーで拒否されたリクエストも含みます。キーがない、または無効なリクエストは どのアカウントにも数えられません。

上限を超えると 429 rate_limited と Retry-After が返ります。値は常に整数の秒数で、期間内で最も古いリクエストが 期限切れになるまでの時間です。GET /account は現在の上限を limits で返します。エンタープライズのアカウントは 上限を引き上げられます。

ポーリング

  • ジョブが processing の間、または queued で queue_position が 0 の間は、GET /edits/{id} を 5 秒ごとにポーリングします。
  • キューのさらに後ろにいる間は、30 秒ごとに確認します。estimated_seconds はジョブが終わる見込みの時間で、 確認の間隔ではありません。

処理中 10 件、待機中 30 件のとき、読み取りは最大で毎分 190 回となり、上限の 240 回に収まります。ポーリングを完全に避けるには、 callback_url を渡して Webhook を受け取ってください。

画像

  • JPEG、PNG、WebP、最大 20 MB、長辺は最大 8000 px。
  • image_url、image_base64、マルチパートの image ファイル、または以前の OCR 呼び出しの image_id で送ります。 1 つのリクエストで使えるのはこのうち 1 つだけです。
  • 1 回の編集で最大 20 件の置き換え。

各アップロード方法のエンコード、EXIF、透過、結果ファイルについては画像をご覧ください。

安全なリトライ

すべての POST /edits に Idempotency-Key ヘッダーを付けると、タイムアウトやネットワークエラーの後でも安全にリトライできます。 24 時間以内に同じキーを繰り返すと、新しいジョブを作って課金する代わりに、元のジョブの id と現在のステータス (すでに processing や完了の場合もあります)とともに 202 を返します。本文が異なっていても同じです。 キーはアカウント単位で、そのアカウントのすべての API キーで共有されます。拒否されたリクエスト(4xx や 5xx)はキーを消費しないので、 修正したあと同じキーで再送できます。

このページの内容