Documentation menu

Definitions

8 operations.

List project definitions

GET/api/v1/projects/{projectId}/definitions

Parameters

path

NameTypeRequiredDescription
projectIdstringrequiredIdentifies the Project that owns the addressed resource. Applies to List project definitions.

query

NameTypeRequiredDescription
kind"domain" | "integration" | "operation" | "presentation"optionalFilters definitions to the requested definition kind. Applies to List project definitions.
limitintegeroptionalSets the maximum number of resources returned in this page. Applies to List project definitions.
cursorstringoptionalOpaque cursor returned by the previous page; omit it to read the first page. Applies to List project definitions.
includeSourcebooleanoptionalRequests source text alongside matching definition elements. Applies to List project definitions.

Responses

StatusDescriptionBody
200Response for status 200
application/json
object
  • definitions (required): array<object>
  • pagination (required): object
400The request is malformed or cannot be processed.
application/json
PublicApiError
  • error (required): object
401Authentication failed. Possible reasons: - Authorization header is not provided - Invalid API key - Session expired
application/json
PublicApiError
  • error (required): object
403Access denied. The authenticated user does not have permission to perform this action.
application/json
PublicApiError
  • error (required): object
404Resource not found.
application/json
PublicApiError
  • error (required): object
422Request validation failed. Check the request body, query parameters, or path parameters.
application/json
PublicApiError
  • error (required): object
500The server could not complete the request.
application/json
PublicApiError
  • error (required): object

Create a definition

POST/api/v1/projects/{projectId}/definitions

Create a definition with its initial immutable revision.

Parameters

path

NameTypeRequiredDescription
projectIdstringrequiredIdentifies the Project that owns the addressed resource. Applies to Create a definition.

Request body

required — Request body for: Create a definition.

application/json

NameTypeRequiredDescription
kind"domain" | "integration" | "operation" | "presentation"required
slugstringrequired
namestringrequired
sourceobjectrequired
attachmentsarray<object>optional

Responses

StatusDescriptionBody
201Response for status 201
application/json
object
  • id (required): string
  • projectId (required): string
  • kind (required): "domain" | "integration" | "operation" | "presentation"
  • slug (required): string
  • name (required): string
  • status (required): "active" | "deleting"
  • latestRevision (required): one of 2 types
400Bad Request
application/json
PublicApiError
  • error (required): object
401Authentication failed. Possible reasons: - Authorization header is not provided - Invalid API key - Session expired
application/json
PublicApiError
  • error (required): object
403Access denied. The authenticated user does not have permission to perform this action.
application/json
PublicApiError
  • error (required): object
404Resource not found.
application/json
PublicApiError
  • error (required): object
409Request conflicts with current state of the resource, including safe deployment conflict classifications.
application/json
PublicApiError
  • error (required): object
422Request validation failed. Check the request body, query parameters, or path parameters.
application/json
PublicApiError
  • error (required): object
500The server could not complete the request.
application/json
PublicApiError
  • error (required): object

Get a definition

GET/api/v1/projects/{projectId}/definitions/{definitionId}

Retrieve one definition element by its identifier.

Parameters

path

NameTypeRequiredDescription
projectIdstringrequiredIdentifies the Project that owns the addressed resource. Applies to Get a definition.
definitionIdstringrequiredIdentifies the definition element being addressed. Applies to Get a definition.

Responses

StatusDescriptionBody
200Response for status 200
application/json
object
  • id (required): string
  • projectId (required): string
  • kind (required): "domain" | "integration" | "operation" | "presentation"
  • slug (required): string
  • name (required): string
  • status (required): "active" | "deleting"
  • latestRevision (required): one of 2 types
400The request is malformed or cannot be processed.
application/json
PublicApiError
  • error (required): object
401Authentication failed. Possible reasons: - Authorization header is not provided - Invalid API key - Session expired
application/json
PublicApiError
  • error (required): object
