Skip to content

Interface.deprecate

POST /{namespace}/interfaces/{interface}/deprecate

Deprecate marks an API version for retirement, posts its sunset date and lists each Tenant still pinned to it.

Mode
do
Event
Interface.deprecated

Inputs

InputTypeRequiredDescription
interfaceInterfacerequiredThe API.
versionstringrequiredThe version to retire, such as v1.
sunsetAtdaterequiredThe date it stops serving, once no Tenant pins it.

Outputs

OutputTypeRequiredDescription
interfaceInterfacerequiredThe API, with the version deprecated.

Effects

FactValue
Action classNone: no approval rule names it, so it runs within its seat's Permissions and Limits
StakesThe Startup's own records only
DoorTwo-way: it runs at once
Modestry previews it and stores nothing; send returns a pending Action; do (default) waits for the result
IdempotentOnly with a key: a repeat with the same Idempotency-Key and input returns the first Action, the same key with other input is refused with 409, and a repeat without a key runs again
UndoAction.undo reverses it
EmitsInterface.deprecated
Performed byThe Engineering Lead
  • Posts the sunset date to the Changelog and adds Deprecation and Sunset headers to every response of that version.

Refuses when

CheckErrorFixThen call
The key is valid, but its scopes do not allow this operationforbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.None.
interface is missing, or is not a interfaceinvalid-inputSend interface as a interface, then call it again.None.
version is missing, or is not a stringinvalid-inputSend version as a string, then call it again.None.
sunsetAt is missing, or is not a dateinvalid-inputSend sunsetAt as a date, then call it again.None.
The Idempotency-Key was sent before with another operation or other inputidempotency-mismatchSend a new key for new input; reuse a key only to retry the same request.None.

When it waits

GateDefault
Decision classLow: two-way, no delay window
Delay windowNone: it runs once review passes.
LimitThe call Limit of the Permission it runs under.
Over the LimitIt waits pending for an Approval, which a Human answers: the owner of record, or a Human they named to approve for the Founder seat. Approved, it runs; refused, it ends refused with limit-exceeded; unanswered by its deadline, it ends canceled.

To retry, send the same Idempotency-Key: the retry returns the first Action and runs nothing twice. A new key runs the call again.