Taifa Identity. Docs
OpenAPI Developers

API reference

Project lifecycle

Management API contract View .md

6 management API operations for Project lifecycle.

GET/v1/projects/{project_id}/lifecycle

Read project lifecycle and issuer removal state

Scoped to a current owner or project approver. Revocation state is Management ledger state plus authenticated Go receipts. local_sessions is always unobserved.

Authentication Bearer access token with audience taifa-management. Roles and local eligibility are reviewed separately from the OpenAPI bearer scheme.

Parameters

NameInTypeRequiredDescription
project_idpathstringYes

Request body

This operation has no request body.

Responses

200Successful Response

Content type: application/jsonLifecycleRead

FieldTypeRequiredDescription
project_idstringYes
namestringYes
statusstringYes
downstreamDownstreamReadYes
actionsActionRead[]Yes
revocationsRevocationDetail[]Yes
allowed(suspend | resume | decommission-request | decommission-approve | decommission-cancel)[]Yes

Other responses

StatusDescriptionSchema
403Current scoped authority, independent review or recent strong authentication required
409Current project state, target set or idempotency conflict
422Invalid exact request

POST/v1/projects/{project_id}/lifecycle/suspend

Suspend a project

Reversible. Blocks new authority, revokes workforce access through the ordered lifecycle feed and leaves issuer clients installed. Resume does not restore access.

Authentication Bearer access token with audience taifa-management. Roles and local eligibility are reviewed separately from the OpenAPI bearer scheme.

Parameters

NameInTypeRequiredDescription
project_idpathstringYes
idempotency-keyheaderstringYes

Request body

application/jsonRequiredidentity__owned_client_router__Reason

FieldTypeRequiredDescription
reasonstringYesValidation: min length 8; max length 500

Responses

200Successful Response

Content type: application/jsonActionResult

FieldTypeRequiredDescription
idstringYes
project_idstringYes
kindsuspend | resume | decommissionYes
statusrequested | effective | cancelledYes
requested_bystringYes
decided_bystring | nullYes
reasonstringYes
created_atstringYes
expires_atstring | nullYes
effective_atstring | nullYes
completed_atstring | nullYes
project_statusstringYes
access_revokedintegerYes
lifecycle_headintegerYes
revocationsRevocationRead[]Yes

Other responses

StatusDescriptionSchema
403Current scoped authority, independent review or recent strong authentication required
409Current project state, target set or idempotency conflict
422Invalid exact request

POST/v1/projects/{project_id}/lifecycle/resume

Resume a suspended project

Requires a current project approver other than the suspender. Workforce access must be granted again through the normal reviewed workflow.

Authentication Bearer access token with audience taifa-management. Roles and local eligibility are reviewed separately from the OpenAPI bearer scheme.

Parameters

NameInTypeRequiredDescription
project_idpathstringYes
idempotency-keyheaderstringYes

Request body

application/jsonRequiredidentity__owned_client_router__Reason

FieldTypeRequiredDescription
reasonstringYesValidation: min length 8; max length 500

Responses

200Successful Response

Content type: application/jsonActionResult

FieldTypeRequiredDescription
idstringYes
project_idstringYes
kindsuspend | resume | decommissionYes
statusrequested | effective | cancelledYes
requested_bystringYes
decided_bystring | nullYes
reasonstringYes
created_atstringYes
expires_atstring | nullYes
effective_atstring | nullYes
completed_atstring | nullYes
project_statusstringYes
access_revokedintegerYes
lifecycle_headintegerYes
revocationsRevocationRead[]Yes

Other responses

StatusDescriptionSchema
403Current scoped authority, independent review or recent strong authentication required
409Current project state, target set or idempotency conflict
422Invalid exact request

POST/v1/projects/{project_id}/lifecycle/decommission

Request irreversible decommission

Records a request that expires after 72 hours. It changes no project authority until an independent approver approves it.

Authentication Bearer access token with audience taifa-management. Roles and local eligibility are reviewed separately from the OpenAPI bearer scheme.

Parameters

NameInTypeRequiredDescription
project_idpathstringYes
idempotency-keyheaderstringYes

Request body

application/jsonRequiredidentity__owned_client_router__Reason

FieldTypeRequiredDescription
reasonstringYesValidation: min length 8; max length 500

Responses

201Successful Response

Content type: application/jsonActionResult

FieldTypeRequiredDescription
idstringYes
project_idstringYes
kindsuspend | resume | decommissionYes
statusrequested | effective | cancelledYes
requested_bystringYes
decided_bystring | nullYes
reasonstringYes
created_atstringYes
expires_atstring | nullYes
effective_atstring | nullYes
completed_atstring | nullYes
project_statusstringYes
access_revokedintegerYes
lifecycle_headintegerYes
revocationsRevocationRead[]Yes

Other responses

StatusDescriptionSchema
403Current scoped authority, independent review or recent strong authentication required
409Current project state, target set or idempotency conflict
422Invalid exact request

POST/v1/projects/{project_id}/lifecycle/decommission/{action_id}/approve

Approve irreversible decommission

Requires an independent current project approver. Queues exact issuer revoke commands. The project becomes decommissioned only after every removal is acknowledged or was never installed.

Authentication Bearer access token with audience taifa-management. Roles and local eligibility are reviewed separately from the OpenAPI bearer scheme.

Parameters

NameInTypeRequiredDescription
project_idpathstringYes
action_idpathstringYes
idempotency-keyheaderstringYes

Request body

application/jsonRequiredidentity__owned_client_router__Reason

FieldTypeRequiredDescription
reasonstringYesValidation: min length 8; max length 500

Responses

200Successful Response

Content type: application/jsonActionResult

FieldTypeRequiredDescription
idstringYes
project_idstringYes
kindsuspend | resume | decommissionYes
statusrequested | effective | cancelledYes
requested_bystringYes
decided_bystring | nullYes
reasonstringYes
created_atstringYes
expires_atstring | nullYes
effective_atstring | nullYes
completed_atstring | nullYes
project_statusstringYes
access_revokedintegerYes
lifecycle_headintegerYes
revocationsRevocationRead[]Yes

Other responses

StatusDescriptionSchema
403Current scoped authority, independent review or recent strong authentication required
409Current project state, target set or idempotency conflict
422Invalid exact request

POST/v1/projects/{project_id}/lifecycle/decommission/{action_id}/cancel

Cancel a pending decommission request

Authentication Bearer access token with audience taifa-management. Roles and local eligibility are reviewed separately from the OpenAPI bearer scheme.

Parameters

NameInTypeRequiredDescription
project_idpathstringYes
action_idpathstringYes
idempotency-keyheaderstringYes

Request body

application/jsonRequiredidentity__owned_client_router__Reason

FieldTypeRequiredDescription
reasonstringYesValidation: min length 8; max length 500

Responses

200Successful Response

Content type: application/jsonActionResult

FieldTypeRequiredDescription
idstringYes
project_idstringYes
kindsuspend | resume | decommissionYes
statusrequested | effective | cancelledYes
requested_bystringYes
decided_bystring | nullYes
reasonstringYes
created_atstringYes
expires_atstring | nullYes
effective_atstring | nullYes
completed_atstring | nullYes
project_statusstringYes
access_revokedintegerYes
lifecycle_headintegerYes
revocationsRevocationRead[]Yes

Other responses

StatusDescriptionSchema
403Current scoped authority, independent review or recent strong authentication required
409Current project state, target set or idempotency conflict
422Invalid exact request

Popular

Browse by section