403Access denied. The authenticated user does not have permission to perform this action.
application/json
PublicApiError
  • error (required): object
404Resource not found.
application/json
PublicApiError
  • error (required): object
422Request validation failed. Check the request body, query parameters, or path parameters.
application/json
PublicApiError
  • error (required): object
500The server could not complete the request.
application/json
PublicApiError
  • error (required): object

Update project definition

PATCH/api/v1/projects/{projectId}/definitions/{definitionId}

Parameters

path

NameTypeRequiredDescription
projectIdstringrequiredIdentifies the Project that owns the addressed resource. Applies to Update project definition.
definitionIdstringrequiredIdentifies the definition element being addressed. Applies to Update project definition.

Request body

required — Request body for: Update project definition.

application/json

NameTypeRequiredDescription
namestringoptional
sourceobjectoptional
attachmentsarray<object>optional

Responses

StatusDescriptionBody
200Response for status 200
application/json
object
  • id (required): string
  • projectId (required): string
  • kind (required): "domain" | "integration" | "operation" | "presentation"
  • slug (required): string
  • name (required): string
  • status (required): "active" | "deleting"
  • latestRevision (required): one of 2 types
400Bad Request
application/json
PublicApiError
  • error (required): object
401Authentication failed. Possible reasons: - Authorization header is not provided - Invalid API key - Session expired
application/json
PublicApiError
  • error (required): object
403Access denied. The authenticated user does not have permission to perform this action.
application/json
PublicApiError
  • error (required): object
404Resource not found.
application/json
PublicApiError
  • error (required): object
422Request validation failed. Check the request body, query parameters, or path parameters.
application/json
PublicApiError
  • error (required): object
500The server could not complete the request.
application/json
PublicApiError
  • error (required): object

Delete project definition

DELETE/api/v1/projects/{projectId}/definitions/{definitionId}

Parameters

path

NameTypeRequiredDescription
projectIdstringrequiredIdentifies the Project that owns the addressed resource. Applies to Delete project definition.
definitionIdstringrequiredIdentifies the definition element being addressed. Applies to Delete project definition.

Responses

StatusDescriptionBody
202Response for status 202
application/json
object
  • id (required): string
  • projectId (required): string
  • kind (required): "domain" | "integration" | "operation" | "presentation"
  • slug (required): string
  • name (required): string
  • status (required): "active" | "deleting"
  • latestRevision (required): one of 2 types
400The request is malformed or cannot be processed.
application/json
PublicApiError
  • error (required): object
401Authentication failed. Possible reasons: - Authorization header is not provided - Invalid API key - Session expired
application/json
PublicApiError
  • error (required): object
403Access denied. The authenticated user does not have permission to perform this action.
application/json
PublicApiError
  • error (required): object
404Resource not found.
application/json
PublicApiError
  • error (required): object
422Request validation failed. Check the request body, query parameters, or path parameters.
application/json
PublicApiError
  • error (required): object
500The server could not complete the request.
application/json
PublicApiError
  • error (required): object

List immutable Definition revisions

GET/api/v1/projects/{projectId}/definitions/{definitionId}/revisions

Lists immutable revisions for the specified Definition in the resolved Project. Results are cursor-paginated; use pagination.nextCursor unchanged for the next page. Project, Definition, and cursor scope are checked together, so foreign resources return 404.

Parameters

path

NameTypeRequiredDescription
projectIdstringrequiredIdentifies the Project that owns the addressed resource. Applies to List immutable Definition revisions.
definitionIdstringrequiredIdentifies the definition element being addressed. Applies to List immutable Definition revisions.

query

NameTypeRequiredDescription
limitintegeroptionalSets the maximum number of resources returned in this page. Applies to List immutable Definition revisions.
cursorstringoptionalOpaque cursor returned by the previous page; omit it to read the first page. Applies to List immutable Definition revisions.

Responses

