Skip to content

API Collection Lifecycle

Every version of an API Collection goes through a governed lifecycle: it's authored as a draft, reviewed, published for use, and eventually retired. The state of a version decides what you can do with it, and how it can be used by templates and Business Events.

API Collection lifecycle

All transitions are manual: you trigger them with the action buttons of each version in the API Collections summary, or by saving an edit. The only exception is editing a PUBLISHED version, which doesn't change its state but creates a new version.


States

DRAFT

The version is being authored. It's the starting state of every new collection, and of every new version created by editing a published one.

Action Allowed
Edit Yes, in place
Delete Yes (see Deleting a Version)
Link to template Yes, but the template can't be published until the collection is
Next step Submit for Review → PENDING REVIEW

PENDING REVIEW

The version was submitted and is waiting for a reviewer's decision.

Action Allowed
Edit Yes, but saving sends it back to DRAFT
Delete Yes
Link to template Yes, but the template can't be published until the collection is
Next step Approve → APPROVED, or Reject → REJECTED

APPROVED

A reviewer accepted the version. It's ready to be published.

Action Allowed
Edit Yes, but saving sends it back to DRAFT and it must be reviewed again
Delete Yes
Link to template Yes, but the template can't be published until the collection is
Next step Publish → PUBLISHED

REJECTED

A reviewer declined the version. It needs changes before it can be submitted again.

Action Allowed
Edit Yes, and saving sends it back to DRAFT
Delete Yes
Link to template Yes, but the template can't be published until the collection is
Next step Reopen as Draft → DRAFT

PUBLISHED

The version is released and immutable: its contract never changes again. This is the state template versions need to be published, and with them the Business Events built on its operations.

Action Allowed
Edit Creates a new version in DRAFT; this one stays untouched (see Editing in Each State)
Delete No, retire it first
Link to template Yes
Next step Retire → RETIRED, blocked while a template version that isn't retired is linked to it

RETIRED

The version is archived. Retirement is final: a retired version can't be reactivated.

Action Allowed
Edit No
Delete Yes
Link to template No
Next step Delete removes it permanently

Transitions

Action From To Permission
Submit for Review DRAFT PENDING REVIEW Edit Api Collection
Approve PENDING REVIEW APPROVED Edit Api Collection
Reject PENDING REVIEW REJECTED Edit Api Collection
Reopen as Draft REJECTED DRAFT Edit Api Collection
Publish APPROVED PUBLISHED Edit Api Collection
Retire PUBLISHED RETIRED Edit Api Collection
Edit (save) PENDING REVIEW · APPROVED · REJECTED DRAFT Edit Api Collection
Edit (save) PUBLISHED (unchanged; new version in DRAFT) Edit Api Collection
Delete Any state except PUBLISHED (removed) Delete Api Collection

Each version shows only the buttons that apply to its state. A blocked action stays visible but disabled, and hovering over it explains why.


Editing in Each State

What saving an edit does depends on the state of the version:

  • DRAFT, PENDING REVIEW, APPROVED or REJECTED: the version is updated in place and goes back to DRAFT, so it has to be reviewed again before it can be published. Unpublished Business Events that use a changed operation are recomputed.
  • PUBLISHED: the version is never modified. BizMetry creates a new version in DRAFT with your changes, derived from the published one, with a major or minor version bump.
  • RETIRED: can't be edited.

See Editing an Existing API Collection for how to update a contract and how the new version number is chosen.

Over time, a collection accumulates versions, each derived from an earlier one, and several of them are usually in use at once, one per application release in each environment. The API Collections dialog shows them as a tree:

API Collections dialog showing the version hierarchy of a collection


Templates and Business Events

API Collections reach Business Events through template versions (see API Collections and Lifecycle Management). The lifecycle of a collection version and the templates it's linked to are tied together:

  • Any version except RETIRED can be linked to a template version.
  • A template version can be published only when every collection version linked to it is PUBLISHED. Business Events, in turn, can only be published on a published template version, so a published Business Event always relies on published, immutable contracts.
  • A version can't be retired while any template version that isn't retired is linked to it.
  • A version can't be deleted while it's linked to a template version.

Deleting a Version

Deleting is permanent and can't be undone. It's available in every state except PUBLISHED; a published version must be retired first.

Deleting a version also deletes every version derived from it. For that reason, the delete icon is disabled when the version, or any version derived from it:

  • is linked to a template version, or
  • is a derived version in PUBLISHED.

Hover over the disabled icon to see which versions block the deletion. See Delete for the two-step confirmation.