Schedules

Stop a scheduled delivery

Stops a scheduled delivery. The configuration is NOT destroyed: the schedule is put at frequency none, so it stays listed and /v1/schedules/update can turn it back on.

IT IS ALSO THE INVERSE OF /v1/reports/take-snapshot. Sent with the schedule_key that call answered, it cancels the snapshot while the platform has not taken it yet. That row is the request of one file and not a configuration anybody keeps, so there it is REMOVED and not put at frequency none: row_is_kept says false and queued_snapshot_cancelled says true. Once the snapshot has been taken the key resolves to nothing and the answer is 404; what is deleted then is the file, with /v1/snapshots/delete. This endpoint ALWAYS asks for a confirmation, and its preview says whether the schedule was actually delivering anything. Unlike an update, it accepts the schedules this version cannot express: a conditional delivery, one built on the system email template and one created from the client portal can all be stopped. if_version is not accepted. Refusals: 400 INVALID_VALUE (an explicit null report_key) and the framework ones, 403 WRITE_ACCESS_DISABLED, 404 NOT_FOUND when the schedule is not this account's, is a one-off delivery of an email or does not deliver the report_key that was sent, 409 SCHEDULE_QUEUED while the delivery is being sent, plus the confirmation and idempotency conflicts.

Every write endpoint reads dry_run and idempotency_key; see the Write guarantees section of the introduction.

post/schedules/delete

Request

  • Base URL: https://api.reportingninja.com/v1
  • URL: https://api.reportingninja.com/v1/schedules/delete
  • Auth: HTTP bearer

Request body

schedule_keystring required

The schedule to stop.

report_keystring

Optional. When sent it must be the report this schedule already delivers; an explicit null is refused.

dry_runboolean

Validate and answer what WOULD happen, without writing anything. Default false.

idempotency_keystring

Makes a retry safe: the answer of the first call is replayed for 24 hours to any later call with the same key and the same body.

confirmation_tokenstring

The token the previous call answered. Sending the same body with it performs the write.

Response

The call succeeded. This endpoint reports its errors with a real HTTP status, so a 200 always carries status=ok.

status'ok' required

Changes

No recorded changes to this operation across all 1 revision of this API.