StatusDescriptionBody
200Response for status 200
application/json
object
  • revisions (required): array<object>
  • pagination (required): object
400Bad Request
application/json
PublicApiError
  • error (required): object
401Authentication failed. Possible reasons: - Authorization header is not provided - Invalid API key - Session expired
application/json
PublicApiError
  • error (required): object
403Access denied. The authenticated user does not have permission to perform this action.
application/json
PublicApiError
  • error (required): object
404Resource not found.
application/json
PublicApiError
  • error (required): object
422Request validation failed. Check the request body, query parameters, or path parameters.
application/json
PublicApiError
  • error (required): object
500The server could not complete the request.
application/json
PublicApiError
  • error (required): object

Create an immutable Definition revision

POST/api/v1/projects/{projectId}/definitions/{definitionId}/revisions

Validates and stores a new immutable Definition revision under the resolved Project and Definition. The source and attachment graph are captured at creation; a prior revision is never edited or implicitly released. Invalid source or attachment data returns 422, and an unknown or foreign target returns 404.

Parameters

path

NameTypeRequiredDescription
projectIdstringrequiredIdentifies the Project that owns the addressed resource. Applies to Create an immutable Definition revision.
definitionIdstringrequiredIdentifies the definition element being addressed. Applies to Create an immutable Definition revision.

Request body

required — Request body for: Create an immutable Definition revision.

application/json

NameTypeRequiredDescription
sourceobjectrequired
attachmentsarray<object>optional

Responses

StatusDescriptionBody
201Response for status 201
application/json
object
  • id (required): string
  • definitionId (required): string
  • number (required): integer
  • source (required): object
  • createdByUserId (required): string
  • attachments (required): array<object>
400Bad Request
application/json
PublicApiError
  • error (required): object
401Authentication failed. Possible reasons: - Authorization header is not provided - Invalid API key - Session expired
application/json
PublicApiError
  • error (required): object
403Access denied. The authenticated user does not have permission to perform this action.
application/json
PublicApiError
  • error (required): object
404Resource not found.
application/json
PublicApiError
  • error (required): object
409Request conflicts with current state of the resource, including safe deployment conflict classifications.
application/json
PublicApiError
  • error (required): object
422Request validation failed. Check the request body, query parameters, or path parameters.
application/json
PublicApiError
  • error (required): object
500The server could not complete the request.
application/json
PublicApiError
  • error (required): object

Get an immutable Definition revision

GET/api/v1/projects/{projectId}/definitions/{definitionId}/revisions/{definitionRevisionId}

Returns the exact immutable Definition revision selected by the Project, Definition, and revision coordinates. The response contains the persisted source and attachment metadata; foreign or absent revisions return 404.

Parameters

path

NameTypeRequiredDescription
projectIdstringrequiredIdentifies the Project that owns the addressed resource. Applies to Get an immutable Definition revision.
definitionIdstringrequiredIdentifies the definition element being addressed. Applies to Get an immutable Definition revision.
definitionRevisionIdstringrequiredIdentifies the immutable Definition revision being addressed. Applies to Get an immutable Definition revision.

Responses

StatusDescriptionBody
200Response for status 200
application/json
object
  • id (required): string
  • definitionId (required): string
  • number (required): integer
  • source (required): object
  • createdByUserId (required): string
  • attachments (required): array<object>
400The request is malformed or cannot be processed.
application/json
PublicApiError
  • error (required): object
401Authentication failed. Possible reasons: - Authorization header is not provided - Invalid API key - Session expired
application/json
PublicApiError
  • error (required): object
403Access denied. The authenticated user does not have permission to perform this action.
application/json
PublicApiError
  • error (required): object
404Resource not found.
application/json
PublicApiError
  • error (required): object
422Request validation failed. Check the request body, query parameters, or path parameters.
application/json
PublicApiError
  • error (required): object
500The server could not complete the request.
application/json
PublicApiError
  • error (required): object