Replace a schedule
Replaces a schedule's definition, starting a new generation. Takes the same four ways of saying when as a create, so a one-shot can be replaced by a recurring definition and the other way round. An omitted callback endpoint/data pair preserves the stored callback; sending data alone replaces the encrypted data for the current endpoint, and sending endpoint selects a verified endpoint in the same authority tuple. Sending url instead selects the endpoint at that address in the same tuple, creating one silently when there is none; creating needs endpoints:write as well, and the response's endpointSigningSecret says where its signing secret is revealed. Omitted http preserves HTTP settings. Its headers are a patch: set replaces a value, keep retains a configured value, suppress omits an endpoint default, and remove resumes inheritance. Explicit GET with no body clears a saved custom template; POST/PUT with body: { mode: 'envelope' } restores the structured callback. The occurrence planned under the old definition is settled skipped_stale and can never fire unless it was already in flight, in which case its immutable attempt is allowed to settle honestly; a fresh occurrence is planned under the new definition, and the old definition's series stops advancing. lateness is resolved afresh against the replacement recurrence: omit it for that kind's default, or state skipAhead, catchUp, and an optional maxStalenessSeconds override. The policy applies only before an occurrence's first attempt; a retry already in progress remains on its retry and give-up ladder. Send If-Match with the version you read to make this conditional; without it the replace is unconditional and the last writer wins. A cancelled or completed schedule cannot be replaced. partitionKey is fixed when the schedule is created: omit it to preserve the stored value or echo that exact value in a GET → modify → PUT flow. Adding, changing, or clearing it is refused as invalid_request with /partitionKey identified. latencyClass remains derived from the replacement recurrence when the caller omits it. Some calls need more: endpoints:write is required as well when the request names a url this project and environment has no endpoint at yet, and the call is refused scope_missing without it.
Request
- Base URL: https://docs.greatwait.dev (the document declares no server; this is the origin it was published from)
- URL: https://docs.greatwait.dev/v1/schedules/{scheduleId}
- Auth: one of:
- HTTP bearer
- HTTP bearer and API key in header Greatwait-Environment and API key in header Greatwait-Project
Path parameters
Headers
Request body
Response
Replace a schedule
Changes
No recorded changes to this operation across all 1 revision of this API.