Occurrence API

Occurrencesは、Schedule(スケジュール)API によって設定されたイベントの実行予定日を表すオブジェクトです。 例えば、2017年1月1日から3か月間、月の第1月曜日に決済するスケジュールを設定した場合、Occurrenceは次のようになります。

  • 2017年 1月2日 月曜日
  • 2017年 2月6日 月曜日
  • 2017年 3月6日 月曜日
実行予定日に課金や送金のエラーが発生し処理できなかった場合は、翌日に再度処理を試行するようOccurrenceが複製されます。 例えば、2017年2月6日に予定していた課金または送金スケジュールが失敗してしまった場合には、翌日の2017年2月7日に再試行されます。
  • 2017年 1月2日 月曜日 - 成功
  • 2017年 2月6日 月曜日 - 失敗
  • 2017年 2月7日 火曜日 - 再試行 成功
  • 2017年 3月6日 月曜日 - 成功
再試行は3回まで実行されます。 3回立て続けに失敗した場合は、そのスケジュール処理は実行不可と判断し、システム側で自動的に停止のステータスへ変更します。 以降に予定されていた処理は実行されません。
  • 2017年 1月2日 月曜日 - 成功
  • 2017年 2月6日 月曜日 - 失敗
  • 2017年 2月7日 火曜日 - 再試行 失敗
  • 2017年 2月8日 水曜日 - 再試行 失敗
  • スケジュール停止

Attributes

Name Type Description
object string

固定値occurrence

id object_id

/occu(_test)?_[0-9a-z]+/に一致する OCCURRENCE_ID

livemode boolean

本番モード (true) あるいはテストモード(false) オカレンス。

location string

現在のoccurrenceオブジェクトを取得するためのAPIパス。

created_at datetime

ISO 8601 形式 (YYYY-MM-DDThh:mm:ssZ)でオカレンスが作成されたUTC日時。

message string

オカレンス処理が失敗した場合のエラーの説明。

processed_at datetime

ISO 8601形式のオカレンスが処理されたUTC日時。

result object_id

オカレンス処理の結果のオブジェクト。 CHARGE_IDまたはTRANSFER_IDのいずれか。

retry_on date

オカレンス処理が失敗した際の再試行日。

schedule object_id

このオカレンスが属するSCHEDULE_ID

scheduled_on date

オカレンスが処理される予定のISO 8601形式(YYYY-MM-DD)での日付。

status string

スケジュールされたオカレンスの状況。skipped(スキップ)、failed(失敗)、successful(成功)のいずれかの状態を表す文字列。

Occurrenceを取得

- GET https://api.omise.co/occurrences/{id}

Occurrence IDで指定した特定のOccurrenceを返します。

Example

  • Occurrenceを取得

特定のスケジュールに関する全てのOccurrenceのリストを取得

- GET https://api.omise.co/schedules/{id}/occurrences

occurrenceに属するすべての オブジェクトの list を返します。

Request Parameters

Name Type Description
from datetime

(任意, default: 1970-01-01T00:00:00Z) ISO 8601 形式(YYYY-MM-DDThh:mm:ssZ)で返されたレコードの最新のUTC日時。

limit integer

(任意, default: 20, maximum: 100) 返されるレコードの数。

offset integer

(任意, default: 0) 返される最初のレコードのオフセット(先頭からスキップするレコードの数)。

order string

(任意, default: chronological) listのオーダーがchronological (古い順) or reverse_chronological (新しい順)で返されます。エントリがない場合は nullとなります。

to datetime

(任意, default: current UTC datetime) ISO 8601形式 (YYYY-MM-DDThh:mm:ssZ)で返されたレコードの最新のUTC日付と時刻。

Example

  • 特定のスケジュールに関する全てのOccurrenceのリストを取得