Download OpenAPI specification:
OpsChain is an orchestration and change automation platform based in GitOps principles with a core objective to Unify Change. Connect, automate, and orchestrate people, processes, and tools across your on-premise and cloud platforms.
version: 2026-10-08 (e74ea3547)
Endpoints to interact with projects.
Notes:
show and list response payloads include links to the project's assets, changes, scheduled activity, bookmarks and MintModels endpoints. These endpoints act like
the assets, changes, scheduled activity, bookmarks and MintModels endpoints respectively./<path/to/asset/owner>/assets path. The example endpoints in this section reflect assets owned by a project.Lists all projects (including archived projects).
Each project in the response includes a link to:
changes endpoint for managing changes belonging to this project. It acts like the changes endpoint.scheduled_activities endpoint for managing scheduled activities belonging to this project. It acts like a scheduled activities endpoint.bookmarks endpoint for managing the bookmarks belonging to this project. It acts like a bookmarks endpoint.mintmodels endpoint for managing the MintModels belonging to this project. It acts like a MintModels endpoint.mintmodel_history endpoint for viewing this project's MintModel history. It acts like a MintModel history endpoint.workflows endpoint for viewing this project's workflows. It acts like a Workflows endpoint.
.| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[code_eq]=opc API filtering guide. Named filters: |
| download | string Example: download=projects.csv Download the projects in CSV format with the specified file name. The projects will be ordered from oldest to newest when this parameter is specified, irrespective of the sort order requested. |
{- "data": [
- {
- "id": "01a11921-6e61-72e3-83ed-d8b75974b057",
- "type": "project",
- "attributes": {
- "code": "opc",
- "name": "OpsChain",
- "description": "OpsChain project",
- "archived": false,
- "created_by": "julio.stokes-2232",
- "project_type": "Enterprise"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-6e65-7c9d-9e8f-660fcab7720e",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-6e65-7c9d-9e8f-660fcab7720e"
}
}, - "parents": {
- "data": [ ]
}, - "settings": {
- "data": {
- "id": "01a11921-6e77-778c-a355-4873d02b0300",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-6e77-778c-a355-4873d02b0300"
}
}, - "children": {
- "data": [ ]
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc",
- "artefacts": "/api/projects/opc/artefacts",
- "bookmarks": "/api/projects/opc/bookmarks",
- "changes": "/api/projects/opc/changes",
- "scheduled_activities": "/api/projects/opc/scheduled_activities",
- "git_remotes": "/api/projects/opc/git_remotes",
- "workflows": "/api/projects/opc/workflows",
- "workflow_runs": "/api/projects/opc/workflow_runs",
- "templates": "/api/projects/opc/templates",
- "environments": "/api/projects/opc/environments",
- "assets": "/api/projects/opc/assets",
- "agents": "/api/projects/opc/agents"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": true,
- "requires_template": false,
- "child_node_types": [
- "environment",
- "asset",
- "agent"
], - "can_have_workflows": true,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "git_remotes": {
- "read": true,
- "update": true,
- "delete": true
}, - "templates": {
- "read": true,
- "update": true,
- "delete": true
}, - "workflows": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "workflow_runs": {
- "read": true,
- "execute": true,
- "delete": true
}, - "environments": {
- "read": true,
- "update": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "agents": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Creates a project.
required | object |
{- "data": {
- "attributes": {
- "code": "opc",
- "name": "OpsChain",
- "description": "OpsChain project",
- "project_type": "Enterprise"
}
}
}{- "data": {
- "id": "01a11921-6f8b-7f5c-afd8-da2a9da21443",
- "type": "project",
- "attributes": {
- "code": "0z0je",
- "name": "facere685",
- "description": "Adipisci hic maiores tempore.",
- "archived": false,
- "created_by": "logged_in_user",
- "project_type": "Standard"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-6f92-7fd9-a950-b42854559a58",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-6f92-7fd9-a950-b42854559a58"
}
}, - "parents": {
- "data": [ ]
}, - "settings": {
- "data": {
- "id": "01a11921-6fa1-7279-aff1-132c54229d8f",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-6fa1-7279-aff1-132c54229d8f"
}
}, - "children": {
- "data": [ ]
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/0z0je",
- "bookmarks": "/api/projects/0z0je/bookmarks",
- "git_remotes": "/api/projects/0z0je/git_remotes",
- "environments": "/api/projects/0z0je/environments"
}, - "meta": {
- "can_have_changes": false,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": false,
- "child_node_types": [
- "environment"
], - "can_have_workflows": false,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "git_remotes": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": false,
- "delete": true
}, - "environments": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
}Shows a project, including any direct children.
The response includes a link to:
changes endpoint for managing changes belonging to this project. It acts like the changes endpoint.scheduled_activities endpoint for managing scheduled activities belonging to this project. It acts like a scheduled activities endpoint.bookmarks endpoint for managing the bookmarks belonging to this project. It acts like a bookmarks endpoint.mintmodels endpoint for managing the MintModels belonging to this project. It acts like a MintModels endpoint.mintmodel_history endpoint for viewing this project's MintModel history. It acts like a MintModel history endpoint.workflows endpoint for viewing this project's workflows. It acts like a Workflows endpoint.
.| project_code required | string Example: opc project code |
{- "data": {
- "id": "01a11921-712d-72f1-a6b3-9b551eadef84",
- "type": "project",
- "attributes": {
- "code": "opc",
- "name": "OpsChain",
- "description": "OpsChain project",
- "archived": false,
- "created_by": "idell-2242",
- "project_type": "Enterprise"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-7133-7395-9af2-4dcd58159123",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-7133-7395-9af2-4dcd58159123"
}
}, - "parents": {
- "data": [ ]
}, - "settings": {
- "data": {
- "id": "01a11921-7145-7fc8-b5ef-5dc763974b27",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-7145-7fc8-b5ef-5dc763974b27"
}
}, - "children": {
- "data": [ ]
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc",
- "artefacts": "/api/projects/opc/artefacts",
- "bookmarks": "/api/projects/opc/bookmarks",
- "changes": "/api/projects/opc/changes",
- "scheduled_activities": "/api/projects/opc/scheduled_activities",
- "git_remotes": "/api/projects/opc/git_remotes",
- "workflows": "/api/projects/opc/workflows",
- "workflow_runs": "/api/projects/opc/workflow_runs",
- "templates": "/api/projects/opc/templates",
- "environments": "/api/projects/opc/environments",
- "assets": "/api/projects/opc/assets",
- "agents": "/api/projects/opc/agents"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": true,
- "requires_template": false,
- "child_node_types": [
- "environment",
- "asset",
- "agent"
], - "can_have_workflows": true,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "git_remotes": {
- "read": true,
- "update": true,
- "delete": true
}, - "templates": {
- "read": true,
- "update": true,
- "delete": true
}, - "workflows": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "workflow_runs": {
- "read": true,
- "execute": true,
- "delete": true
}, - "environments": {
- "read": true,
- "update": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "agents": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}, - "included": [ ]
}Updates a project.
| project_code required | string Example: opc project code |
required | object |
{- "data": {
- "attributes": {
- "name": "Modified",
- "description": "The updated project",
- "archived": false
}
}
}{- "data": {
- "id": "01a11921-72a9-72dd-90be-126f53292dba",
- "type": "project",
- "attributes": {
- "code": "opc",
- "name": "tenetur694",
- "description": "Voluptate ipsum sunt magnam.",
- "archived": true,
- "created_by": "spencer-2248",
- "project_type": "Standard"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-72ac-756b-91c7-4ba22fc3fab1",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-72ac-756b-91c7-4ba22fc3fab1"
}
}, - "parents": {
- "data": [ ]
}, - "settings": {
- "data": {
- "id": "01a11921-72b8-787e-8582-5cb382ae4a14",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-72b8-787e-8582-5cb382ae4a14"
}
}, - "children": {
- "data": [ ]
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc",
- "bookmarks": "/api/projects/opc/bookmarks",
- "git_remotes": "/api/projects/opc/git_remotes",
- "environments": "/api/projects/opc/environments"
}, - "meta": {
- "can_have_changes": false,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": false,
- "child_node_types": [
- "environment"
], - "can_have_workflows": false,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "git_remotes": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": false,
- "delete": true
}, - "environments": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
}Archives a project.
| project_code required | string Example: opc project code |
| ignore_in_use | boolean When true and the requesting user is a superuser, bypasses in use checks and force-destroys the project. |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find Node"
}
}
]
}Endpoints to interact with environments.
Notes:
show and list response payloads include links to the environment's assets, changes, scheduled activity, bookmarks and MintModels endpoints. These endpoints act like
the assets, changes, scheduled activity, bookmarks and MintModels endpoints respectively./<path/to/asset/owner>/assets path. The example endpoints in this section reflect assets owned by a project.Lists all project environments (including archived environments).
Each environment in the response includes a link to:
changes endpoint for managing changes belonging to this environment. It acts like the changes endpoint.scheduled_activities endpoint for managing scheduled activities belonging to this environment. It acts like a scheduled activities endpoint.bookmarks endpoint for managing the bookmarks belonging to this environment. It acts like a bookmarks endpoint.mintmodels endpoint for managing the MintModels belonging to this environment. It acts like a MintModels endpoint.mintmodel_history endpoint for viewing this environment's MintModel history. It acts like a MintModel history endpoint.workflows endpoint for viewing this environment's workflows. It acts like a Workflows endpoint.
.| project_code required | string Example: opc project code |
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[name_eq]=Test API filtering guide. Named filters: |
| download | string Example: download=environments.csv Download the project environments in CSV format with the specified file name. The environments will be ordered from oldest to newest when this parameter is specified, irrespective of the sort order requested. |
{- "data": [
- {
- "id": "01a11921-209f-726b-8e79-ce5a42d3ad31",
- "type": "environment",
- "attributes": {
- "code": "dev",
- "name": "Development",
- "description": "OpsChain development environment",
- "archived": false,
- "created_by": "carline-1933"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-20a9-73c9-93d8-37a6a17f6edc",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-20a9-73c9-93d8-37a6a17f6edc"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11921-1fe7-7ff9-bf41-698c5be57bd7",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11921-20ba-7728-b504-5dda757a8076",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-20ba-7728-b504-5dda757a8076"
}
}, - "parent": {
- "data": {
- "id": "01a11921-1fe7-7ff9-bf41-698c5be57bd7",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11921-1fe7-7ff9-bf41-698c5be57bd7",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "children": {
- "data": [ ]
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/environments/dev",
- "artefacts": "/api/projects/opc/environments/dev/artefacts",
- "bookmarks": "/api/projects/opc/environments/dev/bookmarks",
- "changes": "/api/projects/opc/environments/dev/changes",
- "scheduled_activities": "/api/projects/opc/environments/dev/scheduled_activities",
- "parent": "/api/projects/opc",
- "assets": "/api/projects/opc/environments/dev/assets"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": false,
- "child_node_types": [
- "asset"
], - "can_have_workflows": false,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Creates an environment.
| project_code required | string Example: opc project code |
required | object |
{- "data": {
- "attributes": {
- "code": "dev",
- "name": "Development",
- "description": "OpsChain development environment"
}
}
}{- "data": {
- "id": "01a11921-2233-7579-854b-b1713a5dc22d",
- "type": "environment",
- "attributes": {
- "code": "bbmnv",
- "name": "reiciendis611",
- "description": "Et cum beatae voluptates.",
- "archived": false,
- "created_by": "logged_in_user"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-223a-7e76-9eff-9fbed1b30ef0",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-223a-7e76-9eff-9fbed1b30ef0"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11921-21a4-71e4-8ba4-897706ff627f",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11921-224a-747d-b798-6073116caddd",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-224a-747d-b798-6073116caddd"
}
}, - "parent": {
- "data": {
- "id": "01a11921-21a4-71e4-8ba4-897706ff627f",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11921-21a4-71e4-8ba4-897706ff627f",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "children": {
- "data": [ ]
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/environments/bbmnv",
- "artefacts": "/api/projects/opc/environments/bbmnv/artefacts",
- "bookmarks": "/api/projects/opc/environments/bbmnv/bookmarks",
- "changes": "/api/projects/opc/environments/bbmnv/changes",
- "scheduled_activities": "/api/projects/opc/environments/bbmnv/scheduled_activities",
- "parent": "/api/projects/opc",
- "assets": "/api/projects/opc/environments/bbmnv/assets"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": false,
- "child_node_types": [
- "asset"
], - "can_have_workflows": false,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
}Shows an environment.
The response includes a link to:
changes endpoint for managing changes belonging to this environment. It acts like the changes endpoint.scheduled_activities endpoint for managing scheduled activities belonging to this environment. It acts like a scheduled activities endpoint.bookmarks endpoint for managing the bookmarks belonging to this environment. It acts like a bookmarks endpoint.mintmodels endpoint for managing the MintModels belonging to this environment. It acts like a MintModels endpoint.mintmodel_history endpoint for viewing this environment's MintModel history. It acts like a MintModel history endpoint.workflows endpoint for viewing this environment's workflows. It acts like a Workflows endpoint.
.| project_code required | string Example: opc project code |
| environment_code required | string Example: dev environment code |
{- "data": {
- "id": "01a11921-243f-762c-8f2b-da2ee27b93d5",
- "type": "environment",
- "attributes": {
- "code": "dev",
- "name": "Development",
- "description": "OpsChain development environment",
- "archived": false,
- "created_by": "demetrice-1947"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-2445-7abd-9276-9631a494ea7a",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-2445-7abd-9276-9631a494ea7a"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11921-240d-7844-85a6-0346050826e4",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11921-2453-7c76-aafb-ee58d9ef3ee7",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-2453-7c76-aafb-ee58d9ef3ee7"
}
}, - "parent": {
- "data": {
- "id": "01a11921-240d-7844-85a6-0346050826e4",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11921-240d-7844-85a6-0346050826e4",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "children": {
- "data": [ ]
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/environments/dev",
- "artefacts": "/api/projects/opc/environments/dev/artefacts",
- "bookmarks": "/api/projects/opc/environments/dev/bookmarks",
- "changes": "/api/projects/opc/environments/dev/changes",
- "scheduled_activities": "/api/projects/opc/environments/dev/scheduled_activities",
- "parent": "/api/projects/opc",
- "assets": "/api/projects/opc/environments/dev/assets"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": false,
- "child_node_types": [
- "asset"
], - "can_have_workflows": false,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}, - "included": [
- {
- "id": "01a11921-240d-7844-85a6-0346050826e4",
- "type": "project",
- "attributes": {
- "code": "opc",
- "name": "OpsChain",
- "description": "OpsChain project",
- "archived": false,
- "created_by": "bonnie-1946",
- "project_type": "Enterprise"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-2411-7369-8dc2-fc7e7fcdb703",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-2411-7369-8dc2-fc7e7fcdb703"
}
}, - "parents": {
- "data": [ ]
}, - "settings": {
- "data": {
- "id": "01a11921-2420-702a-877b-d27b844dcaa1",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-2420-702a-877b-d27b844dcaa1"
}
}, - "children": {
- "data": [
- {
- "id": "01a11921-243f-762c-8f2b-da2ee27b93d5",
- "type": "environment"
}
]
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc",
- "artefacts": "/api/projects/opc/artefacts",
- "bookmarks": "/api/projects/opc/bookmarks",
- "changes": "/api/projects/opc/changes",
- "scheduled_activities": "/api/projects/opc/scheduled_activities",
- "git_remotes": "/api/projects/opc/git_remotes",
- "workflows": "/api/projects/opc/workflows",
- "workflow_runs": "/api/projects/opc/workflow_runs",
- "templates": "/api/projects/opc/templates",
- "environments": "/api/projects/opc/environments",
- "assets": "/api/projects/opc/assets",
- "agents": "/api/projects/opc/agents"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": true,
- "requires_template": false,
- "child_node_types": [
- "environment",
- "asset",
- "agent"
], - "can_have_workflows": true,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "git_remotes": {
- "read": true,
- "update": true,
- "delete": true
}, - "templates": {
- "read": true,
- "update": true,
- "delete": true
}, - "workflows": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "workflow_runs": {
- "read": true,
- "execute": true,
- "delete": true
}, - "environments": {
- "read": true,
- "update": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "agents": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
]
}Updates an environment.
| project_code required | string Example: opc project code |
| environment_code required | string Example: dev environment code |
required | object |
{- "data": {
- "attributes": {
- "name": "Modified",
- "description": "The updated environment",
- "archived": false
}
}
}{- "data": {
- "id": "01a11921-2650-781e-bff6-1ae540ee93a0",
- "type": "environment",
- "attributes": {
- "code": "dev",
- "name": "at621",
- "description": "Autem et dolore tempore.",
- "archived": true,
- "created_by": "chase_glover-1955"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-2657-7332-95d4-10e95faf13ac",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-2657-7332-95d4-10e95faf13ac"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11921-261d-7a0e-b816-880e8f8ad864",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11921-266a-7317-9630-fa812408bb23",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-266a-7317-9630-fa812408bb23"
}
}, - "parent": {
- "data": {
- "id": "01a11921-261d-7a0e-b816-880e8f8ad864",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11921-261d-7a0e-b816-880e8f8ad864",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "children": {
- "data": [ ]
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/environments/dev",
- "artefacts": "/api/projects/opc/environments/dev/artefacts",
- "bookmarks": "/api/projects/opc/environments/dev/bookmarks",
- "changes": "/api/projects/opc/environments/dev/changes",
- "scheduled_activities": "/api/projects/opc/environments/dev/scheduled_activities",
- "parent": "/api/projects/opc",
- "assets": "/api/projects/opc/environments/dev/assets"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": false,
- "child_node_types": [
- "asset"
], - "can_have_workflows": false,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
}Archives an environment.
| project_code required | string Example: opc project code |
| environment_code required | string Example: dev environment code |
| ignore_in_use | boolean When true and the requesting user is a superuser, bypasses in use checks and force-destroys the environment. |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find Node"
}
}
]
}Show the converged settings for this environment, merged from the project and environment settings. Only the values that differ from the global settings are returned: a setting whose converged value matches the global value is omitted, even when it is set directly on a node, so the response is empty when nothing differs from the global settings.
The response includes a setting_sources meta object that attributes each setting value to its originating source.
| project_code required | string Example: opc project code |
| environment_code required | string Example: dev environment code |
{- "data": {
- "id": "dev",
- "type": "converged_settings",
- "attributes": {
- "data": {
- "requires_approval_from": [
- {
- "change_filter": {
- "actions": "all"
}, - "user_names": [
- "opschain"
]
}
]
}
}, - "links": {
- "self": "/api/projects/opc/environments/dev/converged_settings"
}, - "meta": {
- "setting_sources": {
- "by_setting": {
- "requires_approval_from": "Project: OpsChain (opc)"
}
}
}
}
}Show the converged properties for this environment, merged from all database properties sources in the hierarchy (project and environment properties).
The API response will also include the individual database properties that were included in the result.
| project_code required | string Example: opc project code |
| environment_code required | string Example: dev environment code |
| converge_date | string Example: converge_date=2026-10-08T01:27:11+00:00 Specify the date (and optionally time), to derive the active environment properties from. |
| exclude_layers[] | string Example: exclude_layers[]=template Exclude a property layer from the converged result. Repeat the parameter to exclude several layers, e.g. |
{- "data": {
- "id": "dev",
- "type": "converged_properties",
- "attributes": {
- "data": {
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}
}, - "relationships": {
- "repository_properties": {
- "data": [ ]
}, - "properties": {
- "data": [
- {
- "id": "01a11921-2d2b-7453-a4c3-cc204e635fb1",
- "type": "properties_version"
}, - {
- "id": "01a11921-2d6c-79ee-aff5-69e05ad1ae60",
- "type": "properties_version"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/environments/dev/converged_properties"
}, - "meta": {
- "property_sources": {
- "by_property": {
- "any_key": "Project: OpsChain (opc)",
- "another_key": "Project: OpsChain (opc)",
- "nested": {
- "key": "Project: OpsChain (opc)"
}
}, - "sources": [
- {
- "group": "database",
- "id": "project",
- "layer": "project",
- "human": "Project: OpsChain (opc)"
}, - {
- "group": "database",
- "id": "environment",
- "layer": "environment",
- "human": "Environment: Development (dev)"
}
]
}, - "property_layers": [
- {
- "id": "project",
- "human": "Project",
- "groups": [
- {
- "group": "database",
- "included": true
}
]
}, - {
- "id": "environment",
- "human": "Environment",
- "groups": [
- {
- "group": "database",
- "included": true
}
]
}
]
}
}, - "included": [
- {
- "id": "01a11921-2d2b-7453-a4c3-cc204e635fb1",
- "type": "properties_version",
- "attributes": {
- "data": {
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}, - "version": 1,
- "created_at": "2026-10-08T01:29:27.082326Z",
- "owner_type": "Project"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-2d22-73ea-bcb1-93e49561213b",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-2d22-73ea-bcb1-93e49561213b"
}
}
}, - "links": {
- "versions": "/api/properties/01a11921-2d22-73ea-bcb1-93e49561213b/versions",
- "owner": "/api/projects/opc",
- "self": "/api/properties/01a11921-2d22-73ea-bcb1-93e49561213b/versions/1"
}, - "meta": { }
}, - {
- "id": "01a11921-2d6c-79ee-aff5-69e05ad1ae60",
- "type": "properties_version",
- "attributes": {
- "data": { },
- "version": 1,
- "created_at": "2026-10-08T01:29:27.147866Z",
- "owner_type": "Environment"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-2d61-7178-9d21-578e00d6b063",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-2d61-7178-9d21-578e00d6b063"
}
}
}, - "links": {
- "versions": "/api/properties/01a11921-2d61-7178-9d21-578e00d6b063/versions",
- "owner": "/api/projects/opc/environments/dev",
- "self": "/api/properties/01a11921-2d61-7178-9d21-578e00d6b063/versions/1"
}, - "meta": { }
}
]
}Endpoints to interact with agents.
Notes:
show and list response payloads include links to the agent's assets, changes, scheduled activity, bookmarks and MintModels endpoints. These endpoints act like
the assets, changes, scheduled activity, bookmarks and MintModels endpoints respectively./<path/to/asset/owner>/assets path. The example endpoints in this section reflect assets owned by a project.Builds the container image for an agent. Note, this does not restart the agent.
| project_code required | string Example: opc project code |
| agent_code required | string Example: agent1 agent code |
{- "data": {
- "id": "01a1191f-6266-7d69-a0b7-f7d40f5c7693",
- "type": "node_background_task",
- "attributes": {
- "request_number": 2,
- "status_code": "initializing",
- "error_message": null,
- "created_by": "logged_in_user",
- "task_type": "BuildAgentImageTask",
- "created_at": "2026-10-08T01:27:29.637225Z",
- "updated_at": "2026-10-08T01:27:29.637225Z",
- "image_sha": null,
- "image_purged": false,
- "image_in_use": false
}, - "relationships": {
- "template_version_history": {
- "data": {
- "id": "01a1191f-622b-7826-a9ba-1d88f3b77396",
- "type": "template_version_history"
}
}, - "owner": {
- "data": {
- "id": "01a1191f-61f8-7aec-ad14-4626c79ecbdd",
- "type": "agent"
}
}
}, - "links": {
- "template_version": "/api/projects/opc/templates/01a1191f-616f-708d-90af-ff9aaf9279e7/versions/2026_Q1_2",
- "self": "/api/projects/opc/agents/agent1/node_background_tasks/01a1191f-6266-7d69-a0b7-f7d40f5c7693",
- "agent": "/api/projects/opc/agents/agent1",
- "log_lines": "/api/node_background_task_log_lines?node_background_task_id=01a1191f-6266-7d69-a0b7-f7d40f5c7693"
}
}
}Lists the image build, start and stop tasks run for the agent's current template version.
| project_code required | string Example: opc project code |
| agent_code required | string Example: agent1 agent code |
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[request_number_eq]=1 API filtering guide. Named filters: |
| limit | integer [ 1 .. 10000 ] Default: 100 Example: limit=50 Limit the number of tasks returned. When more records match than the limit a 206 response is returned and |
{- "data": [
- {
- "id": "01a1191f-6467-75aa-8f9e-c591fcc3d0c3",
- "type": "node_background_task",
- "attributes": {
- "request_number": 1,
- "status_code": "success",
- "error_message": null,
- "created_by": "cristen_russel-358",
- "task_type": "BuildAgentImageTask",
- "created_at": "2026-10-08T01:27:30.150530Z",
- "updated_at": "2026-10-08T01:27:30.163635Z",
- "image_sha": "sha256:7655e0d4a9fe96130dc9e62dd8d85536e3ba743398d5e5ba5801a9fb0bbd2082",
- "image_purged": false,
- "image_in_use": true
}, - "relationships": {
- "template_version_history": {
- "data": {
- "id": "01a1191f-646e-7c0c-87e6-935e8ae7690c",
- "type": "template_version_history"
}
}, - "owner": {
- "data": {
- "id": "01a1191f-6442-7a93-937e-04099d24d551",
- "type": "agent"
}
}
}, - "links": {
- "template_version": "/api/projects/opc/templates/01a1191f-63ba-77da-80e1-8c6c9583ba3e/versions/2026_Q1_2",
- "self": "/api/projects/opc/agents/agent1/node_background_tasks/01a1191f-6467-75aa-8f9e-c591fcc3d0c3",
- "agent": "/api/projects/opc/agents/agent1",
- "log_lines": "/api/node_background_task_log_lines?node_background_task_id=01a1191f-6467-75aa-8f9e-c591fcc3d0c3"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}, - "partial_response": false
}
}Show a specific agent image build, start or stop task.
| project_code required | string Example: opc project code |
| agent_code required | string Example: agent1 agent code |
| node_background_task_id required | string Example: 01a1191f-03aa-757f-822d-1273008ae8e9 agent background task id |
{- "data": {
- "id": "01a1191f-6685-73ea-87d4-170dde48af6d",
- "type": "node_background_task",
- "attributes": {
- "request_number": 1,
- "status_code": "success",
- "error_message": null,
- "created_by": "corie-364",
- "task_type": "BuildAgentImageTask",
- "created_at": "2026-10-08T01:27:30.692084Z",
- "updated_at": "2026-10-08T01:27:30.709551Z",
- "image_sha": "sha256:7655e0d4a9fe96130dc9e62dd8d85536e3ba743398d5e5ba5801a9fb0bbd2082",
- "image_purged": false,
- "image_in_use": true
}, - "relationships": {
- "template_version_history": {
- "data": {
- "id": "01a1191f-668f-78d9-a32b-5b7cb9f23476",
- "type": "template_version_history"
}
}, - "owner": {
- "data": {
- "id": "01a1191f-6663-7f4e-ae6e-08c302bde0d5",
- "type": "agent"
}
}
}, - "links": {
- "template_version": "/api/projects/opc/templates/01a1191f-65eb-79e8-8048-09bfe7c6751c/versions/2026_Q1_2",
- "self": "/api/projects/opc/agents/agent1/node_background_tasks/01a1191f-6685-73ea-87d4-170dde48af6d",
- "agent": "/api/projects/opc/agents/agent1",
- "log_lines": "/api/node_background_task_log_lines?node_background_task_id=01a1191f-6685-73ea-87d4-170dde48af6d"
}
}
}Shows the status for an agent.
| project_code required | string Example: opc project code |
| agent_code required | string Example: agent1 agent code |
{- "data": {
- "id": "01a1191f-6959-7f1c-bf04-2d6190d7af46",
- "type": "agent_status",
- "attributes": {
- "desired_status": "running",
- "status": "initializing",
- "image_build_status": "ready",
- "active_image_sha": null,
- "newest_image_sha": "sha256:7655e0d4a9fe96130dc9e62dd8d85536e3ba743398d5e5ba5801a9fb0bbd2082",
- "cluster_name": "opschain-db"
}, - "relationships": {
- "node": {
- "data": {
- "id": "01a1191f-6928-7125-bbe5-1c94c7365694",
- "type": "agent"
}
}, - "referenced_build_agent_image_task": {
- "data": {
- "id": "01a1191f-6958-7269-a773-45d958b72ffe",
- "type": "node_background_task"
}
}, - "available_build_agent_image_tasks": {
- "data": [
- {
- "id": "01a1191f-6958-7269-a773-45d958b72ffe",
- "type": "node_background_task"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/agents/agent1/status",
- "log_lines": "/api/projects/opc/agents/agent1/status/log_lines"
}
}, - "included": [
- {
- "id": "01a1191f-6958-7269-a773-45d958b72ffe",
- "type": "node_background_task",
- "attributes": {
- "request_number": 1,
- "status_code": "success",
- "error_message": null,
- "created_by": "arlinda-370",
- "task_type": "BuildAgentImageTask",
- "created_at": "2026-10-08T01:27:31.415157Z",
- "updated_at": "2026-10-08T01:27:31.428307Z",
- "image_sha": "sha256:7655e0d4a9fe96130dc9e62dd8d85536e3ba743398d5e5ba5801a9fb0bbd2082",
- "image_purged": false,
- "image_in_use": true
}, - "relationships": {
- "template_version_history": {
- "data": {
- "id": "01a1191f-6960-7377-aaa7-5efea3e52ac9",
- "type": "template_version_history"
}
}, - "owner": {
- "data": {
- "id": "01a1191f-6928-7125-bbe5-1c94c7365694",
- "type": "agent"
}
}
}, - "links": {
- "template_version": "/api/projects/opc/templates/01a1191f-6833-7c53-9eab-44cd6bf43d60/versions/2026_Q1_2",
- "self": "/api/projects/opc/agents/agent1/node_background_tasks/01a1191f-6958-7269-a773-45d958b72ffe",
- "agent": "/api/projects/opc/agents/agent1",
- "log_lines": "/api/node_background_task_log_lines?node_background_task_id=01a1191f-6958-7269-a773-45d958b72ffe"
}
}
]
}Update an agent status.
| project_code required | string Example: opc project code |
| agent_code required | string Example: agent1 agent code |
required | object |
{- "data": {
- "attributes": {
- "desired_status": "running",
- "image_sha": "sha256:de10faf919fc71ba4eb1dd7bd6449566d012b0c9436b1c61bfee21d621b009aa"
}
}
}{- "data": {
- "id": "01a1191f-6c0e-76f8-b3a2-34b6920fa654",
- "type": "agent_status",
- "attributes": {
- "desired_status": "running",
- "status": "initializing",
- "image_build_status": "ready",
- "active_image_sha": null,
- "newest_image_sha": "sha256:7655e0d4a9fe96130dc9e62dd8d85536e3ba743398d5e5ba5801a9fb0bbd2082",
- "cluster_name": "opschain-db"
}, - "relationships": {
- "node": {
- "data": {
- "id": "01a1191f-6bdc-70fb-ac03-dcc43f156987",
- "type": "agent"
}
}, - "referenced_build_agent_image_task": {
- "data": null
}, - "available_build_agent_image_tasks": {
- "data": [
- {
- "id": "01a1191f-6c0b-7b03-827a-8ead4eb11192",
- "type": "node_background_task"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/agents/agent1/status",
- "log_lines": "/api/projects/opc/agents/agent1/status/log_lines"
}
}, - "included": [
- {
- "id": "01a1191f-6c0b-7b03-827a-8ead4eb11192",
- "type": "node_background_task",
- "attributes": {
- "request_number": 1,
- "status_code": "success",
- "error_message": null,
- "created_by": "andres.vonrueden-376",
- "task_type": "BuildAgentImageTask",
- "created_at": "2026-10-08T01:27:32.106535Z",
- "updated_at": "2026-10-08T01:27:32.124999Z",
- "image_sha": "sha256:7655e0d4a9fe96130dc9e62dd8d85536e3ba743398d5e5ba5801a9fb0bbd2082",
- "image_purged": false,
- "image_in_use": false
}, - "relationships": {
- "template_version_history": {
- "data": {
- "id": "01a1191f-6c16-7948-a1c6-8a2a2153fdb3",
- "type": "template_version_history"
}
}, - "owner": {
- "data": {
- "id": "01a1191f-6bdc-70fb-ac03-dcc43f156987",
- "type": "agent"
}
}
}, - "links": {
- "template_version": "/api/projects/opc/templates/01a1191f-6b0a-75a0-88ba-b667d8448f0a/versions/2026_Q1_2",
- "self": "/api/projects/opc/agents/agent1/node_background_tasks/01a1191f-6c0b-7b03-827a-8ead4eb11192",
- "agent": "/api/projects/opc/agents/agent1",
- "log_lines": "/api/node_background_task_log_lines?node_background_task_id=01a1191f-6c0b-7b03-827a-8ead4eb11192"
}
}
]
}Shows log lines for the agent.
| project_code required | string Example: opc project code |
| agent_code required | string Example: agent1 agent code |
| filter[<query/sort filter>]= | |
| limit | integer [ 1 .. 10000 ] Default: 10000 Example: limit=50 Limit the number of log lines returned. When more records match than the limit a 206 response is returned and |
{- "data": [
- {
- "id": "01a1191f-70e2-712d-80ea-8c1c816849b3",
- "type": "agent_log_line",
- "attributes": {
- "message": "Agents running on OpsChain :-)",
- "category": "action",
- "agent_path": "/projects/opc/agents/agent1",
- "logged_at": "2026-10-07T00:00:00.000000Z"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}Shows Kubernetes events for the agent. This request will only succeed when the agent is running.
| project_code required | string Example: opc project code |
| agent_code required | string Example: agent1 agent code |
{- "data": [
- {
- "id": "0",
- "type": "agent_event",
- "attributes": {
- "created_at": "2026-02-13T09:59:50.041123Z",
- "message": "Kubernetes event for this agent."
}
}
]
}Lists all agents (including archived agents) that belong to the project.
Each agent in the response includes a link to:
changes endpoint for managing changes belonging to this agent. It acts like the changes endpoint.scheduled_activities endpoint for managing scheduled activities belonging to this agent. It acts like a scheduled activities endpoint.bookmarks endpoint for managing the bookmarks belonging to this agent. It acts like a bookmarks endpoint.mintmodels endpoint for managing the MintModels belonging to this agent. It acts like a MintModels endpoint.mintmodel_history endpoint for viewing this agent's MintModel history. It acts like a MintModel history endpoint.workflows endpoint for viewing this agent's workflows. It acts like a Workflows endpoint.
.| project_code required | string Example: opc project code |
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[name_eq]=Test API filtering guide. Named filters: |
| download | string Example: download=agents.csv Download the agents in CSV format with the specified file name. The agents will be ordered from oldest to newest when this parameter is specified, irrespective of the sort order requested. |
{- "data": [
- {
- "id": "01a11920-e464-7ad9-88d2-7b200edbfe02",
- "type": "agent",
- "attributes": {
- "code": "agent1",
- "name": "Agent",
- "description": "Asset description",
- "archived": false,
- "created_by": "alfonzo-1719",
- "task_active": false
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-e46b-74bd-8fef-120ff982929a",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-e46b-74bd-8fef-120ff982929a"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11920-e3a2-7e28-8fa2-25e3189f3903",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11920-e47e-7e0b-b5f1-56bc1e6f43b2",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-e47e-7e0b-b5f1-56bc1e6f43b2"
}
}, - "parent": {
- "data": {
- "id": "01a11920-e3a2-7e28-8fa2-25e3189f3903",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11920-e3a2-7e28-8fa2-25e3189f3903",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "template_version": {
- "data": {
- "id": "01a11920-e412-782f-85e0-b5053182f5f6",
- "type": "template_version"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11920-e3da-73e9-bd22-03e840240b6c/versions/2026_Q1_2"
}
}, - "bookmarks": {
- "data": [ ]
}, - "template": {
- "data": {
- "id": "01a11920-e3da-73e9-bd22-03e840240b6c",
- "type": "template"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11920-e3da-73e9-bd22-03e840240b6c"
}
}, - "latest_node_background_tasks": {
- "data": [
- {
- "id": "01a11920-e487-79c7-b681-0b12db61ecd5",
- "type": "node_background_task"
}
]
}, - "agent_status": {
- "data": {
- "id": "01a11920-e488-7bb9-bbcf-8c109f6c622c",
- "type": "agent_status"
}, - "links": {
- "related": "/api/projects/opc/agents/agent1/status"
}
}
}, - "links": {
- "self": "/api/projects/opc/agents/agent1",
- "bookmarks": "/api/projects/opc/agents/agent1/bookmarks",
- "converged_properties": "/api/projects/opc/agents/agent1/converged_properties",
- "parent": "/api/projects/opc",
- "node_background_tasks": "/api/projects/opc/agents/agent1/node_background_tasks",
- "version_history": "/api/projects/opc/agents/agent1/version_history"
}, - "meta": {
- "can_have_changes": false,
- "can_have_children": false,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": true,
- "child_node_types": [ ],
- "can_have_workflows": false,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "changes": {
- "read": true,
- "execute": false,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Creates an agent.
| project_code required | string Example: opc project code |
required | object |
{- "data": {
- "attributes": {
- "code": "agent1",
- "name": "Agent",
- "description": "Asset description",
- "template_code": "agn",
- "template_version": "2026_Q1_2"
}
}
}{- "data": {
- "id": "01a11920-ea79-7e4d-b1a8-7354df08e26c",
- "type": "agent",
- "attributes": {
- "code": "i9czm",
- "name": "iusto535",
- "description": "Impedit exercitationem aut rerum.",
- "archived": false,
- "created_by": "logged_in_user",
- "task_active": true
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-ea84-759a-b8b4-4168d9804bb1",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-ea84-759a-b8b4-4168d9804bb1"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11920-e6a3-7492-8f3a-696407718bc2",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11920-eaa0-77c1-ac79-ae6dbb039e2a",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-eaa0-77c1-ac79-ae6dbb039e2a"
}
}, - "parent": {
- "data": {
- "id": "01a11920-e6a3-7492-8f3a-696407718bc2",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11920-e6a3-7492-8f3a-696407718bc2",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "template_version": {
- "data": {
- "id": "01a11920-e9c2-7db3-bee7-04914d0236f3",
- "type": "template_version"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11920-e930-7224-a48f-9d213a647891/versions/2026_Q1_2"
}
}, - "bookmarks": {
- "data": [ ]
}, - "template": {
- "data": {
- "id": "01a11920-e930-7224-a48f-9d213a647891",
- "type": "template"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11920-e930-7224-a48f-9d213a647891"
}
}, - "latest_node_background_tasks": {
- "data": [
- {
- "id": "01a11920-eac4-725b-afb4-abd198c83435",
- "type": "node_background_task"
}
]
}, - "agent_status": {
- "data": {
- "id": "01a11920-eaac-7151-b6ec-81ffe9b62a08",
- "type": "agent_status"
}, - "links": {
- "related": "/api/projects/opc/agents/i9czm/status"
}
}
}, - "links": {
- "self": "/api/projects/opc/agents/i9czm",
- "bookmarks": "/api/projects/opc/agents/i9czm/bookmarks",
- "converged_properties": "/api/projects/opc/agents/i9czm/converged_properties",
- "parent": "/api/projects/opc",
- "node_background_tasks": "/api/projects/opc/agents/i9czm/node_background_tasks",
- "version_history": "/api/projects/opc/agents/i9czm/version_history"
}, - "meta": {
- "can_have_changes": false,
- "can_have_children": false,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": true,
- "child_node_types": [ ],
- "can_have_workflows": false,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "changes": {
- "read": true,
- "execute": false,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
}Shows an agent belonging to a project.
The response includes a link to:
changes endpoint for managing changes belonging to this agent. It acts like the changes endpoint.scheduled_activities endpoint for managing scheduled activities belonging to this agent. It acts like a scheduled activities endpoint.bookmarks endpoint for managing the bookmarks belonging to this agent. It acts like a bookmarks endpoint.mintmodels endpoint for managing the MintModels belonging to this agent. It acts like a MintModels endpoint.mintmodel_history endpoint for viewing this agent's MintModel history. It acts like a MintModel history endpoint.workflows endpoint for viewing this agent's workflows. It acts like a Workflows endpoint.
.| project_code required | string Example: opc project code |
| agent_code required | string Example: agent1 agent code |
{- "data": {
- "id": "01a11920-ede1-7611-a4d4-b7f6b0382f1e",
- "type": "agent",
- "attributes": {
- "code": "agent1",
- "name": "Agent",
- "description": "Asset description",
- "archived": false,
- "created_by": "weston_kunze-1736",
- "task_active": false
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-ede9-7e14-a2f6-90ae0fc27a69",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-ede9-7e14-a2f6-90ae0fc27a69"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11920-ed36-70db-9ace-4799fff2343d",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11920-edfc-74fd-8668-35d8205cfcb1",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-edfc-74fd-8668-35d8205cfcb1"
}
}, - "parent": {
- "data": {
- "id": "01a11920-ed36-70db-9ace-4799fff2343d",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11920-ed36-70db-9ace-4799fff2343d",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "template_version": {
- "data": {
- "id": "01a11920-eda2-7dc3-8582-426920292136",
- "type": "template_version"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11920-ed65-71e8-8965-37a10b12653d/versions/2026_Q1_2"
}
}, - "bookmarks": {
- "data": [ ]
}, - "template": {
- "data": {
- "id": "01a11920-ed65-71e8-8965-37a10b12653d",
- "type": "template"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11920-ed65-71e8-8965-37a10b12653d"
}
}, - "latest_node_background_tasks": {
- "data": [
- {
- "id": "01a11920-ee06-753d-b756-cb9ac7be82a2",
- "type": "node_background_task"
}
]
}, - "agent_status": {
- "data": {
- "id": "01a11920-ee08-708a-888d-bfcaf8f4fe37",
- "type": "agent_status"
}, - "links": {
- "related": "/api/projects/opc/agents/agent1/status"
}
}
}, - "links": {
- "self": "/api/projects/opc/agents/agent1",
- "bookmarks": "/api/projects/opc/agents/agent1/bookmarks",
- "converged_properties": "/api/projects/opc/agents/agent1/converged_properties",
- "parent": "/api/projects/opc",
- "node_background_tasks": "/api/projects/opc/agents/agent1/node_background_tasks",
- "version_history": "/api/projects/opc/agents/agent1/version_history"
}, - "meta": {
- "can_have_changes": false,
- "can_have_children": false,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": true,
- "child_node_types": [ ],
- "can_have_workflows": false,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "changes": {
- "read": true,
- "execute": false,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}, - "included": [
- {
- "id": "01a11920-ed36-70db-9ace-4799fff2343d",
- "type": "project",
- "attributes": {
- "code": "opc",
- "name": "OpsChain",
- "description": "OpsChain project",
- "archived": false,
- "created_by": "ricky-1734",
- "project_type": "Enterprise"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-ed39-77ff-86ce-e5a5946b10d7",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-ed39-77ff-86ce-e5a5946b10d7"
}
}, - "parents": {
- "data": [ ]
}, - "settings": {
- "data": {
- "id": "01a11920-ed47-7540-a2e6-9f5442a05e6b",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-ed47-7540-a2e6-9f5442a05e6b"
}
}, - "children": {
- "data": [
- {
- "id": "01a11920-ede1-7611-a4d4-b7f6b0382f1e",
- "type": "agent"
}
]
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc",
- "artefacts": "/api/projects/opc/artefacts",
- "bookmarks": "/api/projects/opc/bookmarks",
- "changes": "/api/projects/opc/changes",
- "scheduled_activities": "/api/projects/opc/scheduled_activities",
- "git_remotes": "/api/projects/opc/git_remotes",
- "workflows": "/api/projects/opc/workflows",
- "workflow_runs": "/api/projects/opc/workflow_runs",
- "templates": "/api/projects/opc/templates",
- "environments": "/api/projects/opc/environments",
- "assets": "/api/projects/opc/assets",
- "agents": "/api/projects/opc/agents"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": true,
- "requires_template": false,
- "child_node_types": [
- "environment",
- "asset",
- "agent"
], - "can_have_workflows": true,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "git_remotes": {
- "read": true,
- "update": true,
- "delete": true
}, - "templates": {
- "read": true,
- "update": true,
- "delete": true
}, - "workflows": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "workflow_runs": {
- "read": true,
- "execute": true,
- "delete": true
}, - "environments": {
- "read": true,
- "update": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "agents": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}, - {
- "id": "01a11920-ed65-71e8-8965-37a10b12653d",
- "type": "template",
- "attributes": {
- "code": "agn",
- "name": "Agent example",
- "description": null,
- "archived": false,
- "disabled": false,
- "template_type": "agent",
- "created_at": "2026-10-08T01:29:10.756165Z",
- "updated_at": "2026-10-08T01:29:10.756165Z"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-ed6d-7291-9964-d3eba3e6204b",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-ed6d-7291-9964-d3eba3e6204b"
}
}, - "settings": {
- "data": {
- "id": "01a11920-ed7e-7c43-a49c-df0576f9c3e1",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-ed7e-7c43-a49c-df0576f9c3e1"
}
}, - "git_remote": {
- "data": {
- "id": "01a11920-ed52-796b-b3da-d31dfe492958",
- "type": "git_remote"
}
}, - "template_versions": {
- "data": [
- {
- "id": "01a11920-eda2-7dc3-8582-426920292136",
- "type": "template_version"
}
]
}, - "nodes": {
- "data": [
- {
- "id": "01a11920-ede1-7611-a4d4-b7f6b0382f1e",
- "type": "agent"
}, - {
- "id": "01a11920-ede1-7611-a4d4-b7f6b0382f1e",
- "type": "agent"
}
]
}, - "project": {
- "data": {
- "id": "01a11920-ed36-70db-9ace-4799fff2343d",
- "type": "project"
}
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11920-ed65-71e8-8965-37a10b12653d",
- "template_versions": "/api/projects/opc/templates/01a11920-ed65-71e8-8965-37a10b12653d/versions",
- "project": "/api/projects/opc"
}
}, - {
- "id": "01a11920-eda2-7dc3-8582-426920292136",
- "type": "template_version",
- "attributes": {
- "version": "2026_Q1_2",
- "description": "Added additional configuration options",
- "state": "ready",
- "created_by": "madeline_west-1735",
- "archived": false,
- "initialization_error": null,
- "locked": false,
- "float_git_rev": false,
- "float_refresh_error": null,
- "created_at": "2026-10-08T01:29:10.817952Z",
- "updated_at": "2026-10-08T01:29:10.817952Z",
- "git_rev": "solid-state",
- "commit_sha": "c25e173f55bd4eec543129a2f19bc595ff79fdc9",
- "git_remote_name": "github"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-eda8-73cf-a436-12d82c51e667",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-eda8-73cf-a436-12d82c51e667"
}
}, - "settings": {
- "data": {
- "id": "01a11920-edb3-7c46-9538-87e9b0f7a1c0",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-edb3-7c46-9538-87e9b0f7a1c0"
}
}, - "project": {
- "data": {
- "id": "01a11920-ed36-70db-9ace-4799fff2343d",
- "type": "project"
}
}, - "template": {
- "data": {
- "id": "01a11920-ed65-71e8-8965-37a10b12653d",
- "type": "template"
}
}, - "pending_commit": {
- "data": null
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11920-ed65-71e8-8965-37a10b12653d/versions/2026_Q1_2",
- "template": "/api/projects/opc/templates/01a11920-ed65-71e8-8965-37a10b12653d"
}
}, - {
- "id": "01a11920-ee06-753d-b756-cb9ac7be82a2",
- "type": "node_background_task",
- "attributes": {
- "request_number": 1,
- "status_code": "success",
- "error_message": null,
- "created_by": "lon_hoppe-1737",
- "task_type": "BuildAgentImageTask",
- "created_at": "2026-10-08T01:29:10.917436Z",
- "updated_at": "2026-10-08T01:29:10.929576Z",
- "image_sha": "sha256:7655e0d4a9fe96130dc9e62dd8d85536e3ba743398d5e5ba5801a9fb0bbd2082",
- "image_purged": false,
- "image_in_use": true
}, - "relationships": {
- "template_version_history": {
- "data": {
- "id": "01a11920-ee0c-7d85-bcbd-5d2c2449a317",
- "type": "template_version_history"
}
}, - "owner": {
- "data": {
- "id": "01a11920-ede1-7611-a4d4-b7f6b0382f1e",
- "type": "agent"
}
}
}, - "links": {
- "template_version": "/api/projects/opc/templates/01a11920-ed65-71e8-8965-37a10b12653d/versions/2026_Q1_2",
- "self": "/api/projects/opc/agents/agent1/node_background_tasks/01a11920-ee06-753d-b756-cb9ac7be82a2",
- "agent": "/api/projects/opc/agents/agent1",
- "log_lines": "/api/node_background_task_log_lines?node_background_task_id=01a11920-ee06-753d-b756-cb9ac7be82a2"
}
}, - {
- "id": "01a11920-ee08-708a-888d-bfcaf8f4fe37",
- "type": "agent_status",
- "attributes": {
- "desired_status": "running",
- "status": "initializing",
- "image_build_status": "ready",
- "active_image_sha": null,
- "newest_image_sha": "sha256:7655e0d4a9fe96130dc9e62dd8d85536e3ba743398d5e5ba5801a9fb0bbd2082",
- "cluster_name": "opschain-db"
}, - "relationships": {
- "node": {
- "data": {
- "id": "01a11920-ede1-7611-a4d4-b7f6b0382f1e",
- "type": "agent"
}
}, - "referenced_build_agent_image_task": {
- "data": {
- "id": "01a11920-ee06-753d-b756-cb9ac7be82a2",
- "type": "node_background_task"
}
}, - "available_build_agent_image_tasks": {
- "data": [
- {
- "id": "01a11920-ee06-753d-b756-cb9ac7be82a2",
- "type": "node_background_task"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/agents/agent1/status",
- "log_lines": "/api/projects/opc/agents/agent1/status/log_lines"
}
}
]
}Updates an agent belonging to a project.
| project_code required | string Example: opc project code |
| agent_code required | string Example: agent1 agent code |
required | object |
{- "data": {
- "attributes": {
- "name": "Modified",
- "description": "The updated agent",
- "archived": false
}
}
}{- "data": {
- "id": "01a11920-f0d4-7006-a99c-74334c369b1b",
- "type": "agent",
- "attributes": {
- "code": "agent1",
- "name": "aliquam545",
- "description": "Dolore perferendis error consequuntur.",
- "archived": true,
- "created_by": "florentino.marquardt-1745",
- "task_active": false
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-f0dc-79eb-b8d4-87708f060fbc",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-f0dc-79eb-b8d4-87708f060fbc"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11920-f01f-7f8e-b327-cd123dd1604c",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11920-f0ed-7d24-ae3d-b6c53319c625",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-f0ed-7d24-ae3d-b6c53319c625"
}
}, - "parent": {
- "data": {
- "id": "01a11920-f01f-7f8e-b327-cd123dd1604c",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11920-f01f-7f8e-b327-cd123dd1604c",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "template_version": {
- "data": {
- "id": "01a11920-f082-7f3f-8828-199aeec7112f",
- "type": "template_version"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11920-f050-7d8d-b71c-6a5ca9a728ff/versions/2026_Q1_2"
}
}, - "bookmarks": {
- "data": [ ]
}, - "template": {
- "data": {
- "id": "01a11920-f050-7d8d-b71c-6a5ca9a728ff",
- "type": "template"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11920-f050-7d8d-b71c-6a5ca9a728ff"
}
}, - "latest_node_background_tasks": {
- "data": [
- {
- "id": "01a11920-f0f8-71ef-ae21-94b409a3ba12",
- "type": "node_background_task"
}
]
}, - "agent_status": {
- "data": {
- "id": "01a11920-f0f9-76b9-a0bf-549b75c791ce",
- "type": "agent_status"
}, - "links": {
- "related": "/api/projects/opc/agents/agent1/status"
}
}
}, - "links": {
- "self": "/api/projects/opc/agents/agent1",
- "bookmarks": "/api/projects/opc/agents/agent1/bookmarks",
- "converged_properties": "/api/projects/opc/agents/agent1/converged_properties",
- "parent": "/api/projects/opc",
- "node_background_tasks": "/api/projects/opc/agents/agent1/node_background_tasks",
- "version_history": "/api/projects/opc/agents/agent1/version_history"
}, - "meta": {
- "can_have_changes": false,
- "can_have_children": false,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": true,
- "child_node_types": [ ],
- "can_have_workflows": false,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "changes": {
- "read": true,
- "execute": false,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
}Archives an agent belonging to a project.
| project_code required | string Example: opc project code |
| agent_code required | string Example: agent1 agent code |
| ignore_in_use | boolean When true and the requesting user is a superuser, bypasses in use checks and force-destroys the agent. |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find Node"
}
}
]
}Show the converged settings for this agent, merged from the project and agent settings. Only the values that differ from the global settings are returned: a setting whose converged value matches the global value is omitted, even when it is set directly on a node, so the response is empty when nothing differs from the global settings.
The response includes a setting_sources meta object that attributes each setting value to its originating source.
| project_code required | string Example: opc project code |
| agent_code required | string Example: agent1 agent code |
{- "data": {
- "id": "agent1",
- "type": "converged_settings",
- "attributes": {
- "data": {
- "requires_approval_from": [
- {
- "change_filter": {
- "actions": "all"
}, - "user_names": [
- "opschain"
]
}
]
}
}, - "links": {
- "self": "/api/projects/opc/agents/agent1/converged_settings"
}, - "meta": {
- "setting_sources": {
- "by_setting": {
- "requires_approval_from": "Project: OpsChain (opc)"
}
}
}
}
}Show the converged properties as they will appear for this agent. i.e. the endpoint will
The API response will also include all the individual repository and database properties that were included in the result.
| project_code required | string Example: opc project code |
| agent_code required | string Example: agent1 agent code |
| converge_date | string Example: converge_date=2026-10-08T01:27:11+00:00 Specify the date (and optionally time), to derive the active template version and agent properties from. |
| exclude_layers[] | string Example: exclude_layers[]=template Exclude a property layer from the converged result. Repeat the parameter to exclude several layers, e.g. |
{- "data": {
- "id": "agent1",
- "type": "converged_properties",
- "attributes": {
- "data": {
- "repo": "project_properties",
- "common": "property",
- "project": "property",
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}
}, - "relationships": {
- "repository_properties": {
- "data": [
- {
- "id": "properties/properties.yaml",
- "type": "repository_properties"
}, - {
- "id": "properties/projects/opc/properties.yaml",
- "type": "repository_properties"
}
]
}, - "properties": {
- "data": [
- {
- "id": "01a11920-fad0-7b5e-9f7c-d25045106db1",
- "type": "properties_version"
}, - {
- "id": "01a11920-fb0e-70cc-8854-f3cb5f573085",
- "type": "properties_version"
}, - {
- "id": "01a11920-fb42-7d9a-93bf-1c93eba00bd6",
- "type": "properties_version"
}, - {
- "id": "01a11920-fb8a-73a8-80f0-36163eed167c",
- "type": "properties_version"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/agents/agent1/converged_properties"
}, - "meta": {
- "property_sources": {
- "by_property": {
- "repo": "Repository: .opschain/properties/projects/opc/properties.yaml",
- "common": "Repository: .opschain/properties/properties.yaml",
- "project": "Repository: .opschain/properties/projects/opc/properties.yaml",
- "any_key": "Project: OpsChain (opc)",
- "another_key": "Project: OpsChain (opc)",
- "nested": {
- "key": "Project: OpsChain (opc)"
}
}, - "sources": [
- {
- "group": "repository",
- "id": "properties/properties.yaml",
- "layer": "repo_common",
- "human": "Repository: .opschain/properties/properties.yaml"
}, - {
- "group": "repository",
- "id": "properties/projects/opc/properties.yaml",
- "layer": "project",
- "human": "Repository: .opschain/properties/projects/opc/properties.yaml"
}, - {
- "group": "database",
- "id": "project",
- "layer": "project",
- "human": "Project: OpsChain (opc)"
}, - {
- "group": "database",
- "id": "template",
- "layer": "template",
- "human": "Template: Agent example (agn)"
}, - {
- "group": "database",
- "id": "template_version",
- "layer": "template_version",
- "human": "Template version: Agent example (2026_Q1_2)"
}, - {
- "group": "database",
- "id": "agent",
- "layer": "agent",
- "human": "Agent: Agent (agent1)"
}
]
}, - "property_layers": [
- {
- "id": "repo_common",
- "human": "Common",
- "groups": [
- {
- "group": "repository",
- "included": true
}
]
}, - {
- "id": "project",
- "human": "Project",
- "groups": [
- {
- "group": "repository",
- "included": true
}, - {
- "group": "database",
- "included": true
}
]
}, - {
- "id": "template",
- "human": "Template",
- "groups": [
- {
- "group": "database",
- "included": true
}
]
}, - {
- "id": "template_version",
- "human": "Template version",
- "groups": [
- {
- "group": "database",
- "included": true
}
]
}, - {
- "id": "agent",
- "human": "Agent",
- "groups": [
- {
- "group": "database",
- "included": true
}
]
}
]
}
}, - "included": [
- {
- "id": "01a11920-fad0-7b5e-9f7c-d25045106db1",
- "type": "properties_version",
- "attributes": {
- "data": {
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}, - "version": 1,
- "created_at": "2026-10-08T01:29:14.191815Z",
- "owner_type": "Project"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-fac8-763c-a6f4-347d98b78e98",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-fac8-763c-a6f4-347d98b78e98"
}
}
}, - "links": {
- "versions": "/api/properties/01a11920-fac8-763c-a6f4-347d98b78e98/versions",
- "owner": "/api/projects/opc",
- "self": "/api/properties/01a11920-fac8-763c-a6f4-347d98b78e98/versions/1"
}, - "meta": { }
}, - {
- "id": "01a11920-fb0e-70cc-8854-f3cb5f573085",
- "type": "properties_version",
- "attributes": {
- "data": { },
- "version": 1,
- "created_at": "2026-10-08T01:29:14.253219Z",
- "owner_type": "Template"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-fb05-7f7d-ba54-be377fda1f3e",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-fb05-7f7d-ba54-be377fda1f3e"
}
}
}, - "links": {
- "versions": "/api/properties/01a11920-fb05-7f7d-ba54-be377fda1f3e/versions",
- "owner": "/api/projects/opc/templates/01a11920-fafe-70d3-a32c-807522ce7fba",
- "self": "/api/properties/01a11920-fb05-7f7d-ba54-be377fda1f3e/versions/1"
}, - "meta": { }
}, - {
- "id": "01a11920-fb42-7d9a-93bf-1c93eba00bd6",
- "type": "properties_version",
- "attributes": {
- "data": { },
- "version": 1,
- "created_at": "2026-10-08T01:29:14.305999Z",
- "owner_type": "Template version"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-fb38-73ea-b4cc-740c61934457",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-fb38-73ea-b4cc-740c61934457"
}
}
}, - "links": {
- "versions": "/api/properties/01a11920-fb38-73ea-b4cc-740c61934457/versions",
- "owner": "/api/projects/opc/templates/01a11920-fafe-70d3-a32c-807522ce7fba/versions/2026_Q1_2",
- "self": "/api/properties/01a11920-fb38-73ea-b4cc-740c61934457/versions/1"
}, - "meta": {
- "template_versions": {
- "2026_Q1_2": "01a11920-fb30-78c4-9b7e-df0501c3c4d8"
}
}
}, - {
- "id": "01a11920-fb8a-73a8-80f0-36163eed167c",
- "type": "properties_version",
- "attributes": {
- "data": { },
- "version": 1,
- "created_at": "2026-10-08T01:29:14.377480Z",
- "owner_type": "Agent"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-fb80-79d2-8e03-46e5d175d24b",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-fb80-79d2-8e03-46e5d175d24b"
}
}
}, - "links": {
- "versions": "/api/properties/01a11920-fb80-79d2-8e03-46e5d175d24b/versions",
- "owner": "/api/projects/opc/agents/agent1",
- "self": "/api/properties/01a11920-fb80-79d2-8e03-46e5d175d24b/versions/1"
}, - "meta": {
- "template_versions": {
- "2026_Q1_2": "01a11920-fb30-78c4-9b7e-df0501c3c4d8"
}
}
}, - {
- "id": "properties/properties.yaml",
- "type": "repository_properties",
- "attributes": {
- "content": {
- "repo": "base_properties",
- "common": "property"
}
}, - "links": {
- "repository_path": ".opschain/properties/properties.yaml"
}
}, - {
- "id": "properties/projects/opc/properties.yaml",
- "type": "repository_properties",
- "attributes": {
- "content": {
- "repo": "project_properties",
- "project": "property"
}
}, - "links": {
- "repository_path": ".opschain/properties/projects/opc/properties.yaml"
}
}
]
}Endpoints to interact with assets.
Notes:
show and list response payloads include links to the asset's changes, scheduled activity, bookmarks and MintModels endpoints. These endpoints act like
the changes, scheduled activity, bookmarks and MintModels endpoints respectively./<path/to/asset/owner>/assets path. The example endpoints in this section reflect assets owned by a project.Lists all assets (including archived assets) that belong to the project.
Each asset in the response includes a link to:
changes endpoint for managing changes belonging to this asset. It acts like the changes endpoint.scheduled_activities endpoint for managing scheduled activities belonging to this asset. It acts like a scheduled activities endpoint.bookmarks endpoint for managing the bookmarks belonging to this asset. It acts like a bookmarks endpoint.mintmodels endpoint for managing the MintModels belonging to this asset. It acts like a MintModels endpoint.mintmodel_history endpoint for viewing this asset's MintModel history. It acts like a MintModel history endpoint.workflows endpoint for viewing this asset's workflows. It acts like a Workflows endpoint.
.| project_code required | string Example: opc project code |
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[name_eq]=Test API filtering guide. Named filters: |
| download | string Example: download=assets.csv Download the project assets in CSV format with the specified file name. The assets will be ordered from oldest to newest when this parameter is specified, irrespective of the sort order requested. |
{- "data": [
- {
- "id": "01a11920-fd44-7a4a-894f-88765447e606",
- "type": "asset",
- "attributes": {
- "code": "prj_soa",
- "name": "Project asset",
- "description": "Project asset description",
- "archived": false,
- "created_by": "wade_turcotte-1791",
- "task_active": false
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-fd4a-7de7-a242-b11744a2cd3b",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-fd4a-7de7-a242-b11744a2cd3b"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11920-fcba-774c-8436-ffa7795ebe7a",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11920-fd57-7c4b-9500-54ab97805fe4",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-fd57-7c4b-9500-54ab97805fe4"
}
}, - "parent": {
- "data": {
- "id": "01a11920-fcba-774c-8436-ffa7795ebe7a",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11920-fcba-774c-8436-ffa7795ebe7a",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "template_version": {
- "data": {
- "id": "01a11920-fd0f-7e19-b231-51d7b8ea0305",
- "type": "template_version"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11920-fce3-712d-90a4-e04b96f60d72/versions/2023_Q4_2"
}
}, - "bookmarks": {
- "data": [
- {
- "id": "01a11920-fd77-7e0f-af26-ffb24a740b85",
- "type": "bookmark"
}
]
}, - "template": {
- "data": {
- "id": "01a11920-fce3-712d-90a4-e04b96f60d72",
- "type": "template"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11920-fce3-712d-90a4-e04b96f60d72"
}
}, - "latest_node_background_tasks": {
- "data": [
- {
- "id": "01a11920-fd69-7367-bdb1-6001a589b232",
- "type": "node_background_task"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa",
- "actions": "/api/projects/opc/assets/prj_soa/actions",
- "artefacts": "/api/projects/opc/assets/prj_soa/artefacts",
- "bookmarks": "/api/projects/opc/assets/prj_soa/bookmarks",
- "changes": "/api/projects/opc/assets/prj_soa/changes",
- "scheduled_activities": "/api/projects/opc/assets/prj_soa/scheduled_activities",
- "converged_properties": "/api/projects/opc/assets/prj_soa/converged_properties",
- "mintmodels": "/api/projects/opc/assets/prj_soa/mintmodels",
- "mintmodel_history": "/api/projects/opc/assets/prj_soa/mintmodel_history",
- "parent": "/api/projects/opc",
- "node_background_tasks": "/api/projects/opc/assets/prj_soa/node_background_tasks",
- "version_history": "/api/projects/opc/assets/prj_soa/version_history"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": false,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": true,
- "child_node_types": [ ],
- "can_have_workflows": false,
- "can_have_actions": true,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Creates an asset belonging to the project.
| project_code required | string Example: opc project code |
required | object |
{- "data": {
- "attributes": {
- "code": "prj_soa",
- "name": "Project asset",
- "description": "Project asset description",
- "template_code": "soa",
- "template_version": "2023_Q4_2"
}
}
}{- "data": {
- "id": "01a11920-ffd5-7c74-ad77-9f78212535d7",
- "type": "asset",
- "attributes": {
- "code": "y1eoj",
- "name": "in565",
- "description": "At commodi ipsum aspernatur.",
- "archived": false,
- "created_by": "logged_in_user",
- "task_active": true
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-ffdd-7954-92f9-8313b4cf913f",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-ffdd-7954-92f9-8313b4cf913f"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11920-fe57-7a95-8987-b70b3ac424b4",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11920-fff1-7d2c-a92b-5be1c096aa37",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-fff1-7d2c-a92b-5be1c096aa37"
}
}, - "parent": {
- "data": {
- "id": "01a11920-fe57-7a95-8987-b70b3ac424b4",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11920-fe57-7a95-8987-b70b3ac424b4",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "template_version": {
- "data": {
- "id": "01a11920-ff6b-7a52-9f40-a34f1bf1745e",
- "type": "template_version"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11920-ff32-73d2-8cbb-d48ac0a30db7/versions/2023_Q4_2"
}
}, - "bookmarks": {
- "data": [ ]
}, - "template": {
- "data": {
- "id": "01a11920-ff32-73d2-8cbb-d48ac0a30db7",
- "type": "template"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11920-ff32-73d2-8cbb-d48ac0a30db7"
}
}, - "latest_node_background_tasks": {
- "data": [
- {
- "id": "01a11921-000b-72a0-9094-243fc8580a73",
- "type": "node_background_task"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/assets/y1eoj",
- "actions": "/api/projects/opc/assets/y1eoj/actions",
- "artefacts": "/api/projects/opc/assets/y1eoj/artefacts",
- "bookmarks": "/api/projects/opc/assets/y1eoj/bookmarks",
- "changes": "/api/projects/opc/assets/y1eoj/changes",
- "scheduled_activities": "/api/projects/opc/assets/y1eoj/scheduled_activities",
- "converged_properties": "/api/projects/opc/assets/y1eoj/converged_properties",
- "mintmodels": "/api/projects/opc/assets/y1eoj/mintmodels",
- "mintmodel_history": "/api/projects/opc/assets/y1eoj/mintmodel_history",
- "parent": "/api/projects/opc",
- "node_background_tasks": "/api/projects/opc/assets/y1eoj/node_background_tasks",
- "version_history": "/api/projects/opc/assets/y1eoj/version_history"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": false,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": true,
- "child_node_types": [ ],
- "can_have_workflows": false,
- "can_have_actions": true,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
}Shows an asset belonging to a project.
The response includes a link to:
changes endpoint for managing changes belonging to this asset. It acts like the changes endpoint.scheduled_activities endpoint for managing scheduled activities belonging to this asset. It acts like a scheduled activities endpoint.bookmarks endpoint for managing the bookmarks belonging to this asset. It acts like a bookmarks endpoint.mintmodels endpoint for managing the MintModels belonging to this asset. It acts like a MintModels endpoint.mintmodel_history endpoint for viewing this asset's MintModel history. It acts like a MintModel history endpoint.workflows endpoint for viewing this asset's workflows. It acts like a Workflows endpoint.
.| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
{- "data": {
- "id": "01a11921-0265-74a0-aa48-182eeb5fbcd8",
- "type": "asset",
- "attributes": {
- "code": "prj_soa",
- "name": "Project asset",
- "description": "Project asset description",
- "archived": false,
- "created_by": "irmgard-1808",
- "mintmodel_valid": true,
- "mintmodel_invalid_reason": null,
- "erb_file_content": "<MintModel erb file contents>",
- "task_active": false
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-026f-7307-b6d5-72f23546bd5d",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-026f-7307-b6d5-72f23546bd5d"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11921-01a9-748e-887e-e79e67e44878",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11921-0285-78f7-8514-90c5497e85cb",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-0285-78f7-8514-90c5497e85cb"
}
}, - "parent": {
- "data": {
- "id": "01a11921-01a9-748e-887e-e79e67e44878",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11921-01a9-748e-887e-e79e67e44878",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "template_version": {
- "data": {
- "id": "01a11921-0220-7afa-b757-25ec742c8178",
- "type": "template_version"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11921-01dd-7d4c-8549-b51795967334/versions/2023_Q4_2"
}
}, - "bookmarks": {
- "data": [
- {
- "id": "01a11921-02b2-7bd8-b59f-a61978fc8d6a",
- "type": "bookmark"
}
]
}, - "template": {
- "data": {
- "id": "01a11921-01dd-7d4c-8549-b51795967334",
- "type": "template"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11921-01dd-7d4c-8549-b51795967334"
}
}, - "latest_node_background_tasks": {
- "data": [
- {
- "id": "01a11921-029f-74ae-9764-c0dd86055d75",
- "type": "node_background_task"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa",
- "actions": "/api/projects/opc/assets/prj_soa/actions",
- "artefacts": "/api/projects/opc/assets/prj_soa/artefacts",
- "bookmarks": "/api/projects/opc/assets/prj_soa/bookmarks",
- "changes": "/api/projects/opc/assets/prj_soa/changes",
- "scheduled_activities": "/api/projects/opc/assets/prj_soa/scheduled_activities",
- "converged_properties": "/api/projects/opc/assets/prj_soa/converged_properties",
- "mintmodels": "/api/projects/opc/assets/prj_soa/mintmodels",
- "mintmodel_history": "/api/projects/opc/assets/prj_soa/mintmodel_history",
- "parent": "/api/projects/opc",
- "node_background_tasks": "/api/projects/opc/assets/prj_soa/node_background_tasks",
- "version_history": "/api/projects/opc/assets/prj_soa/version_history"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": false,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": true,
- "child_node_types": [ ],
- "can_have_workflows": false,
- "can_have_actions": true,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}, - "included": [
- {
- "id": "01a11921-01a9-748e-887e-e79e67e44878",
- "type": "project",
- "attributes": {
- "code": "opc",
- "name": "OpsChain",
- "description": "OpsChain project",
- "archived": false,
- "created_by": "fidel-1806",
- "project_type": "Enterprise"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-01ac-7fd5-8785-2e1279b1c32a",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-01ac-7fd5-8785-2e1279b1c32a"
}
}, - "parents": {
- "data": [ ]
}, - "settings": {
- "data": {
- "id": "01a11921-01bb-7e8a-9209-d6ed77538275",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-01bb-7e8a-9209-d6ed77538275"
}
}, - "children": {
- "data": [
- {
- "id": "01a11921-0265-74a0-aa48-182eeb5fbcd8",
- "type": "asset"
}
]
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc",
- "artefacts": "/api/projects/opc/artefacts",
- "bookmarks": "/api/projects/opc/bookmarks",
- "changes": "/api/projects/opc/changes",
- "scheduled_activities": "/api/projects/opc/scheduled_activities",
- "git_remotes": "/api/projects/opc/git_remotes",
- "workflows": "/api/projects/opc/workflows",
- "workflow_runs": "/api/projects/opc/workflow_runs",
- "templates": "/api/projects/opc/templates",
- "environments": "/api/projects/opc/environments",
- "assets": "/api/projects/opc/assets",
- "agents": "/api/projects/opc/agents"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": true,
- "requires_template": false,
- "child_node_types": [
- "environment",
- "asset",
- "agent"
], - "can_have_workflows": true,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "git_remotes": {
- "read": true,
- "update": true,
- "delete": true
}, - "templates": {
- "read": true,
- "update": true,
- "delete": true
}, - "workflows": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "workflow_runs": {
- "read": true,
- "execute": true,
- "delete": true
}, - "environments": {
- "read": true,
- "update": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "agents": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}, - {
- "id": "01a11921-02b2-7bd8-b59f-a61978fc8d6a",
- "type": "bookmark",
- "attributes": {
- "description": "SOA administration console",
- "created_by": "harland.bergstrom-1810",
- "created_at": "2026-10-08T01:29:16.209908Z",
- "updated_at": "2026-10-08T01:29:16.209908Z"
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11921-0265-74a0-aa48-182eeb5fbcd8",
- "type": "asset"
}
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa/bookmarks/01a11921-02b2-7bd8-b59f-a61978fc8d6a",
- "parent": "/api/projects/opc/assets/prj_soa"
}
}, - {
- "id": "01a11921-01dd-7d4c-8549-b51795967334",
- "type": "template",
- "attributes": {
- "code": "soa",
- "name": "Oracle SOA template",
- "description": "Oracle SOA Suite 12c (12.2.1.4.0)",
- "archived": false,
- "disabled": false,
- "template_type": "asset",
- "created_at": "2026-10-08T01:29:15.996881Z",
- "updated_at": "2026-10-08T01:29:15.996881Z"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-01e6-7d4f-b5ae-627af650addf",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-01e6-7d4f-b5ae-627af650addf"
}
}, - "settings": {
- "data": {
- "id": "01a11921-01fa-7d44-8cbd-771bfca13d98",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-01fa-7d44-8cbd-771bfca13d98"
}
}, - "git_remote": {
- "data": {
- "id": "01a11921-01c8-7cce-aec9-2f563e11cbd4",
- "type": "git_remote"
}
}, - "template_versions": {
- "data": [
- {
- "id": "01a11921-0220-7afa-b757-25ec742c8178",
- "type": "template_version"
}
]
}, - "nodes": {
- "data": [
- {
- "id": "01a11921-0265-74a0-aa48-182eeb5fbcd8",
- "type": "asset"
}
]
}, - "project": {
- "data": {
- "id": "01a11921-01a9-748e-887e-e79e67e44878",
- "type": "project"
}
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11921-01dd-7d4c-8549-b51795967334",
- "template_versions": "/api/projects/opc/templates/01a11921-01dd-7d4c-8549-b51795967334/versions",
- "project": "/api/projects/opc"
}
}, - {
- "id": "01a11921-0220-7afa-b757-25ec742c8178",
- "type": "template_version",
- "attributes": {
- "version": "2023_Q4_2",
- "description": "Added additional configuration options",
- "state": "ready",
- "created_by": "shelton-1807",
- "archived": false,
- "initialization_error": null,
- "locked": false,
- "float_git_rev": false,
- "float_refresh_error": null,
- "created_at": "2026-10-08T01:29:16.063676Z",
- "updated_at": "2026-10-08T01:29:16.063676Z",
- "has_mintmodel": true,
- "git_rev": "back-end",
- "commit_sha": "db904046c82a30255c8320182742447581a53d2c",
- "git_remote_name": "github"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-0227-7aa6-9056-a3b165efcbc9",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-0227-7aa6-9056-a3b165efcbc9"
}
}, - "settings": {
- "data": {
- "id": "01a11921-023a-70ec-8cc6-7e5c358800bc",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-023a-70ec-8cc6-7e5c358800bc"
}
}, - "project": {
- "data": {
- "id": "01a11921-01a9-748e-887e-e79e67e44878",
- "type": "project"
}
}, - "template": {
- "data": {
- "id": "01a11921-01dd-7d4c-8549-b51795967334",
- "type": "template"
}
}, - "pending_commit": {
- "data": null
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11921-01dd-7d4c-8549-b51795967334/versions/2023_Q4_2",
- "template": "/api/projects/opc/templates/01a11921-01dd-7d4c-8549-b51795967334"
}
}
]
}Updates an asset belonging to a project.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
required | object |
{- "data": {
- "attributes": {
- "name": "Modified",
- "description": "The updated asset",
- "archived": false
}
}
}{- "data": {
- "id": "01a11921-0550-77d7-b23f-6141ee0b2b9e",
- "type": "asset",
- "attributes": {
- "code": "prj_soa",
- "name": "voluptates575",
- "description": "Necessitatibus rem unde vel.",
- "archived": true,
- "created_by": "manuela.baumbach-1818",
- "task_active": false
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-0557-7160-85a2-672db66d60d2",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-0557-7160-85a2-672db66d60d2"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11921-04cb-746c-9212-7052983f7738",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11921-0565-7b50-823e-4e715423304f",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-0565-7b50-823e-4e715423304f"
}
}, - "parent": {
- "data": {
- "id": "01a11921-04cb-746c-9212-7052983f7738",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11921-04cb-746c-9212-7052983f7738",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "template_version": {
- "data": {
- "id": "01a11921-051d-7256-8866-e6d1ff396f2b",
- "type": "template_version"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11921-04f4-762d-bb93-39e1147bb3bc/versions/2023_Q4_2"
}
}, - "bookmarks": {
- "data": [
- {
- "id": "01a11921-058a-70b4-910c-dcc3724d2071",
- "type": "bookmark"
}
]
}, - "template": {
- "data": {
- "id": "01a11921-04f4-762d-bb93-39e1147bb3bc",
- "type": "template"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11921-04f4-762d-bb93-39e1147bb3bc"
}
}, - "latest_node_background_tasks": {
- "data": [
- {
- "id": "01a11921-057a-7168-90ba-f899cb9a496d",
- "type": "node_background_task"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa",
- "actions": "/api/projects/opc/assets/prj_soa/actions",
- "artefacts": "/api/projects/opc/assets/prj_soa/artefacts",
- "bookmarks": "/api/projects/opc/assets/prj_soa/bookmarks",
- "changes": "/api/projects/opc/assets/prj_soa/changes",
- "scheduled_activities": "/api/projects/opc/assets/prj_soa/scheduled_activities",
- "converged_properties": "/api/projects/opc/assets/prj_soa/converged_properties",
- "mintmodels": "/api/projects/opc/assets/prj_soa/mintmodels",
- "mintmodel_history": "/api/projects/opc/assets/prj_soa/mintmodel_history",
- "parent": "/api/projects/opc",
- "node_background_tasks": "/api/projects/opc/assets/prj_soa/node_background_tasks",
- "version_history": "/api/projects/opc/assets/prj_soa/version_history"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": false,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": true,
- "child_node_types": [ ],
- "can_have_workflows": false,
- "can_have_actions": true,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
}Archives an asset belonging to a project.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| ignore_in_use | boolean When true and the requesting user is a superuser, bypasses in use checks and force-destroys the asset. |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find Node"
}
}
]
}Show the converged settings for this asset, merged from the project, environment and asset settings. Only the values that differ from the global settings are returned: a setting whose converged value matches the global value is omitted, even when it is set directly on a node, so the response is empty when nothing differs from the global settings.
The response includes a setting_sources meta object that attributes each setting value to its originating source.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
{- "data": {
- "id": "prj_soa",
- "type": "converged_settings",
- "attributes": {
- "data": {
- "requires_approval_from": [
- {
- "change_filter": {
- "actions": "all"
}, - "user_names": [
- "opschain"
]
}
]
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa/converged_settings"
}, - "meta": {
- "setting_sources": {
- "by_setting": {
- "requires_approval_from": "Project: OpsChain (opc)"
}
}
}
}
}Show the converged properties as they will appear to actions run on this asset. i.e. the endpoint will
The API response will also include all the individual repository and database properties that were included in the result.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| converge_date | string Example: converge_date=2026-10-08T01:27:11+00:00 Specify the date (and optionally time), to derive the active template version and asset properties from. |
| exclude_layers[] | string Example: exclude_layers[]=template Exclude a property layer from the converged result. Repeat the parameter to exclude several layers, e.g. |
{- "data": {
- "id": "prj_soa",
- "type": "converged_properties",
- "attributes": {
- "data": {
- "repo": "project_properties",
- "common": "property",
- "project": "property",
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}
}, - "relationships": {
- "repository_properties": {
- "data": [
- {
- "id": "properties/properties.yaml",
- "type": "repository_properties"
}, - {
- "id": "properties/projects/opc/properties.yaml",
- "type": "repository_properties"
}
]
}, - "properties": {
- "data": [
- {
- "id": "01a11921-1081-75c3-ab9f-ef63d2afdecc",
- "type": "properties_version"
}, - {
- "id": "01a11921-10fb-7f1c-95cb-dcaa3962ae85",
- "type": "properties_version"
}, - {
- "id": "01a11921-112a-78f9-9713-d8224dcaf4d0",
- "type": "properties_version"
}, - {
- "id": "01a11921-115f-7a45-9cd5-c41cb6962389",
- "type": "properties_version"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa/converged_properties"
}, - "meta": {
- "property_sources": {
- "by_property": {
- "repo": "Repository: .opschain/properties/projects/opc/properties.yaml",
- "common": "Repository: .opschain/properties/properties.yaml",
- "project": "Repository: .opschain/properties/projects/opc/properties.yaml",
- "any_key": "Project: OpsChain (opc)",
- "another_key": "Project: OpsChain (opc)",
- "nested": {
- "key": "Project: OpsChain (opc)"
}
}, - "sources": [
- {
- "group": "repository",
- "id": "properties/properties.yaml",
- "layer": "repo_common",
- "human": "Repository: .opschain/properties/properties.yaml"
}, - {
- "group": "repository",
- "id": "properties/projects/opc/properties.yaml",
- "layer": "project",
- "human": "Repository: .opschain/properties/projects/opc/properties.yaml"
}, - {
- "group": "database",
- "id": "project",
- "layer": "project",
- "human": "Project: OpsChain (opc)"
}, - {
- "group": "database",
- "id": "template",
- "layer": "template",
- "human": "Template: Oracle SOA template (soa)"
}, - {
- "group": "database",
- "id": "template_version",
- "layer": "template_version",
- "human": "Template version: Oracle SOA template (2023_Q4_2)"
}, - {
- "group": "database",
- "id": "asset",
- "layer": "asset",
- "human": "Asset: Project asset (prj_soa)"
}
]
}, - "property_layers": [
- {
- "id": "repo_common",
- "human": "Common",
- "groups": [
- {
- "group": "repository",
- "included": true
}
]
}, - {
- "id": "project",
- "human": "Project",
- "groups": [
- {
- "group": "repository",
- "included": true
}, - {
- "group": "database",
- "included": true
}
]
}, - {
- "id": "template",
- "human": "Template",
- "groups": [
- {
- "group": "database",
- "included": true
}
]
}, - {
- "id": "template_version",
- "human": "Template version",
- "groups": [
- {
- "group": "database",
- "included": true
}
]
}, - {
- "id": "asset",
- "human": "Asset",
- "groups": [
- {
- "group": "database",
- "included": true
}
]
}
]
}
}, - "included": [
- {
- "id": "01a11921-1081-75c3-ab9f-ef63d2afdecc",
- "type": "properties_version",
- "attributes": {
- "data": {
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}, - "version": 1,
- "created_at": "2026-10-08T01:29:19.744671Z",
- "owner_type": "Project"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-107a-7ac7-98fd-b387c3e31208",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-107a-7ac7-98fd-b387c3e31208"
}
}
}, - "links": {
- "versions": "/api/properties/01a11921-107a-7ac7-98fd-b387c3e31208/versions",
- "owner": "/api/projects/opc",
- "self": "/api/properties/01a11921-107a-7ac7-98fd-b387c3e31208/versions/1"
}, - "meta": { }
}, - {
- "id": "01a11921-10fb-7f1c-95cb-dcaa3962ae85",
- "type": "properties_version",
- "attributes": {
- "data": { },
- "version": 1,
- "created_at": "2026-10-08T01:29:19.866887Z",
- "owner_type": "Template"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-10f2-748c-9510-8495c27349e0",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-10f2-748c-9510-8495c27349e0"
}
}
}, - "links": {
- "versions": "/api/properties/01a11921-10f2-748c-9510-8495c27349e0/versions",
- "owner": "/api/projects/opc/templates/01a11921-10ea-7f09-bcbf-f78619a42679",
- "self": "/api/properties/01a11921-10f2-748c-9510-8495c27349e0/versions/1"
}, - "meta": { }
}, - {
- "id": "01a11921-112a-78f9-9713-d8224dcaf4d0",
- "type": "properties_version",
- "attributes": {
- "data": { },
- "version": 1,
- "created_at": "2026-10-08T01:29:19.913763Z",
- "owner_type": "Template version"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-1122-76c2-8955-f249daf082e3",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-1122-76c2-8955-f249daf082e3"
}
}
}, - "links": {
- "versions": "/api/properties/01a11921-1122-76c2-8955-f249daf082e3/versions",
- "owner": "/api/projects/opc/templates/01a11921-10ea-7f09-bcbf-f78619a42679/versions/2023_Q4_2",
- "self": "/api/properties/01a11921-1122-76c2-8955-f249daf082e3/versions/1"
}, - "meta": {
- "template_versions": {
- "2023_Q4_2": "01a11921-111b-7750-8ec9-bed21658832c"
}
}
}, - {
- "id": "01a11921-115f-7a45-9cd5-c41cb6962389",
- "type": "properties_version",
- "attributes": {
- "data": { },
- "version": 1,
- "created_at": "2026-10-08T01:29:19.966554Z",
- "owner_type": "Asset"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-1154-7e15-88e9-0ce6dfc3b49b",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-1154-7e15-88e9-0ce6dfc3b49b"
}
}
}, - "links": {
- "versions": "/api/properties/01a11921-1154-7e15-88e9-0ce6dfc3b49b/versions",
- "owner": "/api/projects/opc/assets/prj_soa",
- "self": "/api/properties/01a11921-1154-7e15-88e9-0ce6dfc3b49b/versions/1"
}, - "meta": {
- "template_versions": {
- "2023_Q4_2": "01a11921-111b-7750-8ec9-bed21658832c"
}
}
}, - {
- "id": "properties/properties.yaml",
- "type": "repository_properties",
- "attributes": {
- "content": {
- "repo": "base_properties",
- "common": "property"
}
}, - "links": {
- "repository_path": ".opschain/properties/properties.yaml"
}
}, - {
- "id": "properties/projects/opc/properties.yaml",
- "type": "repository_properties",
- "attributes": {
- "content": {
- "repo": "project_properties",
- "project": "property"
}
}, - "links": {
- "repository_path": ".opschain/properties/projects/opc/properties.yaml"
}
}
]
}List the log lines generated while building an image and querying the actions available for this asset / template version combination.
Note: See the list filtered log lines API docs for filtering options.
| node_background_task_id required | string Example: 01a1191e-fbd3-7a02-ae33-ad6c1efa445d |
| filter[<query/sort filter>]= | |
| download | string Example: download=change.log Download the log lines with the specified file name. The logs will be ordered from oldest to newest when this parameter is specified, irrespective of the sort order requested. |
| limit | integer [ 1 .. 10000 ] Default: 10000 Example: limit=50 Limit the number of log lines returned. When more records match than the limit a 206 response is returned and |
{- "data": [
- {
- "id": "01a11921-13cd-7abc-9b6e-f1bd2a795191",
- "type": "node_background_task_log_line",
- "attributes": {
- "message": "Qui rerum sequi culpa.",
- "category": "action",
- "template_version_history_id": "01a11921-139c-7855-958c-490432843f6e",
- "node_background_task_id": "01a11921-13ad-79d5-a61e-afa76e5a5589",
- "logged_at": "2026-10-07T00:00:00.000000Z"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}Create a request to refresh the actions list for an asset.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
required | object |
{- "data": {
- "attributes": {
- "build_without_cache": false
}
}
}{- "data": {
- "id": "01a11921-17b2-7afc-80ca-e02e2c52b548",
- "type": "node_background_task",
- "attributes": {
- "request_number": 3,
- "status_code": "initializing",
- "error_message": null,
- "created_by": "logged_in_user",
- "actions_count": 0,
- "task_type": "GenerateActionsRequest",
- "created_at": "2026-10-08T01:29:21.585780Z",
- "updated_at": "2026-10-08T01:29:21.585780Z",
- "build_without_cache": false
}, - "relationships": {
- "template_version_history": {
- "data": {
- "id": "01a11921-1767-7e79-9c75-e92a8330e4fd",
- "type": "template_version_history"
}
}, - "owner": {
- "data": {
- "id": "01a11921-1747-7ef0-8390-23de06f0b2b3",
- "type": "asset"
}
}
}, - "links": {
- "template_version": "/api/projects/opc/templates/01a11921-16e5-7f0a-a2da-7110bbef34f8/versions/2023_Q4_2",
- "self": "/api/projects/opc/assets/prj_soa/node_background_tasks/01a11921-17b2-7afc-80ca-e02e2c52b548",
- "asset": "/api/projects/opc/assets/prj_soa",
- "log_lines": "/api/node_background_task_log_lines?node_background_task_id=01a11921-17b2-7afc-80ca-e02e2c52b548"
}
}
}Lists all generate actions requests made for the asset's current template version.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[request_number_eq]=1 API filtering guide. Named filters: |
| limit | integer [ 1 .. 10000 ] Default: 100 Example: limit=50 Limit the number of requests returned. When more records match than the limit a 206 response is returned and |
{- "data": [
- {
- "id": "01a11921-1930-70d5-8211-a5fef55de73a",
- "type": "node_background_task",
- "attributes": {
- "request_number": 2,
- "status_code": "error",
- "error_message": "- failed to concretise this asset's MintModel",
- "created_by": "mariano-1895",
- "actions_count": 0,
- "task_type": "MintModelConcretiseTask",
- "created_at": "2026-10-08T01:29:21.967248Z",
- "updated_at": "2026-10-08T01:29:21.969688Z",
- "render_logs": {
- "context": {
- "asset": "opc/soa1",
- "template_version": "2023_Q4_2"
}, - "exception": "MintPress::ConcretisationError: unable to resolve property @db_host",
- "exception_backtrace": [
- "/opt/opschain/lib/mintpress/model.rb:214:in `concretise'"
], - "property_converge_failure": "the property @db_host is not defined for this asset"
}
}, - "relationships": {
- "template_version_history": {
- "data": {
- "id": "01a11921-1900-74a6-9a44-36158de238f9",
- "type": "template_version_history"
}
}, - "owner": {
- "data": {
- "id": "01a11921-18e1-71b2-946a-2b5f6e91b60f",
- "type": "asset"
}
}
}, - "links": {
- "template_version": "/api/projects/opc/templates/01a11921-187a-7b99-a1cc-0db0faa3f3dd/versions/2023_Q4_2",
- "self": "/api/projects/opc/assets/prj_soa/node_background_tasks/01a11921-1930-70d5-8211-a5fef55de73a",
- "asset": "/api/projects/opc/assets/prj_soa",
- "log_lines": "/api/node_background_task_log_lines?node_background_task_id=01a11921-1930-70d5-8211-a5fef55de73a"
}
}, - {
- "id": "01a11921-190d-7921-8f68-5affbd8c3d89",
- "type": "node_background_task",
- "attributes": {
- "request_number": 1,
- "status_code": "success",
- "error_message": null,
- "created_by": "rosalyn.ortiz-1893",
- "actions_count": 1,
- "task_type": "GenerateActionsRequest",
- "created_at": "2026-10-08T01:29:21.932702Z",
- "updated_at": "2026-10-08T01:29:21.939973Z",
- "build_without_cache": false
}, - "relationships": {
- "template_version_history": {
- "data": {
- "id": "01a11921-1900-74a6-9a44-36158de238f9",
- "type": "template_version_history"
}
}, - "owner": {
- "data": {
- "id": "01a11921-18e1-71b2-946a-2b5f6e91b60f",
- "type": "asset"
}
}
}, - "links": {
- "template_version": "/api/projects/opc/templates/01a11921-187a-7b99-a1cc-0db0faa3f3dd/versions/2023_Q4_2",
- "self": "/api/projects/opc/assets/prj_soa/node_background_tasks/01a11921-190d-7921-8f68-5affbd8c3d89",
- "asset": "/api/projects/opc/assets/prj_soa",
- "log_lines": "/api/node_background_task_log_lines?node_background_task_id=01a11921-190d-7921-8f68-5affbd8c3d89"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}, - "partial_response": false
}
}Show a specific actions generation request.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| node_background_task_id required | string Example: 01a1191e-fbd3-7a02-ae33-ad6c1efa445d generate actions request id |
{- "data": {
- "id": "01a11921-1ab0-7344-97aa-eb736b2c1d07",
- "type": "node_background_task",
- "attributes": {
- "request_number": 1,
- "status_code": "success",
- "error_message": null,
- "created_by": "melvin_harris-1901",
- "actions": [
- {
- "action": "deploy",
- "children": [
- {
- "action": "deploy:configure",
- "children": [ ],
- "pre_reqs": [ ],
- "full_path": "deploy/configure",
- "step_name": "configure",
- "stage_step": false,
- "description": "Configure the asset",
- "ignore_failure": false,
- "reload_actions": false,
- "mintmodel_placeholder": false
}
], - "pre_reqs": [ ],
- "full_path": "deploy",
- "step_name": "deploy",
- "stage_step": false,
- "description": "Deploy the asset",
- "ignore_failure": false,
- "child_execution_strategy": "sequential"
}
], - "actions_count": 1,
- "task_type": "GenerateActionsRequest",
- "created_at": "2026-10-08T01:29:22.351507Z",
- "updated_at": "2026-10-08T01:29:22.358030Z",
- "build_without_cache": false
}, - "relationships": {
- "template_version_history": {
- "data": {
- "id": "01a11921-1aa6-7a10-a501-94459d59a4aa",
- "type": "template_version_history"
}
}, - "owner": {
- "data": {
- "id": "01a11921-1a8b-7353-99f8-0c582709866d",
- "type": "asset"
}
}
}, - "links": {
- "template_version": "/api/projects/opc/templates/01a11921-1a2c-7040-a40c-853d3ce8dfab/versions/2023_Q4_2",
- "self": "/api/projects/opc/assets/prj_soa/node_background_tasks/01a11921-1ab0-7344-97aa-eb736b2c1d07",
- "asset": "/api/projects/opc/assets/prj_soa",
- "log_lines": "/api/node_background_task_log_lines?node_background_task_id=01a11921-1ab0-7344-97aa-eb736b2c1d07"
}
}
}Cancels the generate actions request.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| node_background_task_id required | string Example: 01a1191e-fbd3-7a02-ae33-ad6c1efa445d generate actions request id |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find NodeBackgroundTask"
}
}
]
}Lists all properties versions and template versions for the asset and its parents.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
{- "data": [
- {
- "id": "01a11921-76ec-7813-b19c-67fee7dc1753",
- "type": "project",
- "attributes": {
- "level": 0,
- "code": "opc",
- "name": "OpsChain",
- "properties_versions": [
- {
- "version": 1,
- "start_date": "2026-10-08T01:29:46Z"
}
]
}
}, - {
- "id": "01a11921-7732-736c-9caf-cfb2b6656a86",
- "type": "template",
- "attributes": {
- "level": 1,
- "code": "soa",
- "name": "Oracle SOA template",
- "properties_versions": [
- {
- "version": 1,
- "start_date": "2026-10-08T01:29:46Z"
}
]
}
}, - {
- "id": "01a11921-7791-7d19-946b-b7f6236217fd",
- "type": "asset",
- "attributes": {
- "level": 3,
- "code": "prj_soa",
- "name": "Project asset",
- "properties_versions": [
- {
- "version": 1,
- "start_date": "2026-10-08T01:29:46Z"
}
], - "template_versions": [ ]
}
}
]
}Lists the template versions that have been assigned to the asset.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[name_eq]=Test API filtering guide. Named filters: |
{- "data": [
- {
- "id": "01a11922-0782-7090-bafc-79b9a8c92319",
- "type": "template_version_history",
- "attributes": {
- "created_by": "elaine_macejkovic-2647",
- "active_from": "2026-10-08T01:30:22.975806Z",
- "active_to": null
}, - "relationships": {
- "owner": {
- "data": {
- "id": "01a11922-075d-7e38-882c-59421a529482",
- "type": "asset"
}
}, - "template_version": {
- "data": {
- "id": "01a11922-072a-7151-8db5-3f39ee40ae2a",
- "type": "template_version"
}
}, - "node_background_tasks": {
- "data": [
- {
- "id": "01a11922-078e-7456-91f9-d5517a7e02fa",
- "type": "node_background_task"
}
]
}
}, - "links": {
- "template_version": "/api/projects/opc/templates/01a11922-06ff-738c-a458-49368b8ea654/versions/2023_Q4_2",
- "self": "/api/projects/opc/assets/prj_soa/version_history/01a11922-0782-7090-bafc-79b9a8c92319",
- "asset": "/api/projects/opc/assets/prj_soa"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}
}
}Shows a specific project asset's template version history record.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| id required | string Example: 01a1191e-fb83-7e27-8e4a-2a33665df03b version history id |
{- "data": {
- "id": "01a11922-08e2-711a-bfdf-4b67bce2a563",
- "type": "template_version_history",
- "attributes": {
- "created_by": "berry.pollich-2654",
- "active_from": "2026-10-08T01:30:23.328751Z",
- "active_to": null
}, - "relationships": {
- "owner": {
- "data": {
- "id": "01a11922-08c7-71b3-8f0c-fd61eb7a26ab",
- "type": "asset"
}
}, - "template_version": {
- "data": {
- "id": "01a11922-0899-7fd5-a512-e8ee7e491c38",
- "type": "template_version"
}
}, - "node_background_tasks": {
- "data": [
- {
- "id": "01a11922-08ec-7a5f-8ca8-f24b79a04cdb",
- "type": "node_background_task"
}
]
}
}, - "links": {
- "template_version": "/api/projects/opc/templates/01a11922-086e-7217-8c13-cc806ea67bb0/versions/2023_Q4_2",
- "self": "/api/projects/opc/assets/prj_soa/version_history/01a11922-08e2-711a-bfdf-4b67bce2a563",
- "asset": "/api/projects/opc/assets/prj_soa"
}
}, - "included": [
- {
- "id": "01a11922-08c7-71b3-8f0c-fd61eb7a26ab",
- "type": "asset",
- "attributes": {
- "code": "prj_soa",
- "name": "Project asset",
- "description": "Project asset description",
- "archived": false,
- "created_by": "berry.pollich-2654",
- "task_active": false
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11922-08cc-78f0-8e0d-4a00f8a4c283",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-08cc-78f0-8e0d-4a00f8a4c283"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11922-0840-7dc2-a897-7a40d87fb551",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11922-08d9-7816-a3ee-a0c93fa44139",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11922-08d9-7816-a3ee-a0c93fa44139"
}
}, - "parent": {
- "data": {
- "id": "01a11922-0840-7dc2-a897-7a40d87fb551",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11922-0840-7dc2-a897-7a40d87fb551",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "template_version": {
- "data": {
- "id": "01a11922-0899-7fd5-a512-e8ee7e491c38",
- "type": "template_version"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11922-086e-7217-8c13-cc806ea67bb0/versions/2023_Q4_2"
}
}, - "bookmarks": {
- "data": [
- {
- "id": "01a11922-08fc-7623-a02b-4e46a319acd5",
- "type": "bookmark"
}
]
}, - "template": {
- "data": {
- "id": "01a11922-086e-7217-8c13-cc806ea67bb0",
- "type": "template"
}, - "links": {
- "related": "/api/projects/opc/templates/01a11922-086e-7217-8c13-cc806ea67bb0"
}
}, - "latest_node_background_tasks": {
- "data": [
- {
- "id": "01a11922-08ec-7a5f-8ca8-f24b79a04cdb",
- "type": "node_background_task"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa",
- "actions": "/api/projects/opc/assets/prj_soa/actions",
- "artefacts": "/api/projects/opc/assets/prj_soa/artefacts",
- "bookmarks": "/api/projects/opc/assets/prj_soa/bookmarks",
- "changes": "/api/projects/opc/assets/prj_soa/changes",
- "scheduled_activities": "/api/projects/opc/assets/prj_soa/scheduled_activities",
- "converged_properties": "/api/projects/opc/assets/prj_soa/converged_properties",
- "mintmodels": "/api/projects/opc/assets/prj_soa/mintmodels",
- "mintmodel_history": "/api/projects/opc/assets/prj_soa/mintmodel_history",
- "parent": "/api/projects/opc",
- "node_background_tasks": "/api/projects/opc/assets/prj_soa/node_background_tasks",
- "version_history": "/api/projects/opc/assets/prj_soa/version_history"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": false,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": true,
- "child_node_types": [ ],
- "can_have_workflows": false,
- "can_have_actions": true,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}, - {
- "id": "01a11922-0899-7fd5-a512-e8ee7e491c38",
- "type": "template_version",
- "attributes": {
- "version": "2023_Q4_2",
- "description": "Added additional configuration options",
- "state": "ready",
- "created_by": "ronnie-2653",
- "archived": false,
- "initialization_error": null,
- "locked": false,
- "float_git_rev": false,
- "float_refresh_error": null,
- "created_at": "2026-10-08T01:30:23.257214Z",
- "updated_at": "2026-10-08T01:30:23.257214Z",
- "has_mintmodel": true,
- "git_rev": "digital",
- "commit_sha": "60c09777916e4b1475919cdd8db5870298f07bb9",
- "git_remote_name": "github"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11922-089f-7015-91f6-fcb66c858d17",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-089f-7015-91f6-fcb66c858d17"
}
}, - "settings": {
- "data": {
- "id": "01a11922-08aa-794f-bdee-d72f2dc2330b",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11922-08aa-794f-bdee-d72f2dc2330b"
}
}, - "project": {
- "data": {
- "id": "01a11922-0840-7dc2-a897-7a40d87fb551",
- "type": "project"
}
}, - "template": {
- "data": {
- "id": "01a11922-086e-7217-8c13-cc806ea67bb0",
- "type": "template"
}
}, - "pending_commit": {
- "data": null
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11922-086e-7217-8c13-cc806ea67bb0/versions/2023_Q4_2",
- "template": "/api/projects/opc/templates/01a11922-086e-7217-8c13-cc806ea67bb0"
}
}
]
}Endpoints to query the action step trees available for a templated node.
Notes:
action name or their
step_name. Child actions are not individually addressable - they are included in each action's
children attribute by the show endpoint, and by the list endpoint when include_children is set.Lists every action available for the asset.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| include_children | boolean Example: include_children=true By default each action is returned without its |
{- "data": [
- {
- "id": "deploy",
- "type": "action",
- "links": {
- "self": "/api/projects/opc/assets/prj_soa/actions/deploy"
}, - "attributes": {
- "action": "deploy",
- "pre_reqs": [ ],
- "full_path": "deploy",
- "step_name": "deploy",
- "stage_step": false,
- "description": "Deploy the asset",
- "ignore_failure": false,
- "child_execution_strategy": "sequential"
}
}, - {
- "id": "provision",
- "type": "action",
- "links": {
- "self": "/api/projects/opc/assets/prj_soa/actions/provision"
}, - "attributes": {
- "action": "provision",
- "step_name": "provision",
- "full_path": "provision",
- "description": "Provision resource on existing hardware",
- "child_execution_strategy": "sequential",
- "stage_step": true,
- "ignore_failure": false,
- "pre_reqs": [ ]
}
}
]
}Shows the step tree of one of the asset's actions. The action can be identified by its action name or its step_name.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| id required | string Example: deploy action name or step name |
{- "data": {
- "id": "deploy",
- "type": "action",
- "links": {
- "self": "/api/projects/opc/assets/prj_soa/actions/deploy"
}, - "attributes": {
- "action": "deploy",
- "children": [
- {
- "action": "deploy:configure",
- "children": [ ],
- "pre_reqs": [ ],
- "full_path": "deploy/configure",
- "step_name": "configure",
- "stage_step": false,
- "description": "Configure the asset",
- "ignore_failure": false,
- "reload_actions": false,
- "mintmodel_placeholder": false
}
], - "pre_reqs": [ ],
- "full_path": "deploy",
- "step_name": "deploy",
- "stage_step": false,
- "description": "Deploy the asset",
- "ignore_failure": false,
- "child_execution_strategy": "sequential"
}
}
}Templates provide the available actions and a base set of repository properties that will be used to configure the asset.
Create a template.
| project_code required | string Example: opc project code |
required | object |
{- "data": {
- "attributes": {
- "code": "soa",
- "name": "Oracle SOA template",
- "template_type": "asset",
- "description": "Oracle SOA Suite 12c (12.2.1.4.0)",
- "git_remote_name": "github"
}
}
}{- "data": {
- "id": "01a11921-f41b-7958-8acf-abd50d7df51d",
- "type": "template",
- "attributes": {
- "code": "yx9la",
- "name": "garrett.ortiz",
- "description": "Dignissimos doloremque sit ea.",
- "archived": false,
- "disabled": false,
- "template_type": "asset",
- "created_at": "2026-10-08T01:30:18.010679Z",
- "updated_at": "2026-10-08T01:30:18.010679Z"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-f422-7c46-a14c-4105380aceec",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-f422-7c46-a14c-4105380aceec"
}
}, - "settings": {
- "data": {
- "id": "01a11921-f42f-79ab-ae2c-d759f4c9010c",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-f42f-79ab-ae2c-d759f4c9010c"
}
}, - "git_remote": {
- "data": {
- "id": "01a11921-f3b6-7d83-b19c-a328fd566bee",
- "type": "git_remote"
}
}, - "template_versions": {
- "data": [ ]
}, - "nodes": {
- "data": [ ]
}, - "project": {
- "data": {
- "id": "01a11921-f396-7faa-acaf-26d2d2a7b353",
- "type": "project"
}
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11921-f41b-7958-8acf-abd50d7df51d",
- "template_versions": "/api/projects/opc/templates/01a11921-f41b-7958-8acf-abd50d7df51d/versions",
- "project": "/api/projects/opc"
}
}
}Lists all templates for a project.
| project_code required | string Example: opc project code |
| filter[<query/sort filter>]= | |
| exclude_archived_nodes | boolean Example: exclude_archived_nodes=true when true, excludes archived nodes from each template's nodes relationship |
{- "data": [
- {
- "id": "01a11921-f810-718e-a946-5885de22b4b5",
- "type": "template",
- "attributes": {
- "code": "soa",
- "name": "Oracle SOA template",
- "description": "Oracle SOA Suite 12c (12.2.1.4.0)",
- "archived": false,
- "disabled": false,
- "template_type": "asset",
- "created_at": "2026-10-08T01:30:19.023036Z",
- "updated_at": "2026-10-08T01:30:19.023036Z"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-f819-7497-84f8-63f85cb7beb4",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-f819-7497-84f8-63f85cb7beb4"
}
}, - "settings": {
- "data": {
- "id": "01a11921-f82a-7136-9a03-7b96fc0e2215",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-f82a-7136-9a03-7b96fc0e2215"
}
}, - "git_remote": {
- "data": {
- "id": "01a11921-f7ee-747d-9df3-2e602bdc6603",
- "type": "git_remote"
}
}, - "template_versions": {
- "data": [ ]
}, - "nodes": {
- "data": [ ]
}, - "project": {
- "data": {
- "id": "01a11921-f7c9-7776-9d3b-9a6c8df8c3a4",
- "type": "project"
}
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11921-f810-718e-a946-5885de22b4b5",
- "template_versions": "/api/projects/opc/templates/01a11921-f810-718e-a946-5885de22b4b5/versions",
- "project": "/api/projects/opc"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Shows a project template.
| project_code required | string Example: opc project code |
| template_id required | string Example: 01a1191e-f93a-781b-9b39-58687b666b16 template id |
| exclude_archived_nodes | boolean Example: exclude_archived_nodes=true when true, excludes archived nodes from each template's nodes relationship |
{- "data": {
- "id": "01a11921-fa15-7a14-8796-aee9c9a27d1d",
- "type": "template",
- "attributes": {
- "code": "soa",
- "name": "Oracle SOA template",
- "description": "Oracle SOA Suite 12c (12.2.1.4.0)",
- "archived": false,
- "disabled": false,
- "template_type": "asset",
- "created_at": "2026-10-08T01:30:19.540818Z",
- "updated_at": "2026-10-08T01:30:19.540818Z"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-fa1c-7f1b-8780-2b00e7482ff8",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-fa1c-7f1b-8780-2b00e7482ff8"
}
}, - "settings": {
- "data": {
- "id": "01a11921-fa2a-7139-88b2-56f418153796",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-fa2a-7139-88b2-56f418153796"
}
}, - "git_remote": {
- "data": {
- "id": "01a11921-fa06-720b-8512-701db63f4caf",
- "type": "git_remote"
}
}, - "template_versions": {
- "data": [ ]
}, - "nodes": {
- "data": [ ]
}, - "project": {
- "data": {
- "id": "01a11921-f9e6-7df5-8734-7b6c930ee1a4",
- "type": "project"
}
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11921-fa15-7a14-8796-aee9c9a27d1d",
- "template_versions": "/api/projects/opc/templates/01a11921-fa15-7a14-8796-aee9c9a27d1d/versions",
- "project": "/api/projects/opc"
}
}, - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Archives/unarchives a template.
| project_code required | string Example: opc project code |
| id_to_archive required | string Example: 01a1191e-f93a-781b-9b39-58687b666b16 template id |
required | object |
{- "data": {
- "attributes": {
- "archived": true
}
}
}{- "data": {
- "id": "01a11921-fcaa-7600-9f95-0f15c2b0d4d4",
- "type": "template",
- "attributes": {
- "code": "soa",
- "name": "Oracle SOA template",
- "description": "Oracle SOA Suite 12c (12.2.1.4.0)",
- "archived": true,
- "disabled": false,
- "template_type": "asset",
- "created_at": "2026-10-08T01:30:20.201458Z",
- "updated_at": "2026-10-08T01:30:20.278284Z"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-fcb2-784a-8e89-fd1e2f3906f5",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-fcb2-784a-8e89-fd1e2f3906f5"
}
}, - "settings": {
- "data": {
- "id": "01a11921-fcc3-7e24-a9ee-4144b14b17ea",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-fcc3-7e24-a9ee-4144b14b17ea"
}
}, - "git_remote": {
- "data": {
- "id": "01a11921-fc94-7d29-ae02-835113f9e6d1",
- "type": "git_remote"
}
}, - "template_versions": {
- "data": [ ]
}, - "nodes": {
- "data": [ ]
}, - "project": {
- "data": {
- "id": "01a11921-fc76-7996-acd1-436c7f443e01",
- "type": "project"
}
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11921-fcaa-7600-9f95-0f15c2b0d4d4",
- "template_versions": "/api/projects/opc/templates/01a11921-fcaa-7600-9f95-0f15c2b0d4d4/versions",
- "project": "/api/projects/opc"
}
}
}Update a templates details.
| project_code required | string Example: opc project code |
| id_to_update required | string Example: 01a1191e-f93a-781b-9b39-58687b666b16 template id |
required | object |
{- "data": {
- "attributes": {
- "name": "Oracle SOA template",
- "description": "Oracle SOA Suite 12c (12.2.1.4.0)",
- "git_remote_name": "github",
- "disabled": false
}
}
}{- "data": {
- "id": "01a11922-007e-7795-a835-6300a6eb68b5",
- "type": "template",
- "attributes": {
- "code": "soa",
- "name": "updated_name",
- "description": "updated_description",
- "archived": false,
- "disabled": false,
- "template_type": "asset",
- "created_at": "2026-10-08T01:30:21.181732Z",
- "updated_at": "2026-10-08T01:30:21.231071Z"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11922-0084-7c99-8a96-0ca7f0a1a48e",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-0084-7c99-8a96-0ca7f0a1a48e"
}
}, - "settings": {
- "data": {
- "id": "01a11922-0091-79a7-af6d-243a3f86f319",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11922-0091-79a7-af6d-243a3f86f319"
}
}, - "git_remote": {
- "data": {
- "id": "01a11922-006f-750a-9794-99ba7fc20e98",
- "type": "git_remote"
}
}, - "template_versions": {
- "data": [ ]
}, - "nodes": {
- "data": [ ]
}, - "project": {
- "data": {
- "id": "01a11922-0052-7d53-bb62-fa2001c15c20",
- "type": "project"
}
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11922-007e-7795-a835-6300a6eb68b5",
- "template_versions": "/api/projects/opc/templates/01a11922-007e-7795-a835-6300a6eb68b5/versions",
- "project": "/api/projects/opc"
}
}
}Deletes a project template. A template cannot be deleted while it is assigned to a node or referenced by a change.
| project_code required | string Example: opc project code |
| id_to_delete required | string Example: 01a1191e-f93a-781b-9b39-58687b666b16 template id |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find Project"
}
}
]
}Lists all versions of a specific template.
| project_code required | string Example: opc project code |
| template_id required | string Example: 01a1191e-f93a-781b-9b39-58687b666b16 template id |
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[version_cont]=1.0 API filtering guide. Named filters: |
{- "data": [
- {
- "id": "01a11922-0a1c-738a-a096-f42098ab4ad2",
- "type": "template_version",
- "attributes": {
- "version": "2023_Q4_2",
- "description": "Added additional configuration options",
- "state": "ready",
- "created_by": "jessia_hoeger-2660",
- "archived": false,
- "initialization_error": null,
- "locked": false,
- "float_git_rev": false,
- "float_refresh_error": null,
- "created_at": "2026-10-08T01:30:23.643293Z",
- "updated_at": "2026-10-08T01:30:23.643293Z",
- "has_mintmodel": true,
- "git_rev": "open-source",
- "commit_sha": "b24f4a0c014b36f0040f8eec3dadf0b3aeb0b0e6",
- "git_remote_name": "github"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11922-0a22-7589-acda-312c857381e3",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-0a22-7589-acda-312c857381e3"
}
}, - "settings": {
- "data": {
- "id": "01a11922-0a2e-737e-8a0d-339f1e57269a",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11922-0a2e-737e-8a0d-339f1e57269a"
}
}, - "project": {
- "data": {
- "id": "01a11922-09bf-721c-b607-ed1e619be921",
- "type": "project"
}
}, - "template": {
- "data": {
- "id": "01a11922-09ed-75f7-964a-bb23a5699aa1",
- "type": "template"
}
}, - "pending_commit": {
- "data": null
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11922-09ed-75f7-964a-bb23a5699aa1/versions/2023_Q4_2",
- "template": "/api/projects/opc/templates/01a11922-09ed-75f7-964a-bb23a5699aa1"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Create or update a template version.
| project_code required | string Example: opc project code |
| template_id required | string Example: 01a1191e-f93a-781b-9b39-58687b666b16 template id |
| version required | string Example: 2023_Q4_2 template version |
required | object |
object |
{- "data": {
- "attributes": {
- "description": "Added additional configuration options",
- "git_rev": "bluetooth",
- "archived": "false",
- "locked": "false",
- "float_git_rev": "false"
}
}, - "meta": {
- "ignore_in_use": false,
- "fetch_revision": false
}
}{- "data": {
- "id": "01a11922-0e09-7035-8785-5c454d1a4647",
- "type": "template_version",
- "attributes": {
- "version": "2023_Q4_2",
- "description": "Delectus beatae quod ad enim facilis autem possimus atque magni maiores aperiam quas nesciunt non",
- "state": "initializing",
- "created_by": "logged_in_user",
- "archived": false,
- "initialization_error": null,
- "locked": false,
- "float_git_rev": false,
- "float_refresh_error": null,
- "created_at": "2026-10-08T01:30:24.647829Z",
- "updated_at": "2026-10-08T01:30:24.647829Z",
- "has_mintmodel": false,
- "git_rev": "bluetooth",
- "commit_sha": null,
- "git_remote_name": "github"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11922-0e0f-7be4-aec4-7fb365233f6a",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-0e0f-7be4-aec4-7fb365233f6a"
}
}, - "settings": {
- "data": {
- "id": "01a11922-0e1e-77b0-9c16-e793e0bd1b8c",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11922-0e1e-77b0-9c16-e793e0bd1b8c"
}
}, - "project": {
- "data": {
- "id": "01a11922-0cc9-7a04-adb7-fb98f6abcd7d",
- "type": "project"
}
}, - "template": {
- "data": {
- "id": "01a11922-0d08-761e-8101-14f29cc5a532",
- "type": "template"
}
}, - "pending_commit": {
- "data": {
- "id": "01a11922-0e00-704c-9c7c-a90901a5033e",
- "type": "commit"
}
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11922-0d08-761e-8101-14f29cc5a532/versions/2023_Q4_2",
- "template": "/api/projects/opc/templates/01a11922-0d08-761e-8101-14f29cc5a532"
}
}
}Shows a specific template version.
| project_code required | string Example: opc project code |
| template_id required | string Example: 01a1191e-f93a-781b-9b39-58687b666b16 template id |
| version required | string Example: 2023_Q4_2 template version |
{- "data": {
- "id": "01a11922-130d-7112-ba4b-9f441237cc12",
- "type": "template_version",
- "attributes": {
- "version": "2023_Q4_2",
- "description": "Added additional configuration options",
- "state": "ready",
- "created_by": "londa-2688",
- "archived": false,
- "initialization_error": null,
- "locked": false,
- "float_git_rev": false,
- "float_refresh_error": null,
- "created_at": "2026-10-08T01:30:25.932107Z",
- "updated_at": "2026-10-08T01:30:25.932107Z",
- "has_mintmodel": true,
- "git_rev": "1080p",
- "commit_sha": "34d8adfcf65677bf7e9eb008476cb9a9433a1955",
- "git_remote_name": "github"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11922-1313-763c-9a76-cbaee2ce637a",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-1313-763c-9a76-cbaee2ce637a"
}
}, - "settings": {
- "data": {
- "id": "01a11922-1322-77d8-98a8-fe8f2f62d65f",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11922-1322-77d8-98a8-fe8f2f62d65f"
}
}, - "project": {
- "data": {
- "id": "01a11922-12ae-74d8-81af-646226abca9c",
- "type": "project"
}
}, - "template": {
- "data": {
- "id": "01a11922-12db-78be-b6c9-667c9207ee52",
- "type": "template"
}
}, - "pending_commit": {
- "data": null
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11922-12db-78be-b6c9-667c9207ee52/versions/2023_Q4_2",
- "template": "/api/projects/opc/templates/01a11922-12db-78be-b6c9-667c9207ee52"
}
}, - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Delete or archive a template version.
| project_code required | string Example: opc project code |
| template_id required | string Example: 01a1191e-f93a-781b-9b39-58687b666b16 template id |
| version required | string Example: 2023_Q4_2 template version |
{- "data": {
- "id": "01a11922-16ad-72c9-9c4b-8e4bd418cdef",
- "type": "template_version",
- "attributes": {
- "version": "2023_Q4_2",
- "description": "Added additional configuration options",
- "state": "ready",
- "created_by": "gonzalo.weissnat-2700",
- "archived": true,
- "initialization_error": null,
- "locked": false,
- "float_git_rev": false,
- "float_refresh_error": null,
- "created_at": "2026-10-08T01:30:26.860036Z",
- "updated_at": "2026-10-08T01:30:27.096527Z",
- "has_mintmodel": true,
- "git_rev": "neural",
- "commit_sha": "34674ee8bfad3f30d9cb30618781ddc802c0823a",
- "git_remote_name": "github"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11922-16b4-7bdc-8c23-423f19ecb676",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-16b4-7bdc-8c23-423f19ecb676"
}
}, - "settings": {
- "data": {
- "id": "01a11922-16c5-7a68-a0b4-a7a3c844344d",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11922-16c5-7a68-a0b4-a7a3c844344d"
}
}, - "project": {
- "data": {
- "id": "01a11922-163a-7288-b4c0-d178faa1c45e",
- "type": "project"
}
}, - "template": {
- "data": {
- "id": "01a11922-1671-7909-8c4b-4ee505c94264",
- "type": "template"
}
}, - "pending_commit": {
- "data": null
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11922-1671-7909-8c4b-4ee505c94264/versions/2023_Q4_2",
- "template": "/api/projects/opc/templates/01a11922-1671-7909-8c4b-4ee505c94264"
}
}
}Assign assets to the template version.
| project_code required | string Example: opc project code |
| template_id required | string Example: 01a1191e-f93a-781b-9b39-58687b666b16 template id |
| version required | string Example: 2023_Q4_2 template version |
required | object |
{- "data": {
- "attributes": {
- "asset_paths": [
- "/projects/opc/assets/prj_soa"
]
}
}
}{- "data": {
- "id": "01a11922-1cd0-7baf-b9de-a2b0119495a9",
- "type": "template_version",
- "attributes": {
- "version": "2023_Q4_2",
- "description": "Added additional configuration options",
- "state": "ready",
- "created_by": "lewis-2719",
- "archived": false,
- "initialization_error": null,
- "locked": false,
- "float_git_rev": false,
- "float_refresh_error": null,
- "created_at": "2026-10-08T01:30:28.431658Z",
- "updated_at": "2026-10-08T01:30:28.431658Z",
- "has_mintmodel": true,
- "git_rev": "mobile",
- "commit_sha": "e3c88c68ed62ea5d0d4ae9093b297c5e0b47f6fe",
- "git_remote_name": "github"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11922-1cd8-7b97-b1f0-c5c23020d2dc",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-1cd8-7b97-b1f0-c5c23020d2dc"
}
}, - "settings": {
- "data": {
- "id": "01a11922-1ce9-76bc-8e24-a0b2c3d5ccc5",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11922-1ce9-76bc-8e24-a0b2c3d5ccc5"
}
}, - "project": {
- "data": {
- "id": "01a11922-1c51-7cb5-b11e-bea9e517d810",
- "type": "project"
}
}, - "template": {
- "data": {
- "id": "01a11922-1c91-7e73-bd1e-6aece0cda618",
- "type": "template"
}
}, - "pending_commit": {
- "data": null
}
}, - "links": {
- "self": "/api/projects/opc/templates/01a11922-1c91-7e73-bd1e-6aece0cda618/versions/2023_Q4_2",
- "template": "/api/projects/opc/templates/01a11922-1c91-7e73-bd1e-6aece0cda618"
}
}
}Cancel an in-progress Git SHA refresh for the template version. When the version was previously resolved it is returned to that commit, otherwise the version is left broken.
| project_code required | string Example: opc project code |
| template_id required | string Example: 01a1191e-f93a-781b-9b39-58687b666b16 template id |
| version required | string Example: 2023_Q4_2 template version |
{- "data": {
- "id": "01a11922-233e-7775-92e9-e1e0e8b1e860",
- "type": "template_version",
- "attributes": {
- "version": "0fi23",
- "description": "Est libero odio dolores fugiat laudantium magnam rerum",
- "state": "ready",
- "created_by": "clemencia-2738",
- "archived": false,
- "initialization_error": null,
- "locked": false,
- "float_git_rev": false,
- "float_refresh_error": null,
- "created_at": "2026-10-08T01:30:30.077346Z",
- "updated_at": "2026-10-08T01:30:30.167368Z",
- "has_mintmodel": false,
- "git_rev": "back-end",
- "commit_sha": "e810ea0948748653b52839c37798936810bfddd8",
- "git_remote_name": "eliseo"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11922-2346-7ffe-a8f0-32582022a3fc",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-2346-7ffe-a8f0-32582022a3fc"
}
}, - "settings": {
- "data": {
- "id": "01a11922-235a-7a19-a611-4ed1cc585d69",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11922-235a-7a19-a611-4ed1cc585d69"
}
}, - "project": {
- "data": {
- "id": "01a11922-22ca-79ae-ad55-a3853b563058",
- "type": "project"
}
}, - "template": {
- "data": {
- "id": "01a11922-2302-7218-b315-056be0d06101",
- "type": "template"
}
}, - "pending_commit": {
- "data": null
}
}, - "links": {
- "self": "/api/projects/mruzv/templates/01a11922-2302-7218-b315-056be0d06101/versions/0fi23",
- "template": "/api/projects/mruzv/templates/01a11922-2302-7218-b315-056be0d06101"
}
}
}Endpoints to interact with git remotes.
Create a project Git remote.
For HTTP(S) remotes provide the user and password credentials. For SSH remotes provide the ssh_key_data private key and, if the key is encrypted, its passphrase. Supplying password for an SSH remote (or passphrase for an HTTP(S) remote) is rejected.
When meta.add_known_host is true and the remote uses an SSH URL, OpsChain scans the host with ssh-keyscan and stores the fetched host key in the global known_hosts setting before validating the connection, so the same request - and all future fetches - trust the host. On success the response meta.known_hosts_added lists the registered host key lines. This requires superuser access (a non-superuser receives a 403). The scanned key is trusted on first use (TOFU); verify the reported host key out of band.
| project_code required | string Example: opc project code |
required | object |
object |
{- "data": {
- "attributes": {
- "name": "github",
- "user": "limepoint",
- "password": "password",
- "passphrase": "ssh-key-passphrase",
- "ssh_key_data": "-----BEGIN OPENSSH PRIVATE KEY-----\n...\n-----END OPENSSH PRIVATE KEY-----\n",
- "periodic_fetch_interval": 900
}
}, - "meta": {
- "add_known_host": false
}
}{- "data": {
- "id": "01a11920-bffa-7af8-ae25-8008a43d6049",
- "type": "git_remote",
- "attributes": {
- "name": "github",
- "public_url": null,
- "archived": false,
- "disabled": false,
- "periodic_fetch_interval": null,
- "created_at": "2026-10-08T01:28:59.129376Z",
- "updated_at": "2026-10-08T01:28:59.129376Z",
- "user": null,
- "ssh_key_data": null,
- "password": null,
- "passphrase": null
}, - "relationships": {
- "templates": {
- "data": [ ]
}, - "project": {
- "data": {
- "id": "01a11920-bf85-7366-8b04-ffb6f8e28589",
- "type": "project"
}
}
}, - "links": {
- "project": "/api/projects/opc",
- "templates": "/api/projects/opc/templates?filter%5Bgit_remote_name_eq%5D=github",
- "self": "/api/projects/opc/git_remotes/01a11920-bffa-7af8-ae25-8008a43d6049"
}, - "meta": null
}
}Lists all Git remotes for a project.
| project_code required | string Example: opc project code |
| filter[<query/sort filter>]= |
{- "data": [
- {
- "id": "01a11920-c3e7-7be5-a535-cff21528d1d8",
- "type": "git_remote",
- "attributes": {
- "name": "github",
- "archived": false,
- "disabled": false,
- "periodic_fetch_interval": 900,
- "created_at": "2026-10-08T01:29:00.134556Z",
- "updated_at": "2026-10-08T01:29:00.134556Z",
- "user": "{{hidden}}",
- "ssh_key_data": null,
- "password": "{{hidden}}",
- "passphrase": null
}, - "relationships": {
- "templates": {
- "data": [ ]
}, - "project": {
- "data": {
- "id": "01a11920-c3c5-7005-9b2d-d7968e18dcf0",
- "type": "project"
}
}
}, - "links": {
- "project": "/api/projects/opc",
- "templates": "/api/projects/opc/templates?filter%5Bgit_remote_name_eq%5D=github",
- "self": "/api/projects/opc/git_remotes/01a11920-c3e7-7be5-a535-cff21528d1d8"
}, - "meta": null
}, - {
- "id": "01a11920-c3ed-73e2-b6f7-e16898af304f",
- "type": "git_remote",
- "attributes": {
- "name": "github_ssh",
- "url": "ssh://github.com/LimePoint/opschain-getting-started.git",
- "public_url": null,
- "archived": false,
- "disabled": false,
- "periodic_fetch_interval": null,
- "created_at": "2026-10-08T01:29:00.139865Z",
- "updated_at": "2026-10-08T01:29:00.139865Z",
- "user": "{{hidden}}",
- "ssh_key_data": "{{hidden}}",
- "password": null,
- "passphrase": "{{hidden}}"
}, - "relationships": {
- "templates": {
- "data": [ ]
}, - "project": {
- "data": {
- "id": "01a11920-c3c5-7005-9b2d-d7968e18dcf0",
- "type": "project"
}
}
}, - "links": {
- "project": "/api/projects/opc",
- "templates": "/api/projects/opc/templates?filter%5Bgit_remote_name_eq%5D=github_ssh",
- "self": "/api/projects/opc/git_remotes/01a11920-c3ed-73e2-b6f7-e16898af304f"
}, - "meta": null
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}, - "default_periodic_fetch_interval": 900
}
}Shows a project Git remote.
Note: Git remote credentials are obfuscated for security reasons.
| project_code required | string Example: opc project code |
| remote_id required | string Example: 01a1191e-f8ef-79ce-8991-4e92a6c566e4 remote id |
{- "data": {
- "id": "01a11920-c5b8-71f4-ab12-4ebfe4d3ed15",
- "type": "git_remote",
- "attributes": {
- "name": "github",
- "archived": false,
- "disabled": false,
- "periodic_fetch_interval": 900,
- "created_at": "2026-10-08T01:29:00.599233Z",
- "updated_at": "2026-10-08T01:29:00.599233Z",
- "user": "{{hidden}}",
- "ssh_key_data": null,
- "password": "{{hidden}}",
- "passphrase": null
}, - "relationships": {
- "templates": {
- "data": [ ]
}, - "project": {
- "data": {
- "id": "01a11920-c59e-7fa6-9f52-65965d6a7822",
- "type": "project"
}
}
}, - "links": {
- "project": "/api/projects/opc",
- "templates": "/api/projects/opc/templates?filter%5Bgit_remote_name_eq%5D=github",
- "self": "/api/projects/opc/git_remotes/01a11920-c5b8-71f4-ab12-4ebfe4d3ed15"
}, - "meta": null
}
}Archives/unarchives a project Git remote.
| project_code required | string Example: opc project code |
| id_to_archive required | string Example: 01a1191e-f8ef-79ce-8991-4e92a6c566e4 remote id |
required | object |
{- "data": {
- "attributes": {
- "archived": true
}
}
}{- "data": {
- "id": "01a11920-c763-7bb8-98bb-94df5cc556be",
- "type": "git_remote",
- "attributes": {
- "name": "github",
- "archived": true,
- "disabled": false,
- "periodic_fetch_interval": 900,
- "created_at": "2026-10-08T01:29:01.026717Z",
- "updated_at": "2026-10-08T01:29:01.055677Z",
- "user": "{{hidden}}",
- "ssh_key_data": null,
- "password": "{{hidden}}",
- "passphrase": null
}, - "relationships": {
- "templates": {
- "data": [ ]
}, - "project": {
- "data": {
- "id": "01a11920-c746-7e2c-929c-aa99078e3cf0",
- "type": "project"
}
}
}, - "links": {
- "project": "/api/projects/opc",
- "templates": "/api/projects/opc/templates?filter%5Bgit_remote_name_eq%5D=github",
- "self": "/api/projects/opc/git_remotes/01a11920-c763-7bb8-98bb-94df5cc556be"
}, - "meta": null
}
}Update the URL and/or credentials of a project Git remote. The remote must be active (not archived), and OpsChain verifies the remote is reachable with the updated values before saving. The URL may only be edited to change its credentials, scheme, or port - the host and path cannot change (delete and recreate the remote to point at a different repository).
For HTTP(S) remotes provide the user and password credentials. For SSH remotes provide the ssh_key_data private key and, if the key is encrypted, its passphrase. Supplying password for an SSH remote (or passphrase for an HTTP(S) remote) is rejected. Changing a remote's protocol clears the existing credentials - supply the new protocol's credentials in the same request.
When meta.add_known_host is true and the request changes the URL to an SSH URL, OpsChain scans the new host with ssh-keyscan and stores the fetched host key in the global known_hosts setting before validating the connection. On success the response meta.known_hosts_added lists the registered host key lines. This requires superuser access (a non-superuser receives a 403). The scanned key is trusted on first use (TOFU); verify the reported host key out of band.
| project_code required | string Example: opc project code |
| id_to_update required | string Example: 01a1191e-f8ef-79ce-8991-4e92a6c566e4 remote id |
required | object |
object |
{- "data": {
- "attributes": {
- "user": "limepoint",
- "password": "password",
- "passphrase": "ssh-key-passphrase",
- "ssh_key_data": "-----BEGIN OPENSSH PRIVATE KEY-----\n...\n-----END OPENSSH PRIVATE KEY-----\n",
- "periodic_fetch_interval": 900
}
}, - "meta": {
- "add_known_host": false
}
}{- "data": {
- "id": "01a11920-c9be-756d-a7d8-715376f974b5",
- "type": "git_remote",
- "attributes": {
- "name": "github",
- "archived": false,
- "disabled": false,
- "periodic_fetch_interval": 900,
- "created_at": "2026-10-08T01:29:01.629465Z",
- "updated_at": "2026-10-08T01:29:01.652828Z",
- "user": "{{hidden}}",
- "ssh_key_data": null,
- "password": "{{hidden}}",
- "passphrase": null
}, - "relationships": {
- "templates": {
- "data": [ ]
}, - "project": {
- "data": {
- "id": "01a11920-c9a3-72da-974b-03646692f3e2",
- "type": "project"
}
}
}, - "links": {
- "project": "/api/projects/opc",
- "templates": "/api/projects/opc/templates?filter%5Bgit_remote_name_eq%5D=github",
- "self": "/api/projects/opc/git_remotes/01a11920-c9be-756d-a7d8-715376f974b5"
}, - "meta": null
}
}Deletes a project Git remote if it has no changes, otherwise it removes the credentials.
| project_code required | string Example: opc project code |
| id_to_delete required | string Example: 01a1191e-f8ef-79ce-8991-4e92a6c566e4 remote id |
{- "data": {
- "id": "01a11920-cd61-7cf3-9b3e-2b8a29f1907a",
- "type": "git_remote",
- "attributes": {
- "name": "github",
- "archived": true,
- "disabled": false,
- "periodic_fetch_interval": 900,
- "created_at": "2026-10-08T01:29:02.560379Z",
- "updated_at": "2026-10-08T01:29:02.856542Z",
- "user": null,
- "ssh_key_data": null,
- "password": null,
- "passphrase": null
}, - "relationships": {
- "templates": {
- "data": [ ]
}, - "project": {
- "data": {
- "id": "01a11920-cd3d-7acb-a5aa-9da3d79ed94f",
- "type": "project"
}
}
}, - "links": {
- "project": "/api/projects/opc",
- "templates": "/api/projects/opc/templates?filter%5Bgit_remote_name_eq%5D=github",
- "self": "/api/projects/opc/git_remotes/01a11920-cd61-7cf3-9b3e-2b8a29f1907a"
}, - "meta": {
- "credentials_removed": true,
- "messages": [
- "This Git remote cannot be deleted as it is used by a change, its credentials have been removed."
]
}
}
}Endpoints to interact with bookmarks.
Notes:
/<path/to/bookmark/owner>/bookmarks path. The example endpoints in this section reflect bookmarks owned
by a project asset.Create a bookmark for a specific project, environment or asset.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
required | object |
{- "data": {
- "attributes": {
- "description": "SOA administration console"
}
}
}{- "data": {
- "id": "01a11920-2c41-7c4f-be04-3b73561f1113",
- "type": "bookmark",
- "attributes": {
- "description": "Enim amet corrupti ut. 1",
- "created_by": "logged_in_user",
- "created_at": "2026-10-08T01:28:21.312341Z",
- "updated_at": "2026-10-08T01:28:21.312341Z"
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11920-2b2f-7580-97d0-92e1e93f185b",
- "type": "asset"
}
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa/bookmarks/01a11920-2c41-7c4f-be04-3b73561f1113",
- "parent": "/api/projects/opc/assets/prj_soa"
}
}
}Lists all bookmarks for a specific project, environment or asset.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[description_cont]=server API filtering guide. Named filters: |
{- "data": [
- {
- "id": "01a11920-3230-78ec-95c3-8ef56afb1697",
- "type": "bookmark",
- "attributes": {
- "description": "SOA administration console",
- "created_by": "jame_ullrich-1116",
- "created_at": "2026-10-08T01:28:22.831810Z",
- "updated_at": "2026-10-08T01:28:22.831810Z"
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11920-31e8-7e70-897f-d18237de054b",
- "type": "asset"
}
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa/bookmarks/01a11920-3230-78ec-95c3-8ef56afb1697",
- "parent": "/api/projects/opc/assets/prj_soa"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Show a bookmark for a specific project, environment or asset.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| bookmark_id required | string Example: 01a1191e-fc3c-7660-b459-607059724a2e bookmark id |
{- "data": {
- "id": "01a11920-33f0-7821-a01e-dca924b54302",
- "type": "bookmark",
- "attributes": {
- "description": "SOA administration console",
- "created_by": "horacio-1123",
- "created_at": "2026-10-08T01:28:23.279586Z",
- "updated_at": "2026-10-08T01:28:23.279586Z"
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11920-33af-7334-ba01-8931e66c34ef",
- "type": "asset"
}
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa/bookmarks/01a11920-33f0-7821-a01e-dca924b54302",
- "parent": "/api/projects/opc/assets/prj_soa"
}
}
}Update a bookmark for a specific project, environment or asset.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| bookmark_id required | string Example: 01a1191e-fc3c-7660-b459-607059724a2e bookmark id |
required | object |
{- "data": {
- "attributes": {
- "description": "Updated server console path"
}
}
}{- "data": {
- "id": "01a11920-37a1-7a3d-92eb-3e9511af75da",
- "type": "bookmark",
- "attributes": {
- "description": "Updated server console path",
- "created_by": "lonny-1137",
- "created_at": "2026-10-08T01:28:24.224220Z",
- "updated_at": "2026-10-08T01:28:24.261839Z"
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11920-374d-756b-9ca4-412e87f18e16",
- "type": "asset"
}
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa/bookmarks/01a11920-37a1-7a3d-92eb-3e9511af75da",
- "parent": "/api/projects/opc/assets/prj_soa"
}
}
}Delete a bookmark for a specific project, environment or asset.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| bookmark_id required | string Example: 01a1191e-fc3c-7660-b459-607059724a2e bookmark id |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find Bookmark"
}
}
]
}Endpoints to query and generate MintModels for assets.
Notes:
parent_mintmodel_history link in the API response to access the
asset's MintModel history.Lists the asset's MintModel history.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[created_at_gteq]=2026-01-01 |
| limit | integer [ 1 .. 10000 ] Default: 100 Example: limit=50 Limit the number of MintModel history records returned. When more records match than the limit a 206 response is returned and |
{- "data": [
- {
- "id": "01a11920-d53c-7970-9e11-c25ebb8f9175",
- "type": "mintmodel_history",
- "attributes": {
- "created_at": "2026-10-08T01:29:04.571578Z",
- "updated_at": "2026-10-08T01:29:04.571578Z"
}, - "relationships": {
- "parents": {
- "data": [
- {
- "id": "01a11920-d461-7539-a6ef-ea9325cb87c4",
- "type": "project"
}, - {
- "id": "01a11920-d4f1-7d2b-8ea4-728bb0576378",
- "type": "asset"
}
]
}, - "mintmodel": {
- "data": {
- "id": "01a11920-d539-78eb-a79f-012b4ebc34d4",
- "type": "mintmodel"
}, - "links": {
- "related": "/api/projects/opc/assets/prj_soa/mintmodels/01a11920-d539-78eb-a79f-012b4ebc34d4"
}
}, - "opschain_changes": {
- "data": [ ]
}, - "template_version": {
- "data": {
- "id": "01a11920-d4bb-7675-8db2-25dbb52f60da",
- "type": "template_version"
}
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa/mintmodel_history/01a11920-d53c-7970-9e11-c25ebb8f9175"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}Shows an asset's MintModel history record.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| id required | string Example: 01a1191f-1b64-7db9-a4fb-bf2f9d85e584 MintModel history id |
{- "data": {
- "id": "01a11920-d761-7b6c-80df-23c31fb3c506",
- "type": "mintmodel_history",
- "attributes": {
- "created_at": "2026-10-08T01:29:05.120676Z",
- "updated_at": "2026-10-08T01:29:05.120676Z"
}, - "relationships": {
- "parents": {
- "data": [
- {
- "id": "01a11920-d655-7d24-b614-b7cbe41433f0",
- "type": "project"
}, - {
- "id": "01a11920-d713-7844-9814-e0619c468907",
- "type": "asset"
}
]
}, - "mintmodel": {
- "data": {
- "id": "01a11920-d75b-7511-943e-432f71a5fd02",
- "type": "mintmodel"
}, - "links": {
- "related": "/api/projects/opc/assets/prj_soa/mintmodels/01a11920-d75b-7511-943e-432f71a5fd02"
}
}, - "opschain_changes": {
- "data": [ ]
}, - "template_version": {
- "data": {
- "id": "01a11920-d6d2-751b-a79c-a2fa7ad879c3",
- "type": "template_version"
}
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa/mintmodel_history/01a11920-d761-7b6c-80df-23c31fb3c506"
}
}, - "included": [
- {
- "id": "01a11920-d75b-7511-943e-432f71a5fd02",
- "type": "mintmodel",
- "attributes": {
- "data": {
- "complex": {
- "json": {
- "mintmodel": "data"
}
}
}, - "sha256": "77526a9ef926aee8c98f90ec845f5bd12f58cd7afb29fb2db5ef8f95deec44f8",
- "created_at": "2026-10-08T01:29:05.114349Z",
- "updated_at": "2026-10-08T01:29:05.114349Z",
- "render_logs": {
- "mintmodel_api": [
- "MintPress renderer output"
]
}, - "phase_output": { }
}, - "relationships": {
- "mintmodel_history": {
- "data": [
- {
- "id": "01a11920-d761-7b6c-80df-23c31fb3c506",
- "type": "mintmodel_history"
}, - {
- "id": "01a11920-d75d-7d05-908c-1e9080071eba",
- "type": "mintmodel_history"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa/mintmodels/01a11920-d75b-7511-943e-432f71a5fd02",
- "parent_mintmodel_history": "/api/projects/opc/assets/prj_soa/mintmodel_history"
}
}
]
}List all MintModels for an asset.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| version | string Example: version=2023_Q4_2 Return only the unique MintModels that have been generated for the asset while this version of its template was assigned. Returns an error if the version has never been assigned to the asset. |
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[created_at_gteq]=2026-01-01 |
| limit | integer [ 1 .. 10000 ] Default: 100 Example: limit=50 Limit the number of MintModels returned. When more records match than the limit a 206 response is returned and |
{- "data": [
- {
- "id": "01a11920-d802-781b-a77b-4d27df6d63ea",
- "type": "mintmodel",
- "attributes": {
- "data": {
- "complex": {
- "json": {
- "mintmodel": "data"
}
}
}, - "sha256": "77526a9ef926aee8c98f90ec845f5bd12f58cd7afb29fb2db5ef8f95deec44f8",
- "created_at": "2026-10-08T01:29:05.281518Z",
- "updated_at": "2026-10-08T01:29:05.281518Z",
- "render_logs": {
- "mintmodel_api": [
- "MintPress renderer output"
]
}, - "phase_output": { }
}, - "relationships": {
- "mintmodel_history": {
- "data": [
- {
- "id": "01a11920-d907-7538-bba4-63efb1801996",
- "type": "mintmodel_history"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa/mintmodels/01a11920-d802-781b-a77b-4d27df6d63ea",
- "parent_mintmodel_history": "/api/projects/opc/assets/prj_soa/mintmodel_history"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}Generate a MintModel of the differences between two existing MintModels.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| old_mintmodel_id required | string Example: 01a1191f-171f-7306-9ff8-d549fe53af69 old MintModel id |
| new_mintmodel_id required | string Example: 01a1191f-1733-7b1d-84d2-671866726c5d new MintModel id |
{- "data": {
- "id": "MintModelDiff",
- "type": "diff_mintmodel",
- "attributes": {
- "diff_mintmodel": {
- "id": "01a11920-dc50-7493-b793-bee772600e4e",
- "data": {
- "internalVariables": {
- "environmentName": "d1",
- "assetCode": "obpodi",
- "stageRootDir": "/oracle/stage",
- "autoBaseline": "true",
- "projectUri": "D1OBPODI2025MAY301254"
}, - "projectName": "d1_obpodi2025May30_1254",
- "site": {
- "hostList": [
- {
- "id": "custwprd1odi01",
- "address": "custwprd1odi01.limepoint.engineering",
- "attributes": {
- "basename": "custwprd1odi01",
- "user": "oracle",
- "password": "unused-key-auth",
- "targetTempDir": "/oracle/app/binaries/obpodi/tmp"
}, - "targetAttributes": {
- "oracle.install.username": "oinstall",
- "target.tmp.dir": "/oracle/app/binaries/obpodi/tmp"
}
}, - {
- "id": "db_server",
- "address": "custwprd1db.limepoint.engineering",
- "attributes": {
- "scaleout": "false",
- "basename": "custwprd1db",
- "user": "oracle",
- "password": "unused-key-auth",
- "targetTempDir": "/oracle/app/binaries/obpodi/tmp"
}, - "targetAttributes": {
- "oracle.install.username": "oinstall",
- "target.tmp.dir": "/oracle/app/binaries/obpodi/tmp"
}
}, - {
- "id": "custwprd1odi02",
- "address": "custwprd1odi02.limepoint.engineering",
- "attributes": {
- "basename": "custwprd1odi02",
- "user": "oracle",
- "password": "unused-key-auth",
- "targetTempDir": "/oracle/app/binaries/obpodi/tmp"
}, - "targetAttributes": {
- "oracle.install.username": "oinstall",
- "target.tmp.dir": "/oracle/app/binaries/obpodi/tmp"
}
}
], - "installationList": [
- {
- "name": "jdk",
- "product": "OracleJava",
- "version": "1.8.0_341",
- "installPath": "/oracle/app/binaries/obpodi/java",
- "softwareStage": "/oracle/stage/jdk/jdk-8u341-linux-x64.tar.gz",
- "attributes": {
- "newworld": "true",
- "oracleInventoryLoc": "/oracle/app/binaries/obpodi/oraInventory",
- "middlewareHome": "/oracle/app/binaries/obpodi/fmw",
- "oracleInstallGroup": "oinstall",
- "OracleJava": {
- "java_home": "/oracle/app/binaries/obpodi/java",
- "owner": "oracle",
- "group": "oinstall"
}
}, - "targetAttributes": {
- "patch.java.params": "-Xms3g -Xmx3g"
}, - "patchset": [ ]
}, - {
- "name": "fmwinfra",
- "product": "OracleFMWInfrastructure",
- "version": "12.2.1.4",
- "softwareStage": "/oracle/stage/fmwinfra/12.2.1.4/fmw_12.2.1.4.0_infrastructure.jar",
- "installPath": "/oracle/app/binaries/obpodi/fmw",
- "dependsonList": [
- "jdk"
], - "patchset": [
- {
- "targetOracleHome": "/oracle/app/binaries/obpodi/fmw/odi",
- "softwareStage": "/oracle/stage/cumulative_patches",
- "name": "3774133",
- "aru": "37741315",
- "attributes": {
- "required_opatch_version": "13.9.4.2.13",
- "opatch_autoupdate_file": "/oracle/stage/OPatch/13.9.4.2.10/p28186730_1394219_Generic.zip",
- "action": "rollback"
}
}
], - "attributes": {
- "newworld": "true",
- "middlewareHome": "/oracle/app/binaries/obpodi/fmw",
- "oracleInventoryLoc": "/oracle/app/binaries/obpodi/oraInventory",
- "oracleInstallGroup": "oinstall",
- "OracleFMWInfrastructure": {
- "inventory_location": "/oracle/app/binaries/obpodi/oraInventory",
- "fmw_home": "/oracle/app/binaries/obpodi/fmw",
- "owner": "oracle",
- "group": "oinstall"
}
}, - "targetAttributes": {
- "patch.java.params": "-Xms3g -Xmx3g"
}
}, - {
- "name": "oracleclient",
- "product": "OracleDatabaseClient",
- "version": "12.2.0.1",
- "installPath": "/oracle/app/binaries/obpodi/dbclient",
- "softwareStage": "/oracle/stage/rdbms/12.2.0.1/client",
- "dependsonList": [
- "jdk"
], - "attributes": {
- "newworld": "true",
- "oracleInventoryLoc": "/oracle/app/binaries/obpodi/oraInventory",
- "middlewareHome": "/oracle/app/binaries/obpodi/fmw",
- "oracleInstallGroup": "oinstall",
- "OracleDatabaseClient": {
- "inventory_location": "/oracle/app/binaries/obpodi/oraInventory",
- "owner": "oracle",
- "group": "oinstall",
- "oracle_home": "/oracle/app/binaries/obpodi/dbclient",
- "oracle_base": "/oracle/app/binaries/obpodi",
- "install_type": "Administrator"
}
}, - "targetAttributes": {
- "patch.java.params": "-Xms3g -Xmx3g"
}, - "patchset": [ ]
}, - {
- "name": "odi",
- "product": "OracleDataIntegrator",
- "version": "12.2.1.4",
- "installPath": "/oracle/app/binaries/obpodi/fmw/odi",
- "softwareStage": "/oracle/stage/odi/12.2.1.4/fmw_12.2.1.4.0_odi.jar",
- "dependsonList": [
- "fmwinfra",
- "oracleclient"
], - "patchset": [
- {
- "targetOracleHome": "/oracle/app/binaries/obpodi/fmw/odi",
- "softwareStage": "/oracle/stage/cumulative_patches",
- "name": "37741316",
- "aru": "37741315",
- "attributes": {
- "required_opatch_version": "13.9.4.2.13",
- "opatch_autoupdate_file": "/oracle/stage/OPatch/13.9.4.2.10/p28186730_1394219_Generic.zip",
- "action": "rollback"
}
}
], - "attributes": {
- "newworld": "true",
- "oracleInventoryLoc": "/oracle/app/binaries/obpodi/oraInventory",
- "middlewareHome": "/oracle/app/binaries/obpodi/fmw",
- "oracleInstallGroup": "oinstall",
- "OracleDataIntegrator": {
- "inventory_location": "/oracle/app/binaries/obpodi/oraInventory",
- "fmw_home": "/oracle/app/binaries/obpodi/fmw",
- "java_home": "/oracle/app/binaries/obpodi/java",
- "database_client_home": "/oracle/app/binaries/obpodi/dbclient",
- "owner": "oracle",
- "group": "oinstall"
}
}, - "targetAttributes": {
- "patch.java.params": "-Xms3g -Xmx3g"
}
}
], - "databaseList": [
- {
- "name": "d1obpodidb",
- "port": "1521",
- "serviceName": "CUSTWPD1_INT_PRIM",
- "hostIdentifier": "db_server",
- "schemaList": [
- {
- "name": "SYS",
- "password": "{AES2}TBg8KMlIiNzASfnaMO9iww=={/IV}ThoJT1+ps+2NtkzPjniGrRKwOu9f0fmuKS2GJPG0/LbU="
}
], - "attributes": {
- "jdbcUrl": "jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(Host=custwprd1db.limepoint.engineering)(Port=1521))(CONNECT_DATA=(SERVER = DEDICATED)(SERVICE_NAME=CUSTWPD1_INT_PRIM)))",
- "rcu": {
- "datafile.initialsize": "200M",
- "extra.parameters": " -encryptTablespace false"
}
}
}
], - "resourceList": [
- {
- "name": "WeblogicUser_wlsmonitors",
- "type": "User",
- "attributes": {
- "name": "wlsmonitor",
- "password": "{AES2}cSYn1SEsZCScuAK+fj8vVQ=={/IV}T89zXOBEdWngdxqJ9rihn+uy2lgiqJx5J6fGDfPbHsys=",
- "description": "User with Weblogic Monitor Role",
- "groupList": "monitors"
}
}, - {
- "name": "AdminStartupParameter",
- "type": "StartupParameter",
- "attributes": {
- "1": "-Xms1g -Xmx4g",
- "2": "",
- "3": "",
- "4": "-Dweblogic.ProductionModeEnabled=true",
- "5": "-Dappdynamics.agent.tierName=OBP-ADMIN",
- "c1": "-Dweblogic.Stdout=/oracle/app/logs/obpodi/obpodi_domain/%Name%/%Name%.out",
- "c2": "-Dweblogic.Stderr=/oracle/app/logs/obpodi/obpodi_domain/%Name%/%Name%.err",
- "c3": "-Xloggc:/oracle/app/logs/obpodi/obpodi_domain/%Name%/%Name%_gc.out -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseConcMarkSweepGC -XX:+UseCMSInitiatingOccupancyOnly -XX:+ScavengeBeforeFullGC -XX:+CMSScavengeBeforeRemark -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseGCLogFileRotation -XX:GCLogFileSize=300M -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -XX:+UnlockCommercialFeatures -XX:+FlightRecorder",
- "c4": "-Djava.security.debug=failure -Djava.net.preferIPv4Stack=true -Doracle.ons.maxconnections=2 -Dweblogic.security.disableNullCipher=true",
- "c5": "-Dweblogic.MaxMessageSize=500000000 -Dweblogic.Chunksize=65536 -Djava.security.egd=file:///dev/urandom",
- "s1": "-Dweblogic.security.SSL.minimumProtocolVersion=TLSv1.2 -Dweblogic.security.SSL.protocolVersion=TLSv1.2",
- "s2": "-Dweblogic.management.disableManagedServerNotifications=true",
- "s3": "-Dweblogic.security.SSL.allowUnencryptedNullCipher=false",
- "s4": "-Dweblogic.security.SSL.enableJSSE=true",
- "s4a": "-Dweblogic.security.SSL.nojce=true -Dweblogic.jdbc.remoteEnabled=true",
- "s5": "-Dweblogic.ssl.JSSEEnabled=true -Dweblogic.rjvm.enableprotocolswitch=true",
- "s6": "-Dweblogic.net.ssl.trustStore=/oracle/app/runtime/d1/certs/WBCTrust.jks",
- "s7": "-Djavax.net.ssl.trustStore=/oracle/app/runtime/d1/certs/WBCTrust.jks",
- "s8": "-Dweblogic.webservice.client.ssl.trustedcertfile=/oracle/app/runtime/d1/certs/cacerts.pem",
- "s9": "-Dweblogic.security.audit.auditLogDir=/oracle/app/logs/obpodi/obpodi_domain",
- "s10": "-Dweblogic.ssl.SSLv2HelloEnabled=false",
- "Auto22": "-Dweblogic.MuxerClass=weblogic.socket.PosixSocketMuxer"
}
}
], - "environmentName": "d1",
- "mwTopologyList": [
- {
- "attributes": {
- "targetPlatform": "x86-64"
}
}
], - "topologyName": "obpodi",
- "hostInstallationList": [
- {
- "installationName": "odi",
- "hostIdentifierList": [
- "custwprd1odi01",
- "custwprd1odi02"
]
}
], - "transferList": [
- {
- "name": "d1_obpodi_keystores",
- "hostIdentifierList": [
- "custwprd1odi01"
], - "sourceFile": "/oracle/stage/customer/wp/csh/certs/d1/custwprd1odi.jks",
- "destinationFile": "/oracle/app/runtime/d1/certs/custwprd1odi.jks",
- "permissions": "600",
- "transferWhenList": [
- "pre-online"
], - "attributes": {
- "scaleout": "false"
}
}
], - "executeList": [
- {
- "name": "DeployHealthCheck",
- "hostIdentifierList": [
- "custwprd1odi01"
], - "sourceFile": "/oracle/app/binaries/obpodi/fmw/oracle_common/common/bin/wlst.sh /oracle/stage/customer/wp/csh/scripts/common/deployApplication.py weblogic {AES2}gJ/boWTt1SiokXU8r5kR/w=={/IV}THBDYBplASG16qRhzfue+o4yOtJPAu4RCzOKq4C7V5Os= t3://custwprd1odi-padm.limepoint.engineering:17001 HealthCheck /oracle/app/runtime/obpodi/domains/applications/obpodi_domain/HealthCheck.war obpodi_cluster nostage 650",
- "executeWhenList": [
- "pre-online"
], - "attributes": {
- "execute.weblogicAdminPassword": "{AES2}gJ/boWTt1SiokXU8r5kR/w=={/IV}THBDYBplASG16qRhzfue+o4yOtJPAu4RCzOKq4C7V5Os=",
- "scaleout": "false"
}
}
], - "domainList": [
- {
- "name": "obpodi_domain",
- "locationPath": "/oracle/app/runtime/obpodi/domains",
- "adminUser": "weblogic",
- "adminPassword": "{AES2}gJ/boWTt1SiokXU8r5kR/w=={/IV}THBDYBplASG16qRhzfue+o4yOtJPAu4RCzOKq4C7V5Os=",
- "adminServer": {
- "name": "AdminServer",
- "machineName": "custwprd1odi01-prv.limepoint.engineering",
- "listenAddress": "custwprd1odi-padm.limepoint.engineering",
- "listenAddressPort": "17001",
- "listenAddressPortSSL": "18001",
- "targetName": "odiAdminServer"
}, - "machineList": [
- {
- "name": "custwprd1odi01-prv.limepoint.engineering",
- "nodeManagerName": "nm-custwprd1odi01"
}, - {
- "name": "custwprd1odi02-prv.limepoint.engineering",
- "nodeManagerName": "nm-custwprd1odi02"
}
], - "clusterList": [
- {
- "name": "obpodi_cluster",
- "messageMode": "Unicast"
}
], - "managedServerList": [
- {
- "name": "ODI_server1",
- "machineName": "custwprd1odi01-prv.limepoint.engineering",
- "clusterName": "obpodi_cluster",
- "listenAddress": "custwprd1odi01-prv.limepoint.engineering",
- "listenAddressPort": "17002",
- "listenAddressPortSSL": "18002",
- "targetName": "ODI_server1",
- "attributes": {
- "nodeid": "1",
- "serverid": "1",
- "nodeonserver": "1"
}
}, - {
- "name": "ODI_server2",
- "machineName": "custwprd1odi02-prv.limepoint.engineering",
- "clusterName": "obpodi_cluster",
- "listenAddress": "custwprd1odi02-prv.limepoint.engineering",
- "listenAddressPort": "17003",
- "listenAddressPortSSL": "18003",
- "targetName": "ODI_server2",
- "attributes": {
- "nodeid": "2",
- "serverid": "2",
- "nodeonserver": "1"
}
}
], - "systemComponentList": [
- {
- "name": "OracleDISAgent1",
- "machineName": "custwprd1odi01-prv.limepoint.engineering",
- "componentType": "OracleDataIntegrator",
- "attributes": {
- "nodeid": "1",
- "serverid": "1",
- "nodeonserver": "1",
- "OracleDataIntegrator": {
- "SupervisorPassword": "{AES2}jsLtJusUxDWQfC6Mq+UwHg=={/IV}TuT5JIopcfHbGjkEt7xUhoQ==",
- "AgentProtocol": "https",
- "AgentHostname": "custwprd1odi01-prv.limepoint.engineering",
- "AgentPort": "2091",
- "PrivateKeyAlias": "custwprd1odi01",
- "PrivateKeyPassPhrase": "{AES2}h2PRZ4Y+dzJGqQaewXAXBQ=={/IV}TtSlVPbhcKefdwYVrR0caCgwsTQGc57f3ofH8B47O9yk=",
- "IdentityKeyStore": "/oracle/app/runtime/d1/certs/custwprd1odi.jks",
- "IdentityKeyStorePassPhrase": "{AES2}h2PRZ4Y+dzJGqQaewXAXBQ=={/IV}TtSlVPbhcKefdwYVrR0caCgwsTQGc57f3ofH8B47O9yk=",
- "TrustKeyStore": "/oracle/app/runtime/d1/certs/WBCTrust.jks",
- "TrustKeyStorePassPhrase": "{AES2}h2PRZ4Y+dzJGqQaewXAXBQ=={/IV}TtSlVPbhcKefdwYVrR0caCgwsTQGc57f3ofH8B47O9yk="
}
}
}, - {
- "name": "OracleDISAgent2",
- "machineName": "custwprd1odi02-prv.limepoint.engineering",
- "componentType": "OracleDataIntegrator",
- "attributes": {
- "nodeid": "2",
- "serverid": "2",
- "nodeonserver": "1",
- "OracleDataIntegrator": {
- "SupervisorPassword": "{AES2}jsLtJusUxDWQfC6Mq+UwHg=={/IV}TuT5JIopcfHbGjkEt7xUhoQ==",
- "AgentProtocol": "https",
- "AgentHostname": "custwprd1odi02-prv.limepoint.engineering",
- "AgentPort": "2091",
- "PrivateKeyAlias": "custwprd1odi02",
- "PrivateKeyPassPhrase": "{AES2}h2PRZ4Y+dzJGqQaewXAXBQ=={/IV}TtSlVPbhcKefdwYVrR0caCgwsTQGc57f3ofH8B47O9yk=",
- "IdentityKeyStore": "/oracle/app/runtime/d1/certs/custwprd1odi.jks",
- "IdentityKeyStorePassPhrase": "{AES2}h2PRZ4Y+dzJGqQaewXAXBQ=={/IV}TtSlVPbhcKefdwYVrR0caCgwsTQGc57f3ofH8B47O9yk=",
- "TrustKeyStore": "/oracle/app/runtime/d1/certs/WBCTrust.jks",
- "TrustKeyStorePassPhrase": "{AES2}h2PRZ4Y+dzJGqQaewXAXBQ=={/IV}TtSlVPbhcKefdwYVrR0caCgwsTQGc57f3ofH8B47O9yk="
}
}
}
], - "middlewareList": [
- {
- "installationName": "odi",
- "targetList": [
- {
- "type": "Cluster",
- "names": [
- "obpodi_cluster"
]
}
]
}
], - "configurationList": [
- {
- "resourceName": "AdminStartupParameter",
- "type": "StartupParameter",
- "targets": [
- {
- "type": "SERVER",
- "names": [
- "AdminServer"
]
}
]
}, - {
- "resourceName": "WeblogicUser_wlsmonitors",
- "type": "User",
- "attributes": {
- "authenticatorName": "DefaultAuthenticator"
}
}
], - "templateList": [
- {
- "name": "OracleDataIntegrator::CombinedTemplateSet",
- "attributes": {
- "OracleDataIntegrator::CombinedTemplateSet": {
- "SupervisorPassword": "{AES2}jsLtJusUxDWQfC6Mq+UwHg=={/IV}TuT5JIopcfHbGjkEt7xUhoQ==",
- "WorkRepositoryName": "workrep1",
- "WorkRepositoryPassword": "{AES2}jsLtJusUxDWQfC6Mq+UwHg=={/IV}TuT5JIopcfHbGjkEt7xUhoQ==",
- "WorkRepositoryType": "E",
- "AgentHostname": "custwpd1odi.limepoint.engineering",
- "AgentPort": "18002",
- "AgentProtocol": "https"
}
}
}
], - "repositoryList": [
- {
- "componentList": [
- "ODI"
], - "id": "rcu01",
- "dbName": "d1obpodidb",
- "prefix": "OBPODI",
- "dbUser": "SYS",
- "schemaPassword": "{AES2}jsLtJusUxDWQfC6Mq+UwHg=={/IV}TuT5JIopcfHbGjkEt7xUhoQ==",
- "defaultRepository": "true"
}
], - "attributes": {
- "serverStartMode": "prod",
- "backupEnvironmentName": "d1",
- "environment.name": "d1",
- "tlogsLocationPath": "/oracle/app/runtime/obpodi/domains/obpodi_domain",
- "odlLogLocation": "/oracle/app/logs/obpodi/obpodi_domain",
- "defaultJMSLogLocation": "/oracle/app/logs/obpodi/obpodi_domain",
- "managedTopLocation": "/oracle/app/binaries/runtime/obpodi/domains",
- "nodeid": "1",
- "nodeonserver": "1",
- "serverid": "1",
- "wls": {
- "production.mode": "prod",
- "tlogs.location.path": "/oracle/app/runtime/obpodi/domains/obpodi_domain",
- "admin.listen.port.admin": "19001",
- "domain.managed.top": "/oracle/app/binaries/runtime/obpodi/domains",
- "odl": {
- "log": {
- "location": "/oracle/app/logs/obpodi/obpodi_domain",
- "retentionPeriod": "5d"
}
}
}, - "mintpress": {
- "startup.server_exclude": "OracleDISAgent*",
- "startup_parallel": "10"
}
}
}
], - "nodeManagerList": [
- {
- "name": "nm-custwprd1odi01",
- "listenAddress": "custwprd1odi01-prv.limepoint.engineering",
- "listenPort": "16001",
- "hostIdentifier": "custwprd1odi01",
- "attributes": {
- "wlInstallationName": "fmwinfra",
- "nodemanagerTop": "/oracle/app/binaries/runtime/obpodi/domains/obpodi_domain/nodemanager",
- "type": "SSL",
- "wls": {
- "nodemanager": {
- "log.path": "/oracle/app/logs/obpodi/custwprd1odi01",
- "identityname": "custwprd1odi01",
- "identitystorefile": "/oracle/app/runtime/d1/certs/custwprd1odi.jks",
- "wildcardcertificate": "true",
- "domainbased": "true",
- "shared.domain.dir": "true",
- "top": "/oracle/app/binaries/runtime/obpodi/domains/obpodi_domain/nodemanager"
}
}
}, - "targetAttributes": {
- "wls": {
- "nodemanager": {
- "secure.listener": "true",
- "setidentity": "true",
- "usejsse": "true",
- "crashrecovery": "false",
- "umask": "022",
- "truststorefile": "/oracle/app/runtime/d1/certs/WBCTrust.jks",
- "identitystorekey": "{AES2}h2PRZ4Y+dzJGqQaewXAXBQ=={/IV}TtSlVPbhcKefdwYVrR0caCgwsTQGc57f3ofH8B47O9yk=",
- "truststorekey": "{AES2}h2PRZ4Y+dzJGqQaewXAXBQ=={/IV}TtSlVPbhcKefdwYVrR0caCgwsTQGc57f3ofH8B47O9yk=",
- "identitypassphrase": "{AES2}h2PRZ4Y+dzJGqQaewXAXBQ=={/IV}TtSlVPbhcKefdwYVrR0caCgwsTQGc57f3ofH8B47O9yk="
}
}
}
}, - {
- "name": "nm-custwprd1odi02",
- "listenAddress": "custwprd1odi02-prv.limepoint.engineering",
- "listenPort": "16001",
- "hostIdentifier": "custwprd1odi02",
- "attributes": {
- "wlInstallationName": "fmwinfra",
- "nodemanagerTop": "/oracle/app/binaries/runtime/obpodi/domains/obpodi_domain/nodemanager",
- "type": "SSL",
- "wls": {
- "nodemanager": {
- "log.path": "/oracle/app/logs/obpodi/custwprd1odi02",
- "identityname": "custwprd1odi02",
- "identitystorefile": "/oracle/app/runtime/d1/certs/custwprd1odi.jks",
- "wildcardcertificate": "true",
- "domainbased": "true",
- "shared.domain.dir": "true",
- "top": "/oracle/app/binaries/runtime/obpodi/domains/obpodi_domain/nodemanager"
}
}
}, - "targetAttributes": {
- "wls": {
- "nodemanager": {
- "secure.listener": "true",
- "setidentity": "true",
- "usejsse": "true",
- "crashrecovery": "false",
- "umask": "022",
- "truststorefile": "/oracle/app/runtime/d1/certs/WBCTrust.jks",
- "identitystorekey": "{AES2}h2PRZ4Y+dzJGqQaewXAXBQ=={/IV}TtSlVPbhcKefdwYVrR0caCgwsTQGc57f3ofH8B47O9yk=",
- "truststorekey": "{AES2}h2PRZ4Y+dzJGqQaewXAXBQ=={/IV}TtSlVPbhcKefdwYVrR0caCgwsTQGc57f3ofH8B47O9yk=",
- "identitypassphrase": "{AES2}h2PRZ4Y+dzJGqQaewXAXBQ=={/IV}TtSlVPbhcKefdwYVrR0caCgwsTQGc57f3ofH8B47O9yk="
}
}
}
}
]
}
}, - "sha256": "901ad813694fa591bd0c6c9ec172f1d97e35daaa14c1c9010cbef45f44338483",
- "created_at": "2026-10-08T01:29:06.382Z",
- "updated_at": "2026-10-08T01:29:06.382Z",
- "render_logs": {
- "render_logs": [
- "Generated by deriving the difference between Mintmodel 01a11920-dc18-74c2-9a79-fd9585e37e3c and MintModel 01a11920-dc29-7912-8f0b-2d59d89e2b46"
]
}, - "phase_output": { }
}, - "step_trees": [
- {
- "action": "mintmodel:binaries",
- "description": "bpm -- Binaries",
- "child_execution_strategy": "sequential",
- "children": [
- {
- "action": "mintmodel:install_software_binaries",
- "mintpress_ctl_cmdline": "run the mintpress command!",
- "step_name": "Install Software Binaries",
- "description": null,
- "full_path": "Binaries/Install Software Binaries"
}
], - "step_name": "Binaries",
- "full_path": "Binaries"
}
]
}, - "links": {
- "old_mintmodel": "/projects/opc/assets/prj_soa/mintmodels/01a11920-dc18-74c2-9a79-fd9585e37e3c",
- "new_mintmodel": "/projects/opc/assets/prj_soa/mintmodels/01a11920-dc29-7912-8f0b-2d59d89e2b46",
- "parent": "/projects/opc/assets/prj_soa"
}
}
}Shows an asset MintModel.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
| mintmodel_id required | string Example: 01a1191e-fc56-7a22-8143-69532937efe1 MintModel id |
{- "data": {
- "id": "01a11920-de78-7132-90c8-7cb8fcc11b4e",
- "type": "mintmodel",
- "attributes": {
- "data": {
- "complex": {
- "json": {
- "mintmodel": "data"
}
}
}, - "sha256": "77526a9ef926aee8c98f90ec845f5bd12f58cd7afb29fb2db5ef8f95deec44f8",
- "created_at": "2026-10-08T01:29:06.935280Z",
- "updated_at": "2026-10-08T01:29:06.935280Z",
- "render_logs": {
- "mintmodel_api": [
- "MintPress renderer output"
]
}, - "phase_output": { }
}, - "relationships": {
- "mintmodel_history": {
- "data": [
- {
- "id": "01a11920-df5c-7fb0-a7c0-34ac3c907921",
- "type": "mintmodel_history"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/assets/prj_soa/mintmodels/01a11920-de78-7132-90c8-7cb8fcc11b4e",
- "parent_mintmodel_history": "/api/projects/opc/assets/prj_soa/mintmodel_history"
}
}
}Concretise the MintModel for this asset in the background, using the latest properties and template version.
Note: This enqueues a MintModel concretisation task and returns it immediately. Poll the returned task to track its progress; the concretised MintModel is assigned to the asset once the task completes successfully.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
{- "data": {
- "id": "01a11920-e2f4-761b-a561-095e910591b7",
- "type": "node_background_task",
- "attributes": {
- "request_number": 2,
- "status_code": "initializing",
- "error_message": null,
- "created_by": "logged_in_user",
- "actions_count": 0,
- "task_type": "MintModelConcretiseTask",
- "created_at": "2026-10-08T01:29:08.082850Z",
- "updated_at": "2026-10-08T01:29:08.082850Z"
}, - "relationships": {
- "template_version_history": {
- "data": {
- "id": "01a11920-e2b2-7052-84f0-565836c5c7c4",
- "type": "template_version_history"
}
}, - "owner": {
- "data": {
- "id": "01a11920-e28f-7dd1-a617-264605c730b3",
- "type": "asset"
}
}
}, - "links": {
- "template_version": "/api/projects/opc/templates/01a11920-e22f-76dc-822e-57a43de5402a/versions/2023_Q4_2",
- "self": "/api/projects/opc/assets/prj_soa/node_background_tasks/01a11920-e2f4-761b-a561-095e910591b7",
- "asset": "/api/projects/opc/assets/prj_soa",
- "log_lines": "/api/node_background_task_log_lines?node_background_task_id=01a11920-e2f4-761b-a561-095e910591b7"
}
}
}Lists all workflows for a project.
| project_code required | string Example: opc project code |
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[name_cont]=deploy API filtering guide. Named filters: |
| limit | integer [ 1 .. 10000 ] Default: 100 Example: limit=50 Limit the number of workflows returned. When more records match than the limit a 206 response is returned and |
{- "data": [
- {
- "id": "01a11923-d443-7c0e-a18d-6ee6e0a7c9cd",
- "type": "workflow",
- "attributes": {
- "code": "assets",
- "name": "assets workflow",
- "description": "workflow for assets",
- "draft": false,
- "archived": false,
- "created_by": "luther-4611",
- "created_at": "2026-10-08T01:32:20.931107Z",
- "updated_at": "2026-10-08T01:32:20.931107Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [ ],
- "sample_properties": {
- "sample": null
}, - "latest_version": 2,
- "latest_published_version": 2
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11923-d346-7a22-8901-0fbaa0bcde2d",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "versions": {
- "data": [
- {
- "id": "01a11923-d457-7b68-a932-178a9a880d7f",
- "type": "workflow_version"
}, - {
- "id": "01a11923-d453-76f4-82cd-0c4f81e2859b",
- "type": "workflow_version"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets",
- "runs": "/api/projects/opc/workflows/assets/runs",
- "versions": "/api/projects/opc/workflows/assets/versions",
- "latest_version": "/api/projects/opc/workflows/assets/versions/2",
- "latest_published_version": "/api/projects/opc/workflows/assets/versions/2"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}, - "partial_response": false
}
}Create a workflow
| project_code required | string Example: opc project code |
required | object |
object |
{- "data": {
- "attributes": {
- "code": "h2qp9",
- "archived": false,
- "name": "qapjwum1wx",
- "description": "You can't program the array without copying the neural JBOD transmitter!",
- "steps": [
- {
- "type": "change",
- "targets": [
- "/projects/dkynh/environments/6ts8j/assets/pwcfz",
- "/projects/d7eoj/environments/gbhqc/assets/bve86"
], - "action": "parse",
- "template_versions": [
- "viz1g",
- "k4e5b"
], - "run_as": "parallel",
- "name": "culpa"
}, - {
- "type": "wait",
- "name": "doloremque"
}, - {
- "type": "workflow",
- "target": "/projects/2kacx/workflows/bodck",
- "version": 1,
- "name": "ut",
- "start_time": null
}, - {
- "run_as": "parallel",
- "name": "soluta",
- "children": [
- {
- "type": "change",
- "target": "/projects/czzeo/environments/8cjkr/assets/dlwpu",
- "action": "input",
- "template_version": "iwlfi",
- "name": "deleniti",
- "start_time": "2026-10-09T01:27:16Z"
}, - {
- "type": "wait",
- "name": "aut"
}, - {
- "type": "workflow",
- "target": "/projects/qijnh/workflows/mfljl",
- "version": null,
- "name": "est",
- "start_time": null
}
]
}, - {
- "run_as": "sequential",
- "name": "laudantium",
- "children": [
- {
- "type": "change",
- "target": "/projects/evvbc/environments/kwu4t/assets/swor4",
- "action": "connect",
- "template_version": "cc5ee",
- "name": "facilis",
- "start_time": "2026-10-09T01:27:17Z"
}, - {
- "type": "wait",
- "name": "sapiente"
}, - {
- "type": "workflow",
- "target": "/projects/qlvkj/workflows/gzwev",
- "version": null,
- "name": "libero",
- "start_time": null
}
]
}
], - "draft": true
}
}
}{- "data": {
- "id": "01a11923-d841-7c19-b0d8-116b7d8f124f",
- "type": "workflow",
- "attributes": {
- "code": "assets_new",
- "name": "assets workflow_new",
- "description": null,
- "draft": false,
- "archived": false,
- "created_by": "logged_in_user",
- "created_at": "2026-10-08T01:32:21.952714Z",
- "updated_at": "2026-10-08T01:32:21.952714Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [ ],
- "sample_properties": { },
- "latest_version": 1,
- "latest_published_version": 1
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11923-d703-7d4b-8159-30acc4c00164",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "versions": {
- "data": [
- {
- "id": "01a11923-d851-7793-b63c-5a01f7e12a2a",
- "type": "workflow_version"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets_new",
- "runs": "/api/projects/opc/workflows/assets_new/runs",
- "versions": "/api/projects/opc/workflows/assets_new/versions",
- "latest_version": "/api/projects/opc/workflows/assets_new/versions/1",
- "latest_published_version": "/api/projects/opc/workflows/assets_new/versions/1"
}
}
}Shows a workflow.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
{- "data": {
- "id": "01a11923-df17-7e96-bf02-0e9a9849fbbc",
- "type": "workflow",
- "attributes": {
- "code": "assets",
- "name": "assets workflow",
- "description": "workflow for assets",
- "draft": false,
- "archived": false,
- "created_by": "merideth-4667",
- "created_at": "2026-10-08T01:32:23.703234Z",
- "updated_at": "2026-10-08T01:32:23.703234Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [ ],
- "sample_properties": {
- "sample": null
}, - "latest_version": 2,
- "latest_published_version": 2
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11923-de27-733a-b403-01a0ad2be091",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "versions": {
- "data": [
- {
- "id": "01a11923-df2c-78c4-b9b9-36cc7cf4f351",
- "type": "workflow_version"
}, - {
- "id": "01a11923-df27-7d95-93a4-2e440424f0e0",
- "type": "workflow_version"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets",
- "runs": "/api/projects/opc/workflows/assets/runs",
- "versions": "/api/projects/opc/workflows/assets/versions",
- "latest_version": "/api/projects/opc/workflows/assets/versions/2",
- "latest_published_version": "/api/projects/opc/workflows/assets/versions/2"
}
}
}Update a workflow.
Once the workflow has been run (or scheduled to run), its steps, source YAML and draft state can no longer be changed. A validation request that supplies custom sample properties (property_overrides with validate_flag set) is still permitted, so the stored steps can be validated against those properties.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
required | object |
object |
{- "data": {
- "attributes": {
- "archived": false,
- "name": "cha4dvdbqw",
- "description": "Generating the driver won't do anything, we need to transmit the cross-platform smtp interface!",
- "steps": [
- {
- "type": "change",
- "targets": [
- "/projects/dkynh/environments/6ts8j/assets/pwcfz",
- "/projects/d7eoj/environments/gbhqc/assets/bve86"
], - "action": "parse",
- "template_versions": [
- "viz1g",
- "k4e5b"
], - "run_as": "parallel",
- "name": "culpa"
}, - {
- "type": "wait",
- "name": "doloremque"
}, - {
- "type": "workflow",
- "target": "/projects/2kacx/workflows/bodck",
- "version": 1,
- "name": "ut",
- "start_time": null
}, - {
- "run_as": "parallel",
- "name": "soluta",
- "children": [
- {
- "type": "change",
- "target": "/projects/czzeo/environments/8cjkr/assets/dlwpu",
- "action": "input",
- "template_version": "iwlfi",
- "name": "deleniti",
- "start_time": "2026-10-09T01:27:16Z"
}, - {
- "type": "wait",
- "name": "aut"
}, - {
- "type": "workflow",
- "target": "/projects/qijnh/workflows/mfljl",
- "version": null,
- "name": "est",
- "start_time": null
}
]
}, - {
- "run_as": "sequential",
- "name": "laudantium",
- "children": [
- {
- "type": "change",
- "target": "/projects/evvbc/environments/kwu4t/assets/swor4",
- "action": "connect",
- "template_version": "cc5ee",
- "name": "facilis",
- "start_time": "2026-10-09T01:27:17Z"
}, - {
- "type": "wait",
- "name": "sapiente"
}, - {
- "type": "workflow",
- "target": "/projects/qlvkj/workflows/gzwev",
- "version": null,
- "name": "libero",
- "start_time": null
}
]
}
], - "draft": true
}
}
}{- "data": {
- "id": "01a11923-e557-738d-8101-4cfd8708f02a",
- "type": "workflow",
- "attributes": {
- "code": "assets",
- "name": "new workflow name",
- "description": "new description",
- "draft": false,
- "archived": false,
- "created_by": "foster-4695",
- "created_at": "2026-10-08T01:32:25.302449Z",
- "updated_at": "2026-10-08T01:32:25.389095Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa",
- "source": "steps/1",
- "change_parent": {
- "id": "01a11923-e4ec-736c-b518-21fec5bc1a2f",
- "path": "/projects/opc/assets/prj_soa",
- "parent_path": "/projects/opc",
- "project_id": "01a11923-e448-7d39-a38e-cf6db87a29a5",
- "node_type": "asset",
- "parent_id": "01a11923-e448-7d39-a38e-cf6db87a29a5",
- "code": "prj_soa",
- "name": "Project asset",
- "description": "Project asset description",
- "archived": false,
- "created_at": "2026-10-08T01:32:25.194Z",
- "updated_at": "2026-10-08T01:32:25.194Z",
- "project_type": null,
- "template_version_id": "01a11923-e4ac-7ca8-9485-fe79dfd5ccb3",
- "created_by_id": "01a11923-e4d5-7167-9665-5c2e69c7227d",
- "settings_generation": 1
}, - "action_template_version": {
- "id": "01a11923-e4ac-7ca8-9485-fe79dfd5ccb3",
- "commit_id": "01a11923-e49c-7c20-85d6-1bda63d95a2c",
- "version": "2023_Q4_2",
- "description": "Added additional configuration options",
- "created_at": "2026-10-08T01:32:25.131Z",
- "updated_at": "2026-10-08T01:32:25.131Z",
- "state": "ready",
- "archived": false,
- "has_mintmodel": true,
- "template_id": "01a11923-e478-7b58-ab36-e6d8cc1a3388",
- "locked": false,
- "pending_commit_id": null,
- "float_git_rev": false,
- "created_by_id": "01a11923-e4a1-7bd6-b6d9-c435b9271282"
}
}
], - "sample_properties": {
- "sample": null
}, - "latest_version": 2,
- "latest_published_version": 2
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11923-e448-7d39-a38e-cf6db87a29a5",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "versions": {
- "data": [
- {
- "id": "01a11923-e56f-77d9-8a4c-abc572b82c7c",
- "type": "workflow_version"
}, - {
- "id": "01a11923-e56a-7c0f-9047-7d623fd72b5e",
- "type": "workflow_version"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets",
- "runs": "/api/projects/opc/workflows/assets/runs",
- "versions": "/api/projects/opc/workflows/assets/versions",
- "latest_version": "/api/projects/opc/workflows/assets/versions/2",
- "latest_published_version": "/api/projects/opc/workflows/assets/versions/2"
}
}
}Delete or archive a workflow.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find Workflow"
}
}
]
}Lists all versions for a workflow.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
{- "data": [
- {
- "id": "01a11923-ef49-720c-910d-4f70f23f276f",
- "type": "workflow_version",
- "attributes": {
- "code": "assets",
- "name": "assets workflow",
- "description": "workflow for assets",
- "draft": false,
- "archived": false,
- "created_by": "rosaura.dickinson-4749",
- "created_at": "2026-10-08T01:32:27.848324Z",
- "updated_at": "2026-10-08T01:32:27.863577Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [ ],
- "sample_properties": {
- "sample": null
}, - "version": 2
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11923-ee57-7538-9078-b9e7e2af0ae2",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/versions/2",
- "runs": "/api/projects/opc/workflows/assets/versions/2/runs",
- "workflow": "/api/projects/opc/workflows/assets"
}
}, - {
- "id": "01a11923-ef44-7e57-b31b-46ae5e9c8c3b",
- "type": "workflow_version",
- "attributes": {
- "code": "assets",
- "name": "assets workflow",
- "description": "workflow for assets",
- "draft": false,
- "archived": false,
- "created_by": "altagracia-4750",
- "created_at": "2026-10-08T01:32:27.815217Z",
- "updated_at": "2026-10-08T01:32:27.815237Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [ ],
- "sample_properties": {
- "sample": null
}, - "version": 1
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11923-ee57-7538-9078-b9e7e2af0ae2",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/versions/1",
- "runs": "/api/projects/opc/workflows/assets/versions/1/runs",
- "workflow": "/api/projects/opc/workflows/assets"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Deletes all draft versions of a workflow.
Note: At least one version will remain. If all versions are drafts, the latest draft version will be kept.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
{- "data": {
- "id": "01a11923-f72e-732b-9765-b47462b98802",
- "type": "workflow",
- "attributes": {
- "code": "assets",
- "name": "assets workflow",
- "description": "workflow for assets",
- "draft": false,
- "archived": false,
- "created_by": "amanda-4786",
- "created_at": "2026-10-08T01:32:29.869496Z",
- "updated_at": "2026-10-08T01:32:29.869496Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [ ],
- "sample_properties": {
- "sample": null
}, - "latest_version": 2,
- "latest_published_version": 2
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11923-f616-71ff-a42a-0314b463b7a3",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "versions": {
- "data": [
- {
- "id": "01a11923-f741-7782-a1b5-d95e8ff878be",
- "type": "workflow_version"
}, - {
- "id": "01a11923-f73d-7206-a813-df54c6ed2d77",
- "type": "workflow_version"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets",
- "runs": "/api/projects/opc/workflows/assets/runs",
- "versions": "/api/projects/opc/workflows/assets/versions",
- "latest_version": "/api/projects/opc/workflows/assets/versions/2",
- "latest_published_version": "/api/projects/opc/workflows/assets/versions/2"
}
}
}Shows a workflow version.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
| version required | string Example: 2 version |
{- "data": {
- "id": "01a11923-fc7b-76a9-a0be-29edcf8a7168",
- "type": "workflow_version",
- "attributes": {
- "code": "assets",
- "name": "assets workflow",
- "description": "workflow for assets",
- "draft": false,
- "archived": false,
- "created_by": "roscoe-4813",
- "created_at": "2026-10-08T01:32:31.226573Z",
- "updated_at": "2026-10-08T01:32:31.242826Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [ ],
- "sample_properties": {
- "sample": null
}, - "version": 2
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11923-fb6d-7140-9e57-f102e9d3e793",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/versions/2",
- "runs": "/api/projects/opc/workflows/assets/versions/2/runs",
- "workflow": "/api/projects/opc/workflows/assets"
}
}
}Update a workflow version.
Once the workflow version has been run (or scheduled to run), its steps, source YAML and draft state can no longer be changed. A validation request that supplies custom sample properties (property_overrides with validate_flag set) is still permitted, so the stored steps can be validated against those properties.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
| version required | string Example: 2 version |
required | object |
object |
{- "data": {
- "attributes": {
- "code": "7ef2r",
- "node_id": "01a1191f-3f9a-7559-852a-67ef2e50f654",
- "archived": false,
- "name": "alavtqjpy3",
- "description": "Compressing the circuit won't do anything, we need to override the haptic xml microchip!",
- "steps": [
- {
- "type": "change",
- "targets": [
- "/projects/dkynh/environments/6ts8j/assets/pwcfz",
- "/projects/d7eoj/environments/gbhqc/assets/bve86"
], - "action": "parse",
- "template_versions": [
- "viz1g",
- "k4e5b"
], - "run_as": "parallel",
- "name": "culpa"
}, - {
- "type": "wait",
- "name": "doloremque"
}, - {
- "type": "workflow",
- "target": "/projects/2kacx/workflows/bodck",
- "version": 1,
- "name": "ut",
- "start_time": null
}, - {
- "run_as": "parallel",
- "name": "soluta",
- "children": [
- {
- "type": "change",
- "target": "/projects/czzeo/environments/8cjkr/assets/dlwpu",
- "action": "input",
- "template_version": "iwlfi",
- "name": "deleniti",
- "start_time": "2026-10-09T01:27:16Z"
}, - {
- "type": "wait",
- "name": "aut"
}, - {
- "type": "workflow",
- "target": "/projects/qijnh/workflows/mfljl",
- "version": null,
- "name": "est",
- "start_time": null
}
]
}, - {
- "run_as": "sequential",
- "name": "laudantium",
- "children": [
- {
- "type": "change",
- "target": "/projects/evvbc/environments/kwu4t/assets/swor4",
- "action": "connect",
- "template_version": "cc5ee",
- "name": "facilis",
- "start_time": "2026-10-09T01:27:17Z"
}, - {
- "type": "wait",
- "name": "sapiente"
}, - {
- "type": "workflow",
- "target": "/projects/qlvkj/workflows/gzwev",
- "version": null,
- "name": "libero",
- "start_time": null
}
]
}
], - "draft": true
}
}
}{- "data": {
- "id": "01a11924-054d-73d8-b18c-a7594f472698",
- "type": "workflow_version",
- "attributes": {
- "code": "assets",
- "name": "new workflow name",
- "description": "new description",
- "draft": true,
- "archived": false,
- "created_by": "elden-4859",
- "created_at": "2026-10-08T01:32:33.483744Z",
- "updated_at": "2026-10-08T01:32:33.529903Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "type": "change",
- "targets": [
- "/projects/dkynh/environments/6ts8j/assets/pwcfz",
- "/projects/d7eoj/environments/gbhqc/assets/bve86"
], - "action": "parse",
- "template_versions": [
- "viz1g",
- "k4e5b"
], - "run_as": "parallel",
- "name": "culpa"
}, - {
- "type": "wait",
- "name": "doloremque"
}, - {
- "type": "workflow",
- "target": "/projects/2kacx/workflows/bodck",
- "version": 1,
- "name": "ut",
- "start_time": null
}, - {
- "run_as": "parallel",
- "name": "soluta",
- "children": [
- {
- "type": "change",
- "target": "/projects/czzeo/environments/8cjkr/assets/dlwpu",
- "action": "input",
- "template_version": "iwlfi",
- "name": "deleniti",
- "start_time": "2026-10-09T01:27:16Z"
}, - {
- "type": "wait",
- "name": "aut"
}, - {
- "type": "workflow",
- "target": "/projects/qijnh/workflows/mfljl",
- "version": null,
- "name": "est",
- "start_time": null
}
]
}, - {
- "run_as": "sequential",
- "name": "laudantium",
- "children": [
- {
- "type": "change",
- "target": "/projects/evvbc/environments/kwu4t/assets/swor4",
- "action": "connect",
- "template_version": "cc5ee",
- "name": "facilis",
- "start_time": "2026-10-09T01:27:17Z"
}, - {
- "type": "wait",
- "name": "sapiente"
}, - {
- "type": "workflow",
- "target": "/projects/qlvkj/workflows/gzwev",
- "version": null,
- "name": "libero",
- "start_time": null
}
]
}
], - "resolved_steps": [ ],
- "sample_properties": {
- "sample": null
}, - "version": 2
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11924-044f-7ab9-b70b-872f1ec671ce",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/versions/2",
- "runs": "/api/projects/opc/workflows/assets/versions/2/runs",
- "workflow": "/api/projects/opc/workflows/assets"
}
}
}Delete or archive a workflow version.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
| version required | string Example: 2 version |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find WorkflowVersion"
}
}
]
}Endpoints to interact with properties.
Shows the current properties JSON and its version.
| properties_id required | string Example: 01a1191e-f875-7b60-93bb-211c1782167d properties id |
{- "data": {
- "id": "01a11921-789e-72a9-b2f8-3a5bea5402a8",
- "type": "properties",
- "attributes": {
- "data": {
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}, - "version": 1,
- "created_at": "2026-10-08T01:29:46.397544Z"
}, - "relationships": {
- "owner": {
- "links": {
- "owner": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/properties/01a11921-789e-72a9-b2f8-3a5bea5402a8",
- "current_version": "/api/properties/01a11921-789e-72a9-b2f8-3a5bea5402a8/versions/1",
- "versions": "/api/properties/01a11921-789e-72a9-b2f8-3a5bea5402a8/versions"
}
}
}Updates a properties JSON if the included version matches the current properties version.
| id_to_update required | string Example: 01a1191e-f875-7b60-93bb-211c1782167d properties id |
required | object |
{- "data": {
- "attributes": {
- "data": {
- "any_key": "with updated value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}, - "version": 1
}
}
}{- "data": {
- "id": "01a11921-79f3-7a47-b0b0-c5bc77eca9d6",
- "type": "properties",
- "attributes": {
- "data": {
- "any_key": "with updated value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}, - "version": 2,
- "created_at": "2026-10-08T01:29:46.738093Z"
}, - "relationships": {
- "owner": {
- "links": {
- "owner": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/properties/01a11921-79f3-7a47-b0b0-c5bc77eca9d6",
- "current_version": "/api/properties/01a11921-79f3-7a47-b0b0-c5bc77eca9d6/versions/2",
- "versions": "/api/properties/01a11921-79f3-7a47-b0b0-c5bc77eca9d6/versions"
}
}
}Updates a properties JSON, without any version checking (always updates).
| id_to_set required | string Example: 01a1191e-f875-7b60-93bb-211c1782167d properties id |
required | object |
{- "data": {
- "attributes": {
- "data": {
- "any_key": "with updated value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}
}
}
}{- "data": {
- "id": "01a11921-7cd2-71d4-8b4f-002db1c65f0d",
- "type": "properties",
- "attributes": {
- "data": {
- "any_key": "with updated value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}, - "version": 2,
- "created_at": "2026-10-08T01:29:47.473452Z"
}, - "relationships": {
- "owner": {
- "links": {
- "owner": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/properties/01a11921-7cd2-71d4-8b4f-002db1c65f0d",
- "current_version": "/api/properties/01a11921-7cd2-71d4-8b4f-002db1c65f0d/versions/2",
- "versions": "/api/properties/01a11921-7cd2-71d4-8b4f-002db1c65f0d/versions"
}
}
}Create or update a file property in the properties.
| properties_id required | string Example: 01a1191e-f875-7b60-93bb-211c1782167d properties id |
| file_path | string (Path to write the file within /opt/opschain) |
| mode | string (Linux octal file mode) |
| format | string (How the file content is serialised (default: 'raw')) Enum: "base64" "json" "raw" |
| replace_file | string (Replace the file property if it exists (default: false)) |
| secret_path | string (Path to write the secret key into) |
| secret_key | string |
| replace_secret | string (Replace the secret vault value if it exists (default: false)) |
| file | string <binary> File to use. The filename is ignored. |
------------XnJLe9ZIbbGUYtzPQJ16u1 content-disposition: form-data; name="mode" 0600 ------------XnJLe9ZIbbGUYtzPQJ16u1 content-disposition: form-data; name="file_path" /opt/opschain/sample.txt ------------XnJLe9ZIbbGUYtzPQJ16u1 content-disposition: form-data; name="format" raw ------------XnJLe9ZIbbGUYtzPQJ16u1 content-disposition: form-data; name="replace_file" true ------------XnJLe9ZIbbGUYtzPQJ16u1 content-disposition: form-data; name="file"; filename="sample.txt" content-type: text/plain content-length: 21 Sample file property ------------XnJLe9ZIbbGUYtzPQJ16u1--
{- "data": {
- "id": "01a11921-7ee1-760a-b995-0c639c1b6433",
- "type": "properties",
- "attributes": {
- "data": {
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}, - "opschain": {
- "files": {
- "/opt/opschain/sample.txt": {
- "mode": "0600",
- "format": "raw",
- "content": "Sample file property\n"
}
}
}
}, - "version": 2,
- "created_at": "2026-10-08T01:29:48.000392Z"
}, - "relationships": {
- "owner": {
- "links": {
- "owner": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/properties/01a11921-7ee1-760a-b995-0c639c1b6433",
- "current_version": "/api/properties/01a11921-7ee1-760a-b995-0c639c1b6433/versions/2",
- "versions": "/api/properties/01a11921-7ee1-760a-b995-0c639c1b6433/versions"
}
}
}Endpoints to interact with the version history for properties.
Lists all versions of an OpsChain properties.
| properties_id required | string Example: 01a1191e-f875-7b60-93bb-211c1782167d properties id |
| limit | integer [ 1 .. 10000 ] Default: 1000 Example: limit=50 Limit the number of properties versions returned. When more records match than the limit a 206 response is returned and |
| exclude_data | boolean Default: false Example: exclude_data=true Exclude the |
{- "data": [
- {
- "id": "01a11921-8047-7d1c-8bed-51d16856090c",
- "type": "properties_version",
- "attributes": {
- "data": {
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}, - "version": 1,
- "created_at": "2026-10-08T01:29:48.359189Z",
- "owner_type": "Project"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-8041-7a0a-a6dd-8ac7ff8867a4",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-8041-7a0a-a6dd-8ac7ff8867a4"
}
}
}, - "links": {
- "versions": "/api/properties/01a11921-8041-7a0a-a6dd-8ac7ff8867a4/versions",
- "owner": "/api/projects/opc",
- "self": "/api/properties/01a11921-8041-7a0a-a6dd-8ac7ff8867a4/versions/1"
}, - "meta": { }
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}Shows the properties JSON for this properties version.
| properties_id required | string Example: 01a1191e-f875-7b60-93bb-211c1782167d properties id |
| version_number required | integer Example: 1 version number |
{- "data": {
- "id": "01a11921-81d9-77ac-b458-ecc04b542f3c",
- "type": "properties_version",
- "attributes": {
- "data": {
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}, - "version": 1,
- "created_at": "2026-10-08T01:29:48.760330Z",
- "owner_type": "Project"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-81ce-7c2a-9b8d-1fab26f54908",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-81ce-7c2a-9b8d-1fab26f54908"
}
}
}, - "links": {
- "versions": "/api/properties/01a11921-81ce-7c2a-9b8d-1fab26f54908/versions",
- "owner": "/api/projects/opc",
- "self": "/api/properties/01a11921-81ce-7c2a-9b8d-1fab26f54908/versions/1"
}, - "meta": { }
}
}Lists all activities (changes and workflow runs) accessible to the user.
| limit | integer [ 1 .. 1000 ] Default: 100 Example: limit=100 The maximum number of activities to return. When more records match than the limit a 206 response is returned and |
| exact_count | boolean Example: exact_count=true By default |
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[created_by_cont]=opschain API filtering guide. Named filters: |
| download | string Example: download=activities.csv Download activities in CSV format with the specified file name. The activities will be ordered from oldest to newest when this parameter is specified, irrespective of the sort order or limit requested. |
{- "data": [
- {
- "id": "01a1191f-5266-7724-9749-b0b1875be487",
- "type": "workflow_run",
- "attributes": {
- "scheduled": false,
- "created_by": "cruz-330",
- "id": "01a1191f-5266-7724-9749-b0b1875be487",
- "project_name": "deleniti116",
- "scheduled_activity_id": null,
- "paused": false,
- "pause_state": "none",
- "created_at": "2026-10-08T01:27:25.541024Z",
- "updated_at": "2026-10-08T01:27:25.558913Z",
- "started_at": "2026-10-08T01:21:56.371676Z",
- "finished_at": "2026-10-08T01:25:46.034051Z",
- "paused_at": null,
- "status_code": "success",
- "metadata": {
- "It": "5.1.8",
- "Alpha": "3.9.5",
- "Opela": "4.3",
- "Sonair": "0.11",
- "Bitwolf": "0.9.2",
- "Zontrax": "0.25",
- "Tempsoft": "0.6.2",
- "Mat Lam Tam": "0.5.0",
- "Solarbreeze": "3.0"
}, - "paused_by": [ ],
- "parents": [
- {
- "id": "01a1191f-5199-77c6-821a-ce51ab152ec5",
- "code": "xzbm6",
- "name": "deleniti116",
- "type": "project",
- "links": {
- "self": "/projects/xzbm6"
}, - "template": {
- "code": null,
- "name": null
}, - "template_version": {
- "version": null
}
}
], - "workflow_version": {
- "version": 1,
- "links": {
- "self": "/projects/xzbm6/workflows/child/versions/1"
}
}, - "workflow": {
- "code": "child",
- "name": "child workflow"
}
}, - "links": {
- "self": "/api/projects/xzbm6/workflows/child/runs/01a1191f-5266-7724-9749-b0b1875be487",
- "parent": "/api/projects/xzbm6",
- "workflow_version": "/api/projects/xzbm6/workflows/child/versions/1"
}
}, - {
- "id": "01a1191f-514b-72a7-b806-f080eaa49c60",
- "type": "change",
- "attributes": {
- "scheduled": false,
- "created_by": "dudley-326",
- "id": "01a1191f-514b-72a7-b806-f080eaa49c60",
- "project_name": "sit114",
- "scheduled_activity_id": null,
- "paused": false,
- "pause_state": "none",
- "created_at": "2026-10-08T01:27:25.257406Z",
- "updated_at": "2026-10-08T01:27:25.266428Z",
- "started_at": "2026-10-08T01:20:33.459339Z",
- "finished_at": "2026-10-08T01:26:06.258738Z",
- "paused_at": null,
- "status_code": "success",
- "metadata": {
- "feed": "calculating"
}, - "paused_by": [ ],
- "parents": [
- {
- "id": "01a1191f-5041-7d84-853b-fbb881c39e35",
- "code": "ssoo7",
- "name": "sit114",
- "type": "project",
- "links": {
- "self": "/projects/ssoo7"
}, - "template": {
- "code": null,
- "name": null
}, - "template_version": {
- "version": null
}
}, - {
- "id": "01a1191f-5071-769e-94e0-8b069f3b5f52",
- "code": "rheaw",
- "name": "voluptas115",
- "type": "environment",
- "links": {
- "self": "/projects/ssoo7/environments/rheaw"
}, - "template": {
- "code": null,
- "name": null
}, - "template_version": {
- "version": null
}
}, - {
- "id": "01a1191f-5103-7209-9558-02e42d23f4c6",
- "code": "endwj",
- "name": "quod113",
- "type": "asset",
- "links": {
- "self": "/projects/ssoo7/environments/rheaw/assets/endwj"
}, - "template": {
- "code": "hbpze",
- "name": "malka"
}, - "template_version": {
- "version": "b74ru"
}
}
], - "action": "parse",
- "commit_sha": "7d90d9160cdb46048bbb7eec62ba57a285667cd2",
- "git_remote_name": "denny.jakubowski",
- "git_rev": "optical"
}, - "links": {
- "self": "/api/projects/ssoo7/environments/rheaw/assets/endwj/changes/01a1191f-514b-72a7-b806-f080eaa49c60",
- "parent": "/api/projects/ssoo7/environments/rheaw/assets/endwj"
}
}, - {
- "id": "01a1191f-5000-77db-8a1d-82b42e4707eb",
- "type": "change",
- "attributes": {
- "scheduled": false,
- "created_by": "timothy-320",
- "id": "01a1191f-5000-77db-8a1d-82b42e4707eb",
- "project_name": "cupiditate111",
- "scheduled_activity_id": null,
- "paused": false,
- "pause_state": "none",
- "created_at": "2026-10-08T01:27:24.926785Z",
- "updated_at": "2026-10-08T01:27:24.936887Z",
- "started_at": "2026-10-08T01:19:32.012850Z",
- "finished_at": "2026-10-08T01:22:30.550619Z",
- "paused_at": null,
- "status_code": "success",
- "metadata": {
- "matrix": "connecting"
}, - "paused_by": [ ],
- "parents": [
- {
- "id": "01a1191f-4ec3-7c4e-8c60-937ad95d1f49",
- "code": "i6fsi",
- "name": "cupiditate111",
- "type": "project",
- "links": {
- "self": "/projects/i6fsi"
}, - "template": {
- "code": null,
- "name": null
}, - "template_version": {
- "version": null
}
}, - {
- "id": "01a1191f-4eef-79a5-b59f-4621486d5c30",
- "code": "lymzm",
- "name": "laboriosam112",
- "type": "environment",
- "links": {
- "self": "/projects/i6fsi/environments/lymzm"
}, - "template": {
- "code": null,
- "name": null
}, - "template_version": {
- "version": null
}
}, - {
- "id": "01a1191f-4faa-79c9-8809-9e6d595b4212",
- "code": "xp3pd",
- "name": "quae110",
- "type": "asset",
- "links": {
- "self": "/projects/i6fsi/environments/lymzm/assets/xp3pd"
}, - "template": {
- "code": "jqvyl",
- "name": "xenia"
}, - "template_version": {
- "version": "vzw10"
}
}
], - "action": "reboot",
- "commit_sha": "cc21040704ecf0937ff9ddef4d2c9aace78ea482",
- "git_remote_name": "leia.nader",
- "git_rev": "online"
}, - "links": {
- "self": "/api/projects/i6fsi/environments/lymzm/assets/xp3pd/changes/01a1191f-5000-77db-8a1d-82b42e4707eb",
- "parent": "/api/projects/i6fsi/environments/lymzm/assets/xp3pd"
}
}, - {
- "id": "01a1191f-4e86-70f1-aaa2-e1ba8e1c0ee2",
- "type": "workflow_run",
- "attributes": {
- "scheduled": false,
- "created_by": "ngoc_jacobson-313",
- "id": "01a1191f-4e86-70f1-aaa2-e1ba8e1c0ee2",
- "project_name": "OpsChain",
- "scheduled_activity_id": null,
- "paused": false,
- "pause_state": "none",
- "created_at": "2026-10-08T01:27:24.548935Z",
- "updated_at": "2026-10-08T01:27:24.566312Z",
- "started_at": "2026-10-08T01:17:27.391706Z",
- "finished_at": "2026-10-08T01:24:51.054749Z",
- "paused_at": null,
- "status_code": "success",
- "metadata": {
- "Stim": "0.35",
- "Alpha": "3.4.2",
- "Subin": "7.95",
- "Keylex": "0.6.9",
- "Latlux": "4.6",
- "Cookley": "1.2.0",
- "Aerified": "6.17",
- "Alphazap": "5.8",
- "Y-Solowarm": "5.1.9"
}, - "paused_by": [ ],
- "parents": [
- {
- "id": "01a1191f-4bd2-76a9-a659-261a36315a71",
- "code": "opc",
- "name": "OpsChain",
- "type": "project",
- "links": {
- "self": "/projects/opc"
}, - "template": {
- "code": null,
- "name": null
}, - "template_version": {
- "version": null
}
}
], - "workflow_version": {
- "version": 2,
- "links": {
- "self": "/projects/opc/workflows/assets/versions/2"
}
}, - "workflow": {
- "code": "assets",
- "name": "assets workflow"
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a1191f-4e86-70f1-aaa2-e1ba8e1c0ee2",
- "parent": "/api/projects/opc",
- "workflow_version": "/api/projects/opc/workflows/assets/versions/2"
}
}, - {
- "id": "01a1191f-4c90-7206-b41d-4d20a69cbb82",
- "type": "change",
- "attributes": {
- "scheduled": false,
- "created_by": "tyrell-306",
- "id": "01a1191f-4c90-7206-b41d-4d20a69cbb82",
- "project_name": "OpsChain",
- "scheduled_activity_id": null,
- "paused": false,
- "pause_state": "none",
- "created_at": "2026-10-08T01:27:24.045543Z",
- "updated_at": "2026-10-08T01:27:24.064864Z",
- "started_at": "2026-10-08T01:22:06.674092Z",
- "finished_at": "2026-10-08T01:24:52.567825Z",
- "paused_at": null,
- "status_code": "success",
- "metadata": {
- "card": "backing up"
}, - "paused_by": [ ],
- "parents": [
- {
- "id": "01a1191f-4bd2-76a9-a659-261a36315a71",
- "code": "opc",
- "name": "OpsChain",
- "type": "project",
- "links": {
- "self": "/projects/opc"
}, - "template": {
- "code": null,
- "name": null
}, - "template_version": {
- "version": null
}
}, - {
- "id": "01a1191f-4c19-77c0-9c5e-09a45921dd7f",
- "code": "dev",
- "name": "Development",
- "type": "environment",
- "links": {
- "self": "/projects/opc/environments/dev"
}, - "template": {
- "code": null,
- "name": null
}, - "template_version": {
- "version": null
}
}
], - "action": "reboot",
- "commit_sha": "9a50fb1c30abc93dd6abd74c5879c6e931fbc33b",
- "git_remote_name": "github",
- "git_rev": "main"
}, - "links": {
- "self": "/api/projects/opc/environments/dev/changes/01a1191f-4c90-7206-b41d-4d20a69cbb82",
- "parent": "/api/projects/opc/environments/dev"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false,
- "has_any": true,
- "total_matching_filter": 5,
- "total_matching_filter_exact": true
}
}Endpoints to interact with changes.
Lists all changes.
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[environment_code_eq]=dev API filtering guide. Named filters: |
| download | string Example: download=changes.csv Download changes in CSV format with the specified file name. The changes will be ordered from oldest to newest when this parameter is specified, irrespective of the sort order requested. |
| include | string Example: include=steps,parents Include the change steps and parents in the response |
| fields[<resource_type>] | |
| limit | integer [ 1 .. 10000 ] Default: 100 Example: limit=50 Limit the number of changes returned. When more records match than the limit a 206 response is returned and |
| include_children | boolean Example: include_children=true Only applies when the changes are being listed for a node - via a node path or |
| total_count | boolean Example: total_count=true Report the number of changes matching the filter in |
| exact_count | boolean Example: exact_count=true Report |
{- "data": [
- {
- "id": "01a11920-43de-7e09-b183-19c384007318",
- "type": "change",
- "attributes": {
- "created_by": "mao.tremblay-1171",
- "step_name": "synthesize",
- "action": "synthesize",
- "build_without_cache": false,
- "auto_continue_wait_steps": false,
- "initial_step_tree": { },
- "metadata": {
- "alarm": "calculating"
}, - "scheduled": false,
- "approved_by": [ ],
- "rejected_by": [ ],
- "cancelled_by": null,
- "state_timing": {
- "success": {
- "ended_at": "2026-10-08T01:28:27.363227Z",
- "started_at": "2026-10-08T01:28:27.363227Z"
}
}, - "state_timing_summary": { },
- "notify": { },
- "skip_steps": [ ],
- "starting_step": null,
- "cluster_name": null,
- "pause_state": "none",
- "status_code": "success",
- "paused": false,
- "paused_by": [ ],
- "created_at": "2026-10-08T01:28:27.356676Z",
- "started_at": "2026-10-08T01:20:43.931755Z",
- "finished_at": "2026-10-08T01:23:01.964188Z",
- "updated_at": "2026-10-08T01:28:27.373110Z",
- "paused_at": null,
- "asset_name": null,
- "environment_name": "Development",
- "project_name": "OpsChain",
- "git_remote_name": "github",
- "git_rev": "main",
- "commit_sha": "194cb5c4c891869c83222576776ea1ee8e936247",
- "requires_approval_from": null
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-4429-7930-a519-04e3604e7f97",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-4429-7930-a519-04e3604e7f97"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11920-4356-7a75-a749-45e2226f2b85",
- "type": "project"
}, - {
- "id": "01a11920-4388-7415-9777-594efc11b196",
- "type": "environment"
}
]
}, - "root_step": {
- "data": {
- "id": "01a11920-43e4-7c31-af0c-bc8fdbd6e9da",
- "type": "step"
}, - "links": {
- "related": "/api/steps/01a11920-43e4-7c31-af0c-bc8fdbd6e9da"
}
}, - "steps": {
- "data": [
- {
- "id": "01a11920-43e4-7c31-af0c-bc8fdbd6e9da",
- "type": "step"
}
]
}, - "workflow_run": {
- "data": null
}, - "workflow": {
- "data": null
}, - "override_properties": {
- "data": {
- "id": "01a11920-43f4-7b0f-873f-3a814265f5ff",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-43f4-7b0f-873f-3a814265f5ff"
}
}, - "override_settings": {
- "data": {
- "id": "01a11920-43fe-74d6-b662-4c7e1dffc80a",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-43fe-74d6-b662-4c7e1dffc80a"
}
}
}, - "links": {
- "git_remote": "/api/projects/opc/git_remotes/01a11920-43ab-75ba-b8b6-6077a504c780",
- "project": "/api/projects/opc",
- "parent": "/api/projects/opc/environments/dev",
- "self": "/api/projects/opc/environments/dev/changes/01a11920-43de-7e09-b183-19c384007318",
- "log_lines": "/api/changes/01a11920-43de-7e09-b183-19c384007318/log_lines"
}, - "meta": { }
}
], - "included": [
- {
- "id": "01a11920-43e4-7c31-af0c-bc8fdbd6e9da",
- "type": "step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": null,
- "action": "synthesize",
- "change_id": "01a11920-43de-7e09-b183-19c384007318",
- "child_execution_strategy": "sequential",
- "full_path": "synthesize",
- "ignore_failure": false,
- "input_arguments": [ ],
- "state_timing": {
- "success": {
- "ended_at": "2026-10-08T01:28:27.363227Z",
- "started_at": "2026-10-08T01:28:27.363227Z"
}
}, - "step_sequence": 1,
- "step_type": "standard",
- "description": null,
- "step_name": "synthesize",
- "skip_requested": false,
- "created_at": "2026-10-08T01:19:43.931755Z",
- "started_at": "2026-10-08T01:20:43.931755Z",
- "finished_at": "2026-10-08T01:23:01.964188Z",
- "updated_at": "2026-10-08T01:28:27.373110Z",
- "status_code": "success"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-4429-7930-a519-04e3604e7f97",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-4429-7930-a519-04e3604e7f97"
}
}, - "children": {
- "data": [ ]
}, - "pre_properties_versions": {
- "data": [
- {
- "id": "01a11920-4363-7e97-b752-f9792beb6686",
- "type": "properties_version"
}, - {
- "id": "01a11920-4399-7e1c-b0bc-7af59eda95f7",
- "type": "properties_version"
}, - {
- "id": "01a11920-43f9-7c8f-85fe-989b9b891528",
- "type": "properties_version"
}
]
}, - "post_properties_versions": {
- "data": [ ]
}, - "change": {
- "data": {
- "id": "01a11920-43de-7e09-b183-19c384007318",
- "type": "change"
}
}
}, - "links": {
- "parent": "/api/changes/01a11920-43de-7e09-b183-19c384007318",
- "change": "/api/projects/opc/environments/dev/changes/01a11920-43de-7e09-b183-19c384007318",
- "log_lines": "/api/steps/01a11920-43e4-7c31-af0c-bc8fdbd6e9da/log_lines",
- "self": "/api/steps/01a11920-43e4-7c31-af0c-bc8fdbd6e9da"
}, - "meta": { }
}, - {
- "id": "01a11920-4356-7a75-a749-45e2226f2b85",
- "type": "project",
- "attributes": {
- "code": "opc",
- "name": "OpsChain",
- "description": "OpsChain project",
- "archived": false,
- "created_by": "edythe-1168",
- "project_type": "Enterprise"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-435b-76f4-b433-1b7906e496aa",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-435b-76f4-b433-1b7906e496aa"
}
}, - "parents": {
- "data": [ ]
}, - "settings": {
- "data": {
- "id": "01a11920-436a-701c-bc8b-0274a97c883b",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-436a-701c-bc8b-0274a97c883b"
}
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc",
- "artefacts": "/api/projects/opc/artefacts",
- "bookmarks": "/api/projects/opc/bookmarks",
- "changes": "/api/projects/opc/changes",
- "scheduled_activities": "/api/projects/opc/scheduled_activities",
- "git_remotes": "/api/projects/opc/git_remotes",
- "workflows": "/api/projects/opc/workflows",
- "workflow_runs": "/api/projects/opc/workflow_runs",
- "templates": "/api/projects/opc/templates",
- "environments": "/api/projects/opc/environments",
- "assets": "/api/projects/opc/assets",
- "agents": "/api/projects/opc/agents"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": true,
- "requires_template": false,
- "child_node_types": [
- "environment",
- "asset",
- "agent"
], - "can_have_workflows": true,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "git_remotes": {
- "read": true,
- "update": true,
- "delete": true
}, - "templates": {
- "read": true,
- "update": true,
- "delete": true
}, - "workflows": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "workflow_runs": {
- "read": true,
- "execute": true,
- "delete": true
}, - "environments": {
- "read": true,
- "update": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "agents": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}, - {
- "id": "01a11920-4388-7415-9777-594efc11b196",
- "type": "environment",
- "attributes": {
- "code": "dev",
- "name": "Development",
- "description": "OpsChain development environment",
- "archived": false,
- "created_by": "randee-1169"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-4390-7784-8ef3-acedcb9701fa",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-4390-7784-8ef3-acedcb9701fa"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11920-4356-7a75-a749-45e2226f2b85",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11920-439f-7994-b1c8-90fb1c8fcb9c",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-439f-7994-b1c8-90fb1c8fcb9c"
}
}, - "parent": {
- "data": {
- "id": "01a11920-4356-7a75-a749-45e2226f2b85",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11920-4356-7a75-a749-45e2226f2b85",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/environments/dev",
- "artefacts": "/api/projects/opc/environments/dev/artefacts",
- "bookmarks": "/api/projects/opc/environments/dev/bookmarks",
- "changes": "/api/projects/opc/environments/dev/changes",
- "scheduled_activities": "/api/projects/opc/environments/dev/scheduled_activities",
- "parent": "/api/projects/opc",
- "assets": "/api/projects/opc/environments/dev/assets"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": false,
- "child_node_types": [
- "asset"
], - "can_have_workflows": false,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true,
- "execute": true
}, - "partial_response": false,
- "has_any": true
}
}Creates a change in a specific project, environment or asset.
Notes:
changes path
(e.g. POST to /api/projects/{project_code}/changes) the parent_path request attributes must not be supplied
as the parent will be derived from the path./api/projects/{project_code}/assets/{asset_code}/changes)
the git_remote_name and git_rev attributes must not be supplied as the Git remote and revision will be
derived from the asset's template.retry attribute (together with a change relationship) retries an existing change that finished in an
error, cancelled or aborted state instead of creating a change from scratch. The retry creates a new change that
reuses the original change's action, commit, properties and step tree; steps that already succeeded are preserved
and are not run again. The original change is left untouched.required | object |
{- "data": {
- "attributes": {
- "metadata": {
- "monitor": "navigating"
}, - "scheduled_activity_id": null,
- "build_without_cache": false,
- "pod_per_step": true,
- "action_path": null,
- "static_settings": { },
- "state_timing_summary": { },
- "notify": { },
- "api_key_id": null,
- "skip_steps": [ ],
- "auto_continue_wait_steps": false,
- "starting_step": null,
- "generate_actions_request_id": null,
- "paused_at": null,
- "executor_queue_name": null,
- "action": "input",
- "parent_path": "/projects/opc/environments/dev/assets/env_soa",
- "template_version": "2023_Q4_2"
}
}
}{- "data": {
- "id": "01a11920-481a-7e44-9c7d-babc9fa117ce",
- "type": "change",
- "attributes": {
- "created_by": "logged_in_user",
- "step_name": "connect",
- "action": "connect",
- "build_without_cache": false,
- "auto_continue_wait_steps": false,
- "initial_step_tree": { },
- "metadata": {
- "bus": "generating"
}, - "scheduled": false,
- "approved_by": [ ],
- "rejected_by": [ ],
- "cancelled_by": null,
- "state_timing": {
- "initializing": {
- "ended_at": null,
- "started_at": "2026-10-08T01:28:28.447469Z"
}
}, - "state_timing_summary": { },
- "notify": { },
- "skip_steps": [ ],
- "starting_step": null,
- "cluster_name": null,
- "pause_state": "none",
- "status_code": "initializing",
- "paused": false,
- "paused_by": [ ],
- "created_at": "2026-10-08T01:28:28.441021Z",
- "started_at": "2026-10-08T01:28:28.433318Z",
- "finished_at": null,
- "updated_at": "2026-10-08T01:28:28.455585Z",
- "paused_at": null,
- "asset_name": null,
- "environment_name": "Development",
- "project_name": "OpsChain",
- "git_remote_name": "github",
- "git_rev": "main",
- "commit_sha": null,
- "requires_approval_from": null
}, - "relationships": {
- "parents": {
- "data": [
- {
- "id": "01a11920-45d1-75fc-8403-b9cd03f4d705",
- "type": "project"
}, - {
- "id": "01a11920-4609-779b-8c21-103202a5a76d",
- "type": "environment"
}
]
}, - "root_step": {
- "data": {
- "id": "01a11920-4821-7458-a5f8-6831bb49aea7",
- "type": "step"
}, - "links": {
- "related": "/api/steps/01a11920-4821-7458-a5f8-6831bb49aea7"
}
}, - "steps": {
- "data": [
- {
- "id": "01a11920-4821-7458-a5f8-6831bb49aea7",
- "type": "step"
}
]
}, - "workflow_run": {
- "data": null
}, - "workflow": {
- "data": null
}, - "override_properties": {
- "data": {
- "id": "01a11920-482f-72a9-8287-efce74e25150",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-482f-72a9-8287-efce74e25150"
}
}, - "override_settings": {
- "data": {
- "id": "01a11920-4839-7109-bb16-191eaa7ba7f3",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-4839-7109-bb16-191eaa7ba7f3"
}
}
}, - "links": {
- "git_remote": "/api/projects/opc/git_remotes/01a11920-462e-7652-b863-578a4ba81a62",
- "project": "/api/projects/opc",
- "parent": "/api/projects/opc/environments/dev",
- "self": "/api/projects/opc/environments/dev/changes/01a11920-481a-7e44-9c7d-babc9fa117ce",
- "log_lines": "/api/changes/01a11920-481a-7e44-9c7d-babc9fa117ce/log_lines",
- "pause": "/api/changes/01a11920-481a-7e44-9c7d-babc9fa117ce/pause"
}, - "meta": { }
}, - "included": [
- {
- "id": "01a11920-4821-7458-a5f8-6831bb49aea7",
- "type": "step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": null,
- "action": "connect",
- "change_id": "01a11920-481a-7e44-9c7d-babc9fa117ce",
- "child_execution_strategy": "sequential",
- "full_path": "connect",
- "ignore_failure": false,
- "input_arguments": [ ],
- "state_timing": {
- "initializing": {
- "ended_at": null,
- "started_at": "2026-10-08T01:28:28.447469Z"
}
}, - "step_sequence": 1,
- "step_type": "standard",
- "description": null,
- "step_name": "connect",
- "skip_requested": false,
- "created_at": "2026-10-08T01:28:28.447469Z",
- "started_at": "2026-10-08T01:28:28.433318Z",
- "finished_at": null,
- "updated_at": "2026-10-08T01:28:28.455585Z",
- "status_code": "initializing"
}, - "relationships": {
- "children": {
- "data": [ ]
}, - "pre_properties_versions": {
- "data": [ ]
}, - "post_properties_versions": {
- "data": [ ]
}, - "change": {
- "data": {
- "id": "01a11920-481a-7e44-9c7d-babc9fa117ce",
- "type": "change"
}
}
}, - "links": {
- "parent": "/api/changes/01a11920-481a-7e44-9c7d-babc9fa117ce",
- "change": "/api/projects/opc/environments/dev/changes/01a11920-481a-7e44-9c7d-babc9fa117ce",
- "log_lines": "/api/steps/01a11920-4821-7458-a5f8-6831bb49aea7/log_lines",
- "self": "/api/steps/01a11920-4821-7458-a5f8-6831bb49aea7"
}, - "meta": { }
}
]
}Shows a change, including it's parent nodes.
| change_id required | string Example: 01a1191f-04e7-7e96-8ab6-54dc3b64fc90 change id |
| include | string Example: include=steps,parents Include the change steps and parents in the response |
| fields[<resource_type>] |
{- "data": {
- "id": "01a11920-4bac-7b9b-91d3-72dea7ca4bb7",
- "type": "change",
- "attributes": {
- "created_by": "sherrell_veum-1193",
- "step_name": "input",
- "action": "input",
- "build_without_cache": false,
- "auto_continue_wait_steps": false,
- "initial_step_tree": { },
- "metadata": {
- "application": "overriding"
}, - "scheduled": false,
- "approved_by": [ ],
- "rejected_by": [ ],
- "cancelled_by": null,
- "state_timing": {
- "success": {
- "ended_at": "2026-10-08T01:28:29.360528Z",
- "started_at": "2026-10-08T01:28:29.360528Z"
}
}, - "state_timing_summary": { },
- "notify": { },
- "skip_steps": [ ],
- "starting_step": null,
- "cluster_name": null,
- "pause_state": "none",
- "status_code": "success",
- "paused": false,
- "paused_by": [ ],
- "created_at": "2026-10-08T01:28:29.354441Z",
- "started_at": "2026-10-08T01:19:15.086705Z",
- "finished_at": "2026-10-08T01:22:15.906514Z",
- "updated_at": "2026-10-08T01:28:29.367353Z",
- "paused_at": null,
- "asset_name": null,
- "environment_name": "Development",
- "project_name": "OpsChain",
- "git_remote_name": "github",
- "git_rev": "main",
- "commit_sha": "4d786dfa6ff13fbad0801da05bf05ec513d0831a",
- "requires_approval_from": null
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-4bec-7a4f-ac11-44cd0e444100",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-4bec-7a4f-ac11-44cd0e444100"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11920-4b17-7e70-8855-6781f81a73e4",
- "type": "project"
}, - {
- "id": "01a11920-4b58-7928-b958-cf126664990b",
- "type": "environment"
}
]
}, - "root_step": {
- "data": {
- "id": "01a11920-4bb1-7dab-98f8-fe7e2f5576aa",
- "type": "step"
}, - "links": {
- "related": "/api/steps/01a11920-4bb1-7dab-98f8-fe7e2f5576aa"
}
}, - "steps": {
- "data": [
- {
- "id": "01a11920-4bb1-7dab-98f8-fe7e2f5576aa",
- "type": "step"
}
]
}, - "workflow_run": {
- "data": null
}, - "workflow": {
- "data": null
}, - "override_properties": {
- "data": {
- "id": "01a11920-4bbf-7500-a59e-d863d701a422",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-4bbf-7500-a59e-d863d701a422"
}
}, - "override_settings": {
- "data": {
- "id": "01a11920-4bc7-70f3-9b95-5b6174877d87",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-4bc7-70f3-9b95-5b6174877d87"
}
}
}, - "links": {
- "git_remote": "/api/projects/opc/git_remotes/01a11920-4b80-7559-afef-882ac413c34a",
- "project": "/api/projects/opc",
- "parent": "/api/projects/opc/environments/dev",
- "self": "/api/projects/opc/environments/dev/changes/01a11920-4bac-7b9b-91d3-72dea7ca4bb7",
- "log_lines": "/api/changes/01a11920-4bac-7b9b-91d3-72dea7ca4bb7/log_lines"
}, - "meta": {
- "wait_queue": [ ],
- "blocking_queue": [ ]
}
}, - "included": [
- {
- "id": "01a11920-4bb1-7dab-98f8-fe7e2f5576aa",
- "type": "step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": null,
- "action": "input",
- "change_id": "01a11920-4bac-7b9b-91d3-72dea7ca4bb7",
- "child_execution_strategy": "sequential",
- "full_path": "input",
- "ignore_failure": false,
- "input_arguments": [ ],
- "state_timing": {
- "success": {
- "ended_at": "2026-10-08T01:28:29.360528Z",
- "started_at": "2026-10-08T01:28:29.360528Z"
}
}, - "step_sequence": 1,
- "step_type": "standard",
- "description": null,
- "step_name": "input",
- "skip_requested": false,
- "created_at": "2026-10-08T01:18:15.086705Z",
- "started_at": "2026-10-08T01:19:15.086705Z",
- "finished_at": "2026-10-08T01:22:15.906514Z",
- "updated_at": "2026-10-08T01:28:29.367353Z",
- "status_code": "success"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-4bec-7a4f-ac11-44cd0e444100",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-4bec-7a4f-ac11-44cd0e444100"
}
}, - "children": {
- "data": [ ]
}, - "pre_properties_versions": {
- "data": [
- {
- "id": "01a11920-4b28-7716-86ee-385e999321b9",
- "type": "properties_version"
}, - {
- "id": "01a11920-4b6d-7f23-925f-ab6bad09547c",
- "type": "properties_version"
}, - {
- "id": "01a11920-4bc3-7919-bf16-4ab9dc01eeee",
- "type": "properties_version"
}
]
}, - "post_properties_versions": {
- "data": [ ]
}, - "change": {
- "data": {
- "id": "01a11920-4bac-7b9b-91d3-72dea7ca4bb7",
- "type": "change"
}
}
}, - "links": {
- "parent": "/api/changes/01a11920-4bac-7b9b-91d3-72dea7ca4bb7",
- "change": "/api/projects/opc/environments/dev/changes/01a11920-4bac-7b9b-91d3-72dea7ca4bb7",
- "log_lines": "/api/steps/01a11920-4bb1-7dab-98f8-fe7e2f5576aa/log_lines",
- "self": "/api/steps/01a11920-4bb1-7dab-98f8-fe7e2f5576aa"
}, - "meta": { }
}, - {
- "id": "01a11920-4b17-7e70-8855-6781f81a73e4",
- "type": "project",
- "attributes": {
- "code": "opc",
- "name": "OpsChain",
- "description": "OpsChain project",
- "archived": false,
- "created_by": "gordon_dubuque-1190",
- "project_type": "Enterprise"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-4b1d-784b-b01f-72eae8d53114",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-4b1d-784b-b01f-72eae8d53114"
}
}, - "parents": {
- "data": [ ]
}, - "settings": {
- "data": {
- "id": "01a11920-4b2f-7fc5-a7e5-b8caf9e136a6",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-4b2f-7fc5-a7e5-b8caf9e136a6"
}
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc",
- "artefacts": "/api/projects/opc/artefacts",
- "bookmarks": "/api/projects/opc/bookmarks",
- "changes": "/api/projects/opc/changes",
- "scheduled_activities": "/api/projects/opc/scheduled_activities",
- "git_remotes": "/api/projects/opc/git_remotes",
- "workflows": "/api/projects/opc/workflows",
- "workflow_runs": "/api/projects/opc/workflow_runs",
- "templates": "/api/projects/opc/templates",
- "environments": "/api/projects/opc/environments",
- "assets": "/api/projects/opc/assets",
- "agents": "/api/projects/opc/agents"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": true,
- "requires_template": false,
- "child_node_types": [
- "environment",
- "asset",
- "agent"
], - "can_have_workflows": true,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "git_remotes": {
- "read": true,
- "update": true,
- "delete": true
}, - "templates": {
- "read": true,
- "update": true,
- "delete": true
}, - "workflows": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "workflow_runs": {
- "read": true,
- "execute": true,
- "delete": true
}, - "environments": {
- "read": true,
- "update": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "agents": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}, - {
- "id": "01a11920-4b58-7928-b958-cf126664990b",
- "type": "environment",
- "attributes": {
- "code": "dev",
- "name": "Development",
- "description": "OpsChain development environment",
- "archived": false,
- "created_by": "antonio-1191"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-4b63-7150-a89d-ddccd53ed477",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-4b63-7150-a89d-ddccd53ed477"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11920-4b17-7e70-8855-6781f81a73e4",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11920-4b73-7432-919b-e2020cdc11d8",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-4b73-7432-919b-e2020cdc11d8"
}
}, - "parent": {
- "data": {
- "id": "01a11920-4b17-7e70-8855-6781f81a73e4",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11920-4b17-7e70-8855-6781f81a73e4",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/environments/dev",
- "artefacts": "/api/projects/opc/environments/dev/artefacts",
- "bookmarks": "/api/projects/opc/environments/dev/bookmarks",
- "changes": "/api/projects/opc/environments/dev/changes",
- "scheduled_activities": "/api/projects/opc/environments/dev/scheduled_activities",
- "parent": "/api/projects/opc",
- "assets": "/api/projects/opc/environments/dev/assets"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": false,
- "child_node_types": [
- "asset"
], - "can_have_workflows": false,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
]
}Pauses a running change. Steps already running finish, but no further steps are dispatched until the change is resumed.
| change_id required | string Example: 01a1191f-04e7-7e96-8ab6-54dc3b64fc90 change id |
object |
{- "data": {
- "attributes": {
- "reason": "Holding this change until the database maintenance window closes"
}
}
}{- "data": {
- "id": "01a11920-537c-78ec-9281-3f1d492dbdfa",
- "type": "change",
- "attributes": {
- "created_by": "bianca-1217",
- "step_name": "index",
- "action": "index",
- "build_without_cache": false,
- "auto_continue_wait_steps": false,
- "initial_step_tree": { },
- "metadata": {
- "system": "parsing"
}, - "scheduled": false,
- "approved_by": [ ],
- "rejected_by": [ ],
- "cancelled_by": null,
- "state_timing": {
- "running": {
- "ended_at": null,
- "started_at": "2026-10-08T01:28:31.360564Z"
}
}, - "state_timing_summary": { },
- "notify": { },
- "skip_steps": [ ],
- "starting_step": null,
- "cluster_name": null,
- "pause_state": "pausing",
- "status_code": "running",
- "paused": true,
- "paused_by": [
- {
- "username": "logged_in_user",
- "action": "pause",
- "message": "Holding this change until the database maintenance window closes",
- "date": "2026-10-08T01:28:31.462911Z"
}
], - "created_at": "2026-10-08T01:28:31.352981Z",
- "started_at": "2026-10-08T01:20:42.541316Z",
- "finished_at": null,
- "updated_at": "2026-10-08T01:28:31.369373Z",
- "paused_at": "2026-10-08T01:28:31.451016Z",
- "asset_name": null,
- "environment_name": "Development",
- "project_name": "OpsChain",
- "git_remote_name": "github",
- "git_rev": "main",
- "commit_sha": "fe7e12cce591be4ae69a58fb4a9f8f5501399170",
- "requires_approval_from": null
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-53bc-78c7-a3c0-669bcd30e2c8",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-53bc-78c7-a3c0-669bcd30e2c8"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11920-52ea-77b0-a63f-704c007d5b0d",
- "type": "project"
}, - {
- "id": "01a11920-5329-70f9-bcd8-837e8d1e7527",
- "type": "environment"
}
]
}, - "root_step": {
- "data": {
- "id": "01a11920-5382-75cf-a751-c88f3bf8d8c5",
- "type": "step"
}, - "links": {
- "related": "/api/steps/01a11920-5382-75cf-a751-c88f3bf8d8c5"
}
}, - "steps": {
- "data": [
- {
- "id": "01a11920-5382-75cf-a751-c88f3bf8d8c5",
- "type": "step"
}
]
}, - "workflow_run": {
- "data": null
}, - "workflow": {
- "data": null
}, - "override_properties": {
- "data": {
- "id": "01a11920-5390-795b-bf3f-a30f98f9f646",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-5390-795b-bf3f-a30f98f9f646"
}
}, - "override_settings": {
- "data": {
- "id": "01a11920-5399-7ffc-a33d-aa77060e42a7",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-5399-7ffc-a33d-aa77060e42a7"
}
}
}, - "links": {
- "git_remote": "/api/projects/opc/git_remotes/01a11920-534f-7363-ac83-e6d0b1cf2a01",
- "project": "/api/projects/opc",
- "parent": "/api/projects/opc/environments/dev",
- "self": "/api/projects/opc/environments/dev/changes/01a11920-537c-78ec-9281-3f1d492dbdfa",
- "log_lines": "/api/changes/01a11920-537c-78ec-9281-3f1d492dbdfa/log_lines",
- "resume": "/api/changes/01a11920-537c-78ec-9281-3f1d492dbdfa/resume"
}, - "meta": { }
}
}Resumes a paused change, dispatching the steps that were held while it was paused.
| change_id required | string Example: 01a1191f-04e7-7e96-8ab6-54dc3b64fc90 change id |
object |
{- "data": {
- "attributes": {
- "reason": "Maintenance window closed"
}
}
}{- "data": {
- "id": "01a11920-59c4-7900-a57f-cc37d7d66bf6",
- "type": "change",
- "attributes": {
- "created_by": "carley-1235",
- "step_name": "copy",
- "action": "copy",
- "build_without_cache": false,
- "auto_continue_wait_steps": false,
- "initial_step_tree": { },
- "metadata": {
- "microchip": "calculating"
}, - "scheduled": false,
- "approved_by": [ ],
- "rejected_by": [ ],
- "cancelled_by": null,
- "state_timing": {
- "running": {
- "ended_at": null,
- "started_at": "2026-10-08T01:28:32.967500Z"
}
}, - "state_timing_summary": { },
- "notify": { },
- "skip_steps": [ ],
- "starting_step": null,
- "cluster_name": null,
- "pause_state": "none",
- "status_code": "running",
- "paused": false,
- "paused_by": [
- {
- "username": "logged_in_user",
- "action": "resume",
- "message": "Maintenance window closed",
- "date": "2026-10-08T01:28:33.081320Z"
}
], - "created_at": "2026-10-08T01:28:32.962866Z",
- "started_at": "2026-10-08T01:23:12.585966Z",
- "finished_at": null,
- "updated_at": "2026-10-08T01:28:32.973348Z",
- "paused_at": null,
- "asset_name": null,
- "environment_name": "Development",
- "project_name": "OpsChain",
- "git_remote_name": "github",
- "git_rev": "main",
- "commit_sha": "0d7344469121362f6da53d6de8db46a4d6defcd5",
- "requires_approval_from": null
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-5a04-706c-98b1-692a3588ef3a",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-5a04-706c-98b1-692a3588ef3a"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11920-5949-7a20-822d-0f1f199fbb2d",
- "type": "project"
}, - {
- "id": "01a11920-597d-76a2-9d6f-c22b614e247c",
- "type": "environment"
}
]
}, - "root_step": {
- "data": {
- "id": "01a11920-59c8-7a1e-a2a6-017a12544095",
- "type": "step"
}, - "links": {
- "related": "/api/steps/01a11920-59c8-7a1e-a2a6-017a12544095"
}
}, - "steps": {
- "data": [
- {
- "id": "01a11920-59c8-7a1e-a2a6-017a12544095",
- "type": "step"
}
]
}, - "workflow_run": {
- "data": null
}, - "workflow": {
- "data": null
}, - "override_properties": {
- "data": {
- "id": "01a11920-59d4-70c7-a850-eb03be0352ac",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-59d4-70c7-a850-eb03be0352ac"
}
}, - "override_settings": {
- "data": {
- "id": "01a11920-59dc-76bb-a0f7-0c3174d5f902",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-59dc-76bb-a0f7-0c3174d5f902"
}
}
}, - "links": {
- "git_remote": "/api/projects/opc/git_remotes/01a11920-599d-7b53-bfee-726181e17abd",
- "project": "/api/projects/opc",
- "parent": "/api/projects/opc/environments/dev",
- "self": "/api/projects/opc/environments/dev/changes/01a11920-59c4-7900-a57f-cc37d7d66bf6",
- "log_lines": "/api/changes/01a11920-59c4-7900-a57f-cc37d7d66bf6/log_lines",
- "pause": "/api/changes/01a11920-59c4-7900-a57f-cc37d7d66bf6/pause"
}, - "meta": { }
}
}Show the converged settings for a change, including any change-specific setting overrides merged on top of the asset's settings hierarchy. Only the values that differ from the global settings are returned: a setting whose converged value matches the global value is omitted, even when it is set directly on a node, so the response is empty when nothing differs from the global settings.
The response includes a setting_sources meta object that attributes each setting value to its originating source.
| change_id required | string Example: 01a1191f-04e7-7e96-8ab6-54dc3b64fc90 change id |
{- "data": {
- "id": "01a11920-5f6c-748f-a21b-1d9538e13131",
- "type": "converged_settings",
- "attributes": {
- "data": {
- "dockerfile": "Dockerfile_custom",
- "requires_approval_from": [
- {
- "change_filter": {
- "actions": "all"
}, - "user_names": [
- "opschain"
]
}
]
}
}, - "links": {
- "self": "/api/projects/opc/environments/dev/converged_settings"
}, - "meta": {
- "setting_sources": {
- "by_setting": {
- "dockerfile": "Change",
- "requires_approval_from": "Project: OpsChain (opc)"
}
}
}
}
}Converge the root step properties for a change.
The optional action_stage argument can be:
| change_id required | string Example: 01a1191f-04e7-7e96-8ab6-54dc3b64fc90 change id |
| action_stage | string Example: action_stage=pre Converge the pre or post action properties |
| exclude_layers[] | string Example: exclude_layers[]=template Exclude a property layer from the converged result. Repeat the parameter to exclude several layers, e.g. |
{- "data": {
- "id": "program (post)",
- "type": "converged_properties",
- "attributes": {
- "data": {
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}, - "card": "compressing"
}
}, - "relationships": {
- "repository_properties": {
- "data": [ ]
}, - "properties": {
- "data": [
- {
- "id": "01a11920-6324-7a5e-920a-f52967696b14",
- "type": "properties_version"
}, - {
- "id": "01a11920-635e-72b2-b293-9ef75b9d96bf",
- "type": "properties_version"
}, - {
- "id": "01a11920-63b4-7a3d-8b0b-9e24fb04ed5a",
- "type": "properties_version"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/environments/dev/converged_properties"
}, - "meta": {
- "property_sources": {
- "by_property": {
- "any_key": "Project: OpsChain (opc)",
- "another_key": "Project: OpsChain (opc)",
- "nested": {
- "key": "Project: OpsChain (opc)"
}, - "card": "Change: Change properties"
}, - "sources": [
- {
- "group": "database",
- "id": "project",
- "layer": "project",
- "human": "Project: OpsChain (opc)"
}, - {
- "group": "database",
- "id": "environment",
- "layer": "environment",
- "human": "Environment: Development (dev)"
}, - {
- "group": "database",
- "id": "change",
- "layer": "change",
- "human": "Change: Change properties"
}
]
}, - "property_layers": [
- {
- "id": "project",
- "human": "Project",
- "groups": [
- {
- "group": "database",
- "included": true
}
]
}, - {
- "id": "environment",
- "human": "Environment",
- "groups": [
- {
- "group": "database",
- "included": true
}
]
}, - {
- "id": "change",
- "human": "Change",
- "groups": [
- {
- "group": "database",
- "included": true
}
]
}
]
}
}, - "included": [
- {
- "id": "01a11920-6324-7a5e-920a-f52967696b14",
- "type": "properties_version",
- "attributes": {
- "data": {
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}, - "version": 1,
- "created_at": "2026-10-08T01:28:35.363694Z",
- "owner_type": "Project"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-631c-7732-b4a8-4b22b7efd282",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-631c-7732-b4a8-4b22b7efd282"
}
}
}, - "links": {
- "versions": "/api/properties/01a11920-631c-7732-b4a8-4b22b7efd282/versions",
- "owner": "/api/projects/opc",
- "self": "/api/properties/01a11920-631c-7732-b4a8-4b22b7efd282/versions/1"
}, - "meta": { }
}, - {
- "id": "01a11920-635e-72b2-b293-9ef75b9d96bf",
- "type": "properties_version",
- "attributes": {
- "data": { },
- "version": 1,
- "created_at": "2026-10-08T01:28:35.421549Z",
- "owner_type": "Environment"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-6357-7114-ab0e-eff4ef6ad541",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-6357-7114-ab0e-eff4ef6ad541"
}
}
}, - "links": {
- "versions": "/api/properties/01a11920-6357-7114-ab0e-eff4ef6ad541/versions",
- "owner": "/api/projects/opc/environments/dev",
- "self": "/api/properties/01a11920-6357-7114-ab0e-eff4ef6ad541/versions/1"
}, - "meta": { }
}, - {
- "id": "01a11920-63b4-7a3d-8b0b-9e24fb04ed5a",
- "type": "properties_version",
- "attributes": {
- "data": {
- "card": "compressing"
}, - "version": 1,
- "created_at": "2026-10-08T01:28:35.507736Z",
- "owner_type": "Change"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-63b0-7421-aa2c-cb86d982cfcc",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-63b0-7421-aa2c-cb86d982cfcc"
}
}
}, - "links": {
- "versions": "/api/properties/01a11920-63b0-7421-aa2c-cb86d982cfcc/versions",
- "owner": "/api/projects/opc/environments/dev/changes/01a11920-639a-70b6-b1a9-fe4d9a587594",
- "self": "/api/properties/01a11920-63b0-7421-aa2c-cb86d982cfcc/versions/1"
}, - "meta": { }
}
]
}Builds a zip archive of the information LimePoint support needs to diagnose a change: the change and its steps, its logs, the properties and settings in effect, its template and MintModel, server version information, recent runs of the same action and recent events. Each item is collected using the requesting user's permissions, so anything they cannot read is omitted or redacted. Items that could not be collected are listed in the archive's manifest.json and SUMMARY.md rather than failing the request.
| change_id required | string Example: 01a1191f-04e7-7e96-8ab6-54dc3b64fc90 change id |
object |
{- "data": {
- "attributes": {
- "log_limit": 2000,
- "step_logs": "failed",
- "time_zone": "Australia/Melbourne",
- "client": {
- "name": "opschain-cli",
- "version": "2026-10-08",
- "commit": "abc1234",
- "built": "2026-10-08T00:00:00Z"
}
}
}
}<binary data>
Lists all scheduled activities.
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[project_code_eq]=opc API filtering guide. Named filters: |
| include | string Example: include=parents Include the scheduled change parents in the response |
| fields[<resource_type>] |
{- "data": [
- {
- "id": "01a11920-01cc-766a-bfaf-bc2a62cc121d",
- "type": "scheduled_change",
- "attributes": {
- "created_by": "roxie.fadel-915",
- "cron_schedule": "47 22 7 12 5",
- "repeat": true,
- "run_count": 0,
- "maximum_run_count": null,
- "enabled": true,
- "allow_parallel_execution": false,
- "metadata": {
- "microchip": "parsing"
}, - "property_overrides": {
- "transmitter": "backing up"
}, - "notify": {
- "events": [
- "success"
], - "ldap_groups": [
- "admin"
]
}, - "skip_steps": [ ],
- "created_at": "2026-10-08T01:28:10.442712Z",
- "updated_at": "2026-10-08T01:28:10.442712Z",
- "next_run_at": "2026-12-04T11:47:00.000000Z",
- "run_at": null,
- "end_at": null,
- "action": "input",
- "new_commits_only": true,
- "git_rev": "online",
- "auto_continue_wait_steps": false,
- "commit_file_patterns": [
- {
- "match": "**/*.rb",
- "negate": false
}, - {
- "match": "docs/**/*",
- "negate": true
}
], - "commit_file_pattern_match": "any",
- "project_name": "OpsChain",
- "project_code": "opc",
- "settings_overrides": {
- "dockerfile": "Dockerfile_custom"
}, - "asset_code": null,
- "asset_name": null,
- "environment_code": "dev",
- "environment_name": "Development",
- "git_remote_name": "github"
}, - "relationships": {
- "parents": {
- "data": [
- {
- "id": "01a11920-0167-7037-bb39-ebe4cda38e02",
- "type": "project"
}, - {
- "id": "01a11920-0195-718c-a2da-fd7fafb5ed31",
- "type": "environment"
}
]
}
}, - "links": {
- "git_remote": "/api/projects/opc/git_remotes/01a11920-01b9-7824-ad92-1c5656a50348",
- "project": "/api/projects/opc",
- "parent": "/api/projects/opc/environments/dev",
- "self": "/api/scheduled_activities/01a11920-01cc-766a-bfaf-bc2a62cc121d"
}
}, - {
- "id": "01a11920-03f3-7829-a016-c4aad766239b",
- "type": "scheduled_workflow",
- "attributes": {
- "created_by": "stevie_ortiz-922",
- "cron_schedule": "58 6 9 11 6",
- "repeat": true,
- "run_count": 0,
- "maximum_run_count": null,
- "enabled": true,
- "allow_parallel_execution": false,
- "metadata": {
- "program": "indexing"
}, - "property_overrides": {
- "alarm": "programming"
}, - "notify": {
- "events": [
- "success"
], - "ldap_groups": [
- "admin"
]
}, - "skip_steps": [ ],
- "created_at": "2026-10-08T01:28:10.993612Z",
- "updated_at": "2026-10-08T01:28:10.993612Z",
- "next_run_at": "2026-11-06T19:58:00.000000Z",
- "run_at": null,
- "end_at": null,
- "workflow_code": "assets",
- "version": 2,
- "project_name": "OpsChain",
- "project_code": "opc"
}, - "relationships": {
- "parents": {
- "data": [
- {
- "id": "01a11920-0167-7037-bb39-ebe4cda38e02",
- "type": "project"
}
]
}
}, - "links": {
- "project": "/api/projects/opc",
- "parent": "/api/projects/opc",
- "self": "/api/scheduled_activities/01a11920-03f3-7829-a016-c4aad766239b",
- "workflow": "/api/projects/opc/workflows/assets",
- "workflow_version": "/api/projects/opc/workflows/assets/versions/2"
}
}
], - "included": [
- {
- "id": "01a11920-0167-7037-bb39-ebe4cda38e02",
- "type": "project",
- "attributes": {
- "code": "opc",
- "name": "OpsChain",
- "description": "OpsChain project",
- "archived": false,
- "created_by": "jenelle_purdy-913",
- "project_type": "Enterprise"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-016a-7c7e-bb0b-ed9feebe1659",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-016a-7c7e-bb0b-ed9feebe1659"
}
}, - "parents": {
- "data": [ ]
}, - "settings": {
- "data": {
- "id": "01a11920-0177-70dc-9906-ec26fc898fad",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-0177-70dc-9906-ec26fc898fad"
}
}, - "children": {
- "data": [
- {
- "id": "01a11920-0195-718c-a2da-fd7fafb5ed31",
- "type": "environment"
}, - {
- "id": "01a11920-0277-7025-b8e0-94ce8c1b381d",
- "type": "asset"
}, - {
- "id": "01a11920-0385-7503-a668-41932d28b8e8",
- "type": "asset"
}
]
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc",
- "artefacts": "/api/projects/opc/artefacts",
- "bookmarks": "/api/projects/opc/bookmarks",
- "changes": "/api/projects/opc/changes",
- "scheduled_activities": "/api/projects/opc/scheduled_activities",
- "git_remotes": "/api/projects/opc/git_remotes",
- "workflows": "/api/projects/opc/workflows",
- "workflow_runs": "/api/projects/opc/workflow_runs",
- "templates": "/api/projects/opc/templates",
- "environments": "/api/projects/opc/environments",
- "assets": "/api/projects/opc/assets",
- "agents": "/api/projects/opc/agents"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": true,
- "requires_template": false,
- "child_node_types": [
- "environment",
- "asset",
- "agent"
], - "can_have_workflows": true,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "git_remotes": {
- "read": true,
- "update": true,
- "delete": true
}, - "templates": {
- "read": true,
- "update": true,
- "delete": true
}, - "workflows": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "workflow_runs": {
- "read": true,
- "execute": true,
- "delete": true
}, - "environments": {
- "read": true,
- "update": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "agents": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}, - {
- "id": "01a11920-0195-718c-a2da-fd7fafb5ed31",
- "type": "environment",
- "attributes": {
- "code": "dev",
- "name": "Development",
- "description": "OpsChain development environment",
- "archived": false,
- "created_by": "frank-914"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11920-019f-73c1-88fd-ce5f960c8bcc",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11920-019f-73c1-88fd-ce5f960c8bcc"
}
}, - "parents": {
- "data": [
- {
- "id": "01a11920-0167-7037-bb39-ebe4cda38e02",
- "type": "project"
}
]
}, - "settings": {
- "data": {
- "id": "01a11920-01af-751e-9087-61bb094f2d8a",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11920-01af-751e-9087-61bb094f2d8a"
}
}, - "parent": {
- "data": {
- "id": "01a11920-0167-7037-bb39-ebe4cda38e02",
- "type": "project"
}
}, - "project": {
- "data": {
- "id": "01a11920-0167-7037-bb39-ebe4cda38e02",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}, - "children": {
- "data": [ ]
}, - "bookmarks": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/environments/dev",
- "artefacts": "/api/projects/opc/environments/dev/artefacts",
- "bookmarks": "/api/projects/opc/environments/dev/bookmarks",
- "changes": "/api/projects/opc/environments/dev/changes",
- "scheduled_activities": "/api/projects/opc/environments/dev/scheduled_activities",
- "parent": "/api/projects/opc",
- "assets": "/api/projects/opc/environments/dev/assets"
}, - "meta": {
- "can_have_changes": true,
- "can_have_children": true,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": false,
- "child_node_types": [
- "asset"
], - "can_have_workflows": false,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "scheduled_activities": {
- "read": true,
- "update": true,
- "delete": true
}, - "changes": {
- "read": true,
- "execute": true,
- "delete": true
}, - "assets": {
- "read": true,
- "update": true,
- "delete": true
}, - "secrets": {
- "settings": true,
- "properties": true,
- "mintmodel": true
}, - "self": {
- "update": true,
- "delete": true
}
}
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}, - "has_any": true
}
}Creates a scheduled activity in a specific project, environment or asset.
Notes:
When creating scheduled activities via a project, environment or asset scheduled_activities path
(e.g. POST to /api/projects/{project_code}/scheduled_activities) the parent_path request attributes must not be supplied
as the parent will be derived from the path.
When creating scheduled activities for assets (e.g. POST to /api/projects/{project_code}/assets/{asset_code}/scheduled_activities)
the git_remote_name and git_rev attributes must not be supplied as the Git remote and revision will be
derived from the asset's template.
See the various payload examples to understand the required fields for each possible request to this endpoint.
required | object |
{- "data": {
- "attributes": {
- "git_rev": "master",
- "action": "install_os",
- "cron_schedule": "0 21 12 8 4",
- "new_commits_only": false,
- "repeat": true,
- "metadata": {
- "hard drive": "programming"
}, - "run_at": null,
- "run_count": 0,
- "maximum_run_count": null,
- "end_at": null,
- "allow_parallel_execution": false,
- "property_overrides": {
- "bus": "programming"
}, - "settings_overrides": {
- "repo_folder": "navigating"
}, - "notify": {
- "events": [
- "success"
], - "ldap_groups": [
- "admin"
]
}, - "skip_steps": [ ],
- "auto_continue_wait_steps": false,
- "commit_file_patterns": [ ],
- "commit_file_pattern_match": "any",
- "parent_path": "/projects/opc/environments/dev",
- "git_remote_name": "github"
}
}
}{- "data": {
- "id": "01a1191f-07ed-7875-af8e-030ebab17ee2",
- "type": "scheduled_change",
- "attributes": {
- "created_by": "pablo-22",
- "cron_schedule": "14 1 11 4 0",
- "repeat": true,
- "run_count": 0,
- "maximum_run_count": null,
- "enabled": true,
- "allow_parallel_execution": false,
- "metadata": {
- "bus": "indexing"
}, - "property_overrides": {
- "array": "calculating"
}, - "notify": {
- "events": [
- "success"
], - "ldap_groups": [
- "admin"
]
}, - "skip_steps": [ ],
- "created_at": "2026-10-08T01:27:06.474033Z",
- "updated_at": "2026-10-08T01:27:06.474033Z",
- "next_run_at": "2027-04-03T14:14:00.000000Z",
- "run_at": null,
- "end_at": null,
- "action": "override",
- "new_commits_only": true,
- "git_rev": "redundant",
- "auto_continue_wait_steps": false,
- "commit_file_patterns": [
- {
- "match": "**/*.rb",
- "negate": false
}, - {
- "match": "docs/**/*",
- "negate": true
}
], - "commit_file_pattern_match": "any",
- "project_name": "OpsChain",
- "project_code": "opc",
- "settings_overrides": {
- "dockerfile": "Dockerfile_custom"
}, - "asset_code": null,
- "asset_name": null,
- "environment_code": "dev",
- "environment_name": "Development",
- "git_remote_name": "github"
}, - "relationships": {
- "parents": {
- "data": [
- {
- "id": "01a1191e-f86a-7f6f-b90f-08e0684677fa",
- "type": "project"
}, - {
- "id": "01a1191f-0421-7e06-b3bc-a62e8988f39d",
- "type": "environment"
}
]
}
}, - "links": {
- "git_remote": "/api/projects/opc/git_remotes/01a1191e-f8ef-79ce-8991-4e92a6c566e4",
- "project": "/api/projects/opc",
- "parent": "/api/projects/opc/environments/dev",
- "self": "/api/scheduled_activities/01a1191f-07ed-7875-af8e-030ebab17ee2"
}
}
}Shows a scheduled activity.
| scheduled_change_id required | string Example: 01a1191f-07ed-7875-af8e-030ebab17ee2 scheduled change id |
| include | string Example: include=parents Include the scheduled change parents in the response |
| fields[<resource_type>] |
{- "data": {
- "id": "01a1191f-07ed-7875-af8e-030ebab17ee2",
- "type": "scheduled_change",
- "attributes": {
- "created_by": "pablo-22",
- "cron_schedule": "14 1 11 4 0",
- "repeat": true,
- "run_count": 0,
- "maximum_run_count": null,
- "enabled": true,
- "allow_parallel_execution": false,
- "metadata": {
- "bus": "indexing"
}, - "property_overrides": {
- "array": "calculating"
}, - "notify": {
- "events": [
- "success"
], - "ldap_groups": [
- "admin"
]
}, - "skip_steps": [ ],
- "created_at": "2026-10-08T01:27:06.474033Z",
- "updated_at": "2026-10-08T01:27:06.474033Z",
- "next_run_at": "2027-04-03T14:14:00.000000Z",
- "run_at": null,
- "end_at": null,
- "action": "override",
- "new_commits_only": true,
- "git_rev": "redundant",
- "auto_continue_wait_steps": false,
- "commit_file_patterns": [
- {
- "match": "**/*.rb",
- "negate": false
}, - {
- "match": "docs/**/*",
- "negate": true
}
], - "commit_file_pattern_match": "any",
- "project_name": "OpsChain",
- "project_code": "opc",
- "settings_overrides": {
- "dockerfile": "Dockerfile_custom"
}, - "asset_code": null,
- "asset_name": null,
- "environment_code": "dev",
- "environment_name": "Development",
- "git_remote_name": "github"
}, - "relationships": {
- "parents": {
- "data": [
- {
- "id": "01a1191e-f86a-7f6f-b90f-08e0684677fa",
- "type": "project"
}, - {
- "id": "01a1191f-0421-7e06-b3bc-a62e8988f39d",
- "type": "environment"
}
]
}
}, - "links": {
- "git_remote": "/api/projects/opc/git_remotes/01a1191e-f8ef-79ce-8991-4e92a6c566e4",
- "project": "/api/projects/opc",
- "parent": "/api/projects/opc/environments/dev",
- "self": "/api/scheduled_activities/01a1191f-07ed-7875-af8e-030ebab17ee2"
}
}
}Updates a scheduled activity in a specific project, environment or asset.
Notes:
parent_path, project_code,
environment_code and asset_code attributes must not be supplied - create a new scheduled activity against the
required parent instead./api/projects/{project_code}/assets/{asset_code}/scheduled_activities/{id})
the git_remote_name and git_rev attributes must not be supplied as the Git remote and revision will be
derived from the asset's template.| scheduled_change_id required | string Example: 01a1191f-07ed-7875-af8e-030ebab17ee2 scheduled change id |
required | object |
{- "data": {
- "attributes": {
- "git_rev": "master",
- "action": "install_os",
- "cron_schedule": "52 20 13 9 *",
- "new_commits_only": true,
- "repeat": true,
- "metadata": {
- "firewall": "transmitting"
}, - "run_at": null,
- "run_count": 0,
- "maximum_run_count": null,
- "end_at": null,
- "allow_parallel_execution": false,
- "property_overrides": {
- "microchip": "backing up"
}, - "settings_overrides": {
- "repo_folder": "navigating"
}, - "notify": {
- "events": [
- "success"
], - "ldap_groups": [
- "admin"
]
}, - "skip_steps": [ ],
- "auto_continue_wait_steps": false,
- "commit_file_patterns": [ ],
- "commit_file_pattern_match": "any",
- "git_remote_name": "github"
}
}
}{- "data": {
- "id": "01a1191f-07ed-7875-af8e-030ebab17ee2",
- "type": "scheduled_change",
- "attributes": {
- "created_by": "pablo-22",
- "cron_schedule": "14 1 11 4 0",
- "repeat": true,
- "run_count": 0,
- "maximum_run_count": null,
- "enabled": true,
- "allow_parallel_execution": false,
- "metadata": {
- "bus": "indexing"
}, - "property_overrides": {
- "array": "calculating"
}, - "notify": {
- "events": [
- "success"
], - "ldap_groups": [
- "admin"
]
}, - "skip_steps": [ ],
- "created_at": "2026-10-08T01:27:06.474033Z",
- "updated_at": "2026-10-08T01:27:06.474033Z",
- "next_run_at": "2027-04-03T14:14:00.000000Z",
- "run_at": null,
- "end_at": null,
- "action": "override",
- "new_commits_only": true,
- "git_rev": "redundant",
- "auto_continue_wait_steps": false,
- "commit_file_patterns": [
- {
- "match": "**/*.rb",
- "negate": false
}, - {
- "match": "docs/**/*",
- "negate": true
}
], - "commit_file_pattern_match": "any",
- "project_name": "OpsChain",
- "project_code": "opc",
- "settings_overrides": {
- "dockerfile": "Dockerfile_custom"
}, - "asset_code": null,
- "asset_name": null,
- "environment_code": "dev",
- "environment_name": "Development",
- "git_remote_name": "github"
}, - "relationships": {
- "parents": {
- "data": [
- {
- "id": "01a1191e-f86a-7f6f-b90f-08e0684677fa",
- "type": "project"
}, - {
- "id": "01a1191f-0421-7e06-b3bc-a62e8988f39d",
- "type": "environment"
}
]
}
}, - "links": {
- "git_remote": "/api/projects/opc/git_remotes/01a1191e-f8ef-79ce-8991-4e92a6c566e4",
- "project": "/api/projects/opc",
- "parent": "/api/projects/opc/environments/dev",
- "self": "/api/scheduled_activities/01a1191f-07ed-7875-af8e-030ebab17ee2"
}
}
}Delete a scheduled activity.
| scheduled_change_id required | string Example: 01a1191f-07ed-7875-af8e-030ebab17ee2 scheduled change id |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find BaseScheduledActivity"
}
}
]
}Endpoints to interact with change steps.
Lists all steps.
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[action_eq]=provision API filtering guide. Named filters: |
| limit | integer [ 1 .. 1000 ] Default: 1000 Example: limit=50 Limit the number of steps returned |
{- "data": [
- {
- "id": "01a11921-b68f-7e15-baf2-78a23811cb57",
- "type": "step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": null,
- "action": "program",
- "change_id": "01a11921-b688-70ff-b32e-78fe038e00bf",
- "child_execution_strategy": "sequential",
- "full_path": "program",
- "ignore_failure": false,
- "input_arguments": [ ],
- "state_timing": {
- "success": {
- "ended_at": "2026-10-08T01:30:02.252452Z",
- "started_at": "2026-10-08T01:30:02.252452Z"
}
}, - "step_sequence": 1,
- "step_type": "standard",
- "description": "Deploy the release to the environment",
- "step_name": "program",
- "skip_requested": false,
- "created_at": "2026-10-08T01:21:44.419004Z",
- "started_at": "2026-10-08T01:22:44.419004Z",
- "finished_at": "2026-10-08T01:27:22.377701Z",
- "updated_at": "2026-10-08T01:30:02.368324Z",
- "status_code": "success"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-b6f3-7e02-921c-fe5b1814e8f4",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-b6f3-7e02-921c-fe5b1814e8f4"
}
}, - "children": {
- "data": [ ]
}, - "pre_properties_versions": {
- "data": [
- {
- "id": "01a11921-b5bd-7c98-beeb-f0d9dfb14ccf",
- "type": "properties_version"
}, - {
- "id": "01a11921-b627-745c-a587-7f1780de494e",
- "type": "properties_version"
}, - {
- "id": "01a11921-b6aa-70e0-8ee2-e80f9ee1c0ef",
- "type": "properties_version"
}
]
}, - "post_properties_versions": {
- "data": [ ]
}, - "change": {
- "data": {
- "id": "01a11921-b688-70ff-b32e-78fe038e00bf",
- "type": "change"
}
}
}, - "links": {
- "parent": "/api/changes/01a11921-b688-70ff-b32e-78fe038e00bf",
- "change": "/api/projects/opc/environments/dev/changes/01a11921-b688-70ff-b32e-78fe038e00bf",
- "log_lines": "/api/steps/01a11921-b68f-7e15-baf2-78a23811cb57/log_lines",
- "self": "/api/steps/01a11921-b68f-7e15-baf2-78a23811cb57"
}, - "meta": { }
}
], - "meta": {
- "partial_response": false
}
}Shows a change step.
| step_id required | string Example: 01a1191f-0573-7e44-bc25-508ac1514f4a step id |
{- "data": {
- "id": "01a11921-b8d3-7e1b-8398-04a8a6f7a4e6",
- "type": "step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": null,
- "action": "reboot",
- "change_id": "01a11921-b8ce-710e-9487-3695b21d2075",
- "child_execution_strategy": "sequential",
- "full_path": "reboot",
- "ignore_failure": false,
- "input_arguments": [ ],
- "state_timing": {
- "success": {
- "ended_at": "2026-10-08T01:30:02.833689Z",
- "started_at": "2026-10-08T01:30:02.833689Z"
}
}, - "step_sequence": 1,
- "step_type": "standard",
- "description": "Deploy the release to the environment",
- "step_name": "reboot",
- "skip_requested": false,
- "created_at": "2026-10-08T01:19:16.569361Z",
- "started_at": "2026-10-08T01:20:16.569361Z",
- "finished_at": "2026-10-08T01:25:07.922742Z",
- "updated_at": "2026-10-08T01:30:02.922021Z",
- "status_code": "success"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-b91a-7def-9867-34735c3bb67c",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-b91a-7def-9867-34735c3bb67c"
}
}, - "children": {
- "data": [ ]
}, - "pre_properties_versions": {
- "data": [
- {
- "id": "01a11921-b82f-7d5a-bde0-501b871e25cd",
- "type": "properties_version"
}, - {
- "id": "01a11921-b880-7c48-8eb9-793876814176",
- "type": "properties_version"
}, - {
- "id": "01a11921-b8e6-7a08-b60f-2a600a5be70e",
- "type": "properties_version"
}
]
}, - "post_properties_versions": {
- "data": [ ]
}, - "change": {
- "data": {
- "id": "01a11921-b8ce-710e-9487-3695b21d2075",
- "type": "change"
}
}
}, - "links": {
- "parent": "/api/changes/01a11921-b8ce-710e-9487-3695b21d2075",
- "change": "/api/projects/opc/environments/dev/changes/01a11921-b8ce-710e-9487-3695b21d2075",
- "log_lines": "/api/steps/01a11921-b8d3-7e1b-8398-04a8a6f7a4e6/log_lines",
- "self": "/api/steps/01a11921-b8d3-7e1b-8398-04a8a6f7a4e6"
}, - "meta": {
- "property_sources": {
- "by_property": {
- "any_key": "Project: OpsChain (opc)",
- "another_key": "Project: OpsChain (opc)",
- "nested": {
- "key": "Project: OpsChain (opc)"
}, - "monitor": "Change: Change properties"
}, - "sources": [
- {
- "group": "database",
- "id": "project",
- "layer": "project",
- "human": "Project: OpsChain (opc)"
}, - {
- "group": "database",
- "id": "environment",
- "layer": "environment",
- "human": "Environment: Development (dev)"
}, - {
- "group": "database",
- "id": "change",
- "layer": "change",
- "human": "Change: Change properties"
}
]
}
}
}, - "included": [
- {
- "id": "01a11921-b82f-7d5a-bde0-501b871e25cd",
- "type": "properties_version",
- "attributes": {
- "data": {
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}, - "version": 1,
- "created_at": "2026-10-08T01:30:02.670698Z",
- "owner_type": "Project"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-b825-73c6-8770-01aa3037c834",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-b825-73c6-8770-01aa3037c834"
}
}
}, - "links": {
- "versions": "/api/properties/01a11921-b825-73c6-8770-01aa3037c834/versions",
- "owner": "/api/projects/opc",
- "self": "/api/properties/01a11921-b825-73c6-8770-01aa3037c834/versions/1"
}, - "meta": { }
}, - {
- "id": "01a11921-b880-7c48-8eb9-793876814176",
- "type": "properties_version",
- "attributes": {
- "data": { },
- "version": 1,
- "created_at": "2026-10-08T01:30:02.751533Z",
- "owner_type": "Environment"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-b871-7ba2-b776-b3c12956d43e",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-b871-7ba2-b776-b3c12956d43e"
}
}
}, - "links": {
- "versions": "/api/properties/01a11921-b871-7ba2-b776-b3c12956d43e/versions",
- "owner": "/api/projects/opc/environments/dev",
- "self": "/api/properties/01a11921-b871-7ba2-b776-b3c12956d43e/versions/1"
}, - "meta": { }
}, - {
- "id": "01a11921-b8e6-7a08-b60f-2a600a5be70e",
- "type": "properties_version",
- "attributes": {
- "data": {
- "monitor": "bypassing"
}, - "version": 1,
- "created_at": "2026-10-08T01:30:02.853726Z",
- "owner_type": "Change"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-b8e2-735f-a975-3e45ae26fcc9",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-b8e2-735f-a975-3e45ae26fcc9"
}
}
}, - "links": {
- "versions": "/api/properties/01a11921-b8e2-735f-a975-3e45ae26fcc9/versions",
- "owner": "/api/projects/opc/environments/dev/changes/01a11921-b8ce-710e-9487-3695b21d2075",
- "self": "/api/properties/01a11921-b8e2-735f-a975-3e45ae26fcc9/versions/1"
}, - "meta": { }
}, - {
- "id": "01a11921-b91a-7def-9867-34735c3bb67c",
- "type": "properties",
- "attributes": {
- "data": {
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}, - "monitor": "bypassing"
}, - "version": 1,
- "created_at": "2026-10-08T01:30:02.905288Z"
}, - "relationships": {
- "owner": {
- "links": {
- "owner": "/api/steps/01a11921-b8d3-7e1b-8398-04a8a6f7a4e6"
}
}
}, - "links": {
- "self": "/api/properties/01a11921-b91a-7def-9867-34735c3bb67c",
- "current_version": "/api/properties/01a11921-b91a-7def-9867-34735c3bb67c/versions/1",
- "versions": "/api/properties/01a11921-b91a-7def-9867-34735c3bb67c/versions"
}
}
]
}Continues a "waiting" change step.
| step_id required | string Example: 01a1191f-1f58-74ce-bf7b-63d1f4b84e7c step id |
object |
{- "data": {
- "attributes": {
- "message": "Manually removed from load balancer.",
- "input_arguments": {
- "name": "John",
- "date": "2026-07-23"
}
}
}
}{- "data": {
- "id": "01a11921-be8d-795d-aa08-88b7ab528fdc",
- "type": "step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": null,
- "action": "opschain_wait_step_2",
- "change_id": "01a11921-be86-73a1-bf01-2b51926cdeb6",
- "child_execution_strategy": "sequential",
- "full_path": "opschain_wait_step_2",
- "ignore_failure": false,
- "input_arguments": [ ],
- "state_timing": {
- "success": {
- "ended_at": "2026-10-08T01:30:04.464479Z",
- "started_at": "2026-10-08T01:30:04.464479Z"
}, - "waiting": {
- "ended_at": "2026-10-08T01:30:04.464479Z",
- "started_at": "2026-10-08T01:30:04.299496Z"
}
}, - "step_sequence": 1,
- "step_type": "wait_step",
- "description": "Deploy the release to the environment",
- "step_name": "opschain_wait_step_2",
- "skip_requested": false,
- "created_at": "2026-10-08T01:22:41.237371Z",
- "started_at": "2026-10-08T01:23:41.237371Z",
- "finished_at": "2026-10-08T01:30:05.466808Z",
- "updated_at": "2026-10-08T01:30:05.510413Z",
- "status_code": "success"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-beec-781b-87d6-5abc329f2a21",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-beec-781b-87d6-5abc329f2a21"
}
}, - "children": {
- "data": [ ]
}, - "pre_properties_versions": {
- "data": [
- {
- "id": "01a11921-bd9f-7658-9bc5-8d4eba33d219",
- "type": "properties_version"
}, - {
- "id": "01a11921-be26-714f-bc02-dd82408cf125",
- "type": "properties_version"
}, - {
- "id": "01a11921-beaa-77f2-95cc-352cab1d5b2a",
- "type": "properties_version"
}
]
}, - "post_properties_versions": {
- "data": [ ]
}, - "change": {
- "data": {
- "id": "01a11921-be86-73a1-bf01-2b51926cdeb6",
- "type": "change"
}
}
}, - "links": {
- "parent": "/api/changes/01a11921-be86-73a1-bf01-2b51926cdeb6",
- "change": "/api/projects/opc/environments/dev/changes/01a11921-be86-73a1-bf01-2b51926cdeb6",
- "log_lines": "/api/steps/01a11921-be8d-795d-aa08-88b7ab528fdc/log_lines",
- "self": "/api/steps/01a11921-be8d-795d-aa08-88b7ab528fdc"
}, - "meta": { }
}
}Approves a change step that needs approval.
| step_id required | string Example: 01a1191f-1f58-74ce-bf7b-63d1f4b84e7c step id |
object |
{- "data": {
- "attributes": {
- "message": "As per CR 7 👍"
}
}
}{- "data": {
- "id": "01a11921-c82d-7d91-82ae-283291faf8e4",
- "type": "step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": [
- {
- "ldap_groups": [
- "an-ldap-group"
], - "approved_by": null
}
], - "action": "opschain_wait_step_4",
- "change_id": "01a11921-c828-753b-9060-5457ec1a2a1d",
- "child_execution_strategy": "sequential",
- "full_path": "opschain_wait_step_4",
- "ignore_failure": false,
- "input_arguments": [ ],
- "state_timing": {
- "queued": {
- "ended_at": null,
- "started_at": "2026-10-08T01:30:06.935346Z"
}, - "waiting": {
- "ended_at": "2026-10-08T01:30:06.935346Z",
- "started_at": "2026-10-08T01:30:06.764212Z"
}
}, - "step_sequence": 1,
- "step_type": "wait_step",
- "description": "Deploy the release to the environment",
- "step_name": "opschain_wait_step_4",
- "skip_requested": false,
- "created_at": "2026-10-08T01:19:33.351848Z",
- "started_at": "2026-10-08T01:20:33.351848Z",
- "finished_at": null,
- "updated_at": "2026-10-08T01:30:06.963183Z",
- "status_code": "queued"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-c88c-792a-a80d-e44a4341f77b",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-c88c-792a-a80d-e44a4341f77b"
}
}, - "children": {
- "data": [ ]
}, - "pre_properties_versions": {
- "data": [
- {
- "id": "01a11921-c7a2-7534-a6a6-9b73991312e9",
- "type": "properties_version"
}, - {
- "id": "01a11921-c7ef-7548-859c-d50b96174194",
- "type": "properties_version"
}, - {
- "id": "01a11921-c844-7067-8b45-f4c0c8993353",
- "type": "properties_version"
}
]
}, - "post_properties_versions": {
- "data": [ ]
}, - "change": {
- "data": {
- "id": "01a11921-c828-753b-9060-5457ec1a2a1d",
- "type": "change"
}
}
}, - "links": {
- "parent": "/api/changes/01a11921-c828-753b-9060-5457ec1a2a1d",
- "change": "/api/projects/opc/environments/dev/changes/01a11921-c828-753b-9060-5457ec1a2a1d",
- "log_lines": "/api/steps/01a11921-c82d-7d91-82ae-283291faf8e4/log_lines",
- "self": "/api/steps/01a11921-c82d-7d91-82ae-283291faf8e4"
}, - "meta": { }
}
}Rejects a change step that needs approval.
| step_id required | string Example: 01a1191f-1f58-74ce-bf7b-63d1f4b84e7c step id |
object |
{- "data": {
- "attributes": {
- "message": "Failed user acceptance testing"
}
}
}{- "data": {
- "id": "01a11921-cfe1-766b-b1b5-608f139de307",
- "type": "step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": [
- {
- "ldap_groups": [
- "an-ldap-group"
], - "approved_by": null
}
], - "action": "opschain_wait_step_7",
- "change_id": "01a11921-cfdb-7e34-b2a6-843e4063e0b7",
- "child_execution_strategy": "sequential",
- "full_path": "opschain_wait_step_7",
- "ignore_failure": false,
- "input_arguments": [ ],
- "state_timing": {
- "aborted": {
- "ended_at": "2026-10-08T01:30:08.860432Z",
- "started_at": "2026-10-08T01:30:08.860432Z"
}, - "waiting": {
- "ended_at": "2026-10-08T01:30:08.860432Z",
- "started_at": "2026-10-08T01:30:08.735675Z"
}
}, - "step_sequence": 1,
- "step_type": "wait_step",
- "description": "Deploy the release to the environment",
- "step_name": "opschain_wait_step_7",
- "skip_requested": false,
- "created_at": "2026-10-08T01:19:31.104632Z",
- "started_at": "2026-10-08T01:20:31.104632Z",
- "finished_at": "2026-10-08T01:30:08.862167Z",
- "updated_at": "2026-10-08T01:30:08.882703Z",
- "status_code": "aborted"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-d024-7058-af5c-e7bbe01c1cbd",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-d024-7058-af5c-e7bbe01c1cbd"
}
}, - "children": {
- "data": [ ]
}, - "pre_properties_versions": {
- "data": [
- {
- "id": "01a11921-cf58-7992-b2db-491dbb02302f",
- "type": "properties_version"
}, - {
- "id": "01a11921-cf99-77e7-b0f8-41d31836dabf",
- "type": "properties_version"
}, - {
- "id": "01a11921-cff3-7b09-8703-3d8a495f020b",
- "type": "properties_version"
}
]
}, - "post_properties_versions": {
- "data": [ ]
}, - "change": {
- "data": {
- "id": "01a11921-cfdb-7e34-b2a6-843e4063e0b7",
- "type": "change"
}
}
}, - "links": {
- "parent": "/api/changes/01a11921-cfdb-7e34-b2a6-843e4063e0b7",
- "change": "/api/projects/opc/environments/dev/changes/01a11921-cfdb-7e34-b2a6-843e4063e0b7",
- "log_lines": "/api/steps/01a11921-cfe1-766b-b1b5-608f139de307/log_lines",
- "self": "/api/steps/01a11921-cfe1-766b-b1b5-608f139de307"
}, - "meta": { }
}
}Show the converged settings for the change containing this step, including any change-specific setting overrides. Only the values that differ from the global settings are returned: a setting whose converged value matches the global value is omitted, even when it is set directly on a node, so the response is empty when nothing differs from the global settings.
The response includes a setting_sources meta object that attributes each setting value to its originating source.
| step_id required | string Example: 01a1191f-0573-7e44-bc25-508ac1514f4a step id |
{- "data": {
- "id": "01a11921-d6c8-771b-b11e-86137e6ae641",
- "type": "converged_settings",
- "attributes": {
- "data": {
- "dockerfile": "Dockerfile_custom",
- "requires_approval_from": [
- {
- "change_filter": {
- "actions": "all"
}, - "user_names": [
- "opschain"
]
}
]
}
}, - "links": {
- "self": "/api/projects/opc/environments/dev/converged_settings"
}, - "meta": {
- "setting_sources": {
- "by_setting": {
- "dockerfile": "Change",
- "requires_approval_from": "Project: OpsChain (opc)"
}
}
}
}
}Converge the properties for a step.
The optional action_stage argument can be:
| step_id required | string Example: 01a1191f-0573-7e44-bc25-508ac1514f4a step id |
| action_stage | string Example: action_stage=pre Converge the pre or post action properties |
| exclude_layers[] | string Example: exclude_layers[]=template Exclude a property layer from the converged result. Repeat the parameter to exclude several layers, e.g. |
{- "data": {
- "id": "bypass (post)",
- "type": "converged_properties",
- "attributes": {
- "data": {
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}, - "application": "synthesizing"
}
}, - "relationships": {
- "repository_properties": {
- "data": [ ]
}, - "properties": {
- "data": [
- {
- "id": "01a11921-da80-7987-97dc-c7f9d4b80609",
- "type": "properties_version"
}, - {
- "id": "01a11921-dac6-75c7-ab08-e11b2bd9523e",
- "type": "properties_version"
}, - {
- "id": "01a11921-db1f-7dd6-b279-e3cecd408319",
- "type": "properties_version"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/environments/dev/converged_properties"
}, - "meta": {
- "property_sources": {
- "by_property": {
- "any_key": "Project: OpsChain (opc)",
- "another_key": "Project: OpsChain (opc)",
- "nested": {
- "key": "Project: OpsChain (opc)"
}, - "application": "Change: Change properties"
}, - "sources": [
- {
- "group": "database",
- "id": "project",
- "layer": "project",
- "human": "Project: OpsChain (opc)"
}, - {
- "group": "database",
- "id": "environment",
- "layer": "environment",
- "human": "Environment: Development (dev)"
}, - {
- "group": "database",
- "id": "change",
- "layer": "change",
- "human": "Change: Change properties"
}
]
}, - "property_layers": [
- {
- "id": "project",
- "human": "Project",
- "groups": [
- {
- "group": "database",
- "included": true
}
]
}, - {
- "id": "environment",
- "human": "Environment",
- "groups": [
- {
- "group": "database",
- "included": true
}
]
}, - {
- "id": "change",
- "human": "Change",
- "groups": [
- {
- "group": "database",
- "included": true
}
]
}
]
}
}, - "included": [
- {
- "id": "01a11921-da80-7987-97dc-c7f9d4b80609",
- "type": "properties_version",
- "attributes": {
- "data": {
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}, - "version": 1,
- "created_at": "2026-10-08T01:30:11.455755Z",
- "owner_type": "Project"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-da78-7d5b-a509-90bb04965681",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-da78-7d5b-a509-90bb04965681"
}
}
}, - "links": {
- "versions": "/api/properties/01a11921-da78-7d5b-a509-90bb04965681/versions",
- "owner": "/api/projects/opc",
- "self": "/api/properties/01a11921-da78-7d5b-a509-90bb04965681/versions/1"
}, - "meta": { }
}, - {
- "id": "01a11921-dac6-75c7-ab08-e11b2bd9523e",
- "type": "properties_version",
- "attributes": {
- "data": { },
- "version": 1,
- "created_at": "2026-10-08T01:30:11.525063Z",
- "owner_type": "Environment"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-dabb-7c06-99d2-8e809cf7de1c",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-dabb-7c06-99d2-8e809cf7de1c"
}
}
}, - "links": {
- "versions": "/api/properties/01a11921-dabb-7c06-99d2-8e809cf7de1c/versions",
- "owner": "/api/projects/opc/environments/dev",
- "self": "/api/properties/01a11921-dabb-7c06-99d2-8e809cf7de1c/versions/1"
}, - "meta": { }
}, - {
- "id": "01a11921-db1f-7dd6-b279-e3cecd408319",
- "type": "properties_version",
- "attributes": {
- "data": {
- "application": "synthesizing"
}, - "version": 1,
- "created_at": "2026-10-08T01:30:11.615051Z",
- "owner_type": "Change"
}, - "relationships": {
- "properties": {
- "data": {
- "id": "01a11921-db1b-7bf8-a287-3fec9270479c",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-db1b-7bf8-a287-3fec9270479c"
}
}
}, - "links": {
- "versions": "/api/properties/01a11921-db1b-7bf8-a287-3fec9270479c/versions",
- "owner": "/api/projects/opc/environments/dev/changes/01a11921-db0a-77b2-af10-0039332e0018",
- "self": "/api/properties/01a11921-db1b-7bf8-a287-3fec9270479c/versions/1"
}, - "meta": { }
}
]
}List the log lines for a change.
| change_id required | string Example: 01a1191f-04e7-7e96-8ab6-54dc3b64fc90 |
| filter[<query/sort filter>]= | |
| download | string Example: download=change.log Download the log lines wth the specified file name. The logs will be ordered from oldest to newest when this parameter is specified, irrespective of the sort order requested. |
{- "data": [
- {
- "id": "01a11921-acb7-7687-8d42-7d6ce502d458",
- "type": "log_line",
- "attributes": {
- "message": "Itaque exercitationem dolorem odit.",
- "category": "action",
- "change_id": "01a11921-ac6e-7fba-8895-97d28d1c10dd",
- "step_id": "01a11921-ac73-7440-bb2f-967997bc1479",
- "logged_at": "2026-10-07T00:00:00.000000Z"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}List the log lines for a change step.
| step_id required | string Example: 01a1191f-0573-7e44-bc25-508ac1514f4a |
| include_child_steps | boolean Example: include_child_steps=true Whether to include logs for steps that are children of this step |
| filter[<query/sort filter>]= | |
| download | string Example: download=step.log Download the log lines wth the specified file name. The logs will be ordered from oldest to newest when this parameter is specified, irrespective of the sort order requested. |
{- "data": [
- {
- "id": "01a11921-afcf-7e9c-86b6-570d2761a40b",
- "type": "log_line",
- "attributes": {
- "message": "Maiores sed blanditiis placeat.",
- "category": "action",
- "change_id": "01a11921-af5e-7d7c-8fd2-367be8195686",
- "step_id": "01a11921-af64-76fa-b5b3-15dee4b9d80f",
- "logged_at": "2026-10-07T00:00:00.000000Z"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}List filtered log lines.
| filter[<query/sort filter>]= | |
| limit | integer [ 1 .. 10000 ] Default: 10000 Example: limit=50 Limit the number of log lines returned |
| download | string Example: download=opschain.log Download the filtered log lines wth the specified file name. The logs will be ordered from oldest to newest when this parameter is specified, irrespective of the sort order requested. |
{- "data": [
- {
- "id": "01a11921-b497-7891-a60c-cdd29168b867",
- "type": "log_line",
- "attributes": {
- "message": "Ut earum neque est.",
- "category": "action",
- "change_id": "01a11921-b42f-7636-bac6-bd7b837e344d",
- "step_id": "01a11921-b434-78b8-acc9-932ed4f585a0",
- "logged_at": "2026-10-07T00:00:00.000000Z"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}List the workflow run log lines for a workflow run.
| workflow_run_id required | string Example: 01a1191f-21a3-775e-ab9b-282712b0d799 |
| filter[<query/sort filter>]= | |
| download | string Example: download=workflow_run.log Download the log lines wth the specified file name. The logs will be ordered from oldest to newest when this parameter is specified, irrespective of the sort order requested. |
{- "data": [
- {
- "id": "01a11922-3614-767a-aad9-8515afc862bb",
- "type": "log_line",
- "attributes": {
- "message": "Quia beatae ex ut.",
- "category": "action",
- "workflow_run_id": "01a11922-3102-7b18-83ed-88ab59599e9f",
- "workflow_step_id": "01a11922-3111-7bc0-add3-8f8b506adc07",
- "logged_at": "2026-10-07T00:00:00.000000Z"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}List the log lines for a workflow step.
| workflow_step_id required | string Example: 01a1191f-21c1-7924-af03-2ee1a1f32420 |
| include_child_steps | boolean Example: include_child_steps=true Whether to include logs for steps that are children of this step |
| filter[<query/sort filter>]= | |
| download | string Example: download=workflow_step.log Download the log lines wth the specified file name. The logs will be ordered from oldest to newest when this parameter is specified, irrespective of the sort order requested. |
{- "data": [
- {
- "id": "01a11922-4642-7be0-8070-623cec14cb8f",
- "type": "log_line",
- "attributes": {
- "message": "Aut numquam rerum iusto.",
- "category": "action",
- "workflow_run_id": "01a11922-42a3-78c5-ba0f-87786d6f091a",
- "workflow_step_id": "01a11922-42af-7732-85db-a6fa544b6f19",
- "logged_at": "2026-10-07T00:00:00.000000Z"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}List filtered workflow run log lines.
| filter[<query/sort filter>]= | |
| limit | integer [ 1 .. 10000 ] Default: 10000 Example: limit=50 Limit the number of workflow run log lines returned |
| download | string Example: download=opschain.log Download the filtered log lines wth the specified file name. The logs will be ordered from oldest to newest when this parameter is specified, irrespective of the sort order requested. |
{- "data": [
- {
- "id": "01a11922-51b9-7f9b-92cf-124ccc4e883d",
- "type": "log_line",
- "attributes": {
- "message": "Nihil voluptas non veniam.",
- "category": "action",
- "workflow_run_id": "01a11922-4dfc-75a5-b10d-7b68ffc6a69c",
- "workflow_step_id": "01a11922-4e04-7ae1-a800-bc1eb4bfb359",
- "logged_at": "2026-10-07T00:00:00.000000Z"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}Endpoints to interact with workflow runs
Notes:
/workflow_runs - will return all workflow runs accessible to the user./project/{project_code}/workflow_runs - will return all workflow runs for all this project's workflows./project/{project_code}/workflows/{workflow_code}/workflow_runs - will return all workflow runs this workflow./<path/to/asset>/workflow_runs - will return all workflow runs that include a change for this asset.Lists all workflow runs.
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[created_by_cont]=opschain API filtering guide. Named filters: |
| limit | integer [ 1 .. 10000 ] Default: 100 Example: limit=50 Limit the number of workflow runs returned. When more records match than the limit a 206 response is returned and |
{- "data": [
- {
- "id": "01a11922-5862-7731-bf43-78eac0196957",
- "type": "workflow_run",
- "attributes": {
- "step_tree": {
- "id": "01a11922-586b-78a8-a591-52db6aaea4f5",
- "name": "nihil",
- "type": "workflow_noop_step",
- "child_execution_strategy": "sequential"
}, - "scheduled": false,
- "metadata": {
- "Zamit": "2.83",
- "Zathin": "9.6.9",
- "Bitchip": "0.5.9",
- "Bitwolf": "0.2.6",
- "Fintone": "0.85",
- "Redhold": "4.7.8",
- "Domainer": "0.71",
- "Holdlamis": "0.4.9",
- "Lotstring": "0.3.4"
}, - "created_by": "claudio-2918",
- "cancelled_by": null,
- "notify": { },
- "skip_steps": [ ],
- "pause_state": "none",
- "status_code": "success",
- "paused": false,
- "paused_by": [ ],
- "created_at": "2026-10-08T01:30:43.681413Z",
- "started_at": "2026-10-08T01:23:39.307085Z",
- "finished_at": "2026-10-08T01:24:15.395218Z",
- "updated_at": "2026-10-08T01:30:43.695312Z",
- "paused_at": null,
- "project_name": "repudiandae1018",
- "workflow_code": "child"
}, - "relationships": {
- "workflow_version": {
- "data": {
- "id": "01a11922-5840-7de1-917d-4e9d6e9c3c26",
- "type": "workflow_version"
}
}, - "workflow": {
- "data": {
- "id": "01a11922-5831-712d-8fff-5165b9cd17ff",
- "type": "workflow"
}
}, - "parent_workflow_step": {
- "data": {
- "id": "01a11922-5872-7b25-8933-b19d1a78b5ec",
- "type": "workflow_workflow_step"
}
}, - "root_step": {
- "data": {
- "id": "01a11922-586b-78a8-a591-52db6aaea4f5",
- "type": "workflow_noop_step"
}
}, - "steps": {
- "data": [
- {
- "id": "01a11922-586b-78a8-a591-52db6aaea4f5",
- "type": "workflow_noop_step"
}
]
}, - "override_properties": {
- "data": {
- "id": "01a11922-5865-7fc2-9a50-1914fde0e48c",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-5865-7fc2-9a50-1914fde0e48c"
}
}
}, - "links": {
- "parent": "/api/projects/tbopj",
- "self": "/api/projects/tbopj/workflows/child/runs/01a11922-5862-7731-bf43-78eac0196957",
- "log_lines": "/api/workflow_runs/01a11922-5862-7731-bf43-78eac0196957/log_lines"
}, - "meta": { }
}, - {
- "id": "01a11922-53d7-7db5-bcdf-44c309ff1a88",
- "type": "workflow_run",
- "attributes": {
- "step_tree": {
- "id": "01a11922-53e1-74ba-b52b-f4f69eeb15ce",
- "name": "dolor",
- "type": "workflow_noop_step",
- "children": [
- {
- "id": "01a11922-53f0-7437-8e65-be870699a7eb",
- "name": "molestiae",
- "type": "workflow_noop_step",
- "children": [
- {
- "id": "01a11922-5615-7808-99d9-b9bee948cfdb",
- "name": "calculate",
- "type": "workflow_change_step",
- "action": "calculate",
- "target": "/projects/fjjir/environments/dhcqj/assets/8vjhu"
}
], - "child_execution_strategy": "sequential"
}, - {
- "id": "01a11922-57ba-7ad4-8c87-5d7d5cb23a3a",
- "name": "bypass",
- "type": "workflow_change_step",
- "action": "bypass",
- "target": "/projects/2njmh/environments/jyhe1/assets/tosxw"
}, - {
- "id": "01a11922-57cb-71cd-9046-fe52417261b0",
- "name": "Approval",
- "type": "workflow_wait_step",
- "requires_approval_from": {
- "user_names": [
- "opschain"
]
}
}, - {
- "id": "01a11922-5872-7b25-8933-b19d1a78b5ec",
- "name": "child workflow",
- "type": "workflow_workflow_step",
- "target": "/projects/tbopj/workflows/child"
}
], - "child_execution_strategy": "sequential"
}, - "scheduled": false,
- "metadata": {
- "Rank": "0.8.8",
- "Otcom": "0.9.7",
- "Duobam": "0.66",
- "Latlux": "7.7",
- "Fixflex": "0.22",
- "Matsoft": "7.87",
- "Regrant": "0.45",
- "Y-Solowarm": "0.6.1",
- "Toughjoyfax": "4.2"
}, - "created_by": "shizuko.heidenreich-2901",
- "cancelled_by": null,
- "notify": { },
- "skip_steps": [ ],
- "pause_state": "none",
- "status_code": "success",
- "paused": false,
- "paused_by": [ ],
- "created_at": "2026-10-08T01:30:42.518688Z",
- "started_at": "2026-10-08T01:23:53.629842Z",
- "finished_at": "2026-10-08T01:28:35.510207Z",
- "updated_at": "2026-10-08T01:30:42.533996Z",
- "paused_at": null,
- "project_name": "OpsChain",
- "workflow_code": "assets"
}, - "relationships": {
- "workflow_version": {
- "data": {
- "id": "01a11922-5352-7633-bc72-28fab3e5f07c",
- "type": "workflow_version"
}
}, - "workflow": {
- "data": {
- "id": "01a11922-533a-7997-a855-565417685fcd",
- "type": "workflow"
}
}, - "parent_workflow_step": {
- "data": null
}, - "root_step": {
- "data": {
- "id": "01a11922-53e1-74ba-b52b-f4f69eeb15ce",
- "type": "workflow_noop_step"
}
}, - "steps": {
- "data": [
- {
- "id": "01a11922-53e1-74ba-b52b-f4f69eeb15ce",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-53f0-7437-8e65-be870699a7eb",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-57ba-7ad4-8c87-5d7d5cb23a3a",
- "type": "workflow_change_step"
}, - {
- "id": "01a11922-57cb-71cd-9046-fe52417261b0",
- "type": "workflow_wait_step"
}, - {
- "id": "01a11922-5872-7b25-8933-b19d1a78b5ec",
- "type": "workflow_workflow_step"
}, - {
- "id": "01a11922-5615-7808-99d9-b9bee948cfdb",
- "type": "workflow_change_step"
}
]
}, - "override_properties": {
- "data": {
- "id": "01a11922-53c1-7dee-9289-ee7d70895357",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-53c1-7dee-9289-ee7d70895357"
}
}
}, - "links": {
- "parent": "/api/projects/opc",
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-53d7-7db5-bcdf-44c309ff1a88",
- "log_lines": "/api/workflow_runs/01a11922-53d7-7db5-bcdf-44c309ff1a88/log_lines"
}, - "meta": { }
}
], - "included": [
- {
- "id": "01a11922-5840-7de1-917d-4e9d6e9c3c26",
- "type": "workflow_version",
- "attributes": {
- "code": "child",
- "name": "child workflow",
- "description": "child workflow",
- "draft": false,
- "archived": false,
- "created_by": "larraine.nitzsche-2917",
- "created_at": "2026-10-08T01:30:43.613486Z",
- "updated_at": "2026-10-08T01:30:43.613507Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run child action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run child action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [ ],
- "sample_properties": {
- "sample": null
}, - "version": 1
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11922-57f0-7a8e-962c-f2c4230a6a54",
- "type": "project"
}, - "links": {
- "related": "/api/projects/tbopj"
}
}
}, - "links": {
- "self": "/api/projects/tbopj/workflows/child/versions/1",
- "runs": "/api/projects/tbopj/workflows/child/versions/1/runs",
- "workflow": "/api/projects/tbopj/workflows/child"
}
}, - {
- "id": "01a11922-5352-7633-bc72-28fab3e5f07c",
- "type": "workflow_version",
- "attributes": {
- "code": "assets",
- "name": "assets workflow",
- "description": "workflow for assets",
- "draft": false,
- "archived": false,
- "created_by": "marcos-2899",
- "created_at": "2026-10-08T01:30:42.384835Z",
- "updated_at": "2026-10-08T01:30:42.430386Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [ ],
- "sample_properties": {
- "sample": null
}, - "version": 2
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11922-5254-7038-a340-6c0f13a233c7",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/versions/2",
- "runs": "/api/projects/opc/workflows/assets/versions/2/runs",
- "workflow": "/api/projects/opc/workflows/assets"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true,
- "execute": true
}, - "partial_response": false
}
}Runs a pre-defined workflow.
Supplying the retry attribute (together with a workflow_run relationship) retries an existing workflow run that
finished in an error, cancelled or aborted state instead of running a workflow from scratch. The retry creates a
new workflow run; the original workflow run is left untouched.
required | object |
{- "data": {
- "attributes": {
- "project_code": "opc",
- "workflow_code": "assets"
}
}
}{- "data": {
- "id": "01a11922-5ebb-7418-8a0b-188bf819e3eb",
- "type": "workflow_run",
- "attributes": {
- "step_tree": {
- "id": "01a11922-5ec7-7df7-aa64-432a5c4c339b",
- "name": "assets workflow",
- "type": "workflow_noop_step",
- "children": [
- {
- "id": "01a11922-5ece-7c86-9504-8850aa868c0d",
- "name": "run asset action",
- "type": "workflow_change_step",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "child_execution_strategy": "sequential"
}, - "scheduled": false,
- "metadata": { },
- "created_by": "logged_in_user",
- "cancelled_by": null,
- "notify": { },
- "skip_steps": [ ],
- "pause_state": "none",
- "status_code": "pending",
- "paused": false,
- "paused_by": [ ],
- "created_at": "2026-10-08T01:30:45.306271Z",
- "started_at": null,
- "finished_at": null,
- "updated_at": "2026-10-08T01:30:45.323206Z",
- "paused_at": null,
- "project_name": "OpsChain",
- "workflow_code": "assets"
}, - "relationships": {
- "workflow_version": {
- "data": {
- "id": "01a11922-5aaf-7704-b5c9-c44d67bc8786",
- "type": "workflow_version"
}
}, - "workflow": {
- "data": {
- "id": "01a11922-5a93-71f4-8a71-24185a7009b0",
- "type": "workflow"
}
}, - "parent_workflow_step": {
- "data": null
}, - "root_step": {
- "data": {
- "id": "01a11922-5ec7-7df7-aa64-432a5c4c339b",
- "type": "workflow_noop_step"
}
}, - "steps": {
- "data": [
- {
- "id": "01a11922-5ec7-7df7-aa64-432a5c4c339b",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-5ece-7c86-9504-8850aa868c0d",
- "type": "workflow_change_step"
}
]
}, - "override_properties": {
- "data": {
- "id": "01a11922-5ebf-7191-a905-330fbd50a64f",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-5ebf-7191-a905-330fbd50a64f"
}
}
}, - "links": {
- "parent": "/api/projects/opc",
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-5ebb-7418-8a0b-188bf819e3eb",
- "log_lines": "/api/workflow_runs/01a11922-5ebb-7418-8a0b-188bf819e3eb/log_lines",
- "pause": "/api/workflow_runs/01a11922-5ebb-7418-8a0b-188bf819e3eb/pause"
}, - "meta": { }
}, - "included": [
- {
- "id": "01a11922-5aaf-7704-b5c9-c44d67bc8786",
- "type": "workflow_version",
- "attributes": {
- "code": "assets",
- "name": "assets workflow",
- "description": "workflow for assets",
- "draft": false,
- "archived": false,
- "created_by": "jill.kirlin-2927",
- "created_at": "2026-10-08T01:30:44.270361Z",
- "updated_at": "2026-10-08T01:30:44.288696Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa",
- "source": "steps/1",
- "change_parent": {
- "id": "01a11922-5a16-705d-8dc2-ac207e2a4041",
- "path": "/projects/opc/assets/prj_soa",
- "parent_path": "/projects/opc",
- "project_id": "01a11922-5960-7721-880c-b9f9ee865f47",
- "node_type": "asset",
- "parent_id": "01a11922-5960-7721-880c-b9f9ee865f47",
- "code": "prj_soa",
- "name": "Project asset",
- "description": "Project asset description",
- "archived": false,
- "created_at": "2026-10-08T01:30:44.116Z",
- "updated_at": "2026-10-08T01:30:44.116Z",
- "project_type": null,
- "template_version_id": "01a11922-59ce-7585-8a97-a9de6e65e5e6",
- "created_by_id": "01a11922-59f7-7dad-8a0b-170573cdc888",
- "settings_generation": 1
}, - "action_template_version": {
- "id": "01a11922-59ce-7585-8a97-a9de6e65e5e6",
- "commit_id": "01a11922-59bd-77c5-8749-7de29118d9d3",
- "version": "2023_Q4_2",
- "description": "Added additional configuration options",
- "created_at": "2026-10-08T01:30:44.043Z",
- "updated_at": "2026-10-08T01:30:44.043Z",
- "state": "ready",
- "archived": false,
- "has_mintmodel": true,
- "template_id": "01a11922-598d-7c17-b5f4-0621b9c025b8",
- "locked": false,
- "pending_commit_id": null,
- "float_git_rev": false,
- "created_by_id": "01a11922-59c1-7d2d-afce-49dd0f5befa0"
}
}
], - "sample_properties": {
- "sample": null
}, - "version": 2
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11922-5960-7721-880c-b9f9ee865f47",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/versions/2",
- "runs": "/api/projects/opc/workflows/assets/versions/2/runs",
- "workflow": "/api/projects/opc/workflows/assets"
}
}, - {
- "id": "01a11922-5ec7-7df7-aa64-432a5c4c339b",
- "type": "workflow_noop_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "logged_in_user",
- "name": "assets workflow",
- "step_sequence": 1,
- "status_code": "pending",
- "skip_requested": false,
- "created_at": "2026-10-08T01:30:45.319123Z",
- "started_at": null,
- "finished_at": null,
- "updated_at": "2026-10-08T01:30:45.323206Z",
- "child_execution_strategy": "sequential"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11922-5ebb-7418-8a0b-188bf819e3eb",
- "type": "workflow_run"
}
}, - "children": {
- "data": [
- {
- "id": "01a11922-5ece-7c86-9504-8850aa868c0d",
- "type": "workflow_change_step"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-5ebb-7418-8a0b-188bf819e3eb/steps/01a11922-5ec7-7df7-aa64-432a5c4c339b",
- "log_lines": "/api/workflow_steps/01a11922-5ec7-7df7-aa64-432a5c4c339b/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-5ebb-7418-8a0b-188bf819e3eb",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-5ebb-7418-8a0b-188bf819e3eb"
}
}, - {
- "id": "01a11922-5ece-7c86-9504-8850aa868c0d",
- "type": "workflow_change_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "logged_in_user",
- "name": "run asset action",
- "step_sequence": 1,
- "status_code": "pending",
- "skip_requested": false,
- "created_at": "2026-10-08T01:30:45.325716Z",
- "started_at": null,
- "finished_at": null,
- "updated_at": "2026-10-08T01:30:45.330270Z",
- "action": "run",
- "property_overrides": { }
}, - "relationships": {
- "change": {
- "data": null
}, - "change_parent": {
- "data": {
- "id": "01a11922-5a16-705d-8dc2-ac207e2a4041",
- "type": "asset"
}
}, - "action_template_version": {
- "data": {
- "id": "01a11922-59ce-7585-8a97-a9de6e65e5e6",
- "type": "template_version"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11922-5ebb-7418-8a0b-188bf819e3eb",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-5ebb-7418-8a0b-188bf819e3eb/steps/01a11922-5ece-7c86-9504-8850aa868c0d",
- "log_lines": "/api/workflow_steps/01a11922-5ece-7c86-9504-8850aa868c0d/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-5ebb-7418-8a0b-188bf819e3eb/steps/01a11922-5ec7-7df7-aa64-432a5c4c339b",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-5ebb-7418-8a0b-188bf819e3eb"
}
}
]
}Shows a workflow run.
| run_id required | string Example: 01a1191f-21a3-775e-ab9b-282712b0d799 workflow run id |
{- "data": {
- "id": "01a11922-73ca-717c-870f-0a900f2c3c47",
- "type": "workflow_run",
- "attributes": {
- "step_tree": {
- "id": "01a11922-73d1-7da9-9f12-ebbcca30f332",
- "name": "quia",
- "type": "workflow_noop_step",
- "children": [
- {
- "id": "01a11922-73dc-7078-b88b-70ad3a13dfc3",
- "name": "velit",
- "type": "workflow_noop_step",
- "children": [
- {
- "id": "01a11922-753c-7786-9c2e-194842358592",
- "name": "navigate",
- "type": "workflow_change_step",
- "action": "navigate",
- "target": "/projects/pvfth/environments/fvoiu/assets/btyvb"
}
], - "child_execution_strategy": "sequential"
}, - {
- "id": "01a11922-7688-73f9-b765-3658098aaa1e",
- "name": "program",
- "type": "workflow_change_step",
- "action": "program",
- "target": "/projects/tb846/environments/zihnk/assets/3oepg"
}, - {
- "id": "01a11922-7698-76ee-95a0-95091c9ccfc4",
- "name": "Approval",
- "type": "workflow_wait_step",
- "requires_approval_from": {
- "user_names": [
- "opschain"
]
}
}, - {
- "id": "01a11922-7744-7b45-a779-e510ac86e972",
- "name": "child workflow",
- "type": "workflow_workflow_step",
- "target": "/projects/jslha/workflows/child"
}
], - "child_execution_strategy": "sequential"
}, - "scheduled": false,
- "metadata": {
- "Hatity": "0.5.2",
- "Latlux": "4.3.3",
- "Y-find": "0.8.5",
- "Konklab": "6.6",
- "Gembucket": "5.0",
- "Ronstring": "7.16",
- "Voyatouch": "9.1",
- "Solarbreeze": "0.3.5",
- "Toughjoyfax": "2.9.2",
- "Ventosanzap": "4.8"
}, - "created_by": "josiah-3041",
- "cancelled_by": null,
- "notify": { },
- "skip_steps": [ ],
- "pause_state": "none",
- "status_code": "success",
- "paused": false,
- "paused_by": [ ],
- "created_at": "2026-10-08T01:30:50.697116Z",
- "started_at": "2026-10-08T01:21:27.930040Z",
- "finished_at": "2026-10-08T01:25:40.793318Z",
- "updated_at": "2026-10-08T01:30:50.709283Z",
- "paused_at": null,
- "project_name": "OpsChain",
- "workflow_code": "assets"
}, - "relationships": {
- "workflow_version": {
- "data": {
- "id": "01a11922-7374-7bde-a7f4-cb21d3479d8d",
- "type": "workflow_version"
}
}, - "workflow": {
- "data": {
- "id": "01a11922-735f-734c-8b72-e72821cf26f4",
- "type": "workflow"
}
}, - "parent_workflow_step": {
- "data": null
}, - "root_step": {
- "data": {
- "id": "01a11922-73d1-7da9-9f12-ebbcca30f332",
- "type": "workflow_noop_step"
}
}, - "steps": {
- "data": [
- {
- "id": "01a11922-73d1-7da9-9f12-ebbcca30f332",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-73dc-7078-b88b-70ad3a13dfc3",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-7688-73f9-b765-3658098aaa1e",
- "type": "workflow_change_step"
}, - {
- "id": "01a11922-7698-76ee-95a0-95091c9ccfc4",
- "type": "workflow_wait_step"
}, - {
- "id": "01a11922-7744-7b45-a779-e510ac86e972",
- "type": "workflow_workflow_step"
}, - {
- "id": "01a11922-753c-7786-9c2e-194842358592",
- "type": "workflow_change_step"
}
]
}, - "override_properties": {
- "data": {
- "id": "01a11922-73b8-7642-a614-f21487311073",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-73b8-7642-a614-f21487311073"
}
}
}, - "links": {
- "parent": "/api/projects/opc",
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47",
- "log_lines": "/api/workflow_runs/01a11922-73ca-717c-870f-0a900f2c3c47/log_lines"
}, - "meta": {
- "wait_queue": [ ],
- "blocking_queue": [ ]
}
}, - "included": [
- {
- "id": "01a11922-7374-7bde-a7f4-cb21d3479d8d",
- "type": "workflow_version",
- "attributes": {
- "code": "assets",
- "name": "assets workflow",
- "description": "workflow for assets",
- "draft": false,
- "archived": false,
- "created_by": "wava.wolf-3039",
- "created_at": "2026-10-08T01:30:50.611746Z",
- "updated_at": "2026-10-08T01:30:50.630527Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [ ],
- "sample_properties": {
- "sample": null
}, - "version": 2
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11922-7257-776b-bb1e-b001f9e1148a",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/versions/2",
- "runs": "/api/projects/opc/workflows/assets/versions/2/runs",
- "workflow": "/api/projects/opc/workflows/assets"
}
}, - {
- "id": "01a11922-73d1-7da9-9f12-ebbcca30f332",
- "type": "workflow_noop_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "josiah-3041",
- "name": "quia",
- "step_sequence": 1,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:30:50.704763Z",
- "started_at": "2026-10-08T01:21:27.930040Z",
- "finished_at": "2026-10-08T01:25:40.793318Z",
- "updated_at": "2026-10-08T01:30:50.709283Z",
- "child_execution_strategy": "sequential"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11922-73ca-717c-870f-0a900f2c3c47",
- "type": "workflow_run"
}
}, - "children": {
- "data": [
- {
- "id": "01a11922-73dc-7078-b88b-70ad3a13dfc3",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-7688-73f9-b765-3658098aaa1e",
- "type": "workflow_change_step"
}, - {
- "id": "01a11922-7698-76ee-95a0-95091c9ccfc4",
- "type": "workflow_wait_step"
}, - {
- "id": "01a11922-7744-7b45-a779-e510ac86e972",
- "type": "workflow_workflow_step"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47/steps/01a11922-73d1-7da9-9f12-ebbcca30f332",
- "log_lines": "/api/workflow_steps/01a11922-73d1-7da9-9f12-ebbcca30f332/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47"
}
}, - {
- "id": "01a11922-73dc-7078-b88b-70ad3a13dfc3",
- "type": "workflow_noop_step",
- "attributes": {
- "lock_version": 2,
- "created_by": "josiah-3041",
- "name": "velit",
- "step_sequence": 1,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:24:15.209572Z",
- "started_at": "2026-10-08T01:25:15.209572Z",
- "finished_at": "2026-10-08T01:27:26.618739Z",
- "updated_at": "2026-10-08T01:30:51.017541Z",
- "child_execution_strategy": "sequential"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11922-73ca-717c-870f-0a900f2c3c47",
- "type": "workflow_run"
}
}, - "children": {
- "data": [
- {
- "id": "01a11922-753c-7786-9c2e-194842358592",
- "type": "workflow_change_step"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47/steps/01a11922-73dc-7078-b88b-70ad3a13dfc3",
- "log_lines": "/api/workflow_steps/01a11922-73dc-7078-b88b-70ad3a13dfc3/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47/steps/01a11922-73d1-7da9-9f12-ebbcca30f332",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47"
}
}, - {
- "id": "01a11922-7688-73f9-b765-3658098aaa1e",
- "type": "workflow_change_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "josiah-3041",
- "name": "program",
- "step_sequence": 2,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:23:27.585662Z",
- "started_at": "2026-10-08T01:24:27.585662Z",
- "finished_at": "2026-10-08T01:27:54.204696Z",
- "updated_at": "2026-10-08T01:30:51.404554Z",
- "action": "program",
- "property_overrides": {
- "matrix": "connecting"
}
}, - "relationships": {
- "change": {
- "data": {
- "id": "01a11922-766b-7fd6-a3fc-935133be7eda",
- "type": "change"
}
}, - "change_parent": {
- "data": {
- "id": "01a11922-761c-7b8c-b31a-c2c131b1fdd9",
- "type": "asset"
}
}, - "action_template_version": {
- "data": {
- "id": "01a11922-75ee-781e-b741-6494a53f077e",
- "type": "template_version"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11922-73ca-717c-870f-0a900f2c3c47",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47/steps/01a11922-7688-73f9-b765-3658098aaa1e",
- "log_lines": "/api/workflow_steps/01a11922-7688-73f9-b765-3658098aaa1e/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47/steps/01a11922-73d1-7da9-9f12-ebbcca30f332",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47"
}
}, - {
- "id": "01a11922-7698-76ee-95a0-95091c9ccfc4",
- "type": "workflow_wait_step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": {
- "user_names": [
- "opschain"
]
}, - "lock_version": 1,
- "created_by": "josiah-3041",
- "name": "Approval",
- "step_sequence": 3,
- "status_code": "approved",
- "skip_requested": false,
- "created_at": "2026-10-08T01:23:50.484632Z",
- "started_at": "2026-10-08T01:24:50.484632Z",
- "finished_at": "2026-10-08T01:26:15.739348Z",
- "updated_at": "2026-10-08T01:30:51.419600Z"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11922-73ca-717c-870f-0a900f2c3c47",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47/steps/01a11922-7698-76ee-95a0-95091c9ccfc4",
- "log_lines": "/api/workflow_steps/01a11922-7698-76ee-95a0-95091c9ccfc4/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47/steps/01a11922-73d1-7da9-9f12-ebbcca30f332",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47"
}
}, - {
- "id": "01a11922-7744-7b45-a779-e510ac86e972",
- "type": "workflow_workflow_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "josiah-3041",
- "name": "child workflow",
- "step_sequence": 4,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:22:02.254620Z",
- "started_at": "2026-10-08T01:23:02.254620Z",
- "finished_at": "2026-10-08T01:27:00.558359Z",
- "updated_at": "2026-10-08T01:30:51.593909Z",
- "code": "child"
}, - "relationships": {
- "child_workflow_version": {
- "data": {
- "id": "01a11922-770a-7f04-be22-ddd588b964dd",
- "type": "workflow_version"
}
}, - "child_workflow_run": {
- "data": {
- "id": "01a11922-772e-72aa-b5b1-ca42212182ca",
- "type": "workflow_run"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11922-73ca-717c-870f-0a900f2c3c47",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47/steps/01a11922-7744-7b45-a779-e510ac86e972",
- "log_lines": "/api/workflow_steps/01a11922-7744-7b45-a779-e510ac86e972/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47/steps/01a11922-73d1-7da9-9f12-ebbcca30f332",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47"
}
}, - {
- "id": "01a11922-753c-7786-9c2e-194842358592",
- "type": "workflow_change_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "josiah-3041",
- "name": "navigate",
- "step_sequence": 1,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:23:25.282032Z",
- "started_at": "2026-10-08T01:24:25.282032Z",
- "finished_at": "2026-10-08T01:29:29.637418Z",
- "updated_at": "2026-10-08T01:30:51.071553Z",
- "action": "navigate",
- "property_overrides": {
- "interface": "quantifying"
}
}, - "relationships": {
- "change": {
- "data": {
- "id": "01a11922-7520-72e1-95dc-d2225ee7fd02",
- "type": "change"
}
}, - "change_parent": {
- "data": {
- "id": "01a11922-74d3-7205-b09d-da2e108c0da0",
- "type": "asset"
}
}, - "action_template_version": {
- "data": {
- "id": "01a11922-74a2-7a41-b1ce-2f6b8a6ee998",
- "type": "template_version"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11922-73ca-717c-870f-0a900f2c3c47",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47/steps/01a11922-753c-7786-9c2e-194842358592",
- "log_lines": "/api/workflow_steps/01a11922-753c-7786-9c2e-194842358592/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47/steps/01a11922-73dc-7078-b88b-70ad3a13dfc3",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-73ca-717c-870f-0a900f2c3c47"
}
}
]
}Cancels a workflow run.
| run_id required | string Example: 01a1191f-21a3-775e-ab9b-282712b0d799 workflow run id |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find WorkflowRun"
}
}
]
}Pauses a running workflow run. Steps already running finish, but no further steps are dispatched until the run is resumed.
| run_id required | string Example: 01a1191f-21a3-775e-ab9b-282712b0d799 workflow run id |
object |
{- "data": {
- "attributes": {
- "reason": "Holding this run until the database maintenance window closes"
}
}
}{- "data": {
- "id": "01a11922-8bca-74ae-a0b9-434f18f5d58d",
- "type": "workflow_run",
- "attributes": {
- "step_tree": {
- "id": "01a11922-8bd6-79af-ab66-37d9700720c9",
- "name": "nulla",
- "type": "workflow_noop_step",
- "children": [
- {
- "id": "01a11922-8be6-724b-bfe3-5d4034af39b4",
- "name": "repellendus",
- "type": "workflow_noop_step",
- "children": [
- {
- "id": "01a11922-8d21-714e-8aba-129561fb0f2c",
- "name": "compress",
- "type": "workflow_change_step",
- "action": "compress",
- "target": "/projects/cafir/environments/2tpoj/assets/uh7wp"
}
], - "child_execution_strategy": "sequential"
}, - {
- "id": "01a11922-8e54-7d71-8451-b7869ab871db",
- "name": "hack",
- "type": "workflow_change_step",
- "action": "hack",
- "target": "/projects/ra236/environments/vzpi2/assets/jmuqu"
}, - {
- "id": "01a11922-8e64-7b85-a8d4-cf5c264479c2",
- "name": "Approval",
- "type": "workflow_wait_step",
- "requires_approval_from": {
- "user_names": [
- "opschain"
]
}
}, - {
- "id": "01a11922-8edf-776c-9c1f-7caed0677917",
- "name": "child workflow",
- "type": "workflow_workflow_step",
- "target": "/projects/xinma/workflows/child"
}
], - "child_execution_strategy": "sequential"
}, - "scheduled": false,
- "metadata": {
- "Tin": "7.57",
- "Keylex": "6.3",
- "Sub-Ex": "0.5.0",
- "Vagram": "1.0",
- "Fix San": "5.7",
- "Alphazap": "3.6",
- "Overhold": "7.79",
- "Tampflex": "0.80",
- "Y-Solowarm": "0.91"
}, - "created_by": "easter_mitchell-3145",
- "cancelled_by": null,
- "notify": { },
- "skip_steps": [ ],
- "pause_state": "paused",
- "status_code": "running",
- "paused": true,
- "paused_by": [
- {
- "username": "logged_in_user",
- "action": "pause",
- "message": "Holding this run until the database maintenance window closes",
- "date": "2026-10-08T01:30:57.730178Z"
}
], - "created_at": "2026-10-08T01:30:56.841094Z",
- "started_at": "2026-10-08T01:23:25.244694Z",
- "finished_at": null,
- "updated_at": "2026-10-08T01:30:56.860250Z",
- "paused_at": "2026-10-08T01:30:57.716259Z",
- "project_name": "OpsChain",
- "workflow_code": "assets"
}, - "relationships": {
- "workflow_version": {
- "data": {
- "id": "01a11922-8b53-7687-98a5-4c57770a2355",
- "type": "workflow_version"
}
}, - "workflow": {
- "data": {
- "id": "01a11922-8b35-75af-8d15-4da903b01593",
- "type": "workflow"
}
}, - "parent_workflow_step": {
- "data": null
}, - "root_step": {
- "data": {
- "id": "01a11922-8bd6-79af-ab66-37d9700720c9",
- "type": "workflow_noop_step"
}
}, - "steps": {
- "data": [
- {
- "id": "01a11922-8bd6-79af-ab66-37d9700720c9",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-8be6-724b-bfe3-5d4034af39b4",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-8e54-7d71-8451-b7869ab871db",
- "type": "workflow_change_step"
}, - {
- "id": "01a11922-8e64-7b85-a8d4-cf5c264479c2",
- "type": "workflow_wait_step"
}, - {
- "id": "01a11922-8edf-776c-9c1f-7caed0677917",
- "type": "workflow_workflow_step"
}, - {
- "id": "01a11922-8d21-714e-8aba-129561fb0f2c",
- "type": "workflow_change_step"
}
]
}, - "override_properties": {
- "data": {
- "id": "01a11922-8bb2-71f3-8b9a-22290af7bf36",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-8bb2-71f3-8b9a-22290af7bf36"
}
}
}, - "links": {
- "parent": "/api/projects/opc",
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-8bca-74ae-a0b9-434f18f5d58d",
- "log_lines": "/api/workflow_runs/01a11922-8bca-74ae-a0b9-434f18f5d58d/log_lines",
- "resume": "/api/workflow_runs/01a11922-8bca-74ae-a0b9-434f18f5d58d/resume"
}, - "meta": { }
}
}Resumes a paused workflow run, dispatching the steps that were held while it was paused.
| run_id required | string Example: 01a1191f-21a3-775e-ab9b-282712b0d799 workflow run id |
object |
{- "data": {
- "attributes": {
- "reason": "Maintenance window closed"
}
}
}{- "data": {
- "id": "01a11922-9d73-72ec-9b6c-dd3b0b64c809",
- "type": "workflow_run",
- "attributes": {
- "step_tree": {
- "id": "01a11922-9d7a-786b-9fc5-6f5f109070cf",
- "name": "nulla",
- "type": "workflow_noop_step",
- "children": [
- {
- "id": "01a11922-9d84-789d-905a-331d6aa23fea",
- "name": "in",
- "type": "workflow_noop_step",
- "children": [
- {
- "id": "01a11922-9ea9-7da4-8be5-7dde807a2cf2",
- "name": "quantify",
- "type": "workflow_change_step",
- "action": "quantify",
- "target": "/projects/tygwm/environments/n5qvp/assets/pajx0"
}
], - "child_execution_strategy": "sequential"
}, - {
- "id": "01a11922-9fe5-78cd-98f0-9a0b3b2648d5",
- "name": "synthesize",
- "type": "workflow_change_step",
- "action": "synthesize",
- "target": "/projects/xlnjo/environments/3ko9l/assets/kemjr"
}, - {
- "id": "01a11922-9ff6-738d-adf8-089ff5b9419d",
- "name": "Approval",
- "type": "workflow_wait_step",
- "requires_approval_from": {
- "user_names": [
- "opschain"
]
}
}, - {
- "id": "01a11922-a084-7e39-aebd-e6540ecd1f43",
- "name": "child workflow",
- "type": "workflow_workflow_step",
- "target": "/projects/bdwow/workflows/child"
}
], - "child_execution_strategy": "sequential"
}, - "scheduled": false,
- "metadata": {
- "Job": "0.6.8",
- "Kanlam": "0.41",
- "Tresom": "4.1.1",
- "Zathin": "0.8.3",
- "Bitwolf": "0.36",
- "Sonsing": "2.4",
- "Home Ing": "0.9.7",
- "Treeflex": "6.0.2",
- "Daltfresh": "0.14",
- "Solarbreeze": "3.8"
}, - "created_by": "floyd_kuhic-3221",
- "cancelled_by": null,
- "notify": { },
- "skip_steps": [ ],
- "pause_state": "none",
- "status_code": "running",
- "paused": false,
- "paused_by": [
- {
- "username": "logged_in_user",
- "action": "resume",
- "message": "Maintenance window closed",
- "date": "2026-10-08T01:31:02.242796Z"
}
], - "created_at": "2026-10-08T01:31:01.362171Z",
- "started_at": "2026-10-08T01:25:52.729336Z",
- "finished_at": null,
- "updated_at": "2026-10-08T01:31:01.374273Z",
- "paused_at": null,
- "project_name": "OpsChain",
- "workflow_code": "assets"
}, - "relationships": {
- "workflow_version": {
- "data": {
- "id": "01a11922-9d13-732c-a700-a23f8ef00048",
- "type": "workflow_version"
}
}, - "workflow": {
- "data": {
- "id": "01a11922-9cfc-7bbe-aa28-4f5e44c5852c",
- "type": "workflow"
}
}, - "parent_workflow_step": {
- "data": null
}, - "root_step": {
- "data": {
- "id": "01a11922-9d7a-786b-9fc5-6f5f109070cf",
- "type": "workflow_noop_step"
}
}, - "steps": {
- "data": [
- {
- "id": "01a11922-9d7a-786b-9fc5-6f5f109070cf",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-9d84-789d-905a-331d6aa23fea",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-9fe5-78cd-98f0-9a0b3b2648d5",
- "type": "workflow_change_step"
}, - {
- "id": "01a11922-9ff6-738d-adf8-089ff5b9419d",
- "type": "workflow_wait_step"
}, - {
- "id": "01a11922-a084-7e39-aebd-e6540ecd1f43",
- "type": "workflow_workflow_step"
}, - {
- "id": "01a11922-9ea9-7da4-8be5-7dde807a2cf2",
- "type": "workflow_change_step"
}
]
}, - "override_properties": {
- "data": {
- "id": "01a11922-9d60-76f7-b086-1118960cb1eb",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-9d60-76f7-b086-1118960cb1eb"
}
}
}, - "links": {
- "parent": "/api/projects/opc",
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-9d73-72ec-9b6c-dd3b0b64c809",
- "log_lines": "/api/workflow_runs/01a11922-9d73-72ec-9b6c-dd3b0b64c809/log_lines",
- "pause": "/api/workflow_runs/01a11922-9d73-72ec-9b6c-dd3b0b64c809/pause"
}, - "meta": { }
}
}Lists all runs for a workflow.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[created_by_cont]=opschain API filtering guide. Named filters: |
| limit | integer [ 1 .. 10000 ] Default: 100 Example: limit=50 Limit the number of workflow runs returned. When more records match than the limit a 206 response is returned and |
{- "data": [
- {
- "id": "01a11922-ae64-7320-9a53-987afaeb0f97",
- "type": "workflow_run",
- "attributes": {
- "step_tree": {
- "id": "01a11922-ae6c-7351-99b9-5f02cc2ee4c2",
- "name": "quia",
- "type": "workflow_noop_step",
- "children": [
- {
- "id": "01a11922-ae77-73fe-b771-e9ac8b3672df",
- "name": "consectetur",
- "type": "workflow_noop_step",
- "children": [
- {
- "id": "01a11922-afcb-7600-95a5-c1219beeafab",
- "name": "input",
- "type": "workflow_change_step",
- "action": "input",
- "target": "/projects/xip9q/environments/dunpm/assets/dvdls"
}
], - "child_execution_strategy": "sequential"
}, - {
- "id": "01a11922-b135-7414-b768-a780ddb48801",
- "name": "generate",
- "type": "workflow_change_step",
- "action": "generate",
- "target": "/projects/s7fy6/environments/5tqmo/assets/m9pld"
}, - {
- "id": "01a11922-b145-7d1d-a4cf-d56296ad7b59",
- "name": "Approval",
- "type": "workflow_wait_step",
- "requires_approval_from": {
- "user_names": [
- "opschain"
]
}
}, - {
- "id": "01a11922-b1e2-7a99-b73a-0ab9fc008e8a",
- "name": "child workflow",
- "type": "workflow_workflow_step",
- "target": "/projects/z3fd8/workflows/child"
}
], - "child_execution_strategy": "sequential"
}, - "scheduled": false,
- "metadata": {
- "Keylex": "8.7.4",
- "Y-find": "7.8",
- "Cookley": "6.2",
- "Fintone": "0.8.6",
- "Fix San": "1.06",
- "Greenlam": "2.2",
- "Holdlamis": "3.75",
- "Lotstring": "9.6.8",
- "Stringtough": "6.13"
}, - "created_by": "many-3293",
- "cancelled_by": null,
- "notify": { },
- "skip_steps": [ ],
- "pause_state": "none",
- "status_code": "success",
- "paused": false,
- "paused_by": [ ],
- "created_at": "2026-10-08T01:31:05.698878Z",
- "started_at": "2026-10-08T01:22:00.394879Z",
- "finished_at": "2026-10-08T01:26:21.327418Z",
- "updated_at": "2026-10-08T01:31:05.711848Z",
- "paused_at": null,
- "project_name": "OpsChain",
- "workflow_code": "assets"
}, - "relationships": {
- "workflow_version": {
- "data": {
- "id": "01a11922-adfd-77ac-ae05-595cf53ee83e",
- "type": "workflow_version"
}
}, - "workflow": {
- "data": {
- "id": "01a11922-ade5-7bb4-b556-bf441010594a",
- "type": "workflow"
}
}, - "parent_workflow_step": {
- "data": null
}, - "root_step": {
- "data": {
- "id": "01a11922-ae6c-7351-99b9-5f02cc2ee4c2",
- "type": "workflow_noop_step"
}
}, - "steps": {
- "data": [
- {
- "id": "01a11922-ae6c-7351-99b9-5f02cc2ee4c2",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-ae77-73fe-b771-e9ac8b3672df",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-b135-7414-b768-a780ddb48801",
- "type": "workflow_change_step"
}, - {
- "id": "01a11922-b145-7d1d-a4cf-d56296ad7b59",
- "type": "workflow_wait_step"
}, - {
- "id": "01a11922-b1e2-7a99-b73a-0ab9fc008e8a",
- "type": "workflow_workflow_step"
}, - {
- "id": "01a11922-afcb-7600-95a5-c1219beeafab",
- "type": "workflow_change_step"
}
]
}, - "override_properties": {
- "data": {
- "id": "01a11922-ae4f-7896-930e-81c0bef1fadc",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-ae4f-7896-930e-81c0bef1fadc"
}
}
}, - "links": {
- "parent": "/api/projects/opc",
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-ae64-7320-9a53-987afaeb0f97",
- "log_lines": "/api/workflow_runs/01a11922-ae64-7320-9a53-987afaeb0f97/log_lines"
}, - "meta": { }
}
], - "included": [
- {
- "id": "01a11922-adfd-77ac-ae05-595cf53ee83e",
- "type": "workflow_version",
- "attributes": {
- "code": "assets",
- "name": "assets workflow",
- "description": "workflow for assets",
- "draft": false,
- "archived": false,
- "created_by": "babara.parker-3291",
- "created_at": "2026-10-08T01:31:05.596196Z",
- "updated_at": "2026-10-08T01:31:05.619075Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [ ],
- "sample_properties": {
- "sample": null
}, - "version": 2
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11922-acf4-7dd1-81e5-aba68d9bd8f9",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/versions/2",
- "runs": "/api/projects/opc/workflows/assets/versions/2/runs",
- "workflow": "/api/projects/opc/workflows/assets"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true,
- "execute": true
}, - "partial_response": false
}
}Runs a pre-defined workflow
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
required | object |
{- "data": {
- "attributes": {
- "version": 2,
- "property_overrides": {
- "additional": "properties"
}, - "metadata": {
- "optional": "metadata"
}, - "notify": {
- "user_ids": [
- "01a1191e-f5a7-7997-8966-5e03d0adf605"
], - "ldap_groups": [
- "ldap_group_name"
], - "email_addresses": [
- "limepoint@opschain.com"
], - "events": "cancel"
}, - "skip_steps": [
- "steps/to/skip/**"
]
}
}
}{- "data": {
- "id": "01a11922-be30-78dc-8523-b5492bc83c26",
- "type": "workflow_run",
- "attributes": {
- "step_tree": {
- "id": "01a11922-be3e-7db3-a04a-a755256bc7fe",
- "name": "assets workflow",
- "type": "workflow_noop_step",
- "children": [
- {
- "id": "01a11922-be47-7d88-9f51-77f1a21d3f5b",
- "name": "run asset action",
- "type": "workflow_change_step",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "child_execution_strategy": "sequential"
}, - "scheduled": false,
- "metadata": { },
- "created_by": "logged_in_user",
- "cancelled_by": null,
- "notify": { },
- "skip_steps": [ ],
- "pause_state": "none",
- "status_code": "pending",
- "paused": false,
- "paused_by": [ ],
- "created_at": "2026-10-08T01:31:09.743427Z",
- "started_at": null,
- "finished_at": null,
- "updated_at": "2026-10-08T01:31:09.762606Z",
- "paused_at": null,
- "project_name": "OpsChain",
- "workflow_code": "assets"
}, - "relationships": {
- "workflow_version": {
- "data": {
- "id": "01a11922-b9da-7539-9e43-392744872330",
- "type": "workflow_version"
}
}, - "workflow": {
- "data": {
- "id": "01a11922-b9c6-7c66-b6ce-0c8134e456f5",
- "type": "workflow"
}
}, - "parent_workflow_step": {
- "data": null
}, - "root_step": {
- "data": {
- "id": "01a11922-be3e-7db3-a04a-a755256bc7fe",
- "type": "workflow_noop_step"
}
}, - "steps": {
- "data": [
- {
- "id": "01a11922-be3e-7db3-a04a-a755256bc7fe",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-be47-7d88-9f51-77f1a21d3f5b",
- "type": "workflow_change_step"
}
]
}, - "override_properties": {
- "data": {
- "id": "01a11922-be34-7d22-a98b-9e80af983b7b",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-be34-7d22-a98b-9e80af983b7b"
}
}
}, - "links": {
- "parent": "/api/projects/opc",
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-be30-78dc-8523-b5492bc83c26",
- "log_lines": "/api/workflow_runs/01a11922-be30-78dc-8523-b5492bc83c26/log_lines",
- "pause": "/api/workflow_runs/01a11922-be30-78dc-8523-b5492bc83c26/pause"
}, - "meta": { }
}, - "included": [
- {
- "id": "01a11922-b9da-7539-9e43-392744872330",
- "type": "workflow_version",
- "attributes": {
- "code": "assets",
- "name": "assets workflow",
- "description": "workflow for assets",
- "draft": false,
- "archived": false,
- "created_by": "paul.raynor-3348",
- "created_at": "2026-10-08T01:31:08.633428Z",
- "updated_at": "2026-10-08T01:31:08.649938Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa",
- "source": "steps/1",
- "change_parent": {
- "id": "01a11922-b95c-748d-96d6-46a917034665",
- "path": "/projects/opc/assets/prj_soa",
- "parent_path": "/projects/opc",
- "project_id": "01a11922-b8b8-7217-9ebd-4c41404054be",
- "node_type": "asset",
- "parent_id": "01a11922-b8b8-7217-9ebd-4c41404054be",
- "code": "prj_soa",
- "name": "Project asset",
- "description": "Project asset description",
- "archived": false,
- "created_at": "2026-10-08T01:31:08.506Z",
- "updated_at": "2026-10-08T01:31:08.506Z",
- "project_type": null,
- "template_version_id": "01a11922-b928-7698-914a-975ba8628e86",
- "created_by_id": "01a11922-b945-7878-b312-9393816712f4",
- "settings_generation": 1
}, - "action_template_version": {
- "id": "01a11922-b928-7698-914a-975ba8628e86",
- "commit_id": "01a11922-b91b-7b1e-a25a-d87c805ad49e",
- "version": "2023_Q4_2",
- "description": "Added additional configuration options",
- "created_at": "2026-10-08T01:31:08.455Z",
- "updated_at": "2026-10-08T01:31:08.455Z",
- "state": "ready",
- "archived": false,
- "has_mintmodel": true,
- "template_id": "01a11922-b8f2-76da-9f70-725fa2b35818",
- "locked": false,
- "pending_commit_id": null,
- "float_git_rev": false,
- "created_by_id": "01a11922-b91f-7837-a205-ea1169609ff9"
}
}
], - "sample_properties": {
- "sample": null
}, - "version": 2
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11922-b8b8-7217-9ebd-4c41404054be",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/versions/2",
- "runs": "/api/projects/opc/workflows/assets/versions/2/runs",
- "workflow": "/api/projects/opc/workflows/assets"
}
}, - {
- "id": "01a11922-be3e-7db3-a04a-a755256bc7fe",
- "type": "workflow_noop_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "logged_in_user",
- "name": "assets workflow",
- "step_sequence": 1,
- "status_code": "pending",
- "skip_requested": false,
- "created_at": "2026-10-08T01:31:09.758016Z",
- "started_at": null,
- "finished_at": null,
- "updated_at": "2026-10-08T01:31:09.762606Z",
- "child_execution_strategy": "sequential"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11922-be30-78dc-8523-b5492bc83c26",
- "type": "workflow_run"
}
}, - "children": {
- "data": [
- {
- "id": "01a11922-be47-7d88-9f51-77f1a21d3f5b",
- "type": "workflow_change_step"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-be30-78dc-8523-b5492bc83c26/steps/01a11922-be3e-7db3-a04a-a755256bc7fe",
- "log_lines": "/api/workflow_steps/01a11922-be3e-7db3-a04a-a755256bc7fe/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-be30-78dc-8523-b5492bc83c26",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-be30-78dc-8523-b5492bc83c26"
}
}, - {
- "id": "01a11922-be47-7d88-9f51-77f1a21d3f5b",
- "type": "workflow_change_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "logged_in_user",
- "name": "run asset action",
- "step_sequence": 1,
- "status_code": "pending",
- "skip_requested": false,
- "created_at": "2026-10-08T01:31:09.765790Z",
- "started_at": null,
- "finished_at": null,
- "updated_at": "2026-10-08T01:31:09.772126Z",
- "action": "run",
- "property_overrides": { }
}, - "relationships": {
- "change": {
- "data": null
}, - "change_parent": {
- "data": {
- "id": "01a11922-b95c-748d-96d6-46a917034665",
- "type": "asset"
}
}, - "action_template_version": {
- "data": {
- "id": "01a11922-b928-7698-914a-975ba8628e86",
- "type": "template_version"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11922-be30-78dc-8523-b5492bc83c26",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-be30-78dc-8523-b5492bc83c26/steps/01a11922-be47-7d88-9f51-77f1a21d3f5b",
- "log_lines": "/api/workflow_steps/01a11922-be47-7d88-9f51-77f1a21d3f5b/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-be30-78dc-8523-b5492bc83c26/steps/01a11922-be3e-7db3-a04a-a755256bc7fe",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-be30-78dc-8523-b5492bc83c26"
}
}
]
}Shows a workflow run.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
| run_id required | string Example: 01a1191f-21a3-775e-ab9b-282712b0d799 workflow run id |
{- "data": {
- "id": "01a11922-d1a3-74ee-abfa-e6cb6cf84ad3",
- "type": "workflow_run",
- "attributes": {
- "step_tree": {
- "id": "01a11922-d1ab-78b0-b03a-2c860ca7d140",
- "name": "tenetur",
- "type": "workflow_noop_step",
- "children": [
- {
- "id": "01a11922-d1b8-7450-b6f6-6ab14faea120",
- "name": "facilis",
- "type": "workflow_noop_step",
- "children": [
- {
- "id": "01a11922-d340-7a85-960b-3955b52bc2b6",
- "name": "copy",
- "type": "workflow_change_step",
- "action": "copy",
- "target": "/projects/6fyvu/environments/h2bgx/assets/celhz"
}
], - "child_execution_strategy": "sequential"
}, - {
- "id": "01a11922-d48a-7b7a-94c2-5764354d4295",
- "name": "input",
- "type": "workflow_change_step",
- "action": "input",
- "target": "/projects/gaagj/environments/oll0g/assets/mz6h3"
}, - {
- "id": "01a11922-d499-7d6a-93c3-06cf136724cd",
- "name": "Approval",
- "type": "workflow_wait_step",
- "requires_approval_from": {
- "user_names": [
- "opschain"
]
}
}, - {
- "id": "01a11922-d522-7269-acaf-8bd8c4bfd140",
- "name": "child workflow",
- "type": "workflow_workflow_step",
- "target": "/projects/1a5uk/workflows/child"
}
], - "child_execution_strategy": "sequential"
}, - "scheduled": false,
- "metadata": {
- "Temp": "2.56",
- "Lotlux": "0.2.1",
- "Sub-Ex": "7.2.8",
- "Greenlam": "0.5.2",
- "Home Ing": "2.1.1",
- "Transcof": "0.10",
- "Stronghold": "3.33",
- "Stringtough": "0.1.9"
}, - "created_by": "dudley_price-3463",
- "cancelled_by": null,
- "notify": { },
- "skip_steps": [ ],
- "pause_state": "none",
- "status_code": "success",
- "paused": false,
- "paused_by": [ ],
- "created_at": "2026-10-08T01:31:14.722148Z",
- "started_at": "2026-10-08T01:25:59.148403Z",
- "finished_at": "2026-10-08T01:29:16.909654Z",
- "updated_at": "2026-10-08T01:31:14.735843Z",
- "paused_at": null,
- "project_name": "OpsChain",
- "workflow_code": "assets"
}, - "relationships": {
- "workflow_version": {
- "data": {
- "id": "01a11922-d14c-7068-b693-aa1de76517ed",
- "type": "workflow_version"
}
}, - "workflow": {
- "data": {
- "id": "01a11922-d136-7ad2-a3de-73d1661a077b",
- "type": "workflow"
}
}, - "parent_workflow_step": {
- "data": null
}, - "root_step": {
- "data": {
- "id": "01a11922-d1ab-78b0-b03a-2c860ca7d140",
- "type": "workflow_noop_step"
}
}, - "steps": {
- "data": [
- {
- "id": "01a11922-d1ab-78b0-b03a-2c860ca7d140",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-d1b8-7450-b6f6-6ab14faea120",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-d48a-7b7a-94c2-5764354d4295",
- "type": "workflow_change_step"
}, - {
- "id": "01a11922-d499-7d6a-93c3-06cf136724cd",
- "type": "workflow_wait_step"
}, - {
- "id": "01a11922-d522-7269-acaf-8bd8c4bfd140",
- "type": "workflow_workflow_step"
}, - {
- "id": "01a11922-d340-7a85-960b-3955b52bc2b6",
- "type": "workflow_change_step"
}
]
}, - "override_properties": {
- "data": {
- "id": "01a11922-d191-70bc-9e57-520afad79e7e",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11922-d191-70bc-9e57-520afad79e7e"
}
}
}, - "links": {
- "parent": "/api/projects/opc",
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3",
- "log_lines": "/api/workflow_runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3/log_lines"
}, - "meta": {
- "wait_queue": [ ],
- "blocking_queue": [ ]
}
}, - "included": [
- {
- "id": "01a11922-d14c-7068-b693-aa1de76517ed",
- "type": "workflow_version",
- "attributes": {
- "code": "assets",
- "name": "assets workflow",
- "description": "workflow for assets",
- "draft": false,
- "archived": false,
- "created_by": "scotty-3461",
- "created_at": "2026-10-08T01:31:14.634765Z",
- "updated_at": "2026-10-08T01:31:14.657420Z",
- "source_yaml": "---\nsteps:\n- type: change\n name: run asset action\n target: \"/projects/opc/assets/prj_soa\"\n action: run\n",
- "steps": [
- {
- "name": "run asset action",
- "type": "change",
- "action": "run",
- "target": "/projects/opc/assets/prj_soa"
}
], - "resolved_steps": [ ],
- "sample_properties": {
- "sample": null
}, - "version": 2
}, - "relationships": {
- "parent": {
- "data": {
- "id": "01a11922-d01e-77ae-b297-f2951a50eb6e",
- "type": "project"
}, - "links": {
- "related": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/versions/2",
- "runs": "/api/projects/opc/workflows/assets/versions/2/runs",
- "workflow": "/api/projects/opc/workflows/assets"
}
}, - {
- "id": "01a11922-d1ab-78b0-b03a-2c860ca7d140",
- "type": "workflow_noop_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "dudley_price-3463",
- "name": "tenetur",
- "step_sequence": 1,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:31:14.730358Z",
- "started_at": "2026-10-08T01:25:59.148403Z",
- "finished_at": "2026-10-08T01:29:16.909654Z",
- "updated_at": "2026-10-08T01:31:14.735843Z",
- "child_execution_strategy": "sequential"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11922-d1a3-74ee-abfa-e6cb6cf84ad3",
- "type": "workflow_run"
}
}, - "children": {
- "data": [
- {
- "id": "01a11922-d1b8-7450-b6f6-6ab14faea120",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-d48a-7b7a-94c2-5764354d4295",
- "type": "workflow_change_step"
}, - {
- "id": "01a11922-d499-7d6a-93c3-06cf136724cd",
- "type": "workflow_wait_step"
}, - {
- "id": "01a11922-d522-7269-acaf-8bd8c4bfd140",
- "type": "workflow_workflow_step"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3/steps/01a11922-d1ab-78b0-b03a-2c860ca7d140",
- "log_lines": "/api/workflow_steps/01a11922-d1ab-78b0-b03a-2c860ca7d140/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3"
}
}, - {
- "id": "01a11922-d1b8-7450-b6f6-6ab14faea120",
- "type": "workflow_noop_step",
- "attributes": {
- "lock_version": 2,
- "created_by": "dudley_price-3463",
- "name": "facilis",
- "step_sequence": 1,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:21:01.298781Z",
- "started_at": "2026-10-08T01:22:01.298781Z",
- "finished_at": "2026-10-08T01:23:19.233555Z",
- "updated_at": "2026-10-08T01:31:15.088710Z",
- "child_execution_strategy": "sequential"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11922-d1a3-74ee-abfa-e6cb6cf84ad3",
- "type": "workflow_run"
}
}, - "children": {
- "data": [
- {
- "id": "01a11922-d340-7a85-960b-3955b52bc2b6",
- "type": "workflow_change_step"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3/steps/01a11922-d1b8-7450-b6f6-6ab14faea120",
- "log_lines": "/api/workflow_steps/01a11922-d1b8-7450-b6f6-6ab14faea120/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3/steps/01a11922-d1ab-78b0-b03a-2c860ca7d140",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3"
}
}, - {
- "id": "01a11922-d48a-7b7a-94c2-5764354d4295",
- "type": "workflow_change_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "dudley_price-3463",
- "name": "input",
- "step_sequence": 2,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:22:29.539656Z",
- "started_at": "2026-10-08T01:23:29.539656Z",
- "finished_at": "2026-10-08T01:24:55.349323Z",
- "updated_at": "2026-10-08T01:31:15.469728Z",
- "action": "input",
- "property_overrides": {
- "matrix": "synthesizing"
}
}, - "relationships": {
- "change": {
- "data": {
- "id": "01a11922-d474-70c7-9704-87877e98d0c7",
- "type": "change"
}
}, - "change_parent": {
- "data": {
- "id": "01a11922-d42d-75c4-b7c8-8f80d6db0368",
- "type": "asset"
}
}, - "action_template_version": {
- "data": {
- "id": "01a11922-d401-7bf5-9a32-462f8a3be00d",
- "type": "template_version"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11922-d1a3-74ee-abfa-e6cb6cf84ad3",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3/steps/01a11922-d48a-7b7a-94c2-5764354d4295",
- "log_lines": "/api/workflow_steps/01a11922-d48a-7b7a-94c2-5764354d4295/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3/steps/01a11922-d1ab-78b0-b03a-2c860ca7d140",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3"
}
}, - {
- "id": "01a11922-d499-7d6a-93c3-06cf136724cd",
- "type": "workflow_wait_step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": {
- "user_names": [
- "opschain"
]
}, - "lock_version": 1,
- "created_by": "dudley_price-3463",
- "name": "Approval",
- "step_sequence": 3,
- "status_code": "approved",
- "skip_requested": false,
- "created_at": "2026-10-08T01:21:56.171034Z",
- "started_at": "2026-10-08T01:22:56.171034Z",
- "finished_at": "2026-10-08T01:25:49.837452Z",
- "updated_at": "2026-10-08T01:31:15.485150Z"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11922-d1a3-74ee-abfa-e6cb6cf84ad3",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3/steps/01a11922-d499-7d6a-93c3-06cf136724cd",
- "log_lines": "/api/workflow_steps/01a11922-d499-7d6a-93c3-06cf136724cd/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3/steps/01a11922-d1ab-78b0-b03a-2c860ca7d140",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3"
}
}, - {
- "id": "01a11922-d522-7269-acaf-8bd8c4bfd140",
- "type": "workflow_workflow_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "dudley_price-3463",
- "name": "child workflow",
- "step_sequence": 4,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:21:08.743757Z",
- "started_at": "2026-10-08T01:22:08.743757Z",
- "finished_at": "2026-10-08T01:29:21.080216Z",
- "updated_at": "2026-10-08T01:31:15.620949Z",
- "code": "child"
}, - "relationships": {
- "child_workflow_version": {
- "data": {
- "id": "01a11922-d4f7-7be9-ae33-6f84250ffef7",
- "type": "workflow_version"
}
}, - "child_workflow_run": {
- "data": {
- "id": "01a11922-d514-7545-9674-fa5f23266d88",
- "type": "workflow_run"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11922-d1a3-74ee-abfa-e6cb6cf84ad3",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3/steps/01a11922-d522-7269-acaf-8bd8c4bfd140",
- "log_lines": "/api/workflow_steps/01a11922-d522-7269-acaf-8bd8c4bfd140/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3/steps/01a11922-d1ab-78b0-b03a-2c860ca7d140",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3"
}
}, - {
- "id": "01a11922-d340-7a85-960b-3955b52bc2b6",
- "type": "workflow_change_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "dudley_price-3463",
- "name": "copy",
- "step_sequence": 1,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:25:00.458660Z",
- "started_at": "2026-10-08T01:26:00.458660Z",
- "finished_at": "2026-10-08T01:27:13.737968Z",
- "updated_at": "2026-10-08T01:31:15.140351Z",
- "action": "copy",
- "property_overrides": {
- "alarm": "backing up"
}
}, - "relationships": {
- "change": {
- "data": {
- "id": "01a11922-d32a-7ab3-9311-9319aa3edaaa",
- "type": "change"
}
}, - "change_parent": {
- "data": {
- "id": "01a11922-d2d1-75ce-bdce-9c8d331c760b",
- "type": "asset"
}
}, - "action_template_version": {
- "data": {
- "id": "01a11922-d28c-7e4d-bd5f-1d8a31d50140",
- "type": "template_version"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11922-d1a3-74ee-abfa-e6cb6cf84ad3",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3/steps/01a11922-d340-7a85-960b-3955b52bc2b6",
- "log_lines": "/api/workflow_steps/01a11922-d340-7a85-960b-3955b52bc2b6/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3/steps/01a11922-d1b8-7450-b6f6-6ab14faea120",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-d1a3-74ee-abfa-e6cb6cf84ad3"
}
}
]
}Cancels a workflow run.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
| run_id required | string Example: 01a1191f-21a3-775e-ab9b-282712b0d799 workflow run id |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find WorkflowRun"
}
}
]
}Lists all workflow steps.
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[status_code_eq]=running API filtering guide. Named filters: |
| limit | integer [ 1 .. 1000 ] Default: 1000 Example: limit=50 Limit the number of workflow steps returned |
{- "data": [
- {
- "id": "01a11922-f330-7c8e-adec-6e2c06ed6ab8",
- "type": "workflow_noop_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "april-3621",
- "name": "dolore",
- "step_sequence": 1,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:31:23.311482Z",
- "started_at": "2026-10-08T01:26:12.542484Z",
- "finished_at": "2026-10-08T01:26:48.949240Z",
- "updated_at": "2026-10-08T01:31:23.316674Z",
- "child_execution_strategy": "sequential"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11922-f327-73a6-aa62-6209aac743e9",
- "type": "workflow_run"
}
}, - "children": {
- "data": [
- {
- "id": "01a11922-f33c-7e63-bdc4-cbbd459fabba",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11922-f68e-7e34-b1cc-bafb6e12a78a",
- "type": "workflow_change_step"
}, - {
- "id": "01a11922-f69d-7a09-b3a4-c71c01e446a3",
- "type": "workflow_wait_step"
}, - {
- "id": "01a11922-f734-7e12-9c31-730d9a103abb",
- "type": "workflow_workflow_step"
}, - {
- "id": "01a11922-f869-757e-b10e-c48e694e5b08",
- "type": "workflow_change_step"
}, - {
- "id": "01a11922-f876-76dc-a0f7-c257be7f6c2a",
- "type": "workflow_wait_step"
}, - {
- "id": "01a11922-f883-7fb7-8c31-2c125ac2b55b",
- "type": "workflow_workflow_step"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f330-7c8e-adec-6e2c06ed6ab8",
- "log_lines": "/api/workflow_steps/01a11922-f330-7c8e-adec-6e2c06ed6ab8/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9"
}
}, - {
- "id": "01a11922-f33c-7e63-bdc4-cbbd459fabba",
- "type": "workflow_noop_step",
- "attributes": {
- "lock_version": 2,
- "created_by": "april-3621",
- "name": "minus",
- "step_sequence": 1,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:23:56.358361Z",
- "started_at": "2026-10-08T01:24:56.358361Z",
- "finished_at": "2026-10-08T01:26:29.313058Z",
- "updated_at": "2026-10-08T01:31:23.743704Z",
- "child_execution_strategy": "sequential"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11922-f327-73a6-aa62-6209aac743e9",
- "type": "workflow_run"
}
}, - "children": {
- "data": [
- {
- "id": "01a11922-f517-7dbf-baad-2c82d17c00c6",
- "type": "workflow_change_step"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f33c-7e63-bdc4-cbbd459fabba",
- "log_lines": "/api/workflow_steps/01a11922-f33c-7e63-bdc4-cbbd459fabba/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f330-7c8e-adec-6e2c06ed6ab8",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9"
}
}, - {
- "id": "01a11922-f68e-7e34-b1cc-bafb6e12a78a",
- "type": "workflow_change_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "april-3621",
- "name": "compress",
- "step_sequence": 2,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:23:32.903063Z",
- "started_at": "2026-10-08T01:24:32.903063Z",
- "finished_at": "2026-10-08T01:27:06.452963Z",
- "updated_at": "2026-10-08T01:31:24.178166Z",
- "action": "compress",
- "property_overrides": {
- "sensor": "bypassing"
}
}, - "relationships": {
- "change": {
- "data": {
- "id": "01a11922-f672-7346-861b-d28680e11f79",
- "type": "change"
}
}, - "change_parent": {
- "data": {
- "id": "01a11922-f623-7cea-bc2f-29f3f9b9d3cf",
- "type": "asset"
}
}, - "action_template_version": {
- "data": {
- "id": "01a11922-f5e8-7cd5-8c45-4e131a6cad0f",
- "type": "template_version"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11922-f327-73a6-aa62-6209aac743e9",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f68e-7e34-b1cc-bafb6e12a78a",
- "log_lines": "/api/workflow_steps/01a11922-f68e-7e34-b1cc-bafb6e12a78a/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f330-7c8e-adec-6e2c06ed6ab8",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9"
}
}, - {
- "id": "01a11922-f69d-7a09-b3a4-c71c01e446a3",
- "type": "workflow_wait_step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": {
- "user_names": [
- "opschain"
]
}, - "lock_version": 1,
- "created_by": "april-3621",
- "name": "Approval",
- "step_sequence": 3,
- "status_code": "approved",
- "skip_requested": false,
- "created_at": "2026-10-08T01:25:11.320952Z",
- "started_at": "2026-10-08T01:26:11.320952Z",
- "finished_at": "2026-10-08T01:26:50.160289Z",
- "updated_at": "2026-10-08T01:31:24.193124Z"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11922-f327-73a6-aa62-6209aac743e9",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f69d-7a09-b3a4-c71c01e446a3",
- "log_lines": "/api/workflow_steps/01a11922-f69d-7a09-b3a4-c71c01e446a3/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f330-7c8e-adec-6e2c06ed6ab8",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9"
}
}, - {
- "id": "01a11922-f734-7e12-9c31-730d9a103abb",
- "type": "workflow_workflow_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "april-3621",
- "name": "child workflow",
- "step_sequence": 4,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:22:27.181993Z",
- "started_at": "2026-10-08T01:23:27.181993Z",
- "finished_at": "2026-10-08T01:24:08.613012Z",
- "updated_at": "2026-10-08T01:31:24.344280Z",
- "code": "child"
}, - "relationships": {
- "child_workflow_version": {
- "data": {
- "id": "01a11922-f704-7731-a4f6-5f280dc22c30",
- "type": "workflow_version"
}
}, - "child_workflow_run": {
- "data": {
- "id": "01a11922-f723-777f-a2fc-d1e5f18484bc",
- "type": "workflow_run"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11922-f327-73a6-aa62-6209aac743e9",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f734-7e12-9c31-730d9a103abb",
- "log_lines": "/api/workflow_steps/01a11922-f734-7e12-9c31-730d9a103abb/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f330-7c8e-adec-6e2c06ed6ab8",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9"
}
}, - {
- "id": "01a11922-f869-757e-b10e-c48e694e5b08",
- "type": "workflow_change_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "april-3621",
- "name": "connect",
- "step_sequence": 5,
- "status_code": "pending",
- "skip_requested": false,
- "created_at": "2026-10-08T01:31:24.646265Z",
- "started_at": null,
- "finished_at": null,
- "updated_at": "2026-10-08T01:31:24.652994Z",
- "action": "connect",
- "property_overrides": {
- "panel": "backing up"
}
}, - "relationships": {
- "change": {
- "data": null
}, - "change_parent": {
- "data": {
- "id": "01a11922-f827-73e4-ac5e-eedf96ebb400",
- "type": "asset"
}
}, - "action_template_version": {
- "data": {
- "id": "01a11922-f7f5-7e45-9009-5b3658f7809d",
- "type": "template_version"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11922-f327-73a6-aa62-6209aac743e9",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f869-757e-b10e-c48e694e5b08",
- "log_lines": "/api/workflow_steps/01a11922-f869-757e-b10e-c48e694e5b08/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f330-7c8e-adec-6e2c06ed6ab8",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9"
}
}, - {
- "id": "01a11922-f876-76dc-a0f7-c257be7f6c2a",
- "type": "workflow_wait_step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": null,
- "lock_version": 1,
- "created_by": "april-3621",
- "name": "Wait",
- "step_sequence": 6,
- "status_code": "continued",
- "skip_requested": false,
- "created_at": "2026-10-08T01:24:20.098172Z",
- "started_at": "2026-10-08T01:25:20.098172Z",
- "finished_at": "2026-10-08T01:26:25.091568Z",
- "updated_at": "2026-10-08T01:31:24.666045Z"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11922-f327-73a6-aa62-6209aac743e9",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f876-76dc-a0f7-c257be7f6c2a",
- "log_lines": "/api/workflow_steps/01a11922-f876-76dc-a0f7-c257be7f6c2a/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f330-7c8e-adec-6e2c06ed6ab8",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9"
}
}, - {
- "id": "01a11922-f883-7fb7-8c31-2c125ac2b55b",
- "type": "workflow_workflow_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "april-3621",
- "name": "child workflow",
- "step_sequence": 7,
- "status_code": "pending",
- "skip_requested": false,
- "created_at": "2026-10-08T01:31:24.673371Z",
- "started_at": null,
- "finished_at": null,
- "updated_at": "2026-10-08T01:31:24.679180Z",
- "code": "child"
}, - "relationships": {
- "child_workflow_version": {
- "data": {
- "id": "01a11922-f704-7731-a4f6-5f280dc22c30",
- "type": "workflow_version"
}
}, - "child_workflow_run": {
- "data": null
}, - "workflow_run": {
- "data": {
- "id": "01a11922-f327-73a6-aa62-6209aac743e9",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f883-7fb7-8c31-2c125ac2b55b",
- "log_lines": "/api/workflow_steps/01a11922-f883-7fb7-8c31-2c125ac2b55b/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f330-7c8e-adec-6e2c06ed6ab8",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9"
}
}, - {
- "id": "01a11922-f517-7dbf-baad-2c82d17c00c6",
- "type": "workflow_change_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "april-3621",
- "name": "back_up",
- "step_sequence": 1,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:21:42.380933Z",
- "started_at": "2026-10-08T01:22:42.380933Z",
- "finished_at": "2026-10-08T01:28:08.391287Z",
- "updated_at": "2026-10-08T01:31:23.803891Z",
- "action": "back_up",
- "property_overrides": {
- "program": "generating"
}
}, - "relationships": {
- "change": {
- "data": {
- "id": "01a11922-f4f7-7d39-86ea-02b1fbf6b956",
- "type": "change"
}
}, - "change_parent": {
- "data": {
- "id": "01a11922-f4a0-74cf-9d6b-40d418f5c48e",
- "type": "asset"
}
}, - "action_template_version": {
- "data": {
- "id": "01a11922-f46e-7d3c-8430-e4193bad469e",
- "type": "template_version"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11922-f327-73a6-aa62-6209aac743e9",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f517-7dbf-baad-2c82d17c00c6",
- "log_lines": "/api/workflow_steps/01a11922-f517-7dbf-baad-2c82d17c00c6/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9/steps/01a11922-f33c-7e63-bdc4-cbbd459fabba",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11922-f327-73a6-aa62-6209aac743e9"
}
}, - {
- "id": "01a11922-f72d-7865-b603-09daab699d10",
- "type": "workflow_noop_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "glennie-3638",
- "name": "aut",
- "step_sequence": 1,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:31:24.332559Z",
- "started_at": "2026-10-08T01:23:06.738493Z",
- "finished_at": "2026-10-08T01:27:01.162420Z",
- "updated_at": "2026-10-08T01:31:24.337289Z",
- "child_execution_strategy": "sequential"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11922-f723-777f-a2fc-d1e5f18484bc",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/uitzx/workflows/child/runs/01a11922-f723-777f-a2fc-d1e5f18484bc/steps/01a11922-f72d-7865-b603-09daab699d10",
- "log_lines": "/api/workflow_steps/01a11922-f72d-7865-b603-09daab699d10/log_lines",
- "parent": "/api/projects/uitzx/workflows/child/runs/01a11922-f723-777f-a2fc-d1e5f18484bc",
- "workflow_run": "/api/projects/uitzx/workflows/child/runs/01a11922-f723-777f-a2fc-d1e5f18484bc"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "execute": true
}, - "partial_response": false
}
}Shows a workflow step.
| step_id required | string Example: 01a1191f-2973-736c-b31a-20457f415adf workflow step id |
{- "data": {
- "id": "01a1191f-2973-736c-b31a-20457f415adf",
- "type": "workflow_change_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "lavone.stehr-130",
- "name": "program",
- "step_sequence": 5,
- "status_code": "pending",
- "skip_requested": false,
- "created_at": "2026-10-08T01:27:15.056033Z",
- "started_at": null,
- "finished_at": null,
- "updated_at": "2026-10-08T01:27:15.063165Z",
- "action": "program",
- "property_overrides": {
- "protocol": "calculating"
}
}, - "relationships": {
- "change": {
- "data": null
}, - "change_parent": {
- "data": {
- "id": "01a1191f-2934-71bb-accf-c72eb69e94d1",
- "type": "asset"
}
}, - "action_template_version": {
- "data": {
- "id": "01a1191f-2909-7ac2-b2e1-e15ad9389080",
- "type": "template_version"
}
}, - "workflow_run": {
- "data": {
- "id": "01a1191f-21a3-775e-ab9b-282712b0d799",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a1191f-21a3-775e-ab9b-282712b0d799/steps/01a1191f-2973-736c-b31a-20457f415adf",
- "log_lines": "/api/workflow_steps/01a1191f-2973-736c-b31a-20457f415adf/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a1191f-21a3-775e-ab9b-282712b0d799/steps/01a1191f-21c1-7924-af03-2ee1a1f32420",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a1191f-21a3-775e-ab9b-282712b0d799"
}
}
}Continues a "waiting" workflow step. To approve/reject a workflow step that needs approval see the approve workflow step API endpoint.
| step_id required | string Example: 01a1191f-29c4-7757-b4dc-b823aedd0990 workflow step id |
object |
{- "data": {
- "attributes": {
- "message": "Done sanity checks. Ok to continue."
}
}
}{- "data": {
- "id": "01a11923-0eb5-778f-95ce-81bbff6aa9b5",
- "type": "workflow_wait_step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [
- {
- "username": "logged_in_user",
- "message": null,
- "date": "2026-10-08T01:31:30Z"
}
], - "requires_approval_from": null,
- "lock_version": 3,
- "created_by": "corrinne.zemlak-3720",
- "name": "Wait",
- "step_sequence": 8,
- "status_code": "continued",
- "skip_requested": false,
- "created_at": "2026-10-08T01:21:56.953731Z",
- "started_at": "2026-10-08T01:22:56.953731Z",
- "finished_at": "2026-10-08T01:31:30.391331Z",
- "updated_at": "2026-10-08T01:31:30.422442Z"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11923-0990-766a-9995-44cf99b94725",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-0990-766a-9995-44cf99b94725/steps/01a11923-0eb5-778f-95ce-81bbff6aa9b5",
- "log_lines": "/api/workflow_steps/01a11923-0eb5-778f-95ce-81bbff6aa9b5/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-0990-766a-9995-44cf99b94725/steps/01a11923-0999-751e-bdb9-cb457f9c5a3c",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-0990-766a-9995-44cf99b94725"
}
}
}Approve a workflow step that requires approval. To continue a workflow step that does need approval see the continue workflow step API endpoint
| step_id required | string Example: 01a1191f-29de-796c-82aa-db835526be1b workflow step id |
object |
{- "data": {
- "attributes": {
- "message": "Ok to proceed."
}
}
}{- "data": {
- "id": "01a11923-247e-7235-8cb5-5981da56128e",
- "type": "workflow_wait_step",
- "attributes": {
- "approved_by": [
- {
- "username": "logged_in_user",
- "message": null,
- "date": "2026-10-08T01:31:35Z"
}
], - "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": {
- "ldap_groups": [
- "an-ldap-group"
]
}, - "lock_version": 3,
- "created_by": "felicidad_huel-3819",
- "name": "Approval",
- "step_sequence": 8,
- "status_code": "approved",
- "skip_requested": false,
- "created_at": "2026-10-08T01:25:07.457238Z",
- "started_at": "2026-10-08T01:26:07.457238Z",
- "finished_at": "2026-10-08T01:31:35.964862Z",
- "updated_at": "2026-10-08T01:31:35.989975Z"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11923-1f83-7ddb-ab58-758cc1385cdb",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-1f83-7ddb-ab58-758cc1385cdb/steps/01a11923-247e-7235-8cb5-5981da56128e",
- "log_lines": "/api/workflow_steps/01a11923-247e-7235-8cb5-5981da56128e/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-1f83-7ddb-ab58-758cc1385cdb/steps/01a11923-1f8b-781d-83dc-6724fbbde663",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-1f83-7ddb-ab58-758cc1385cdb"
}
}
}Reject a workflow step that requires approval.
| step_id required | string Example: 01a1191f-298c-7567-b248-78ef30df95d0 workflow step id |
object |
{- "data": {
- "attributes": {
- "message": "Ok to proceed."
}
}
}{- "data": {
- "id": "01a11923-4191-75be-9b0c-5d2306383cd6",
- "type": "workflow_wait_step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [
- {
- "username": "logged_in_user",
- "message": null,
- "date": "2026-10-08T01:31:43Z"
}
], - "continued_by": [ ],
- "requires_approval_from": {
- "ldap_groups": [
- "an-ldap-group"
]
}, - "lock_version": 3,
- "created_by": "rudy-3951",
- "name": "Approval",
- "step_sequence": 8,
- "status_code": "rejected",
- "skip_requested": false,
- "created_at": "2026-10-08T01:25:05.417470Z",
- "started_at": "2026-10-08T01:26:05.417470Z",
- "finished_at": "2026-10-08T01:31:43.405116Z",
- "updated_at": "2026-10-08T01:31:43.413871Z"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11923-3ca6-7d5e-a506-dbf4c64022fd",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-3ca6-7d5e-a506-dbf4c64022fd/steps/01a11923-4191-75be-9b0c-5d2306383cd6",
- "log_lines": "/api/workflow_steps/01a11923-4191-75be-9b0c-5d2306383cd6/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-3ca6-7d5e-a506-dbf4c64022fd/steps/01a11923-3caf-766a-b24a-9da86ad3f0bc",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-3ca6-7d5e-a506-dbf4c64022fd"
}
}
}Lists all steps in a workflow run.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
| run_id required | string Example: 01a1191f-21a3-775e-ab9b-282712b0d799 workflow run id |
| limit | integer [ 1 .. 1000 ] Default: 1000 Example: limit=50 Limit the number of workflow steps returned |
{- "data": [
- {
- "id": "01a11923-59a2-7359-a1c6-2114f60c7763",
- "type": "workflow_noop_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "adina-4083",
- "name": "hic",
- "step_sequence": 1,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:31:49.537006Z",
- "started_at": "2026-10-08T01:24:42.066219Z",
- "finished_at": "2026-10-08T01:26:57.392295Z",
- "updated_at": "2026-10-08T01:31:49.543665Z",
- "child_execution_strategy": "sequential"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11923-5999-7afc-8e1e-7e4f12bad1fe",
- "type": "workflow_run"
}
}, - "children": {
- "data": [
- {
- "id": "01a11923-59b0-72db-b243-d1800d48f958",
- "type": "workflow_noop_step"
}, - {
- "id": "01a11923-5cad-79b4-9b4b-e724e153a1fc",
- "type": "workflow_change_step"
}, - {
- "id": "01a11923-5cbf-7d85-a7e7-1a01e4a3a060",
- "type": "workflow_wait_step"
}, - {
- "id": "01a11923-5d68-7245-b658-0ad2e0040fbb",
- "type": "workflow_workflow_step"
}, - {
- "id": "01a11923-5e91-7075-bbb5-72345b12d041",
- "type": "workflow_change_step"
}, - {
- "id": "01a11923-5e9d-7d8f-9824-d58176e61844",
- "type": "workflow_wait_step"
}, - {
- "id": "01a11923-5eaa-7c12-a049-c2f5e3a06e93",
- "type": "workflow_workflow_step"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-59a2-7359-a1c6-2114f60c7763",
- "log_lines": "/api/workflow_steps/01a11923-59a2-7359-a1c6-2114f60c7763/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe"
}
}, - {
- "id": "01a11923-59b0-72db-b243-d1800d48f958",
- "type": "workflow_noop_step",
- "attributes": {
- "lock_version": 2,
- "created_by": "adina-4083",
- "name": "et",
- "step_sequence": 1,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:24:04.759941Z",
- "started_at": "2026-10-08T01:25:04.759941Z",
- "finished_at": "2026-10-08T01:27:06.498756Z",
- "updated_at": "2026-10-08T01:31:49.908137Z",
- "child_execution_strategy": "sequential"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11923-5999-7afc-8e1e-7e4f12bad1fe",
- "type": "workflow_run"
}
}, - "children": {
- "data": [
- {
- "id": "01a11923-5b47-72b3-a78c-8c9eec9a98fa",
- "type": "workflow_change_step"
}
]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-59b0-72db-b243-d1800d48f958",
- "log_lines": "/api/workflow_steps/01a11923-59b0-72db-b243-d1800d48f958/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-59a2-7359-a1c6-2114f60c7763",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe"
}
}, - {
- "id": "01a11923-5cad-79b4-9b4b-e724e153a1fc",
- "type": "workflow_change_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "adina-4083",
- "name": "copy",
- "step_sequence": 2,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:21:40.655244Z",
- "started_at": "2026-10-08T01:22:40.655244Z",
- "finished_at": "2026-10-08T01:28:14.531396Z",
- "updated_at": "2026-10-08T01:31:50.321590Z",
- "action": "copy",
- "property_overrides": {
- "bandwidth": "overriding"
}
}, - "relationships": {
- "change": {
- "data": {
- "id": "01a11923-5c93-7868-9ce8-eaf97a613277",
- "type": "change"
}
}, - "change_parent": {
- "data": {
- "id": "01a11923-5c45-765f-b2b7-e05c4acd4228",
- "type": "asset"
}
}, - "action_template_version": {
- "data": {
- "id": "01a11923-5c18-71d4-8d59-9c0126180756",
- "type": "template_version"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11923-5999-7afc-8e1e-7e4f12bad1fe",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-5cad-79b4-9b4b-e724e153a1fc",
- "log_lines": "/api/workflow_steps/01a11923-5cad-79b4-9b4b-e724e153a1fc/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-59a2-7359-a1c6-2114f60c7763",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe"
}
}, - {
- "id": "01a11923-5cbf-7d85-a7e7-1a01e4a3a060",
- "type": "workflow_wait_step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": {
- "user_names": [
- "opschain"
]
}, - "lock_version": 1,
- "created_by": "adina-4083",
- "name": "Approval",
- "step_sequence": 3,
- "status_code": "approved",
- "skip_requested": false,
- "created_at": "2026-10-08T01:25:41.308429Z",
- "started_at": "2026-10-08T01:26:41.308429Z",
- "finished_at": "2026-10-08T01:29:19.367932Z",
- "updated_at": "2026-10-08T01:31:50.339091Z"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11923-5999-7afc-8e1e-7e4f12bad1fe",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-5cbf-7d85-a7e7-1a01e4a3a060",
- "log_lines": "/api/workflow_steps/01a11923-5cbf-7d85-a7e7-1a01e4a3a060/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-59a2-7359-a1c6-2114f60c7763",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe"
}
}, - {
- "id": "01a11923-5d68-7245-b658-0ad2e0040fbb",
- "type": "workflow_workflow_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "adina-4083",
- "name": "child workflow",
- "step_sequence": 4,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:21:45.790769Z",
- "started_at": "2026-10-08T01:22:45.790769Z",
- "finished_at": "2026-10-08T01:26:54.027447Z",
- "updated_at": "2026-10-08T01:31:50.507983Z",
- "code": "child"
}, - "relationships": {
- "child_workflow_version": {
- "data": {
- "id": "01a11923-5d2f-7cc7-8e35-fdbd1380f096",
- "type": "workflow_version"
}
}, - "child_workflow_run": {
- "data": {
- "id": "01a11923-5d55-785b-af85-9388cbfc0c6f",
- "type": "workflow_run"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11923-5999-7afc-8e1e-7e4f12bad1fe",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-5d68-7245-b658-0ad2e0040fbb",
- "log_lines": "/api/workflow_steps/01a11923-5d68-7245-b658-0ad2e0040fbb/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-59a2-7359-a1c6-2114f60c7763",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe"
}
}, - {
- "id": "01a11923-5e91-7075-bbb5-72345b12d041",
- "type": "workflow_change_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "adina-4083",
- "name": "connect",
- "step_sequence": 5,
- "status_code": "pending",
- "skip_requested": false,
- "created_at": "2026-10-08T01:31:50.797597Z",
- "started_at": null,
- "finished_at": null,
- "updated_at": "2026-10-08T01:31:50.804895Z",
- "action": "connect",
- "property_overrides": {
- "firewall": "overriding"
}
}, - "relationships": {
- "change": {
- "data": null
}, - "change_parent": {
- "data": {
- "id": "01a11923-5e51-7653-9bfc-b5b652410d98",
- "type": "asset"
}
}, - "action_template_version": {
- "data": {
- "id": "01a11923-5e26-7381-a614-bbcaf48e311c",
- "type": "template_version"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11923-5999-7afc-8e1e-7e4f12bad1fe",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-5e91-7075-bbb5-72345b12d041",
- "log_lines": "/api/workflow_steps/01a11923-5e91-7075-bbb5-72345b12d041/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-59a2-7359-a1c6-2114f60c7763",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe"
}
}, - {
- "id": "01a11923-5e9d-7d8f-9824-d58176e61844",
- "type": "workflow_wait_step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": null,
- "lock_version": 1,
- "created_by": "adina-4083",
- "name": "Wait",
- "step_sequence": 6,
- "status_code": "continued",
- "skip_requested": false,
- "created_at": "2026-10-08T01:22:54.009561Z",
- "started_at": "2026-10-08T01:23:54.009561Z",
- "finished_at": "2026-10-08T01:30:39.033408Z",
- "updated_at": "2026-10-08T01:31:50.816893Z"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11923-5999-7afc-8e1e-7e4f12bad1fe",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-5e9d-7d8f-9824-d58176e61844",
- "log_lines": "/api/workflow_steps/01a11923-5e9d-7d8f-9824-d58176e61844/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-59a2-7359-a1c6-2114f60c7763",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe"
}
}, - {
- "id": "01a11923-5eaa-7c12-a049-c2f5e3a06e93",
- "type": "workflow_workflow_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "adina-4083",
- "name": "child workflow",
- "step_sequence": 7,
- "status_code": "pending",
- "skip_requested": false,
- "created_at": "2026-10-08T01:31:50.824071Z",
- "started_at": null,
- "finished_at": null,
- "updated_at": "2026-10-08T01:31:50.830076Z",
- "code": "child"
}, - "relationships": {
- "child_workflow_version": {
- "data": {
- "id": "01a11923-5d2f-7cc7-8e35-fdbd1380f096",
- "type": "workflow_version"
}
}, - "child_workflow_run": {
- "data": null
}, - "workflow_run": {
- "data": {
- "id": "01a11923-5999-7afc-8e1e-7e4f12bad1fe",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-5eaa-7c12-a049-c2f5e3a06e93",
- "log_lines": "/api/workflow_steps/01a11923-5eaa-7c12-a049-c2f5e3a06e93/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-59a2-7359-a1c6-2114f60c7763",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe"
}
}, - {
- "id": "01a11923-5b47-72b3-a78c-8c9eec9a98fa",
- "type": "workflow_change_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "adina-4083",
- "name": "program",
- "step_sequence": 1,
- "status_code": "success",
- "skip_requested": false,
- "created_at": "2026-10-08T01:23:34.768892Z",
- "started_at": "2026-10-08T01:24:34.768892Z",
- "finished_at": "2026-10-08T01:24:40.526469Z",
- "updated_at": "2026-10-08T01:31:49.963541Z",
- "action": "program",
- "property_overrides": {
- "interface": "connecting"
}
}, - "relationships": {
- "change": {
- "data": {
- "id": "01a11923-5b2c-76a8-81a6-92c334d3ecb0",
- "type": "change"
}
}, - "change_parent": {
- "data": {
- "id": "01a11923-5ad2-7516-a889-5292fffa90fe",
- "type": "asset"
}
}, - "action_template_version": {
- "data": {
- "id": "01a11923-5a93-768d-b22d-26d4233e3c19",
- "type": "template_version"
}
}, - "workflow_run": {
- "data": {
- "id": "01a11923-5999-7afc-8e1e-7e4f12bad1fe",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-5b47-72b3-a78c-8c9eec9a98fa",
- "log_lines": "/api/workflow_steps/01a11923-5b47-72b3-a78c-8c9eec9a98fa/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe/steps/01a11923-59b0-72db-b243-d1800d48f958",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-5999-7afc-8e1e-7e4f12bad1fe"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "execute": true
}, - "partial_response": false
}
}Shows a step of a workflow run.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
| run_id required | string Example: 01a1191f-21a3-775e-ab9b-282712b0d799 workflow run id |
| step_id required | string Example: 01a1191f-2973-736c-b31a-20457f415adf workflow step id |
{- "data": {
- "id": "01a1191f-2973-736c-b31a-20457f415adf",
- "type": "workflow_change_step",
- "attributes": {
- "lock_version": 1,
- "created_by": "lavone.stehr-130",
- "name": "program",
- "step_sequence": 5,
- "status_code": "pending",
- "skip_requested": false,
- "created_at": "2026-10-08T01:27:15.056033Z",
- "started_at": null,
- "finished_at": null,
- "updated_at": "2026-10-08T01:27:15.063165Z",
- "action": "program",
- "property_overrides": {
- "protocol": "calculating"
}
}, - "relationships": {
- "change": {
- "data": null
}, - "change_parent": {
- "data": {
- "id": "01a1191f-2934-71bb-accf-c72eb69e94d1",
- "type": "asset"
}
}, - "action_template_version": {
- "data": {
- "id": "01a1191f-2909-7ac2-b2e1-e15ad9389080",
- "type": "template_version"
}
}, - "workflow_run": {
- "data": {
- "id": "01a1191f-21a3-775e-ab9b-282712b0d799",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a1191f-21a3-775e-ab9b-282712b0d799/steps/01a1191f-2973-736c-b31a-20457f415adf",
- "log_lines": "/api/workflow_steps/01a1191f-2973-736c-b31a-20457f415adf/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a1191f-21a3-775e-ab9b-282712b0d799/steps/01a1191f-21c1-7924-af03-2ee1a1f32420",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a1191f-21a3-775e-ab9b-282712b0d799"
}
}
}Continues a "waiting" workflow step. To approve/reject a workflow step that needs approval see the approve workflow step API endpoint.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
| run_id required | string Example: 01a1191f-21a3-775e-ab9b-282712b0d799 workflow run id |
| step_id required | string Example: 01a1191f-29c4-7757-b4dc-b823aedd0990 workflow step id |
object |
{- "data": {
- "attributes": {
- "message": "Done sanity checks. Ok to continue."
}
}
}{- "data": {
- "id": "01a11923-81df-7be0-9a69-9484204b3195",
- "type": "workflow_wait_step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [ ],
- "continued_by": [
- {
- "username": "logged_in_user",
- "message": null,
- "date": "2026-10-08T01:31:59Z"
}
], - "requires_approval_from": null,
- "lock_version": 3,
- "created_by": "jermaine.zemlak-4250",
- "name": "Wait",
- "step_sequence": 8,
- "status_code": "continued",
- "skip_requested": false,
- "created_at": "2026-10-08T01:25:59.294563Z",
- "started_at": "2026-10-08T01:26:59.294563Z",
- "finished_at": "2026-10-08T01:31:59.874089Z",
- "updated_at": "2026-10-08T01:31:59.892499Z"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11923-7cfe-7424-98c6-fa0b163c1d0a",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-7cfe-7424-98c6-fa0b163c1d0a/steps/01a11923-81df-7be0-9a69-9484204b3195",
- "log_lines": "/api/workflow_steps/01a11923-81df-7be0-9a69-9484204b3195/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-7cfe-7424-98c6-fa0b163c1d0a/steps/01a11923-7d06-7f4d-9634-102dffe45d8a",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-7cfe-7424-98c6-fa0b163c1d0a"
}
}
}Approve a workflow step that requires approval. To continue a workflow step that does need approval see the continue workflow step API endpoint
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
| run_id required | string Example: 01a1191f-21a3-775e-ab9b-282712b0d799 workflow run id |
| step_id required | string Example: 01a1191f-29de-796c-82aa-db835526be1b workflow step id |
object |
{- "data": {
- "attributes": {
- "message": "Ok to proceed."
}
}
}{- "data": {
- "id": "01a11923-97f5-703a-a011-fcd1adc81527",
- "type": "workflow_wait_step",
- "attributes": {
- "approved_by": [
- {
- "username": "logged_in_user",
- "message": null,
- "date": "2026-10-08T01:32:05Z"
}
], - "rejected_by": [ ],
- "continued_by": [ ],
- "requires_approval_from": {
- "ldap_groups": [
- "an-ldap-group"
]
}, - "lock_version": 3,
- "created_by": "melba.schuster-4349",
- "name": "Approval",
- "step_sequence": 8,
- "status_code": "approved",
- "skip_requested": false,
- "created_at": "2026-10-08T01:23:47.105272Z",
- "started_at": "2026-10-08T01:24:47.105272Z",
- "finished_at": "2026-10-08T01:32:05.537615Z",
- "updated_at": "2026-10-08T01:32:05.559856Z"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11923-9269-773c-a97e-a5c49454c61a",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-9269-773c-a97e-a5c49454c61a/steps/01a11923-97f5-703a-a011-fcd1adc81527",
- "log_lines": "/api/workflow_steps/01a11923-97f5-703a-a011-fcd1adc81527/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-9269-773c-a97e-a5c49454c61a/steps/01a11923-9270-7d49-9e20-069dfeb27933",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-9269-773c-a97e-a5c49454c61a"
}
}
}Reject a workflow step that requires approval.
| project_code required | string Example: opc project code |
| workflow_code required | string Example: assets workflow code |
| run_id required | string Example: 01a1191f-21a3-775e-ab9b-282712b0d799 workflow run id |
| step_id required | string Example: 01a1191f-298c-7567-b248-78ef30df95d0 workflow step id |
object |
{- "data": {
- "attributes": {
- "message": "Ok to proceed."
}
}
}{- "data": {
- "id": "01a11923-bc1a-70be-9865-a911015a4069",
- "type": "workflow_wait_step",
- "attributes": {
- "approved_by": [ ],
- "rejected_by": [
- {
- "username": "logged_in_user",
- "message": null,
- "date": "2026-10-08T01:32:14Z"
}
], - "continued_by": [ ],
- "requires_approval_from": {
- "ldap_groups": [
- "an-ldap-group"
]
}, - "lock_version": 3,
- "created_by": "fritz_stracke-4481",
- "name": "Approval",
- "step_sequence": 8,
- "status_code": "rejected",
- "skip_requested": false,
- "created_at": "2026-10-08T01:23:53.222912Z",
- "started_at": "2026-10-08T01:24:53.222912Z",
- "finished_at": "2026-10-08T01:32:14.804724Z",
- "updated_at": "2026-10-08T01:32:14.814170Z"
}, - "relationships": {
- "workflow_run": {
- "data": {
- "id": "01a11923-b661-7ba8-a56c-0b05809cec18",
- "type": "workflow_run"
}
}, - "children": {
- "data": [ ]
}
}, - "links": {
- "self": "/api/projects/opc/workflows/assets/runs/01a11923-b661-7ba8-a56c-0b05809cec18/steps/01a11923-bc1a-70be-9865-a911015a4069",
- "log_lines": "/api/workflow_steps/01a11923-bc1a-70be-9865-a911015a4069/log_lines",
- "parent": "/api/projects/opc/workflows/assets/runs/01a11923-b661-7ba8-a56c-0b05809cec18/steps/01a11923-b66b-752f-9f84-be1b1b2f2bcc",
- "workflow_run": "/api/projects/opc/workflows/assets/runs/01a11923-b661-7ba8-a56c-0b05809cec18"
}
}
}Endpoints to interact with events.
Lists all events.
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[query_param_code_eq]=opc API filtering guide. Named filters: |
| limit | integer [ 1 .. 1000 ] Default: 10 Example: limit=50 Limit the number of events returned |
{- "data": [
- {
- "id": "01a11920-a15d-744b-a3fd-9ce51ba415c0",
- "type": "event",
- "attributes": {
- "nested": {
- "key": "nested value"
}, - "any_key": "with a value",
- "another_key": "with a different value",
- "username": "stacey",
- "system": false,
- "type": "my custom event",
- "event_node_path": "/projects/opc",
- "created_at": "2026-10-08T01:28:51.292308Z"
}, - "relationships": {
- "source": {
- "links": {
- "source": "/api/projects/opc"
}, - "data": {
- "id": "01a11920-a13c-7faf-a59a-948f6dc5d671",
- "type": "project"
}
}
}, - "links": {
- "self": "/api/events/01a11920-a15d-744b-a3fd-9ce51ba415c0"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}Creates an event.
required | object |
{- "data": {
- "attributes": {
- "type": "custom event",
- "any_key": "with a value",
- "another_key": "with a different value",
- "nested": {
- "key": "nested value"
}
}
}
}{- "data": {
- "id": "01a11920-a23b-7f84-a0b0-7e121e2d3063",
- "type": "event",
- "attributes": {
- "some": "event data",
- "username": "logged_in_user",
- "system": false,
- "type": "my event",
- "event_node_path": null,
- "created_at": "2026-10-08T01:28:51.515040Z"
}, - "relationships": {
- "source": {
- "links": {
- "source": null
}
}
}, - "links": {
- "self": "/api/events/01a11920-a23b-7f84-a0b0-7e121e2d3063"
}
}
}Shows an event.
| event_id required | string Example: 01a1191f-1a9d-774e-bcf2-b14320a2e03e event id |
{- "data": {
- "id": "01a11920-a4ce-7727-8392-48c80834ccde",
- "type": "event",
- "attributes": {
- "nested": {
- "key": "nested value"
}, - "any_key": "with a value",
- "another_key": "with a different value",
- "username": "megan",
- "system": false,
- "type": "my custom event",
- "event_node_path": "/projects/opc",
- "created_at": "2026-10-08T01:28:52.173275Z"
}, - "relationships": {
- "source": {
- "links": {
- "source": "/api/projects/opc"
}, - "data": {
- "id": "01a11920-a4b5-7dce-9a30-82e64b3b03c2",
- "type": "project"
}
}
}, - "links": {
- "self": "/api/events/01a11920-a4ce-7727-8392-48c80834ccde"
}
}
}Lists all event filters.
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[code_eq]=changes_success API filtering guide. Named filters: |
{- "data": [
- {
- "id": "01a11920-93c3-783f-b0a4-2585c4600380",
- "type": "event_filter",
- "attributes": {
- "rules": {
- "event_rules": [
- [
- "event_node_path",
- "eq",
- "/projects/opc/environments/dev"
], - [
- "system",
- "true",
- 1
], - [
- "type",
- "eq",
- "api:changes:success"
]
], - "source_rules": [ ]
}, - "code": "change_success",
- "description": "Filter for successful changes in dev",
- "created_by": "opschain",
- "created_at": "2026-10-08T01:28:47.810490Z",
- "updated_at": "2026-10-08T01:28:47.810490Z"
}, - "links": {
- "self": "/api/event_filters/change_success",
- "subscribers": "/api/event_filters/change_success/event_subscribers"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Create an event filter.
required | object |
{- "data": {
- "attributes": {
- "code": "change_success",
- "description": "Filter for successful changes in dev",
- "rules": {
- "event_rules": [
- {
- "attribute": "type",
- "predicate": "eq",
- "value": "api:changes:success"
}, - {
- "attribute": "system",
- "predicate": "true"
}, - {
- "attribute": "event_node_path",
- "predicate": "eq",
- "value": "/projects/demo/environments/dev"
}
], - "source_rules": [
- {
- "attribute": "action",
- "predicate": "eq",
- "value": "default"
}
]
}
}
}
}{- "data": {
- "id": "01a11920-96fb-7f8f-b679-b8ddf51025d9",
- "type": "event_filter",
- "attributes": {
- "rules": {
- "event_rules": [
- [
- "event_node_path",
- "eq",
- "/projects/demo/environments/dev"
], - [
- "system",
- "true",
- 1
], - [
- "type",
- "eq",
- "api:changes:success"
]
], - "source_rules": [
- [
- "action",
- "eq",
- "default"
]
]
}, - "code": "852it",
- "description": "Omnis consequatur ut perferendis.",
- "created_by": "logged_in_user",
- "created_at": "2026-10-08T01:28:48.634954Z",
- "updated_at": "2026-10-08T01:28:48.634954Z"
}, - "links": {
- "self": "/api/event_filters/852it",
- "subscribers": "/api/event_filters/852it/event_subscribers"
}
}
}Show an event filter.
| event_filter_code required | string Example: change_success event filter code |
{- "data": {
- "id": "01a11920-9b55-74ff-bee0-6c2e7b4982c9",
- "type": "event_filter",
- "attributes": {
- "rules": {
- "event_rules": [
- [
- "event_node_path",
- "eq",
- "/projects/opc/environments/dev"
], - [
- "system",
- "true",
- 1
], - [
- "type",
- "eq",
- "api:changes:success"
]
], - "source_rules": [ ]
}, - "code": "change_success",
- "description": "Filter for successful changes in dev",
- "created_by": "opschain",
- "created_at": "2026-10-08T01:28:49.748638Z",
- "updated_at": "2026-10-08T01:28:49.748638Z"
}, - "links": {
- "self": "/api/event_filters/change_success",
- "subscribers": "/api/event_filters/change_success/event_subscribers"
}
}
}Update an event filter.
| event_filter_code required | string Example: change_success event filter code |
required | object |
{- "data": {
- "attributes": {
- "rules": {
- "event_rules": [
- {
- "attribute": "type",
- "predicate": "eq",
- "value": "api:changes:error"
}
], - "source_rules": [
- {
- "attribute": "action",
- "predicate": "eq",
- "value": "hello_world"
}
]
}, - "description": "hello world errors filter"
}
}
}{- "data": {
- "id": "01a11920-9d44-755d-996e-f882fe03cb76",
- "type": "event_filter",
- "attributes": {
- "rules": {
- "event_rules": [
- [
- "type",
- "eq",
- "api:changes:error"
]
], - "source_rules": [
- [
- "action",
- "eq",
- "hello_world"
]
]
}, - "code": "change_success",
- "description": "hello world errors filter",
- "created_by": "opschain",
- "created_at": "2026-10-08T01:28:50.243444Z",
- "updated_at": "2026-10-08T01:28:50.259419Z"
}, - "links": {
- "self": "/api/event_filters/change_success",
- "subscribers": "/api/event_filters/change_success/event_subscribers"
}
}
}Delete an event filter.
| event_filter_code required | string Example: change_success event filter code |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find EventFilter"
}
}
]
}Lists all event subscribers.
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[enabled_eq]=true API filtering guide. Named filters: |
{- "data": [
- {
- "id": "01a11920-a6d0-7659-8bc8-c10687336cff",
- "type": "event_subscriber",
- "attributes": {
- "channel_kwargs": { },
- "enabled": true,
- "created_by": "olga.littel-1479",
- "created_at": "2026-10-08T01:28:52.687567Z",
- "updated_at": "2026-10-08T01:28:52.687567Z"
}, - "relationships": {
- "event_filter": {
- "data": {
- "id": "01a11920-a681-761b-8318-b1163a370857",
- "type": "event_filter"
}, - "links": {
- "related": "/api/event_filters/change_success"
}
}, - "notification_channel": {
- "data": {
- "id": "01a11920-a6c9-77f3-9b46-82034b6fe69a",
- "type": "notification_channel"
}, - "links": {
- "related": "/api/system_configuration/notification_channels/system_email"
}
}
}, - "links": {
- "self": "/api/event_subscribers/01a11920-a6d0-7659-8bc8-c10687336cff"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Create an event subscriber without a node in the path.
The subscriber is still attached to a node - channel_parent_path names the node owning the notification channel, and the event filter supplies the node the subscription applies to.
required | object |
{- "data": {
- "attributes": {
- "event_filter_code": "change_success",
- "channel_parent_path": "/system_configuration",
- "channel_code": "system_email",
- "channel_kwargs": {
- "additional": {
- "job": {
- "kwarg": "values"
}
}
}, - "enabled": true
}
}
}{- "data": {
- "id": "01a11920-a8e9-7f59-9c5e-e7d29d055d5a",
- "type": "event_subscriber",
- "attributes": {
- "channel_kwargs": {
- "hello": "world"
}, - "enabled": true,
- "created_by": "logged_in_user",
- "created_at": "2026-10-08T01:28:53.224565Z",
- "updated_at": "2026-10-08T01:28:53.224565Z"
}, - "relationships": {
- "event_filter": {
- "data": {
- "id": "01a11920-a81c-75ba-830e-d34c38c12996",
- "type": "event_filter"
}, - "links": {
- "related": "/api/event_filters/26jdb"
}
}, - "notification_channel": {
- "data": {
- "id": "01a11920-a8d6-7895-8d2e-67a33dc6c2f4",
- "type": "notification_channel"
}, - "links": {
- "related": "/api/projects/opc/assets/prj_soa/notification_channels/livbn"
}
}
}, - "links": {
- "self": "/api/event_subscribers/01a11920-a8e9-7f59-9c5e-e7d29d055d5a"
}
}
}List event subscribers for a specific project, environment or asset.
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[enabled_eq]=true API filtering guide. Named filters: |
{- "data": [
- {
- "id": "01a11920-ad95-72f1-9b3d-ea719ec94753",
- "type": "event_subscriber",
- "attributes": {
- "channel_kwargs": { },
- "enabled": true,
- "created_by": "mervin-1513",
- "created_at": "2026-10-08T01:28:54.419913Z",
- "updated_at": "2026-10-08T01:28:54.419913Z"
}, - "relationships": {
- "event_filter": {
- "data": {
- "id": "01a11920-ad41-7420-8cee-2ecac2803487",
- "type": "event_filter"
}, - "links": {
- "related": "/api/event_filters/change_success"
}
}, - "notification_channel": {
- "data": {
- "id": "01a11920-ad8a-7bcc-b4cc-2c4801c4f8b0",
- "type": "notification_channel"
}, - "links": {
- "related": "/api/system_configuration/notification_channels/system_email"
}
}
}, - "links": {
- "self": "/api/event_subscribers/01a11920-ad95-72f1-9b3d-ea719ec94753"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Create an event subscriber.
required | object |
{- "data": {
- "attributes": {
- "event_filter_code": "change_success",
- "channel_parent_path": "/system_configuration",
- "channel_code": "system_email",
- "channel_kwargs": {
- "additional": {
- "job": {
- "kwarg": "values"
}
}
}, - "enabled": true
}
}
}{- "data": {
- "id": "01a11920-b00a-709b-a031-7d34b75be386",
- "type": "event_subscriber",
- "attributes": {
- "channel_kwargs": {
- "hello": "world"
}, - "enabled": true,
- "created_by": "logged_in_user",
- "created_at": "2026-10-08T01:28:55.048879Z",
- "updated_at": "2026-10-08T01:28:55.048879Z"
}, - "relationships": {
- "event_filter": {
- "data": {
- "id": "01a11920-af3c-742d-b464-9c194199c682",
- "type": "event_filter"
}, - "links": {
- "related": "/api/event_filters/s9ia6"
}
}, - "notification_channel": {
- "data": {
- "id": "01a11920-aff9-76f3-9f78-592a3c211fd5",
- "type": "notification_channel"
}, - "links": {
- "related": "/api/projects/opc/assets/prj_soa/notification_channels/ch3ez"
}
}
}, - "links": {
- "self": "/api/event_subscribers/01a11920-b00a-709b-a031-7d34b75be386"
}
}
}Show an event subscriber.
| event_subscriber_id required | string Example: 01a1191f-1b08-7156-b22d-a589943a4170 event subscriber id |
{- "data": {
- "id": "01a11920-b3c7-79ab-a2f4-4ea0193760f9",
- "type": "event_subscriber",
- "attributes": {
- "channel_kwargs": { },
- "enabled": true,
- "created_by": "darwin-1547",
- "created_at": "2026-10-08T01:28:56.006866Z",
- "updated_at": "2026-10-08T01:28:56.006866Z"
}, - "relationships": {
- "event_filter": {
- "data": {
- "id": "01a11920-b37b-78b6-a3c8-b0834214998b",
- "type": "event_filter"
}, - "links": {
- "related": "/api/event_filters/change_success"
}
}, - "notification_channel": {
- "data": {
- "id": "01a11920-b3c1-79f0-b7ed-0e47e5271e3b",
- "type": "notification_channel"
}, - "links": {
- "related": "/api/system_configuration/notification_channels/system_email"
}
}
}, - "links": {
- "self": "/api/event_subscribers/01a11920-b3c7-79ab-a2f4-4ea0193760f9"
}
}
}Update an event subscriber.
| event_subscriber_id required | string Example: 01a1191f-1b08-7156-b22d-a589943a4170 event subscriber id |
required | object |
{- "data": {
- "attributes": {
- "event_filter_code": "change_success",
- "channel_parent_path": "/projects/opc",
- "channel_code": "project_direct",
- "channel_kwargs": {
- "hello": "world"
}, - "enabled": false
}
}
}{- "data": {
- "id": "01a11920-b75a-73bc-a35f-b6354840fe85",
- "type": "event_subscriber",
- "attributes": {
- "channel_kwargs": {
- "hello": "world"
}, - "enabled": false,
- "created_by": "steven.ebert-1559",
- "created_at": "2026-10-08T01:28:56.921248Z",
- "updated_at": "2026-10-08T01:28:56.959658Z"
}, - "relationships": {
- "event_filter": {
- "data": {
- "id": "01a11920-b6f7-73fe-8fa2-bb114d669a91",
- "type": "event_filter"
}, - "links": {
- "related": "/api/event_filters/change_success"
}
}, - "notification_channel": {
- "data": {
- "id": "01a11920-b768-7bf6-9cc4-7c30e36d8106",
- "type": "notification_channel"
}, - "links": {
- "related": "/api/projects/opc/notification_channels/project_direct"
}
}
}, - "links": {
- "self": "/api/event_subscribers/01a11920-b75a-73bc-a35f-b6354840fe85"
}
}
}Delete an event subscriber.
| event_subscriber_id required | string Example: 01a1191f-1b08-7156-b22d-a589943a4170 event subscriber id |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find EventSubscriber"
}
}
]
}Lists all global notification channels.
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[code_eq]=slack API filtering guide. Named filters: |
{- "data": [
- {
- "id": "01a11921-2e70-7663-aa53-1e71b19e74e4",
- "type": "notification_channel",
- "attributes": {
- "format": "html",
- "code": "system_email",
- "description": "System channel for email notifications",
- "default_channel": true,
- "internal": false,
- "enabled": true,
- "kwargs": {
- "address": "smtp.gmail.com",
- "port": 587,
- "enable_starttls": true,
- "user_name": "user@gmail.com",
- "password": "app-password"
}, - "created_by": "velia-1984",
- "created_at": "2026-10-08T01:29:27.407305Z",
- "updated_at": "2026-10-08T01:29:27.407305Z",
- "job_code": "email_job"
}, - "relationships": {
- "notification_job": {
- "data": {
- "id": "01a11921-2e65-7cc6-8642-d7d230f3d8c1",
- "type": "notification_job"
}, - "links": {
- "related": "/api/notification_jobs/email_job"
}
}
}, - "links": {
- "self": "/api/system_configuration/notification_channels/system_email",
- "parent": "/api/system_configuration"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Create a global notification channel, available to every node in the instance.
required | object |
{- "data": {
- "attributes": {
- "code": "ops_team_slack",
- "notification_job_code": "direct_job",
- "format": "slack",
- "default_channel": false,
- "enabled": true,
- "description": "Slack channel for the operations team"
}
}
}{- "data": {
- "id": "01a11921-2f64-78d9-8e87-85b2ff3dd305",
- "type": "notification_channel",
- "attributes": {
- "format": "slack",
- "code": "ops_team_slack",
- "description": "Slack channel for the operations team",
- "default_channel": false,
- "internal": false,
- "enabled": true,
- "created_by": "logged_in_user",
- "created_at": "2026-10-08T01:29:27.651201Z",
- "updated_at": "2026-10-08T01:29:27.651201Z",
- "job_code": "direct_job"
}, - "relationships": {
- "notification_job": {
- "data": {
- "id": "01a11921-2ef6-7bd5-a8d3-7308846fa79a",
- "type": "notification_job"
}, - "links": {
- "related": "/api/notification_jobs/direct_job"
}
}
}, - "links": {
- "self": "/api/system_configuration/notification_channels/ops_team_slack",
- "parent": "/api/system_configuration"
}
}
}Sends a test notification through the channel and returns what the notification job reported.
The supplied attributes are merged over the channel's stored kwargs for this send only - nothing is saved - and supply whatever the job needs but the channel does not store, such as the to address of an email channel. Only email and direct message channels can be tested, and a disabled channel is rejected.
| notification_channel_code required | string Example: system_email notification channel code |
required | object |
{- "data": {
- "attributes": {
- "to": "ops-team@example.com"
}
}
}{- "data": {
- "id": "01a11921-311e-7401-a42a-33db30f6abab",
- "type": "notification_channel_test",
- "attributes": {
- "result": [
- "Email sent successfully"
]
}
}
}Show a global notification channel.
| notification_channel_code required | string Example: system_email notification channel code |
{- "data": {
- "id": "01a11921-331e-7a01-b73a-021d6987eec6",
- "type": "notification_channel",
- "attributes": {
- "format": "html",
- "code": "system_email",
- "description": "System channel for email notifications",
- "default_channel": true,
- "internal": false,
- "enabled": true,
- "kwargs": {
- "address": "smtp.gmail.com",
- "port": 587,
- "enable_starttls": true,
- "user_name": "user@gmail.com",
- "password": "app-password"
}, - "created_by": "stanley-1989",
- "created_at": "2026-10-08T01:29:28.599367Z",
- "updated_at": "2026-10-08T01:29:28.599367Z",
- "job_code": "email_job"
}, - "relationships": {
- "notification_job": {
- "data": {
- "id": "01a11921-3308-7ca6-880a-5390859b44e4",
- "type": "notification_job"
}, - "links": {
- "related": "/api/notification_jobs/email_job"
}
}
}, - "links": {
- "self": "/api/system_configuration/notification_channels/system_email",
- "parent": "/api/system_configuration"
}
}
}Update a global notification channel.
| notification_channel_code required | string Example: system_email notification channel code |
required | object |
{- "data": {
- "attributes": {
- "notification_job_code": "direct_job",
- "format": "slack",
- "default_channel": false,
- "enabled": false,
- "description": "New channel description"
}
}
}{- "data": {
- "id": "01a11921-34d1-74be-bf7b-83535c558cd0",
- "type": "notification_channel",
- "attributes": {
- "format": "slack",
- "code": "system_email",
- "description": "New channel description",
- "default_channel": false,
- "internal": false,
- "enabled": false,
- "created_by": "rosetta_hermann-1991",
- "created_at": "2026-10-08T01:29:29.040196Z",
- "updated_at": "2026-10-08T01:29:29.070050Z",
- "job_code": "direct_job"
}, - "relationships": {
- "notification_job": {
- "data": {
- "id": "01a11921-3479-70c0-868c-63208e35a7bf",
- "type": "notification_job"
}, - "links": {
- "related": "/api/notification_jobs/direct_job"
}
}
}, - "links": {
- "self": "/api/system_configuration/notification_channels/system_email",
- "parent": "/api/system_configuration"
}
}
}Delete a global notification channel.
| notification_channel_code required | string Example: system_email notification channel code |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find NotificationChannel"
}
}
]
}List notification channels for a specific project, environment or asset.
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[code_eq]=slack API filtering guide. Named filters: |
{- "data": [
- {
- "id": "01a11921-39a8-7d9a-bcda-9e478702f1b4",
- "type": "notification_channel",
- "attributes": {
- "format": "slack",
- "code": "project_direct",
- "description": "Project specific channel for slack notifications",
- "default_channel": true,
- "internal": false,
- "enabled": true,
- "kwargs": {
- "bot_name": "slack_bot",
- "token": "slack_oauth_token"
}, - "created_by": "mara-1999",
- "created_at": "2026-10-08T01:29:30.280142Z",
- "updated_at": "2026-10-08T01:29:30.280142Z",
- "job_code": "direct_job"
}, - "relationships": {
- "notification_job": {
- "data": {
- "id": "01a11921-3959-7428-8866-abcf3defad12",
- "type": "notification_job"
}, - "links": {
- "related": "/api/notification_jobs/direct_job"
}
}
}, - "links": {
- "self": "/api/projects/opc/notification_channels/project_direct",
- "parent": "/api/projects/opc"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Show a notification channel for a specific project, environment or asset..
| notification_channel_code required | string Example: system_email notification channel code |
{- "data": {
- "id": "01a11921-3a5c-7f6b-97e7-d441b334f5d0",
- "type": "notification_channel",
- "attributes": {
- "format": "slack",
- "code": "project_direct",
- "description": "Project specific channel for slack notifications",
- "default_channel": true,
- "internal": false,
- "enabled": true,
- "kwargs": {
- "bot_name": "slack_bot",
- "token": "slack_oauth_token"
}, - "created_by": "janette-2003",
- "created_at": "2026-10-08T01:29:30.460273Z",
- "updated_at": "2026-10-08T01:29:30.460273Z",
- "job_code": "direct_job"
}, - "relationships": {
- "notification_job": {
- "data": {
- "id": "01a11921-3a1a-78b9-9b94-7abe24e90662",
- "type": "notification_job"
}, - "links": {
- "related": "/api/notification_jobs/direct_job"
}
}
}, - "links": {
- "self": "/api/projects/opc/notification_channels/project_direct",
- "parent": "/api/projects/opc"
}
}
}Update a notification channel for a specific project, environment or asset.
| notification_channel_code required | string Example: system_email notification channel code |
required | object |
{- "data": {
- "attributes": {
- "notification_job_code": "direct_job",
- "format": "slack",
- "default_channel": false,
- "enabled": false,
- "description": "New channel description"
}
}
}{- "data": {
- "id": "01a11921-3bdf-7f27-b730-30226c3c7eea",
- "type": "notification_channel",
- "attributes": {
- "format": "slack",
- "code": "project_direct",
- "description": "New channel description",
- "default_channel": false,
- "internal": false,
- "enabled": false,
- "created_by": "vena_cruickshank-2011",
- "created_at": "2026-10-08T01:29:30.846694Z",
- "updated_at": "2026-10-08T01:29:30.871198Z",
- "job_code": "direct_job"
}, - "relationships": {
- "notification_job": {
- "data": {
- "id": "01a11921-3b8d-7c86-be6a-6e4602282323",
- "type": "notification_job"
}, - "links": {
- "related": "/api/notification_jobs/direct_job"
}
}
}, - "links": {
- "self": "/api/projects/opc/notification_channels/project_direct",
- "parent": "/api/projects/opc"
}
}
}Delete a notification channel for a specific project, environment or asset..
| notification_channel_code required | string Example: system_email notification channel code |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find NotificationChannel"
}
}
]
}Lists all notification jobs.
| filter[<query/sort filter>]= |
{- "data": [
- {
- "id": "01a11921-4281-7bac-8ca5-2b6b107dc372",
- "type": "notification_job",
- "attributes": {
- "job_class": "Notifications::SendEmailJob",
- "target_type": "smtp",
- "valid_formats": [
- "html",
- "text"
], - "code": "email_job",
- "description": "Send an email to the target user(s)",
- "created_at": "2026-10-08T01:29:32.544876Z",
- "updated_at": "2026-10-08T01:29:32.544876Z",
- "all_kwargs": [
- "address",
- "authentication",
- "bcc",
- "body",
- "cc",
- "content_type",
- "domain",
- "enable_starttls",
- "enable_starttls_auto",
- "event_id",
- "from",
- "model_class",
- "model_id",
- "open_timeout",
- "openssl_verify_mode",
- "password",
- "port",
- "read_timeout",
- "ssl",
- "subject",
- "test",
- "tls",
- "to",
- "user_name"
]
}, - "relationships": {
- "notification_channels": {
- "data": [ ],
- "links": {
- "related": "/api/notification_jobs/email_job/channels"
}
}
}, - "links": {
- "self": "/api/notification_jobs/email_job"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}
}
}Show a notification job.
| notification_job_code required | string Example: email_job notification job code |
{- "data": {
- "id": "01a11921-4364-72bf-9a5a-a0f3fc625f02",
- "type": "notification_job",
- "attributes": {
- "job_class": "Notifications::SendEmailJob",
- "target_type": "smtp",
- "valid_formats": [
- "html",
- "text"
], - "code": "email_job",
- "description": "Send an email to the target user(s)",
- "created_at": "2026-10-08T01:29:32.770722Z",
- "updated_at": "2026-10-08T01:29:32.770722Z",
- "all_kwargs": [
- "address",
- "authentication",
- "bcc",
- "body",
- "cc",
- "content_type",
- "domain",
- "enable_starttls",
- "enable_starttls_auto",
- "event_id",
- "from",
- "model_class",
- "model_id",
- "open_timeout",
- "openssl_verify_mode",
- "password",
- "port",
- "read_timeout",
- "ssl",
- "subject",
- "test",
- "tls",
- "to",
- "user_name"
]
}, - "relationships": {
- "notification_channels": {
- "data": [ ],
- "links": {
- "related": "/api/notification_jobs/email_job/channels"
}
}
}, - "links": {
- "self": "/api/notification_jobs/email_job"
}
}
}Returns information about the jobs that are being processed by the OpsChain.
| filter[<query/sort filter>]= | |
| limit | integer [ 1 .. 1000 ] Default: 100 Example: limit=50 Limit the number of jobs returned |
{- "data": [
- {
- "id": "807756",
- "type": "job",
- "attributes": {
- "priority": 32,
- "job_class": "RefreshTemplateVersionActionsJob",
- "error_count": 3,
- "last_error_message": "Que::JobMethods::JobTimeoutError: job exceeded its maximum run time",
- "queue": "default",
- "last_error_backtrace": "/opt/opschain/app/jobs/refresh_template_version_actions_job.rb:18:in 'run'",
- "data": "{}",
- "maximum_retry_count": 0,
- "node_id": "01a11920-d286-7bdc-ab53-8026eb69c5aa",
- "node_path": "/projects/opc/environments/dev",
- "status": "failed",
- "worker_hostname": null,
- "args": "[]",
- "kwargs": "{}",
- "description": "No description available.",
- "run_at": "2026-10-07T22:43:48.928872Z",
- "finished_at": null,
- "expired_at": "2026-10-08T00:59:03.951468Z"
}
}, - {
- "id": "902786",
- "type": "job",
- "attributes": {
- "priority": 4,
- "job_class": "ChangeJob",
- "error_count": 1,
- "last_error_message": "ActiveRecord::LockWaitTimeout: could not obtain lock on row in relation \"steps\"",
- "queue": "default",
- "last_error_backtrace": "/opt/opschain/app/jobs/change_job.rb:24:in 'ChangeJob#run'",
- "data": "{}",
- "maximum_retry_count": 0,
- "node_id": "01a11920-d286-7bdc-ab53-8026eb69c5aa",
- "node_path": "/projects/opc/environments/dev",
- "status": "failed",
- "worker_hostname": "opschain-api-worker-7c4d8b9948-7bg6t",
- "args": "[]",
- "kwargs": "{}",
- "description": "Verifies if a change can be started based on its owner configuration and, if so, starts it.",
- "run_at": "2026-10-07T22:39:40.090962Z",
- "finished_at": "2026-10-08T01:29:03.913628Z",
- "expired_at": null
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false,
- "has_any": true,
- "total_matching_filter": 2,
- "total_matching_filter_exact": true
}
}Endpoints to interact with settings.
Shows the current settings.
| settings_id required | string Example: 01a1191e-f8aa-71f6-bf6f-0b6fd818916a settings id |
{- "data": {
- "id": "01a11921-a23f-7849-8309-f216659661c6",
- "type": "settings",
- "attributes": {
- "data": {
- "repo_folder": ".opschain",
- "requires_approval_from": [
- {
- "change_filter": {
- "actions": "all"
}, - "user_names": [
- "opschain"
]
}
]
}, - "version": 1,
- "created_at": "2026-10-08T01:29:57.054786Z"
}, - "relationships": {
- "owner": {
- "links": {
- "owner": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/settings/01a11921-a23f-7849-8309-f216659661c6",
- "current_version": "/api/settings/01a11921-a23f-7849-8309-f216659661c6/versions/1",
- "versions": "/api/settings/01a11921-a23f-7849-8309-f216659661c6/versions"
}
}
}Updates a settings JSON if the included version matches the current settings version.
| id_to_update required | string Example: 01a1191e-f8aa-71f6-bf6f-0b6fd818916a settings id |
required | object |
{- "data": {
- "attributes": {
- "data": {
- "repo_folder": ".opschain",
- "requires_approval_from": [
- {
- "change_filter": {
- "actions": "all"
}, - "user_names": [
- "opschain"
]
}
]
}, - "version": 1
}
}
}{- "data": {
- "id": "01a11921-a39f-7264-b800-752389d53f4c",
- "type": "settings",
- "attributes": {
- "data": {
- "repo_folder": ".opschain",
- "requires_approval_from": [
- {
- "change_filter": {
- "actions": "all"
}, - "user_names": [
- "opschain"
]
}
]
}, - "version": 1,
- "created_at": "2026-10-08T01:29:57.405612Z"
}, - "relationships": {
- "owner": {
- "links": {
- "owner": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/settings/01a11921-a39f-7264-b800-752389d53f4c",
- "current_version": "/api/settings/01a11921-a39f-7264-b800-752389d53f4c/versions/1",
- "versions": "/api/settings/01a11921-a39f-7264-b800-752389d53f4c/versions"
}
}
}Updates a settings JSON, without any version checking (always updates).
| id_to_set required | string Example: 01a1191e-f8aa-71f6-bf6f-0b6fd818916a settings id |
required | object |
{- "data": {
- "attributes": {
- "data": {
- "repo_folder": ".opschain",
- "requires_approval_from": [
- {
- "change_filter": {
- "actions": "all"
}, - "user_names": [
- "opschain"
]
}
]
}
}
}
}{- "data": {
- "id": "01a11921-a64d-7dc8-b3bb-3bc8e77b46cb",
- "type": "settings",
- "attributes": {
- "data": {
- "repo_folder": ".opschain",
- "requires_approval_from": [
- {
- "change_filter": {
- "actions": "all"
}, - "user_names": [
- "opschain"
]
}
]
}, - "version": 1,
- "created_at": "2026-10-08T01:29:58.092962Z"
}, - "relationships": {
- "owner": {
- "links": {
- "owner": "/api/projects/opc"
}
}
}, - "links": {
- "self": "/api/settings/01a11921-a64d-7dc8-b3bb-3bc8e77b46cb",
- "current_version": "/api/settings/01a11921-a64d-7dc8-b3bb-3bc8e77b46cb/versions/1",
- "versions": "/api/settings/01a11921-a64d-7dc8-b3bb-3bc8e77b46cb/versions"
}
}
}Endpoints to interact with the version history for settings.
Lists all versions of an OpsChain settings.
| settings_id required | string Example: 01a1191e-f8aa-71f6-bf6f-0b6fd818916a settings id |
| limit | integer [ 1 .. 10000 ] Default: 1000 Example: limit=50 Limit the number of settings versions returned. When more records match than the limit a 206 response is returned and |
| exclude_data | boolean Default: false Example: exclude_data=true Exclude the |
{- "data": [
- {
- "id": "01a11921-a879-7d09-ae36-fd129e31cdef",
- "type": "settings_version",
- "attributes": {
- "data": {
- "repo_folder": ".opschain",
- "requires_approval_from": [
- {
- "change_filter": {
- "actions": "all"
}, - "user_names": [
- "opschain"
]
}
]
}, - "version": 1,
- "created_at": "2026-10-08T01:29:58.648820Z"
}, - "relationships": {
- "settings": {
- "data": {
- "id": "01a11921-a876-70e3-abb0-a63931dda551",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-a876-70e3-abb0-a63931dda551"
}
}
}, - "links": {
- "versions": "/api/settings/01a11921-a876-70e3-abb0-a63931dda551/versions",
- "owner": "/api/projects/opc",
- "self": "/api/settings/01a11921-a876-70e3-abb0-a63931dda551/versions/1"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}Shows the settings values for this settings version.
| settings_id required | string Example: 01a1191e-f8aa-71f6-bf6f-0b6fd818916a settings id |
| version_number required | integer Example: 1 version number |
{- "data": {
- "id": "01a11921-aa88-70ab-a1aa-ed2a5f45c989",
- "type": "settings_version",
- "attributes": {
- "data": {
- "repo_folder": ".opschain",
- "requires_approval_from": [
- {
- "change_filter": {
- "actions": "all"
}, - "user_names": [
- "opschain"
]
}
]
}, - "version": 1,
- "created_at": "2026-10-08T01:29:59.175231Z"
}, - "relationships": {
- "settings": {
- "data": {
- "id": "01a11921-aa84-70dd-9b4f-78897fd184ed",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-aa84-70dd-9b4f-78897fd184ed"
}
}
}, - "links": {
- "versions": "/api/settings/01a11921-aa84-70dd-9b4f-78897fd184ed/versions",
- "owner": "/api/projects/opc",
- "self": "/api/settings/01a11921-aa84-70dd-9b4f-78897fd184ed/versions/1"
}
}
}List all authorisation tokens.
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[description_cont]=automation |
{- "data": [
- {
- "id": "01a1191f-c030-717c-bbe8-61f8890a06a8",
- "type": "authentication_token",
- "attributes": {
- "type": "AccessToken",
- "expires_at": "2026-10-08T05:27:53.000000Z",
- "created_at": "2026-10-08T01:27:53.577192Z",
- "updated_at": "2026-10-08T01:27:53.577192Z"
}, - "relationships": {
- "owner": {
- "data": {
- "id": "01a1191f-bf67-790e-b837-f42147117971",
- "type": "user"
}, - "links": {
- "owner": "/api/users/01a1191f-bf67-790e-b837-f42147117971"
}
}
}, - "links": {
- "self": "/api/tokens/01a1191f-c030-717c-bbe8-61f8890a06a8"
}
}, - {
- "id": "01a1191f-bfdc-7f39-988e-1c64eebf4f47",
- "type": "authentication_token",
- "attributes": {
- "type": "ApiKeyToken",
- "description": "CI token for API access",
- "expires_at": "2027-04-08T01:27:53.558812Z",
- "created_at": "2026-10-08T01:27:53.563546Z",
- "updated_at": "2026-10-08T01:27:53.563546Z"
}, - "relationships": {
- "owner": {
- "data": {
- "id": "01a1191f-bf67-790e-b837-f42147117971",
- "type": "user"
}, - "links": {
- "owner": "/api/users/01a1191f-bf67-790e-b837-f42147117971"
}
}
}, - "links": {
- "self": "/api/tokens/01a1191f-bfdc-7f39-988e-1c64eebf4f47"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}
}
}Creates an access token for the current user.
Notes:
token.enable_cookies setting is true (default) a new refresh_token cookie is set in the response and the supplied refresh token is rotated (destroyed and replaced). The response body contains only the access token.token.enable_cookies setting is false and the refresh token is supplied to authenticate the request a new refresh token is included in the response meta and the supplied refresh token is rotated (destroyed and replaced). The new refresh token JWT is available in data.meta.refresh_token.required | object |
{- "data": {
- "attributes": {
- "username": "username",
- "password": "password"
}
}
}{- "data": {
- "id": "01a1191f-c147-7bd3-b2d2-f035726b2a60",
- "type": "authentication_token",
- "attributes": {
- "type": "AccessToken",
- "expires_at": "2026-10-08T05:27:53.000000Z",
- "created_at": "2026-10-08T01:27:53.845448Z",
- "updated_at": "2026-10-08T01:27:53.845448Z"
}, - "relationships": {
- "owner": {
- "data": {
- "id": "01a1191f-c0a9-731d-9949-89aa656fd1ef",
- "type": "user"
}, - "links": {
- "owner": "/api/users/01a1191f-c0a9-731d-9949-89aa656fd1ef"
}
}
}, - "links": {
- "self": "/api/tokens/01a1191f-c147-7bd3-b2d2-f035726b2a60"
}, - "meta": {
- "bearer_token": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIwMWExMTkxZi1jMTQ3LTdiZDMtYjJkMi1mMDM1NzI2YjJhNjAiLCJpc3MiOiJPcHNDaGFpbiIsImF1ZCI6Im9wc2NoYWluX2FwaSIsImV4cCI6MTc5MTQzNzI3MywiaWF0IjoxNzkxNDIyODczfQ.9bIVQoAn9x7JsZjpXNXl0-w60PpcwkDDSTliNlyhqwI"
}
}
}Creates an API key token for the current user.
Note: LDAP or local login credentials, or an access token are required to use this endpoint.
required | object |
{- "data": {
- "attributes": {
- "username": "username",
- "password": "password",
- "description": "CI token for API access",
- "expiry_date": "2027-04-08T01:27:06.119616Z"
}
}
}{- "data": {
- "id": "01a1191f-c215-72be-9f15-75d4d2d64e71",
- "type": "authentication_token",
- "attributes": {
- "type": "ApiKeyToken",
- "description": "Ipsum ut cum eos.",
- "expires_at": "2026-10-22T23:59:59.999999Z",
- "created_at": "2026-10-08T01:27:54.132157Z",
- "updated_at": "2026-10-08T01:27:54.132157Z"
}, - "relationships": {
- "owner": {
- "data": {
- "id": "01a1191f-c1c7-76e9-b5b7-c9029302a8d0",
- "type": "user"
}, - "links": {
- "owner": "/api/users/01a1191f-c1c7-76e9-b5b7-c9029302a8d0"
}
}
}, - "links": {
- "self": "/api/tokens/01a1191f-c215-72be-9f15-75d4d2d64e71"
}, - "meta": {
- "bearer_token": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIwMWExMTkxZi1jMjE1LTcyYmUtOWYxNS03NWQ0ZDJkNjRlNzEiLCJpc3MiOiJPcHNDaGFpbiIsImF1ZCI6Im9wc2NoYWluX2FwaSIsImV4cCI6MTc5MjcxMzU5OSwiaWF0IjoxNzkxNDIyODc0fQ.C9_5UVlYS8d9B_G3GY6V_VOMVtxq9b_iq0hR7WXt67c"
}
}
}Returns a URL that downloads the supplied API URL without an Authorization header, for use as a browser link.
Notes:
url must be a relative API URL that includes the download query parameter.download_token query parameter that is valid for 60 seconds, for that exact URL and only for as long as the access token used to create it remains valid.| Authorization required | string access token bearer authorisation |
required | object |
{- "data": {
- "attributes": {
- "url": "/api/activities?download=activities.csv"
}
}
}{- "meta": {
- "download_url": "/api/activities?download=activities.csv&download_token=eyJhbGciOiJIUzI1NiJ9.eyJhY2Nlc3NfdG9rZW5faWQiOiIwMWExMTkxZi1jMzEzLTczMzEtYjVlMi04MGRjMjFlYmZkNzUiLCJhdWQiOiJvcHNjaGFpbl9kb3dubG9hZCIsImV4cCI6MTc5MTQyMjkzNCwiaWF0IjoxNzkxNDIyODc0LCJyZXEiOiI0NDkxY2EwZjFiMjZkMzBmZjIxZWIzYmYzYzQ0ZGFhNzE0N2NmNWFhYmJjYzg1MzJhNDE3YWU1N2Q5MjU0YzNiIn0.2xZ7vcv59XB8RwHDUu9d92N0Ue9_MGRqviMFDyaBkjg"
}
}Show an authorisation token.
| token_id required | string Example: 01a1191f-0686-70f1-8b8e-4944b5d08e78 authorisation token id |
{- "data": {
- "id": "01a1191f-c3ca-76c4-8151-f8cadf3a99a6",
- "type": "authentication_token",
- "attributes": {
- "type": "ApiKeyToken",
- "description": "CI token for API access",
- "expires_at": "2027-04-08T01:27:54.564501Z",
- "created_at": "2026-10-08T01:27:54.568991Z",
- "updated_at": "2026-10-08T01:27:54.568991Z"
}, - "relationships": {
- "owner": {
- "data": {
- "id": "01a1191f-c38a-7458-90f2-7f2f9adfd737",
- "type": "user"
}, - "links": {
- "owner": "/api/users/01a1191f-c38a-7458-90f2-7f2f9adfd737"
}
}
}, - "links": {
- "self": "/api/tokens/01a1191f-c3ca-76c4-8151-f8cadf3a99a6"
}
}
}Shows the access token used to authenticate the request. When the request authenticates with a username and password instead of a token, returns an array of all the current user's access tokens.
{- "data": [
- {
- "id": "01a1191f-c635-72a2-a705-74668038f94c",
- "type": "authentication_token",
- "attributes": {
- "type": "AccessToken",
- "expires_at": "2026-10-08T05:27:55.000000Z",
- "created_at": "2026-10-08T01:27:55.100520Z",
- "updated_at": "2026-10-08T01:27:55.100520Z"
}, - "relationships": {
- "owner": {
- "data": {
- "id": "01a1191f-c57b-71fb-b672-9b728d274165",
- "type": "user"
}, - "links": {
- "owner": "/api/users/01a1191f-c57b-71fb-b672-9b728d274165"
}
}
}, - "links": {
- "self": "/api/tokens/01a1191f-c635-72a2-a705-74668038f94c"
}
}
]
}{- "data": [
- {
- "id": "01a11922-2ac8-792c-a99c-93ed350f7411",
- "type": "user",
- "attributes": {
- "username": "logged_in_user",
- "groupnames": [
- "ldap-group-1",
- "ldap-group-2"
], - "auth_provider": "ldap",
- "email_address": "logged_in_user@limepoint.com",
- "display_name": null,
- "first_name": null,
- "last_name": null,
- "default_notification_methods": [
- "slack"
], - "direct_message_ids": {
- "slack": "K4KY3G1CZ",
- "teams": "XRGV7E0DJ"
}, - "created_at": "2026-10-08T01:30:32.007577Z",
- "updated_at": "2026-10-08T01:30:32.007577Z"
}, - "meta": { },
- "links": {
- "self": "/api/users/01a11922-2ac8-792c-a99c-93ed350f7411"
}
}
]
}Show a user.
| user_id required | string Example: 01a1191e-f5a7-7997-8966-5e03d0adf605 user id |
{- "data": {
- "id": "01a11922-2b62-79d9-8b0f-71a77b5a2f33",
- "type": "user",
- "attributes": {
- "username": "logged_in_user",
- "groupnames": [
- "ldap-group-1",
- "ldap-group-2"
], - "auth_provider": "ldap",
- "email_address": "logged_in_user@limepoint.com",
- "display_name": null,
- "first_name": null,
- "last_name": null,
- "default_notification_methods": [
- "slack"
], - "direct_message_ids": {
- "slack": "XJXXCFPRO",
- "teams": "EBQ3TYZ2T"
}, - "created_at": "2026-10-08T01:30:32.161635Z",
- "updated_at": "2026-10-08T01:30:32.161635Z"
}, - "meta": {
- "superuser": true
}, - "links": {
- "self": "/api/users/01a11922-2b62-79d9-8b0f-71a77b5a2f33"
}
}
}Update a user's notification preferences, and a local user's names.
| user_id required | string Example: 01a1191e-f5a7-7997-8966-5e03d0adf605 user id |
required | object |
{- "data": {
- "attributes": {
- "email_address": "user@limepoint.com",
- "display_name": "Jane Citizen",
- "first_name": "Jane",
- "last_name": "Citizen",
- "default_notification_methods": [
- "email",
- "slack"
], - "direct_message_ids": {
- "slack": "U12345678"
}
}
}
}{- "data": {
- "id": "01a11922-2c72-73f3-a3d4-9382c259f713",
- "type": "user",
- "attributes": {
- "username": "logged_in_user",
- "groupnames": [
- "ldap-group-1",
- "ldap-group-2"
], - "auth_provider": "ldap",
- "email_address": "logged_in_user@limepoint.com",
- "display_name": null,
- "first_name": null,
- "last_name": null,
- "default_notification_methods": [
- "email",
- "slack"
], - "direct_message_ids": {
- "slack": "U12345678"
}, - "created_at": "2026-10-08T01:30:32.433289Z",
- "updated_at": "2026-10-08T01:30:32.497391Z"
}, - "meta": { },
- "links": {
- "self": "/api/users/01a11922-2c72-73f3-a3d4-9382c259f713"
}
}
}{- "data": {
- "id": "01a11922-2df5-7ae3-bfe3-b69ef0750371",
- "type": "user",
- "attributes": {
- "username": "logged_in_user",
- "groupnames": [
- "ldap-group-1",
- "ldap-group-2"
], - "auth_provider": "ldap",
- "email_address": "logged_in_user@limepoint.com",
- "display_name": null,
- "first_name": null,
- "last_name": null,
- "default_notification_methods": [
- "slack"
], - "direct_message_ids": {
- "slack": "Y9TKO5951",
- "teams": "EFRXQ3VUC"
}, - "created_at": "2026-10-08T01:30:32.820616Z",
- "updated_at": "2026-10-08T01:30:32.820616Z"
}, - "meta": {
- "superuser": true
}, - "links": {
- "self": "/api/users/01a11922-2df5-7ae3-bfe3-b69ef0750371"
}
}
}Lists notifications the user has configured for a specific project, environment or asset (that do not reference a specific action or workflow).
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
{- "data": [
- {
- "id": "01a11921-44a4-7b85-bb0a-8daa5ee83244",
- "type": "change_notifications",
- "attributes": {
- "events": [
- "error",
- "success"
], - "include_children": false
}
}, - {
- "id": "01a11921-44a4-7b85-bb0a-8daa5ee83244",
- "type": "settings_notifications",
- "attributes": {
- "events": [ ],
- "include_children": false
}
}, - {
- "id": "01a11921-44a4-7b85-bb0a-8daa5ee83244",
- "type": "properties_notifications",
- "attributes": {
- "events": [ ],
- "include_children": false
}
}
]
}Lists all change specific notifications the user has configured for a specific project, environment or asset.
| project_code required | string Example: opc project code |
| asset_code required | string Example: prj_soa asset code |
{- "data": {
- "id": "01a11921-47d4-761d-9510-d3ea509e047b",
- "type": "action_notifications",
- "attributes": {
- "custom_proj_action": {
- "events": [
- "error"
], - "include_children": false
}, - "proj_action_1": {
- "events": [
- "error"
], - "include_children": false
}, - "proj_action_2": {
- "events": [ ],
- "include_children": false
}, - "provision": {
- "events": [ ],
- "include_children": false
}
}
}
}Lists the events the user is notified of for each of the project's workflows, keyed by workflow code.
Workflow notifications belong to the project. An environment or asset path returns an empty set and cannot be updated.
| project_code required | string Example: opc project code |
{- "data": {
- "id": "01a11921-4b10-70a8-98d9-2cbed6ec0ebf",
- "type": "workflow_run_notifications",
- "attributes": {
- "assets": [ ],
- "custom_workflow": [
- "start"
], - "workflow_2": [
- "start"
]
}
}
}Lists every notification the user has configured, across every node, keyed by node path.
A user may only list their own notifications - the id in the path must be the authenticated user's own.
| user_id required | string Example: 01a1191e-f5a7-7997-8966-5e03d0adf605 user id |
{- "data": {
- "id": "01a11921-4dd4-754e-88b7-327d26f35129",
- "type": "all_user_notifications",
- "attributes": {
- "/projects/opc/assets/prj_soa": {
- "node": {
- "changes": {
- "events": [
- "error",
- "success"
], - "include_children": false
}, - "settings": {
- "events": [ ],
- "include_children": false
}, - "properties": {
- "events": [ ],
- "include_children": false
}
}, - "changes": {
- "custom_proj_action": {
- "events": [
- "error"
], - "include_children": false
}, - "proj_action_1": {
- "events": [
- "error"
], - "include_children": false
}, - "proj_action_2": {
- "events": [ ],
- "include_children": false
}, - "provision": {
- "events": [ ],
- "include_children": false
}
}
}, - "/projects/opc/environments/dev/assets/env_soa": {
- "node": {
- "changes": {
- "events": [
- "cancel",
- "start"
], - "include_children": false
}, - "settings": {
- "events": [ ],
- "include_children": false
}, - "properties": {
- "events": [ ],
- "include_children": false
}
}, - "changes": {
- "env_action_1": {
- "events": [ ],
- "include_children": false
}, - "env_action_2": {
- "events": [ ],
- "include_children": false
}, - "provision": {
- "events": [ ],
- "include_children": false
}
}
}, - "/projects/opc": {
- "node": {
- "changes": {
- "events": [ ],
- "include_children": false
}, - "workflow_runs": {
- "events": [
- "cancel",
- "success"
], - "include_children": false
}, - "settings": {
- "events": [ ],
- "include_children": false
}, - "properties": {
- "events": [ ],
- "include_children": false
}
}, - "changes": {
- "whole_project": {
- "events": [
- "error"
], - "include_children": true
}
}, - "workflow_runs": {
- "assets": [ ],
- "custom_workflow": [
- "start"
], - "workflow_2": [
- "start"
]
}
}
}
}
}Returns the decrypted values of the supplied secrets
required | object |
{- "data": {
- "attributes": {
- "owner_type": "settings",
- "owner_id": "01a1191f-043b-7f8b-afd4-62e9a81e73f6",
- "source": "settings",
- "mintmodel_owner_path": "/projects/opc/assets/prj_soa",
- "converge_date": "2026-10-08T01:27:12.331708Z",
- "values_to_decrypt": [
- "secret-vault://csh/infrastructure/files/oci_platform_configs.yaml",
- "{AES2}TdxBDw3KtDj+FKKckKeF5A=={/IV}Ud/ubLWIwhpCwkgBa6DSd5A=="
]
}
}
}{- "data": {
- "id": "secrets",
- "type": "secrets",
- "attributes": {
- "results": [
- {
- "source": "secret-vault://csh/infrastructure/files/oci_platform_configs.yaml",
- "result": "ERROR: You do not have permission to resolve settings secrets for /projects/opc/environments/dev - requires executable on /projects/opc/environments/dev/settings/secrets or /projects/opc/environments/dev/secrets, or on the equivalent path of an ancestor node",
- "filename": null
}, - {
- "source": "secret-vault://csh/infrastructure/sshkeys/oci_new_key",
- "result": "ERROR: You do not have permission to resolve settings secrets for /projects/opc/environments/dev - requires executable on /projects/opc/environments/dev/settings/secrets or /projects/opc/environments/dev/secrets, or on the equivalent path of an ancestor node",
- "filename": null
}
]
}
}
}Returns the decrypted value of a secret resolved directly from the secret vault
required | object |
{- "data": {
- "attributes": {
- "vault_owner_id": "01a1191f-0421-7e06-b3bc-a62e8988f39d",
- "vault_path": "secret-vault://path/to/vault/vault_key",
- "expected_vault_value": "{AES2}TdxBDw3KtDj+FKKckKeF5A=={/IV}Ud/ubLWIwhpCwkgBa6DSd5A=="
}
}
}{- "data": {
- "id": "secrets",
- "type": "secrets",
- "attributes": {
- "results": [
- {
- "source": "secret-vault://path/to/vault/vault_key",
- "result": "decrypted value",
- "filename": null
}
]
}
}
}Returns the OpsChain-encrypted form of the supplied value
required | object |
{- "data": {
- "attributes": {
- "value_to_encrypt": "the value to encrypt"
}
}
}{- "data": {
- "id": "secrets",
- "type": "secrets",
- "attributes": {
- "results": [
- {
- "source": "the value to encrypt",
- "result": "{AES2}TdxBDw3KtDj+FKKckKeF5A=={/IV}Ud/ubLWIwhpCwkgBa6DSd5A==",
- "filename": null
}
]
}
}
}Creates a secret value in the secret vault at the supplied path
required | object |
object |
{- "data": {
- "attributes": {
- "vault_owner_id": "01a1191f-0421-7e06-b3bc-a62e8988f39d",
- "vault_path": "secret-vault://path/to/vault/vault_key",
- "vault_value": "the value to store"
}
}, - "meta": {
- "replace_secret": false
}
}{- "data": {
- "id": "secrets",
- "type": "secrets",
- "attributes": {
- "results": [
- {
- "source": "secret-vault://path/to/vault/vault_key",
- "result": "{AES2}TdxBDw3KtDj+FKKckKeF5A=={/IV}Ud/ubLWIwhpCwkgBa6DSd5A==",
- "filename": null
}
]
}
}
}Uploads a file and stores its contents in the secret vault at the supplied path
| vault_owner_id | string (Node whose vault configuration is used to store the secret) |
| vault_path | string |
| replace_secret | string (Replace the secret vault value if it exists (default: false)) |
| file | string <binary> The file whose contents are stored in the secret vault (binary content is base64 encoded automatically). The filename is ignored. |
------------XnJLe9ZIbbGUYtzPQJ16u1 content-disposition: form-data; name="vault_owner_id" 01a11921-a17e-7e16-a86a-e9189f9fbd91 ------------XnJLe9ZIbbGUYtzPQJ16u1 content-disposition: form-data; name="vault_path" secret-vault://path/to/vault/vault_key ------------XnJLe9ZIbbGUYtzPQJ16u1 content-disposition: form-data; name="file"; filename="sample.txt" content-type: text/plain content-length: 21 Sample file property ------------XnJLe9ZIbbGUYtzPQJ16u1--
{- "data": {
- "id": "secrets",
- "type": "secrets",
- "attributes": {
- "results": [
- {
- "source": "secret-vault://path/to/vault/vault_key",
- "result": "{AES2}TdxBDw3KtDj+FKKckKeF5A=={/IV}Ud/ubLWIwhpCwkgBa6DSd5A==",
- "filename": "sample.txt"
}
]
}
}
}{- "data": {
- "id": "0",
- "type": "info",
- "attributes": {
- "cluster_name": "opschain-db",
- "version": "edge",
- "runner_image": "limepoint/opschain-runner-enterprise:edge",
- "db_version": "17.2",
- "api_version": "7.1.5.1",
- "ldap_available?": true,
- "banners": [ ],
- "instance_info": { },
- "licence_info": {
- "licence_issuer": "LimePoint Pty Ltd",
- "licence_issuer_contact": "support@limepoint.com",
- "licence_version": "1",
- "customer_identifier": "Engineering",
- "start_date": "2025-09-14T00:00:00Z",
- "end_date": "2026-09-14T00:00:00Z"
}, - "maintenance_mode": false,
- "maintenance_mode_exempts_superusers": false
}, - "links": {
- "self": "/api/info"
}, - "meta": {
- "authorisations": {
- "superuser": true,
- "secrets": {
- "global_decrypt": true,
- "global_encrypt": true
}
}
}
}
}Lists certificates in the trust store.
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[filename_cont]=root API filtering guide. Named filters: |
{- "data": [
- {
- "id": "ca_self.pem",
- "type": "certificate",
- "attributes": {
- "filename": "ca_self.pem",
- "content": "-----BEGIN CERTIFICATE-----\nMIIFQzCCAyugAwIBAgIUeNS0f9lqaJhC2apc91FbPRBVPNwwDQYJKoZIhvcNAQEL\nBQAwMTEQMA4GA1UEAwwHUm9vdCBDQTEdMBsGA1UECgwUTGltZVBvaW50RW5naW5l\nZXJpbmcwHhcNMjUwNDI5MDA0NzAxWhcNMzAwNDI5MDA0NzAxWjAxMRAwDgYDVQQD\nDAdSb290IENBMR0wGwYDVQQKDBRMaW1lUG9pbnRFbmdpbmVlcmluZzCCAiIwDQYJ\nKoZIhvcNAQEBBQADggIPADCCAgoCggIBAJoUxJkyK3VKbBhVwQPRmA9MqUOocn16\nSOZm5KVPVyR2F9OZ4xIyZTkUalUFGrguoDAyvKAI+AgGRhNJG+kKQ7PLAAEbSWBE\ngdXNNtSAj4Yvo0Bw3XbxqZM7kBO7GfysKMjqKsEeR0wiwshAQPsBjAYa78ayDRC5\nRqN1jR9al65UdLcE5yDbbpMd7GwR3b9ythahsox8PfHL60sZf7NfI4q+SkgbOVzt\ndxppCZqwZRuMVWdvvQk069UkOYoRXniQEIFU6Ugd8FWIIzleHyKEodTsRhhXUjBS\nGbA3v+x66mS87r6bE6ffFwLO0reFgfx4a7dMmhd5djrOfZtZ0L8zizXwsyee5j6v\niNokciyLHgRfWYHsYZ3OgHC8p7i02Xd9vcCsaPuoGopo0G/+wog289ObTqGbxu28\nX8Bk5/kIVkn79LDA4zWz7VwYY0uoK0TxWpdMg2yuvE5nH94qGlnJisopxVhrZ7qH\nE+QEqUYhelJNCi62Z8gmT0z3d7lmsq9gH23o1Zngdhnygdrm3rh404bjK/xFL6Hf\n0YmiYhQw8ydHKGWY8rfhjL8eXl1gURZTqLTZC6J3sF3SAS1hj2nrePsPGt7S1OqI\ndjd/vGLSLz/SGyE9d5sOeTvza9pmKKXKqcvPFbwgF496dZmAu6xtVC+6pa8hOXJW\nYlC0xn/xXnTFAgMBAAGjUzBRMB0GA1UdDgQWBBRdN8nNGCxpxe0zHXz3BrrtlYvV\nLjAfBgNVHSMEGDAWgBRdN8nNGCxpxe0zHXz3BrrtlYvVLjAPBgNVHRMBAf8EBTAD\nAQH/MA0GCSqGSIb3DQEBCwUAA4ICAQB6jtlLzWd6yjbye2SsB04ns6B6WskdOAkk\npjGz7MyARCEvgfHh5HtMzBi9l5mxXjMfYuQx3ag75lTSaA/OUgGCQOQygwD6qUXX\nQKslqCh1EEbNfDUuBt31OhAFECkKl194euhuIjUugyL+D07Oscg+k77WDEesBif0\nR8ei+j+AX/sK4RFacFMgAAWHaI3chGu2qrnFHoKEB/R9OUieEb6c8CbVEXyOzCbW\nxerP1sxPBuqvw5/UMwdafXlVmPfC/7C1dJzdw5/yAE6gwEB0ztaaEMsA22smd8dk\nNDugbmY9yTLRWFN2XIs9jgCaDM0hZOFDPbxkX7oD30z3FVkbuSII3EK0GAqHYy15\nZLD5xaxolyKOvQwXYoHVJD95KX1OVuNcILsd2iVGAKpI8IWOu2A1Kvq/Kr5qtxRW\nhcP+nL5XVu/mGP/GABI/zggORdjfAezb9mWi2ozfmSHyJsN8qfVOvK4urDj2YdbR\ntMybK+X7KpN947oZQwJ8WgfO3mTt4jkYPEFgUyVDFRuMcx25ewxy/5+HcpZvgmKd\nesPTYnR/q+kdQ+IO2OrOoBGUJ8F7bmiAKVThBWZKUn9jGAym+A4CEMrklCYwqZT5\nAuA0rI1AjitrP74YqylXtmP2IUJkxCOXBthnlt1oC2UPYXyACPdp5K4+KZbK/63B\nWbrO/ELdag==\n-----END CERTIFICATE-----\n",
- "description": "Main CA cert.",
- "created_at": "2026-10-08T01:30:30.937047Z",
- "updated_at": "2026-10-08T01:30:30.937047Z"
}, - "links": {
- "self": "/api/trust_store/ca_self.pem"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Creates a certificate in the trust store.
| description | string or null |
| file | string <binary> certificate file, the uploaded file's filename is used to name the new certificate |
------------XnJLe9ZIbbGUYtzPQJ16u1 content-disposition: form-data; name="description" New certificate description ------------XnJLe9ZIbbGUYtzPQJ16u1 content-disposition: form-data; name="file"; filename="remote_system.crt" content-type: application/x-x509-ca-cert content-length: 1887 -----BEGIN CERTIFICATE----- MIIFQzCCAyugAwIBAgIUeNS0f9lqaJhC2apc91FbPRBVPNwwDQYJKoZIhvcNAQEL BQAwMTEQMA4GA1UEAwwHUm9vdCBDQTEdMBsGA1UECgwUTGltZVBvaW50RW5naW5l ZXJpbmcwHhcNMjUwNDI5MDA0NzAxWhcNMzAwNDI5MDA0NzAxWjAxMRAwDgYDVQQD DAdSb290IENBMR0wGwYDVQQKDBRMaW1lUG9pbnRFbmdpbmVlcmluZzCCAiIwDQYJ KoZIhvcNAQEBBQADggIPADCCAgoCggIBAJoUxJkyK3VKbBhVwQPRmA9MqUOocn16 SOZm5KVPVyR2F9OZ4xIyZTkUalUFGrguoDAyvKAI+AgGRhNJG+kKQ7PLAAEbSWBE gdXNNtSAj4Yvo0Bw3XbxqZM7kBO7GfysKMjqKsEeR0wiwshAQPsBjAYa78ayDRC5 RqN1jR9al65UdLcE5yDbbpMd7GwR3b9ythahsox8PfHL60sZf7NfI4q+SkgbOVzt dxppCZqwZRuMVWdvvQk069UkOYoRXniQEIFU6Ugd8FWIIzleHyKEodTsRhhXUjBS GbA3v+x66mS87r6bE6ffFwLO0reFgfx4a7dMmhd5djrOfZtZ0L8zizXwsyee5j6v iNokciyLHgRfWYHsYZ3OgHC8p7i02Xd9vcCsaPuoGopo0G/+wog289ObTqGbxu28 X8Bk5/kIVkn79LDA4zWz7VwYY0uoK0TxWpdMg2yuvE5nH94qGlnJisopxVhrZ7qH E+QEqUYhelJNCi62Z8gmT0z3d7lmsq9gH23o1Zngdhnygdrm3rh404bjK/xFL6Hf 0YmiYhQw8ydHKGWY8rfhjL8eXl1gURZTqLTZC6J3sF3SAS1hj2nrePsPGt7S1OqI djd/vGLSLz/SGyE9d5sOeTvza9pmKKXKqcvPFbwgF496dZmAu6xtVC+6pa8hOXJW YlC0xn/xXnTFAgMBAAGjUzBRMB0GA1UdDgQWBBRdN8nNGCxpxe0zHXz3BrrtlYvV LjAfBgNVHSMEGDAWgBRdN8nNGCxpxe0zHXz3BrrtlYvVLjAPBgNVHRMBAf8EBTAD AQH/MA0GCSqGSIb3DQEBCwUAA4ICAQB6jtlLzWd6yjbye2SsB04ns6B6WskdOAkk pjGz7MyARCEvgfHh5HtMzBi9l5mxXjMfYuQx3ag75lTSaA/OUgGCQOQygwD6qUXX QKslqCh1EEbNfDUuBt31OhAFECkKl194euhuIjUugyL+D07Oscg+k77WDEesBif0 R8ei+j+AX/sK4RFacFMgAAWHaI3chGu2qrnFHoKEB/R9OUieEb6c8CbVEXyOzCbW xerP1sxPBuqvw5/UMwdafXlVmPfC/7C1dJzdw5/yAE6gwEB0ztaaEMsA22smd8dk NDugbmY9yTLRWFN2XIs9jgCaDM0hZOFDPbxkX7oD30z3FVkbuSII3EK0GAqHYy15 ZLD5xaxolyKOvQwXYoHVJD95KX1OVuNcILsd2iVGAKpI8IWOu2A1Kvq/Kr5qtxRW hcP+nL5XVu/mGP/GABI/zggORdjfAezb9mWi2ozfmSHyJsN8qfVOvK4urDj2YdbR tMybK+X7KpN947oZQwJ8WgfO3mTt4jkYPEFgUyVDFRuMcx25ewxy/5+HcpZvgmKd esPTYnR/q+kdQ+IO2OrOoBGUJ8F7bmiAKVThBWZKUn9jGAym+A4CEMrklCYwqZT5 AuA0rI1AjitrP74YqylXtmP2IUJkxCOXBthnlt1oC2UPYXyACPdp5K4+KZbK/63B WbrO/ELdag== -----END CERTIFICATE----- ------------XnJLe9ZIbbGUYtzPQJ16u1--
{- "data": {
- "id": "remote_system.crt",
- "type": "certificate",
- "attributes": {
- "filename": "remote_system.crt",
- "content": "-----BEGIN CERTIFICATE-----\nMIIFQzCCAyugAwIBAgIUeNS0f9lqaJhC2apc91FbPRBVPNwwDQYJKoZIhvcNAQEL\nBQAwMTEQMA4GA1UEAwwHUm9vdCBDQTEdMBsGA1UECgwUTGltZVBvaW50RW5naW5l\nZXJpbmcwHhcNMjUwNDI5MDA0NzAxWhcNMzAwNDI5MDA0NzAxWjAxMRAwDgYDVQQD\nDAdSb290IENBMR0wGwYDVQQKDBRMaW1lUG9pbnRFbmdpbmVlcmluZzCCAiIwDQYJ\nKoZIhvcNAQEBBQADggIPADCCAgoCggIBAJoUxJkyK3VKbBhVwQPRmA9MqUOocn16\nSOZm5KVPVyR2F9OZ4xIyZTkUalUFGrguoDAyvKAI+AgGRhNJG+kKQ7PLAAEbSWBE\ngdXNNtSAj4Yvo0Bw3XbxqZM7kBO7GfysKMjqKsEeR0wiwshAQPsBjAYa78ayDRC5\nRqN1jR9al65UdLcE5yDbbpMd7GwR3b9ythahsox8PfHL60sZf7NfI4q+SkgbOVzt\ndxppCZqwZRuMVWdvvQk069UkOYoRXniQEIFU6Ugd8FWIIzleHyKEodTsRhhXUjBS\nGbA3v+x66mS87r6bE6ffFwLO0reFgfx4a7dMmhd5djrOfZtZ0L8zizXwsyee5j6v\niNokciyLHgRfWYHsYZ3OgHC8p7i02Xd9vcCsaPuoGopo0G/+wog289ObTqGbxu28\nX8Bk5/kIVkn79LDA4zWz7VwYY0uoK0TxWpdMg2yuvE5nH94qGlnJisopxVhrZ7qH\nE+QEqUYhelJNCi62Z8gmT0z3d7lmsq9gH23o1Zngdhnygdrm3rh404bjK/xFL6Hf\n0YmiYhQw8ydHKGWY8rfhjL8eXl1gURZTqLTZC6J3sF3SAS1hj2nrePsPGt7S1OqI\ndjd/vGLSLz/SGyE9d5sOeTvza9pmKKXKqcvPFbwgF496dZmAu6xtVC+6pa8hOXJW\nYlC0xn/xXnTFAgMBAAGjUzBRMB0GA1UdDgQWBBRdN8nNGCxpxe0zHXz3BrrtlYvV\nLjAfBgNVHSMEGDAWgBRdN8nNGCxpxe0zHXz3BrrtlYvVLjAPBgNVHRMBAf8EBTAD\nAQH/MA0GCSqGSIb3DQEBCwUAA4ICAQB6jtlLzWd6yjbye2SsB04ns6B6WskdOAkk\npjGz7MyARCEvgfHh5HtMzBi9l5mxXjMfYuQx3ag75lTSaA/OUgGCQOQygwD6qUXX\nQKslqCh1EEbNfDUuBt31OhAFECkKl194euhuIjUugyL+D07Oscg+k77WDEesBif0\nR8ei+j+AX/sK4RFacFMgAAWHaI3chGu2qrnFHoKEB/R9OUieEb6c8CbVEXyOzCbW\nxerP1sxPBuqvw5/UMwdafXlVmPfC/7C1dJzdw5/yAE6gwEB0ztaaEMsA22smd8dk\nNDugbmY9yTLRWFN2XIs9jgCaDM0hZOFDPbxkX7oD30z3FVkbuSII3EK0GAqHYy15\nZLD5xaxolyKOvQwXYoHVJD95KX1OVuNcILsd2iVGAKpI8IWOu2A1Kvq/Kr5qtxRW\nhcP+nL5XVu/mGP/GABI/zggORdjfAezb9mWi2ozfmSHyJsN8qfVOvK4urDj2YdbR\ntMybK+X7KpN947oZQwJ8WgfO3mTt4jkYPEFgUyVDFRuMcx25ewxy/5+HcpZvgmKd\nesPTYnR/q+kdQ+IO2OrOoBGUJ8F7bmiAKVThBWZKUn9jGAym+A4CEMrklCYwqZT5\nAuA0rI1AjitrP74YqylXtmP2IUJkxCOXBthnlt1oC2UPYXyACPdp5K4+KZbK/63B\nWbrO/ELdag==\n-----END CERTIFICATE-----\n",
- "description": "New certificate description",
- "created_at": "2026-10-08T01:30:31.094256Z",
- "updated_at": "2026-10-08T01:30:31.094256Z"
}, - "links": {
- "self": "/api/trust_store/remote_system.crt"
}
}
}Shows a certificate from the trust store.
| certificate_filename required | string Example: ca_self.pem certificate filename |
{- "data": {
- "id": "ca_self.pem",
- "type": "certificate",
- "attributes": {
- "filename": "ca_self.pem",
- "content": "-----BEGIN CERTIFICATE-----\nMIIFQzCCAyugAwIBAgIUeNS0f9lqaJhC2apc91FbPRBVPNwwDQYJKoZIhvcNAQEL\nBQAwMTEQMA4GA1UEAwwHUm9vdCBDQTEdMBsGA1UECgwUTGltZVBvaW50RW5naW5l\nZXJpbmcwHhcNMjUwNDI5MDA0NzAxWhcNMzAwNDI5MDA0NzAxWjAxMRAwDgYDVQQD\nDAdSb290IENBMR0wGwYDVQQKDBRMaW1lUG9pbnRFbmdpbmVlcmluZzCCAiIwDQYJ\nKoZIhvcNAQEBBQADggIPADCCAgoCggIBAJoUxJkyK3VKbBhVwQPRmA9MqUOocn16\nSOZm5KVPVyR2F9OZ4xIyZTkUalUFGrguoDAyvKAI+AgGRhNJG+kKQ7PLAAEbSWBE\ngdXNNtSAj4Yvo0Bw3XbxqZM7kBO7GfysKMjqKsEeR0wiwshAQPsBjAYa78ayDRC5\nRqN1jR9al65UdLcE5yDbbpMd7GwR3b9ythahsox8PfHL60sZf7NfI4q+SkgbOVzt\ndxppCZqwZRuMVWdvvQk069UkOYoRXniQEIFU6Ugd8FWIIzleHyKEodTsRhhXUjBS\nGbA3v+x66mS87r6bE6ffFwLO0reFgfx4a7dMmhd5djrOfZtZ0L8zizXwsyee5j6v\niNokciyLHgRfWYHsYZ3OgHC8p7i02Xd9vcCsaPuoGopo0G/+wog289ObTqGbxu28\nX8Bk5/kIVkn79LDA4zWz7VwYY0uoK0TxWpdMg2yuvE5nH94qGlnJisopxVhrZ7qH\nE+QEqUYhelJNCi62Z8gmT0z3d7lmsq9gH23o1Zngdhnygdrm3rh404bjK/xFL6Hf\n0YmiYhQw8ydHKGWY8rfhjL8eXl1gURZTqLTZC6J3sF3SAS1hj2nrePsPGt7S1OqI\ndjd/vGLSLz/SGyE9d5sOeTvza9pmKKXKqcvPFbwgF496dZmAu6xtVC+6pa8hOXJW\nYlC0xn/xXnTFAgMBAAGjUzBRMB0GA1UdDgQWBBRdN8nNGCxpxe0zHXz3BrrtlYvV\nLjAfBgNVHSMEGDAWgBRdN8nNGCxpxe0zHXz3BrrtlYvVLjAPBgNVHRMBAf8EBTAD\nAQH/MA0GCSqGSIb3DQEBCwUAA4ICAQB6jtlLzWd6yjbye2SsB04ns6B6WskdOAkk\npjGz7MyARCEvgfHh5HtMzBi9l5mxXjMfYuQx3ag75lTSaA/OUgGCQOQygwD6qUXX\nQKslqCh1EEbNfDUuBt31OhAFECkKl194euhuIjUugyL+D07Oscg+k77WDEesBif0\nR8ei+j+AX/sK4RFacFMgAAWHaI3chGu2qrnFHoKEB/R9OUieEb6c8CbVEXyOzCbW\nxerP1sxPBuqvw5/UMwdafXlVmPfC/7C1dJzdw5/yAE6gwEB0ztaaEMsA22smd8dk\nNDugbmY9yTLRWFN2XIs9jgCaDM0hZOFDPbxkX7oD30z3FVkbuSII3EK0GAqHYy15\nZLD5xaxolyKOvQwXYoHVJD95KX1OVuNcILsd2iVGAKpI8IWOu2A1Kvq/Kr5qtxRW\nhcP+nL5XVu/mGP/GABI/zggORdjfAezb9mWi2ozfmSHyJsN8qfVOvK4urDj2YdbR\ntMybK+X7KpN947oZQwJ8WgfO3mTt4jkYPEFgUyVDFRuMcx25ewxy/5+HcpZvgmKd\nesPTYnR/q+kdQ+IO2OrOoBGUJ8F7bmiAKVThBWZKUn9jGAym+A4CEMrklCYwqZT5\nAuA0rI1AjitrP74YqylXtmP2IUJkxCOXBthnlt1oC2UPYXyACPdp5K4+KZbK/63B\nWbrO/ELdag==\n-----END CERTIFICATE-----\n",
- "description": "Main CA cert.",
- "created_at": "2026-10-08T01:30:31.223976Z",
- "updated_at": "2026-10-08T01:30:31.223976Z"
}, - "links": {
- "self": "/api/trust_store/ca_self.pem"
}
}
}Delete certificate from the trust store.
| certificate_filename required | string Example: ca_self.pem certificate filename |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find Certificate"
}
}
]
}Updates a certificate in the trust store.
| certificate_filename required | string Example: ca_self.pem certificate filename |
| description | string or null |
| file | string <binary> certificate file (the filename is ignored) |
------------XnJLe9ZIbbGUYtzPQJ16u1 content-disposition: form-data; name="description" Updated certificate description ------------XnJLe9ZIbbGUYtzPQJ16u1 content-disposition: form-data; name="file"; filename="remote_system.crt" content-type: application/x-x509-ca-cert content-length: 1887 -----BEGIN CERTIFICATE----- MIIFQzCCAyugAwIBAgIUeNS0f9lqaJhC2apc91FbPRBVPNwwDQYJKoZIhvcNAQEL BQAwMTEQMA4GA1UEAwwHUm9vdCBDQTEdMBsGA1UECgwUTGltZVBvaW50RW5naW5l ZXJpbmcwHhcNMjUwNDI5MDA0NzAxWhcNMzAwNDI5MDA0NzAxWjAxMRAwDgYDVQQD DAdSb290IENBMR0wGwYDVQQKDBRMaW1lUG9pbnRFbmdpbmVlcmluZzCCAiIwDQYJ KoZIhvcNAQEBBQADggIPADCCAgoCggIBAJoUxJkyK3VKbBhVwQPRmA9MqUOocn16 SOZm5KVPVyR2F9OZ4xIyZTkUalUFGrguoDAyvKAI+AgGRhNJG+kKQ7PLAAEbSWBE gdXNNtSAj4Yvo0Bw3XbxqZM7kBO7GfysKMjqKsEeR0wiwshAQPsBjAYa78ayDRC5 RqN1jR9al65UdLcE5yDbbpMd7GwR3b9ythahsox8PfHL60sZf7NfI4q+SkgbOVzt dxppCZqwZRuMVWdvvQk069UkOYoRXniQEIFU6Ugd8FWIIzleHyKEodTsRhhXUjBS GbA3v+x66mS87r6bE6ffFwLO0reFgfx4a7dMmhd5djrOfZtZ0L8zizXwsyee5j6v iNokciyLHgRfWYHsYZ3OgHC8p7i02Xd9vcCsaPuoGopo0G/+wog289ObTqGbxu28 X8Bk5/kIVkn79LDA4zWz7VwYY0uoK0TxWpdMg2yuvE5nH94qGlnJisopxVhrZ7qH E+QEqUYhelJNCi62Z8gmT0z3d7lmsq9gH23o1Zngdhnygdrm3rh404bjK/xFL6Hf 0YmiYhQw8ydHKGWY8rfhjL8eXl1gURZTqLTZC6J3sF3SAS1hj2nrePsPGt7S1OqI djd/vGLSLz/SGyE9d5sOeTvza9pmKKXKqcvPFbwgF496dZmAu6xtVC+6pa8hOXJW YlC0xn/xXnTFAgMBAAGjUzBRMB0GA1UdDgQWBBRdN8nNGCxpxe0zHXz3BrrtlYvV LjAfBgNVHSMEGDAWgBRdN8nNGCxpxe0zHXz3BrrtlYvVLjAPBgNVHRMBAf8EBTAD AQH/MA0GCSqGSIb3DQEBCwUAA4ICAQB6jtlLzWd6yjbye2SsB04ns6B6WskdOAkk pjGz7MyARCEvgfHh5HtMzBi9l5mxXjMfYuQx3ag75lTSaA/OUgGCQOQygwD6qUXX QKslqCh1EEbNfDUuBt31OhAFECkKl194euhuIjUugyL+D07Oscg+k77WDEesBif0 R8ei+j+AX/sK4RFacFMgAAWHaI3chGu2qrnFHoKEB/R9OUieEb6c8CbVEXyOzCbW xerP1sxPBuqvw5/UMwdafXlVmPfC/7C1dJzdw5/yAE6gwEB0ztaaEMsA22smd8dk NDugbmY9yTLRWFN2XIs9jgCaDM0hZOFDPbxkX7oD30z3FVkbuSII3EK0GAqHYy15 ZLD5xaxolyKOvQwXYoHVJD95KX1OVuNcILsd2iVGAKpI8IWOu2A1Kvq/Kr5qtxRW hcP+nL5XVu/mGP/GABI/zggORdjfAezb9mWi2ozfmSHyJsN8qfVOvK4urDj2YdbR tMybK+X7KpN947oZQwJ8WgfO3mTt4jkYPEFgUyVDFRuMcx25ewxy/5+HcpZvgmKd esPTYnR/q+kdQ+IO2OrOoBGUJ8F7bmiAKVThBWZKUn9jGAym+A4CEMrklCYwqZT5 AuA0rI1AjitrP74YqylXtmP2IUJkxCOXBthnlt1oC2UPYXyACPdp5K4+KZbK/63B WbrO/ELdag== -----END CERTIFICATE----- ------------XnJLe9ZIbbGUYtzPQJ16u1--
{- "data": {
- "id": "remote_system.crt",
- "type": "certificate",
- "attributes": {
- "filename": "remote_system.crt",
- "content": "-----BEGIN CERTIFICATE-----\nMIIFQzCCAyugAwIBAgIUeNS0f9lqaJhC2apc91FbPRBVPNwwDQYJKoZIhvcNAQEL\nBQAwMTEQMA4GA1UEAwwHUm9vdCBDQTEdMBsGA1UECgwUTGltZVBvaW50RW5naW5l\nZXJpbmcwHhcNMjUwNDI5MDA0NzAxWhcNMzAwNDI5MDA0NzAxWjAxMRAwDgYDVQQD\nDAdSb290IENBMR0wGwYDVQQKDBRMaW1lUG9pbnRFbmdpbmVlcmluZzCCAiIwDQYJ\nKoZIhvcNAQEBBQADggIPADCCAgoCggIBAJoUxJkyK3VKbBhVwQPRmA9MqUOocn16\nSOZm5KVPVyR2F9OZ4xIyZTkUalUFGrguoDAyvKAI+AgGRhNJG+kKQ7PLAAEbSWBE\ngdXNNtSAj4Yvo0Bw3XbxqZM7kBO7GfysKMjqKsEeR0wiwshAQPsBjAYa78ayDRC5\nRqN1jR9al65UdLcE5yDbbpMd7GwR3b9ythahsox8PfHL60sZf7NfI4q+SkgbOVzt\ndxppCZqwZRuMVWdvvQk069UkOYoRXniQEIFU6Ugd8FWIIzleHyKEodTsRhhXUjBS\nGbA3v+x66mS87r6bE6ffFwLO0reFgfx4a7dMmhd5djrOfZtZ0L8zizXwsyee5j6v\niNokciyLHgRfWYHsYZ3OgHC8p7i02Xd9vcCsaPuoGopo0G/+wog289ObTqGbxu28\nX8Bk5/kIVkn79LDA4zWz7VwYY0uoK0TxWpdMg2yuvE5nH94qGlnJisopxVhrZ7qH\nE+QEqUYhelJNCi62Z8gmT0z3d7lmsq9gH23o1Zngdhnygdrm3rh404bjK/xFL6Hf\n0YmiYhQw8ydHKGWY8rfhjL8eXl1gURZTqLTZC6J3sF3SAS1hj2nrePsPGt7S1OqI\ndjd/vGLSLz/SGyE9d5sOeTvza9pmKKXKqcvPFbwgF496dZmAu6xtVC+6pa8hOXJW\nYlC0xn/xXnTFAgMBAAGjUzBRMB0GA1UdDgQWBBRdN8nNGCxpxe0zHXz3BrrtlYvV\nLjAfBgNVHSMEGDAWgBRdN8nNGCxpxe0zHXz3BrrtlYvVLjAPBgNVHRMBAf8EBTAD\nAQH/MA0GCSqGSIb3DQEBCwUAA4ICAQB6jtlLzWd6yjbye2SsB04ns6B6WskdOAkk\npjGz7MyARCEvgfHh5HtMzBi9l5mxXjMfYuQx3ag75lTSaA/OUgGCQOQygwD6qUXX\nQKslqCh1EEbNfDUuBt31OhAFECkKl194euhuIjUugyL+D07Oscg+k77WDEesBif0\nR8ei+j+AX/sK4RFacFMgAAWHaI3chGu2qrnFHoKEB/R9OUieEb6c8CbVEXyOzCbW\nxerP1sxPBuqvw5/UMwdafXlVmPfC/7C1dJzdw5/yAE6gwEB0ztaaEMsA22smd8dk\nNDugbmY9yTLRWFN2XIs9jgCaDM0hZOFDPbxkX7oD30z3FVkbuSII3EK0GAqHYy15\nZLD5xaxolyKOvQwXYoHVJD95KX1OVuNcILsd2iVGAKpI8IWOu2A1Kvq/Kr5qtxRW\nhcP+nL5XVu/mGP/GABI/zggORdjfAezb9mWi2ozfmSHyJsN8qfVOvK4urDj2YdbR\ntMybK+X7KpN947oZQwJ8WgfO3mTt4jkYPEFgUyVDFRuMcx25ewxy/5+HcpZvgmKd\nesPTYnR/q+kdQ+IO2OrOoBGUJ8F7bmiAKVThBWZKUn9jGAym+A4CEMrklCYwqZT5\nAuA0rI1AjitrP74YqylXtmP2IUJkxCOXBthnlt1oC2UPYXyACPdp5K4+KZbK/63B\nWbrO/ELdag==\n-----END CERTIFICATE-----\n",
- "description": "Updated certificate description",
- "created_at": "2026-10-08T01:30:31.810367Z",
- "updated_at": "2026-10-08T01:30:31.810367Z"
}, - "links": {
- "self": "/api/trust_store/remote_system.crt"
}
}
}Updates the system licence.
| licence | string |
------------XnJLe9ZIbbGUYtzPQJ16u1 content-disposition: form-data; name="licence"; filename="expired_opschain.licence" content-type: application/json content-length: 924 {"data":{"license_issuer":"LimePoint Pty Ltd","license_issuer_contact":"support@limepoint.com","license_version":"1","customer_identifier":"Engineering","start_date":"2023-11-14T00:00:00Z","end_date":"2024-02-14T00:00:00Z"},"signature":"m/hevqjjrYYjOS8ZtgVGGerm028UpKWw/I1cGB4vcJCwI805OtAo1PmszCxWQGOXilgAqyLERLluimRBckFYVL8yx7+rTFxF4D13FqwbwRL5HcKKkV1wwGgzuMpaGE8JGpAq/CkBq6l3xL+jPv/CSYaEyE55+20UdmkZdkvR2vKoJtqDzA1q/4T9tiPA0YIKDjjxSasLBpqokl0iUuaDWksaIhXjdsKmj0FSPfVD2VyPyrBSc1sv0pR+qz98Ny9ef7t6/pIaphLo8Yaa2dnJykeXtAWiaLe+25/OWxEHZoZBvKjentD5dzvqiA8Xo1qhm/tMurTQq4BGJvWYK70LQY9EXlxd+1XLbFX0qdNBNFnzf+rjbGfrLIMw2NFhsODDordSh5P3xNGGG4JyXrwXVRPUaw30celB+uYK3vvDzis0DSBXSA+D9JV3E9YxbI4xuT9Kf+bl0+cr/BajEBhuzATk30a8y5Zqn2MfCBmMb1iLkoFWWvFA+cfUsKsWk3O4YDmR3paOz+HVrSA5HlwaOMOU/P15/q5YFfN6ZEz4DW28I+lfFE3PtgkCsjcPCd99Ca4ZSmiok/l55zRxxrYl6Xc1TNOuq58yp05U798VaEEvmCaVvp5Fk/+TrbGMWKUlPPvc86RzsOlI8Qkdn75SJM3WMEl931m4A52g6jF6+T0="} ------------XnJLe9ZIbbGUYtzPQJ16u1--
{- "data": {
- "id": "expired_opschain.licence",
- "type": "licence",
- "attributes": {
- "licence": "licence data"
}
}
}Shows the current system configuration node.
| include | string Example: include=settings Include the settings in the response |
| fields[<resource_type>] |
{- "data": {
- "id": "01a11921-f2b4-7013-be7a-cf26852f2156",
- "type": "system_configuration",
- "attributes": {
- "code": "system",
- "name": "System Configuration",
- "description": "System configuration node"
}, - "relationships": {
- "settings": {
- "data": {
- "id": "01a11921-f2c6-7dc7-8a02-deda0fe3449c",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-f2c6-7dc7-8a02-deda0fe3449c"
}
}, - "properties": {
- "data": {
- "id": "01a11921-f2bb-76d3-8f1b-fdabdeb6d86f",
- "type": "properties"
}, - "links": {
- "related": "/api/properties/01a11921-f2bb-76d3-8f1b-fdabdeb6d86f"
}
}
}, - "links": {
- "self": "/api/system_configuration",
- "settings": "/api/settings/01a11921-f2c6-7dc7-8a02-deda0fe3449c",
- "properties": "/api/properties/01a11921-f2bb-76d3-8f1b-fdabdeb6d86f"
}, - "meta": {
- "can_have_changes": false,
- "can_have_children": false,
- "can_have_properties": true,
- "can_have_settings": true,
- "can_have_templates": false,
- "requires_template": false,
- "child_node_types": [ ],
- "can_have_workflows": false,
- "can_have_actions": false,
- "authorisations": {
- "properties": {
- "read": true,
- "update": true
}, - "settings": {
- "read": true,
- "update": true
}, - "secrets": {
- "settings": true
}, - "self": {
- "update": true
}
}
}
}, - "included": [
- {
- "id": "01a11921-f2c6-7dc7-8a02-deda0fe3449c",
- "type": "settings",
- "attributes": {
- "data": {
- "allow_parallel": {
- "changes": true,
- "runs_of_same_change": false,
- "runs_of_same_workflow": false
}, - "artefact": {
- "max_file_size": "500Mi",
- "hard_max_file_size": "2Gi",
- "compression": "zstd",
- "compression_level": 3
}, - "auth_strategy": "ldap",
- "enable_basic_auth": true,
- "token": {
- "secret_key": "{AES2}abFzy97lFpAXOmqGk4u8uw=={/IV}U29+tiIqQsTFQxPXoNx/l8rDuV2atI+kyWmktlb8Xd2koBM+aHqDCAt3CR4EDSFE/8W7LRYjI6nSju5EvvrI052GyV5k5kPKgkgzbULC2XKJ4++byi/nrsWz9bdrjW/Ezk9wtirAxeSxRAV91x4VqSE5EtiC5RWcphj8dJD26KP8Ilr2si8luTmpiErG2FRSr",
- "access_expiry": 240,
- "refresh_expiry": 10080,
- "enable_cookies": true
}, - "product_name": "OpsChain",
- "api_autoscaler": {
- "mode": "active",
- "min_workers": 3,
- "max_workers": 14
}, - "build_service": {
- "max_image_build_retries": 3,
- "max_concurrent_image_builds": 8,
- "image_build_throttle_delay": 2
}, - "concurrent": {
- "refresh_limit": 2,
- "runner_limit": 6,
- "mintmodel_limit": 5,
- "agent_limit": 5
}, - "executor_pool": {
- "enabled": false,
- "filesystem_isolation_scope": "change",
- "idle_timeout": 1800,
- "keep_alive": false,
- "max_idle_slots": 10,
- "separate_creators": false,
- "sharing_scope": "asset"
}, - "git_remote": {
- "fetch_lock_timeout": 300,
- "fetch_stale_threshold": 3,
- "periodic_fetch_interval": 900,
- "periodic_fetch_summary": {
- "enabled": true,
- "interval": 86400
}, - "mountable": null,
- "ssh": {
- "connect_timeout": 10,
- "server_alive_interval": 30,
- "server_alive_count_max": 3
}
}, - "log_step_pod_events": false,
- "agent": {
- "repository": "limepoint",
- "name": "opschain-runner-enterprise",
- "image_tag": "local",
- "script_path": "/opt/opschain/agent.sh",
- "disable_host_alias": false
}, - "runner": {
- "repository": "limepoint",
- "name": "opschain-runner-enterprise",
- "image_tag": "local",
- "action_server_idle_timeout": 600,
- "node_selector": "{}",
- "reuse_actions_rb": true,
- "use_fork_for_mintpress_ctl_rb": true
}, - "parallel_change_worker_steps": 10,
- "repo_folder": ".opschain",
- "ldap": {
- "cache_ttl": 60,
- "refresh_interval": 14400,
- "search_timeout": 30,
- "refresh_search_timeout": 300,
- "hc_user": "{AES2}fyazXAkdiPJYZ9WBocbHnA=={/IV}UlWvokamsnoA8Ixthnym+KA==",
- "enable_ssl": false,
- "host": "opschain-ldap",
- "port": 389,
- "password": "{AES2}Kc152IUGcCQd2fL0vv1nMQ=={/IV}UALgWQqYhNT9VW+PqEX5JDg==",
- "mail_attribute": "mail",
- "use_admin_to_bind": true,
- "groups_filter": "(objectClass=groupOfNames)",
- "users_filter": "(objectClass=inetOrgPerson)",
- "new_group_object_class": [
- "groupOfNames"
], - "new_user_object_class": [
- "inetOrgPerson",
- "top"
], - "new_org_unit_object_class": [
- "organizationalUnit",
- "top"
], - "logging_enabled": true,
- "admin": "cn=admin,dc=opschain,dc=io",
- "base_dn": "dc=opschain,dc=io",
- "group_attribute": "member",
- "group_base": "ou=groups,dc=opschain,dc=io",
- "user_attribute": "uid",
- "user_base": "ou=test,dc=opschain,dc=io",
- "display_name_attribute": "cn",
- "first_name_attribute": "givenName",
- "last_name_attribute": "sn"
}, - "image_reuse": {
- "enabled": true,
- "ttl_days": 7,
- "build_relies_on_parents": false
}, - "licence": "",
- "maintenance_mode": "disabled",
- "max_concurrent_steps": 5,
- "log_aggregator_additional_output_settings": "",
- "log_email_events": false,
- "known_hosts": [ ],
- "include_git_history": false,
- "mintmodel_render_timeout": 300,
- "pod_per_change_step": false,
- "poll_interval": 3,
- "pod_templates": {
- "mintmodel_api": {
- "resources": {
- "requests": {
- "memory": "256Mi"
}, - "limits": {
- "memory": "2Gi"
}
}
}, - "change_worker": {
- "resources": {
- "requests": {
- "cpu": "100m",
- "memory": "256Mi"
}, - "limits": {
- "memory": "4Gi"
}
}
}, - "step_runner": {
- "resources": {
- "requests": {
- "cpu": "100m",
- "memory": "256Mi"
}, - "limits": {
- "memory": "4Gi"
}
}
}, - "generate_actions": {
- "resources": {
- "requests": {
- "cpu": "100m",
- "memory": "256Mi"
}, - "limits": {
- "memory": "4Gi"
}
}
}, - "agent": {
- "resources": {
- "requests": {
- "cpu": "100m",
- "memory": "256Mi"
}, - "limits": {
- "memory": "4Gi"
}
}
}
}, - "resource_limits": {
- "max_pod_memory": "8Gi"
}, - "requires_approval_from": [ ],
- "vault": { },
- "version": "local",
- "zstd_compression_level": 3
}, - "version": 1,
- "created_at": "2026-10-08T01:30:17.669480Z"
}, - "relationships": {
- "owner": {
- "links": {
- "owner": "/api/system_configuration"
}
}
}, - "links": {
- "self": "/api/settings/01a11921-f2c6-7dc7-8a02-deda0fe3449c",
- "current_version": "/api/settings/01a11921-f2c6-7dc7-8a02-deda0fe3449c/versions/1",
- "versions": "/api/settings/01a11921-f2c6-7dc7-8a02-deda0fe3449c/versions"
}
}
]
}Returns every database cluster that has registered itself, whether its workers are currently running work and how its copy of the database is keeping up. The replication status is either primary, streaming (up to date), lagging (behind and still catching up), disconnected (a replication slot exists but nothing is attached to it) or lost (too far behind to catch up, so its copy has to be rebuilt). It is only reported for what the primary database can see, so it is absent for a database cluster that streams from another replica rather than from the primary.
{- "data": [
- {
- "id": "opschain-db",
- "type": "cluster",
- "attributes": {
- "name": "opschain-db",
- "role": "primary",
- "cordon_reason": null,
- "consuming_work": true,
- "cordoned": false,
- "cordoned_by": null,
- "replication_status": "primary",
- "replication_lag_seconds": null,
- "work_in_progress": {
- "changes": 0,
- "agents": 0,
- "background_tasks": 0
}, - "last_worker_seen_at": "2026-10-08T01:27:25.849308Z",
- "api_started_at": "2026-10-08T01:27:25.835498Z",
- "cordoned_at": null
}
}
], - "meta": {
- "authorisations": {
- "cordon": true
}
}
}Cordons a site so it takes no new work, or uncordons it so it takes work again. Work already running in a cordoned site carries on there until it finishes, including its running agents, and is reported in each site's work_in_progress. A site cannot be cordoned while no other site is taking work.
| name required | string The name of the site (its database cluster) |
required | object |
{- "data": {
- "attributes": {
- "cordoned": true,
- "cordon_reason": "Disaster recovery test"
}
}
}{- "data": {
- "id": "opschain-db",
- "type": "cluster",
- "attributes": {
- "name": "opschain-db",
- "role": "primary",
- "cordon_reason": "Disaster recovery test",
- "consuming_work": true,
- "cordoned": true,
- "cordoned_by": "logged_in_user",
- "replication_status": "primary",
- "replication_lag_seconds": null,
- "work_in_progress": {
- "changes": 0,
- "agents": 0,
- "background_tasks": 0
}, - "last_worker_seen_at": "2026-10-08T01:27:26.045989Z",
- "api_started_at": "2026-10-08T01:27:26.045087Z",
- "cordoned_at": "2026-10-08T01:27:26.068009Z"
}
}
}Returns status information about the OpsChain database.
{- "data": [
- {
- "id": "0",
- "type": "database_status",
- "attributes": {
- "version": "18.6",
- "uptime": 2469,
- "database_size": "15 MB",
- "connections": {
- "active": 1,
- "idle": 3,
- "max_configured": 100
}, - "connection_settings": {
- "pgdb": "opschain",
- "pghost": "opschain-db",
- "pgport": 5432
}, - "table_sizes": [
- {
- "name": "steps",
- "size": "240 kB"
}, - {
- "name": "workflow_steps",
- "size": "224 kB"
}, - {
- "name": "changes",
- "size": "216 kB"
}, - {
- "name": "nodes",
- "size": "216 kB"
}, - {
- "name": "node_background_tasks",
- "size": "184 kB"
}, - {
- "name": "que_job_history",
- "size": "144 kB"
}, - {
- "name": "policy_assignments",
- "size": "128 kB"
}, - {
- "name": "template_versions",
- "size": "120 kB"
}, - {
- "name": "events",
- "size": "120 kB"
}, - {
- "name": "template_version_history",
- "size": "112 kB"
}, - {
- "name": "workflows",
- "size": "112 kB"
}, - {
- "name": "templates",
- "size": "112 kB"
}, - {
- "name": "policy_rules",
- "size": "104 kB"
}, - {
- "name": "users",
- "size": "104 kB"
}, - {
- "name": "schema_migrations",
- "size": "104 kB"
}, - {
- "name": "authorisation_rules",
- "size": "104 kB"
}, - {
- "name": "workflow_versions",
- "size": "96 kB"
}, - {
- "name": "workflow_runs",
- "size": "96 kB"
}, - {
- "name": "mintmodel_history",
- "size": "96 kB"
}, - {
- "name": "que_jobs",
- "size": "96 kB"
}, - {
- "name": "bookmarks",
- "size": "80 kB"
}, - {
- "name": "solid_cache_entries",
- "size": "80 kB"
}, - {
- "name": "authorisation_policies",
- "size": "80 kB"
}, - {
- "name": "scheduled_activities",
- "size": "72 kB"
}, - {
- "name": "step_properties_versions",
- "size": "72 kB"
}, - {
- "name": "settings",
- "size": "64 kB"
}, - {
- "name": "commits",
- "size": "64 kB"
}, - {
- "name": "remote_runner_assignments",
- "size": "48 kB"
}, - {
- "name": "log_lines",
- "size": "48 kB"
}, - {
- "name": "mintmodels",
- "size": "48 kB"
}, - {
- "name": "notification_channels",
- "size": "48 kB"
}, - {
- "name": "remote_runner_targets",
- "size": "48 kB"
}, - {
- "name": "settings_versions",
- "size": "48 kB"
}, - {
- "name": "properties_versions",
- "size": "48 kB"
}, - {
- "name": "git_remotes",
- "size": "48 kB"
}, - {
- "name": "properties",
- "size": "48 kB"
}, - {
- "name": "asset_mintmodel_actions",
- "size": "48 kB"
}, - {
- "name": "ldap_directory_entries",
- "size": "48 kB"
}, - {
- "name": "cluster_registrations",
- "size": "48 kB"
}, - {
- "name": "base_event_subscribers",
- "size": "40 kB"
}, - {
- "name": "remote_runner_control_instructions",
- "size": "40 kB"
}, - {
- "name": "agent_statuses",
- "size": "40 kB"
}, - {
- "name": "que_scheduler_audit_enqueued",
- "size": "40 kB"
}, - {
- "name": "executor_pool_slots",
- "size": "40 kB"
}, - {
- "name": "base_event_filters",
- "size": "32 kB"
}, - {
- "name": "ar_internal_metadata",
- "size": "32 kB"
}, - {
- "name": "pod_cap_claims",
- "size": "32 kB"
}, - {
- "name": "active_storage_attachments",
- "size": "32 kB"
}, - {
- "name": "active_storage_postgres_large_objects",
- "size": "32 kB"
}, - {
- "name": "artefacts",
- "size": "32 kB"
}, - {
- "name": "certificates",
- "size": "32 kB"
}, - {
- "name": "que_job_worker_hostname",
- "size": "32 kB"
}, - {
- "name": "git_remote_cluster_fetches",
- "size": "32 kB"
}, - {
- "name": "que_lockers",
- "size": "32 kB"
}, - {
- "name": "notification_jobs",
- "size": "32 kB"
}, - {
- "name": "reusable_runner_images",
- "size": "32 kB"
}, - {
- "name": "resource_slots",
- "size": "32 kB"
}, - {
- "name": "active_storage_variant_records",
- "size": "24 kB"
}, - {
- "name": "background_data_migrations",
- "size": "24 kB"
}, - {
- "name": "step_status_events",
- "size": "24 kB"
}, - {
- "name": "user_preferences",
- "size": "24 kB"
}, - {
- "name": "artefact_loads",
- "size": "24 kB"
}, - {
- "name": "background_schema_migrations",
- "size": "24 kB"
}, - {
- "name": "active_storage_blobs",
- "size": "24 kB"
}, - {
- "name": "remote_runner_target_scopes",
- "size": "24 kB"
}, - {
- "name": "rule_change_matches",
- "size": "24 kB"
}, - {
- "name": "data_cleanup_definitions",
- "size": "24 kB"
}, - {
- "name": "que_values",
- "size": "16 kB"
}, - {
- "name": "authentication_tokens",
- "size": "16 kB"
}, - {
- "name": "rule_node_matches",
- "size": "16 kB"
}, - {
- "name": "rule_workflow_matches",
- "size": "16 kB"
}, - {
- "name": "que_scheduler_audit",
- "size": "8192 bytes"
}, - {
- "name": "queued_mintmodel_step_jobs",
- "size": "0 bytes"
}, - {
- "name": "scheduled_activity_que_jobs",
- "size": "0 bytes"
}, - {
- "name": "queued_que_jobs",
- "size": "0 bytes"
}, - {
- "name": "que_live_jobs",
- "size": "0 bytes"
}, - {
- "name": "log_lines_incoming",
- "size": "0 bytes"
}, - {
- "name": "node_background_task_que_jobs",
- "size": "0 bytes"
}, - {
- "name": "jobs",
- "size": "0 bytes"
}, - {
- "name": "workflow_run_activities",
- "size": "0 bytes"
}, - {
- "name": "change_activities",
- "size": "0 bytes"
}, - {
- "name": "data_cleanup_definition_que_jobs",
- "size": "0 bytes"
}, - {
- "name": "queued_step_jobs",
- "size": "0 bytes"
}, - {
- "name": "change_parents",
- "size": "0 bytes"
}
], - "statistics_freshness": [
- {
- "name": "commits",
- "estimated_rows": null,
- "modifications_since_analyze": 35,
- "last_analyzed_at": null
}, - {
- "name": "git_remotes",
- "estimated_rows": null,
- "modifications_since_analyze": 33,
- "last_analyzed_at": null
}, - {
- "name": "workflow_steps",
- "estimated_rows": null,
- "modifications_since_analyze": 33,
- "last_analyzed_at": null
}, - {
- "name": "template_versions",
- "estimated_rows": null,
- "modifications_since_analyze": 33,
- "last_analyzed_at": null
}, - {
- "name": "templates",
- "estimated_rows": null,
- "modifications_since_analyze": 33,
- "last_analyzed_at": null
}, - {
- "name": "template_version_history",
- "estimated_rows": null,
- "modifications_since_analyze": 28,
- "last_analyzed_at": null
}, - {
- "name": "steps",
- "estimated_rows": null,
- "modifications_since_analyze": 16,
- "last_analyzed_at": null
}, - {
- "name": "workflow_versions",
- "estimated_rows": null,
- "modifications_since_analyze": 8,
- "last_analyzed_at": null
}, - {
- "name": "changes",
- "estimated_rows": null,
- "modifications_since_analyze": 8,
- "last_analyzed_at": null
}, - {
- "name": "step_properties_versions",
- "estimated_rows": null,
- "modifications_since_analyze": 6,
- "last_analyzed_at": null
}, - {
- "name": "workflows",
- "estimated_rows": null,
- "modifications_since_analyze": 6,
- "last_analyzed_at": null
}, - {
- "name": "mintmodel_history",
- "estimated_rows": null,
- "modifications_since_analyze": 5,
- "last_analyzed_at": null
}, - {
- "name": "rule_node_matches",
- "estimated_rows": null,
- "modifications_since_analyze": 5,
- "last_analyzed_at": null
}, - {
- "name": "mintmodels",
- "estimated_rows": null,
- "modifications_since_analyze": 3,
- "last_analyzed_at": null
}, - {
- "name": "workflow_runs",
- "estimated_rows": null,
- "modifications_since_analyze": 3,
- "last_analyzed_at": null
}, - {
- "name": "ar_internal_metadata",
- "estimated_rows": null,
- "modifications_since_analyze": 2,
- "last_analyzed_at": null
}, - {
- "name": "policy_rules",
- "estimated_rows": null,
- "modifications_since_analyze": 2,
- "last_analyzed_at": null
}, - {
- "name": "rule_change_matches",
- "estimated_rows": null,
- "modifications_since_analyze": 2,
- "last_analyzed_at": null
}, - {
- "name": "scheduled_activities",
- "estimated_rows": null,
- "modifications_since_analyze": 2,
- "last_analyzed_at": null
}, - {
- "name": "notification_channels",
- "estimated_rows": null,
- "modifications_since_analyze": 2,
- "last_analyzed_at": null
}, - {
- "name": "bookmarks",
- "estimated_rows": null,
- "modifications_since_analyze": 2,
- "last_analyzed_at": null
}, - {
- "name": "authorisation_rules",
- "estimated_rows": null,
- "modifications_since_analyze": 2,
- "last_analyzed_at": null
}, - {
- "name": "notification_jobs",
- "estimated_rows": null,
- "modifications_since_analyze": 2,
- "last_analyzed_at": null
}, - {
- "name": "data_cleanup_definitions",
- "estimated_rows": null,
- "modifications_since_analyze": 1,
- "last_analyzed_at": null
}, - {
- "name": "authentication_tokens",
- "estimated_rows": null,
- "modifications_since_analyze": 1,
- "last_analyzed_at": null
}, - {
- "name": "log_lines",
- "estimated_rows": null,
- "modifications_since_analyze": 1,
- "last_analyzed_at": null
}, - {
- "name": "remote_runner_targets",
- "estimated_rows": null,
- "modifications_since_analyze": 1,
- "last_analyzed_at": null
}, - {
- "name": "base_event_subscribers",
- "estimated_rows": null,
- "modifications_since_analyze": 1,
- "last_analyzed_at": null
}, - {
- "name": "certificates",
- "estimated_rows": null,
- "modifications_since_analyze": 1,
- "last_analyzed_at": null
}, - {
- "name": "events",
- "estimated_rows": null,
- "modifications_since_analyze": 1,
- "last_analyzed_at": null
}, - {
- "name": "policy_assignments",
- "estimated_rows": null,
- "modifications_since_analyze": 1,
- "last_analyzed_at": null
}, - {
- "name": "base_event_filters",
- "estimated_rows": null,
- "modifications_since_analyze": 1,
- "last_analyzed_at": null
}, - {
- "name": "artefacts",
- "estimated_rows": null,
- "modifications_since_analyze": 1,
- "last_analyzed_at": null
}, - {
- "name": "agent_statuses",
- "estimated_rows": null,
- "modifications_since_analyze": 1,
- "last_analyzed_at": null
}, - {
- "name": "remote_runner_target_scopes",
- "estimated_rows": null,
- "modifications_since_analyze": 1,
- "last_analyzed_at": null
}, - {
- "name": "authorisation_policies",
- "estimated_rows": null,
- "modifications_since_analyze": 1,
- "last_analyzed_at": null
}, - {
- "name": "background_schema_migrations",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "background_data_migrations",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "executor_pool_slots",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "pod_cap_claims",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "step_status_events",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "active_storage_attachments",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "active_storage_postgres_large_objects",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "active_storage_blobs",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "asset_mintmodel_actions",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "artefact_loads",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "active_storage_variant_records",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "que_job_history",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "que_job_worker_hostname",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "ldap_directory_entries",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "git_remote_cluster_fetches",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "que_scheduler_audit",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "que_scheduler_audit_enqueued",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "que_lockers",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "que_values",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "remote_runner_control_instructions",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "remote_runner_assignments",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "reusable_runner_images",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "rule_workflow_matches",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "solid_cache_entries",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "user_preferences",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "resource_slots",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "cluster_registrations",
- "estimated_rows": null,
- "modifications_since_analyze": 0,
- "last_analyzed_at": null
}, - {
- "name": "schema_migrations",
- "estimated_rows": 537,
- "modifications_since_analyze": 0,
- "last_analyzed_at": "2026-10-08T00:48:10.839569+00:00"
}, - {
- "name": "nodes",
- "estimated_rows": null,
- "modifications_since_analyze": 16,
- "last_analyzed_at": "2026-10-08T01:27:20.545954+00:00"
}, - {
- "name": "users",
- "estimated_rows": null,
- "modifications_since_analyze": 33,
- "last_analyzed_at": "2026-10-08T01:27:20.554606+00:00"
}, - {
- "name": "node_background_tasks",
- "estimated_rows": null,
- "modifications_since_analyze": 20,
- "last_analyzed_at": "2026-10-08T01:27:20.558993+00:00"
}, - {
- "name": "properties",
- "estimated_rows": null,
- "modifications_since_analyze": 24,
- "last_analyzed_at": "2026-10-08T01:27:20.563668+00:00"
}, - {
- "name": "settings",
- "estimated_rows": null,
- "modifications_since_analyze": 23,
- "last_analyzed_at": "2026-10-08T01:27:20.565094+00:00"
}, - {
- "name": "settings_versions",
- "estimated_rows": null,
- "modifications_since_analyze": 23,
- "last_analyzed_at": "2026-10-08T01:27:20.565987+00:00"
}, - {
- "name": "que_jobs",
- "estimated_rows": null,
- "modifications_since_analyze": 32,
- "last_analyzed_at": "2026-10-08T01:27:20.576693+00:00"
}, - {
- "name": "properties_versions",
- "estimated_rows": null,
- "modifications_since_analyze": 24,
- "last_analyzed_at": "2026-10-08T01:27:20.583538+00:00"
}
]
}, - "links": {
- "self": "/api/admin/database"
}
}
]
}Returns whether the OpsChain instance is currently drained (no active changes, workflow runs, or node background tasks), along with the active count for each. Intended to be checked before proceeding with a maintenance-mode upgrade window, to confirm nothing is still in-flight.
{- "data": [
- {
- "id": "0",
- "type": "drain_status",
- "attributes": {
- "drained": true,
- "active_counts": {
- "changes": 0,
- "workflow_runs": 0,
- "node_background_tasks": 0
}
}, - "links": {
- "self": "/api/admin/drain_status"
}
}
]
}Returns every node background task (generate actions requests, MintModel concretise tasks, agent image builds, agent start/stop tasks) that has not yet finished, across all nodes.
{- "data": [ ]
}{- "data": [
- {
- "id": "opschain.limepoint.engineering",
- "type": "node_status",
- "attributes": {
- "name": "opschain.limepoint.engineering",
- "creation_timestamp": "2024-03-05T00:03:56Z",
- "kubelet_version": "v1.29.6+k3s2",
- "container_runtime_version": "docker://24.0.2",
- "os": "linux",
- "os_image": "Fedora Linux 36 (Server Edition)",
- "architecture": "amd64",
- "roles": [
- "control-plane",
- "master"
], - "metrics": {
- "cpu": "100m",
- "memory": "100Mi"
}, - "conditions": [
- {
- "type": "MemoryPressure",
- "status": "False",
- "reason": "KubeletHasSufficientMemory",
- "message": "kubelet has sufficient memory available",
- "last_heartbeat_time": "2025-01-01T00:00:00Z",
- "last_transition_time": "2024-09-30T12:00:00Z"
}, - {
- "type": "DiskPressure",
- "status": "False",
- "reason": "KubeletHasNoDiskPressure",
- "message": "kubelet has no disk pressure",
- "last_heartbeat_time": "2025-01-01T00:00:00Z",
- "last_transition_time": "2024-09-30T12:00:00Z"
}, - {
- "type": "PIDPressure",
- "status": "False",
- "reason": "KubeletHasSufficientPID",
- "message": "kubelet has sufficient PID available",
- "last_heartbeat_time": "2025-01-01T00:00:00Z",
- "last_transition_time": "2024-09-30T12:00:00Z"
}, - {
- "type": "Ready",
- "status": "True",
- "reason": "KubeletReady",
- "message": "kubelet is posting ready status",
- "last_heartbeat_time": "2025-01-01T00:00:00Z",
- "last_transition_time": "2024-09-30T12:00:00Z"
}
], - "capacity": {
- "cpu": "16",
- "memory": "131907404Ki",
- "pods": "110",
- "ephemeral_storage": "103757316Ki"
}, - "allocatable": {
- "cpu": "16",
- "memory": "131907404Ki",
- "pods": "110",
- "ephemeral_storage": "100935116926"
}, - "images": [
- {
- "names": [
- "registry.local.gd:3443/opschain/runner@sha256:256",
- "registry.local.gd:3443/opschain/runner:01234-id"
], - "size_bytes": 2615498231
}
]
}
}
]
}Returns the status of the OpsChain queues and details about their jobs. This covers the shared default queue and the per cluster queues, one for each cluster in the topology.
{- "data": [
- {
- "id": "default",
- "type": "queue_status",
- "attributes": {
- "name": "default",
- "summary": {
- "total": 10,
- "running": 2,
- "failed": 1,
- "scheduled": 3,
- "finished": 4,
- "pending": 1
}, - "jobs": [
- {
- "job_class": "ChangeJob",
- "total": 5,
- "running": 1,
- "failed": 1,
- "scheduled": 2,
- "finished": 3,
- "pending": 0,
- "next_run_at": "2026-10-08T13:27:28.291+11:00",
- "last_run_at": "2026-10-08T11:27:28.291+11:00",
- "highest_error_count": 2,
- "description": "Verifies if a change can be started based on its owner configuration and, if so, starts it."
}, - {
- "job_class": "DataCleanupJob",
- "total": 5,
- "running": 0,
- "failed": 0,
- "scheduled": 0,
- "finished": 0,
- "pending": 0,
- "next_run_at": "2026-10-08T13:27:28.291+11:00",
- "last_run_at": "2026-10-08T10:27:28.291+11:00",
- "highest_error_count": 0,
- "description": "Cleans up data based on a data cleanup definition."
}
]
}
}
]
}Returns the status of the actions_refresh, runner, mintmodel_concretise, and image_build slot pools, including per-slot occupancy.
{- "data": [
- {
- "id": "runner",
- "type": "resource_slot_pool",
- "attributes": {
- "pool": "runner",
- "configured_limit": 15,
- "row_count": 15,
- "claimed_count": 1,
- "free_count": 14,
- "slots": [
- {
- "slot_number": 1,
- "claimed_kind": "step_runner",
- "claimed_by_resource_id": "70b23534-1c51-41ed-a46d-2c03114196b3",
- "claimed_at": "2026-10-08T12:22:28.477+11:00",
- "node_path": "/projects/opc/environments/dev/assets/env_soa",
- "stale": false,
- "eligible": true
}, - {
- "slot_number": 2,
- "claimed_kind": null,
- "claimed_by_resource_id": null,
- "claimed_at": null,
- "node_path": null,
- "stale": null,
- "eligible": true
}
]
}
}
]
}Returns the status of all the OpsChain API workers in the configured namespace.
{- "data": [
- {
- "id": "opschain-api-worker-1",
- "type": "worker",
- "attributes": {
- "namespace": "opschain",
- "node": "node-1",
- "host_ip": "192.168.1.1",
- "pod_ip": "192.168.1.2",
- "start_time": "2021-01-01T00:00:00Z",
- "state": "Running",
- "image": "opschain-api-worker-image",
- "restart_count": 0,
- "uid": "b2c3d4e5-6f70-4a8b-9c0d-1e2f3a4b5c6d",
- "containers": [
- "opschain-api-worker"
], - "controlled_by": "ReplicaSet/opschain-api-worker-7d9f8b6c5d",
- "labels": {
- "app": "opschain-api-worker"
}
}, - "links": {
- "logs": "/api/admin/pods/opschain-api-worker-1/logs"
}
}
]
}Returns every deployment in the OpsChain Kubernetes namespace, including its replica counts, rollout status and the time it was last restarted.
Notes:
meta.max_replicas.meta.max_replicas is greater than 1 - carries a scale link. A client should use the presence of the link to decide whether to offer scaling, rather than matching on the deployment name.meta.authorisations.restart and meta.authorisations.scale report whether the user may perform those operations, allowing a client to hide the controls it cannot use.{- "data": [
- {
- "id": "opschain-api",
- "type": "deployment",
- "attributes": {
- "namespace": "opschain",
- "uid": "c3d4e5f6-7a8b-4c9d-8e0f-1a2b3c4d5e6f",
- "creation_timestamp": "2021-01-01T00:00:00Z",
- "generation": 3,
- "replicas": 2,
- "strategy": "RollingUpdate",
- "current_replicas": 2,
- "ready_replicas": 2,
- "available_replicas": 2,
- "updated_replicas": 2,
- "observed_generation": 3,
- "revision": "2",
- "restarted_at": "2021-01-02T00:00:00.000Z",
- "labels": {
- "app": "opschain-api"
}, - "selector": {
- "app": "opschain-api"
}, - "containers": [
- {
- "name": "opschain-api",
- "image": "opschain-api-image"
}
], - "conditions": [
- {
- "type": "Available",
- "status": "True",
- "reason": "MinimumReplicasAvailable",
- "message": "Deployment has minimum availability.",
- "last_transition_time": "2021-01-01T00:00:00Z",
- "last_update_time": "2021-01-01T00:00:00Z"
}, - {
- "type": "Progressing",
- "status": "True",
- "reason": "NewReplicaSetAvailable",
- "message": "ReplicaSet \"opschain-api-7d4b9c\" has successfully progressed.",
- "last_transition_time": "2021-01-02T00:00:00Z",
- "last_update_time": "2021-01-02T00:00:00Z"
}
]
}, - "links": { },
- "meta": {
- "max_replicas": 1
}
}, - {
- "id": "opschain-api-worker",
- "type": "deployment",
- "attributes": {
- "namespace": "opschain",
- "uid": "c3d4e5f6-7a8b-4c9d-8e0f-1a2b3c4d5e6f",
- "creation_timestamp": "2021-01-01T00:00:00Z",
- "generation": 3,
- "replicas": 3,
- "strategy": "RollingUpdate",
- "current_replicas": 2,
- "ready_replicas": 2,
- "available_replicas": 2,
- "updated_replicas": 2,
- "observed_generation": 3,
- "revision": "2",
- "restarted_at": "2021-01-02T00:00:00.000Z",
- "labels": {
- "app": "opschain-api"
}, - "selector": {
- "app": "opschain-api"
}, - "containers": [
- {
- "name": "opschain-api",
- "image": "opschain-api-image"
}
], - "conditions": [
- {
- "type": "Available",
- "status": "True",
- "reason": "MinimumReplicasAvailable",
- "message": "Deployment has minimum availability.",
- "last_transition_time": "2021-01-01T00:00:00Z",
- "last_update_time": "2021-01-01T00:00:00Z"
}, - {
- "type": "Progressing",
- "status": "True",
- "reason": "NewReplicaSetAvailable",
- "message": "ReplicaSet \"opschain-api-7d4b9c\" has successfully progressed.",
- "last_transition_time": "2021-01-02T00:00:00Z",
- "last_update_time": "2021-01-02T00:00:00Z"
}
]
}, - "links": {
- "scale": "/api/admin/deployments/opschain-api-worker/scale"
}, - "meta": {
- "max_replicas": 10
}
}
], - "meta": {
- "authorisations": {
- "restart": true,
- "scale": true
}
}
}Performs a rolling restart of a deployment in the OpsChain Kubernetes namespace, replacing each of its pods without changing the deployment configuration.
Notes:
updatable permission on the /admin/deployments/restart authorisation path. A rule on a parent path (e.g. /admin) grants it, and a rule on the restart path itself overrides that parent rule.| name required | string Example: opschain-api deployment name |
{- "data": {
- "id": "opschain-api",
- "type": "deployment",
- "attributes": {
- "namespace": "opschain",
- "uid": "c3d4e5f6-7a8b-4c9d-8e0f-1a2b3c4d5e6f",
- "creation_timestamp": "2021-01-01T00:00:00Z",
- "generation": 3,
- "replicas": 2,
- "strategy": "RollingUpdate",
- "current_replicas": 2,
- "ready_replicas": 2,
- "available_replicas": 2,
- "updated_replicas": 2,
- "observed_generation": 3,
- "revision": "2",
- "restarted_at": "2021-01-02T00:00:00.000Z",
- "labels": {
- "app": "opschain-api"
}, - "selector": {
- "app": "opschain-api"
}, - "containers": [
- {
- "name": "opschain-api",
- "image": "opschain-api-image"
}
], - "conditions": [
- {
- "type": "Available",
- "status": "True",
- "reason": "MinimumReplicasAvailable",
- "message": "Deployment has minimum availability.",
- "last_transition_time": "2021-01-01T00:00:00Z",
- "last_update_time": "2021-01-01T00:00:00Z"
}, - {
- "type": "Progressing",
- "status": "True",
- "reason": "NewReplicaSetAvailable",
- "message": "ReplicaSet \"opschain-api-7d4b9c\" has successfully progressed.",
- "last_transition_time": "2021-01-02T00:00:00Z",
- "last_update_time": "2021-01-02T00:00:00Z"
}
]
}, - "links": { },
- "meta": {
- "max_replicas": 1
}
}
}Sets the number of replicas of a deployment in the OpsChain Kubernetes namespace.
Notes:
updatable permission on the /admin/deployments/scale authorisation path. A rule on a parent path (e.g. /admin) grants it, and a rule on the scale path itself overrides that parent rule.opschain-api-worker, opschain-mintmodel-steps-api deployments can be scaled - every other deployment runs at a single replica and scaling it is rejected.replicas must be a whole number between 0 and the deployment's own maximum, which the list and scale responses report as meta.max_replicas.| name required | string Example: opschain-api-worker deployment name |
required | object |
{- "data": {
- "attributes": {
- "replicas": 3
}
}
}{- "data": {
- "id": "opschain-api-worker",
- "type": "deployment",
- "attributes": {
- "namespace": "opschain",
- "uid": "c3d4e5f6-7a8b-4c9d-8e0f-1a2b3c4d5e6f",
- "creation_timestamp": "2021-01-01T00:00:00Z",
- "generation": 3,
- "replicas": 3,
- "strategy": "RollingUpdate",
- "current_replicas": 2,
- "ready_replicas": 2,
- "available_replicas": 2,
- "updated_replicas": 2,
- "observed_generation": 3,
- "revision": "2",
- "restarted_at": "2021-01-02T00:00:00.000Z",
- "labels": {
- "app": "opschain-api"
}, - "selector": {
- "app": "opschain-api"
}, - "containers": [
- {
- "name": "opschain-api",
- "image": "opschain-api-image"
}
], - "conditions": [
- {
- "type": "Available",
- "status": "True",
- "reason": "MinimumReplicasAvailable",
- "message": "Deployment has minimum availability.",
- "last_transition_time": "2021-01-01T00:00:00Z",
- "last_update_time": "2021-01-01T00:00:00Z"
}, - {
- "type": "Progressing",
- "status": "True",
- "reason": "NewReplicaSetAvailable",
- "message": "ReplicaSet \"opschain-api-7d4b9c\" has successfully progressed.",
- "last_transition_time": "2021-01-02T00:00:00Z",
- "last_update_time": "2021-01-02T00:00:00Z"
}
]
}, - "links": {
- "scale": "/api/admin/deployments/opschain-api-worker/scale"
}, - "meta": {
- "max_replicas": 10
}
}
}Returns every pod in the OpsChain Kubernetes namespace, including the runner, MintModel and OpsChain API worker pods.
Notes:
meta.authorisations.read_logs reports whether the user may fetch the pod logs, allowing a client to hide the logs links it cannot follow.meta.authorisations.delete reports whether the user may delete pods, allowing a client to hide the delete control it cannot use.controlled_by names the Kubernetes controller managing the pod (e.g. ReplicaSet/opschain-api) and is null for the pods OpsChain creates itself.delete link is only present on the pods that can be deleted - see the delete pod endpoint.{- "data": [
- {
- "id": "change-3ecf1a2b-4d5e-4f60-8a71-92b3c4d5e6f7",
- "type": "pod",
- "attributes": {
- "namespace": "opschain",
- "node": "node-1",
- "host_ip": "192.168.1.1",
- "pod_ip": "10.42.0.17",
- "start_time": "2021-01-01T00:00:00Z",
- "state": "Running",
- "image": "opschain-runner-image",
- "restart_count": 0,
- "uid": "a1b2c3d4-5e6f-4a8b-9c0d-1e2f3a4b5c6d",
- "containers": [
- "opschain-runner",
- "opschain-log-forwarder"
], - "controlled_by": null,
- "labels": {
- "app": "opschain-runner"
}
}, - "links": {
- "logs": "/api/admin/pods/change-3ecf1a2b-4d5e-4f60-8a71-92b3c4d5e6f7/logs",
- "delete": "/api/admin/pods/change-3ecf1a2b-4d5e-4f60-8a71-92b3c4d5e6f7"
}
}, - {
- "id": "opschain-api-worker-1",
- "type": "pod",
- "attributes": {
- "namespace": "opschain",
- "node": "node-1",
- "host_ip": "192.168.1.1",
- "pod_ip": "192.168.1.2",
- "start_time": "2021-01-01T00:00:00Z",
- "state": "Running",
- "image": "opschain-api-worker-image",
- "restart_count": 0,
- "uid": "b2c3d4e5-6f70-4a8b-9c0d-1e2f3a4b5c6d",
- "containers": [
- "opschain-api-worker"
], - "controlled_by": "ReplicaSet/opschain-api-worker-7d9f8b6c5d",
- "labels": {
- "app": "opschain-api-worker"
}
}, - "links": {
- "logs": "/api/admin/pods/opschain-api-worker-1/logs"
}
}
], - "meta": {
- "authorisations": {
- "delete": true,
- "read_logs": true
}
}
}Returns the log for a pod in the OpsChain Kubernetes namespace.
Notes:
readable permission on the /admin/pods/logs authorisation path. A rule on a parent path (e.g. /admin) grants it, and a rule on the logs path itself overrides that parent rule.| name required | string Example: change-3ecf1a2b-4d5e-4f60-8a71-92b3c4d5e6f7 pod name |
| container | string Example: container=opschain-runner The container to fetch the log for. Defaults to the pod's first container. The valid values for a pod are listed in the |
| limit | integer [ 1 .. 10000 ] Default: 1000 Example: limit=1000 The maximum number of log lines to return. A 206 response and a |
| filter[logged_at_gt] | string Example: filter[logged_at_gt]=2021-01-01T00:00:01.123456Z-0 Only return log lines logged after this cursor. Supply the |
| download | string Example: download=pod.log Download the entire pod log with the specified file name. The |
{- "data": [
- {
- "id": "2021-01-01T00:00:01.123456Z-0",
- "type": "log_line",
- "attributes": {
- "message": "Starting the OpsChain step runner",
- "logged_at": "2021-01-01T00:00:01.123456Z"
}
}, - {
- "id": "2021-01-01T00:00:02.234567Z-0",
- "type": "log_line",
- "attributes": {
- "message": "Step completed successfully",
- "logged_at": "2021-01-01T00:00:02.234567Z"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}Force deletes a pod in the OpsChain Kubernetes namespace, without waiting out its termination grace period.
Notes:
delete link on a pod in the list pods response identifies the pods this endpoint accepts, so a client does not need its own copy of that rule.| name required | string Example: change-3ecf1a2b-4d5e-4f60-8a71-92b3c4d5e6f7 pod name |
{- "data": {
- "id": "change-3ecf1a2b-4d5e-4f60-8a71-92b3c4d5e6f7",
- "type": "pod",
- "attributes": {
- "namespace": "opschain",
- "node": "node-1",
- "host_ip": "192.168.1.1",
- "pod_ip": "10.42.0.17",
- "start_time": "2021-01-01T00:00:00Z",
- "state": "Running",
- "image": "opschain-runner-image",
- "restart_count": 0,
- "uid": "a1b2c3d4-5e6f-4a8b-9c0d-1e2f3a4b5c6d",
- "containers": [
- "opschain-runner",
- "opschain-log-forwarder"
], - "controlled_by": null,
- "labels": {
- "app": "opschain-runner"
}
}, - "links": {
- "logs": "/api/admin/pods/change-3ecf1a2b-4d5e-4f60-8a71-92b3c4d5e6f7/logs",
- "delete": "/api/admin/pods/change-3ecf1a2b-4d5e-4f60-8a71-92b3c4d5e6f7"
}
}
}Lists all data cleanup definitions.
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[name_eq]=test API filtering guide. Named filters: |
{- "data": [
- {
- "id": "01a11920-71e1-7fd8-b62d-5b8d6490071b",
- "type": "data_cleanup_definition",
- "attributes": {
- "name": "circuit",
- "enabled": true,
- "created_by": "collin-1298",
- "cron_schedule": "0 0 7,14,21,28 * *",
- "repeat": true,
- "maximum_run_count": null,
- "purge_activities": true,
- "purge_events": false,
- "purge_jobs": false,
- "purge_agent_images": false,
- "purge_node_background_tasks": true,
- "purge_artefacts": false,
- "analyze_statistics": false,
- "filters": {
- "changes": {
- "created_at_lt": "2026-10-01T01:28:39.129Z"
}
}, - "node_paths": [
- "/projects/opc/environments/dev"
], - "run_count": 0,
- "created_at": "2026-10-08T01:28:39.136668Z",
- "updated_at": "2026-10-08T01:28:39.136668Z",
- "next_run_at": "2026-10-15T01:28:39.129591Z",
- "run_at": "2026-10-15T01:28:39.129591Z",
- "end_at": "2027-01-06T01:28:39.129635Z"
}, - "links": {
- "self": "/api/data_cleanup_definitions/01a11920-71e1-7fd8-b62d-5b8d6490071b"
}
}
], - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}, - "has_any": true
}
}Notes:
cron_schedule or run_at fields must be provided.filters field are changes, events, jobs, workflow_runs, node_background_tasks, and artefacts. The agent image cleanup job accepts template_version_history and build_agent_image_tasks. Each of these can have ransack filters for the specific type they refer to, except artefacts, whose size_tiers shape is documented separately below.
IMPORTANT: If no filters are provided for a data type, the cleanup will remove all data that matches the node paths.node_paths field is an array of strings. Each string is a path to a node. The path must start with /projects and only contain forward slashes, lowercase letters, numbers and underscores, and optionally a single "%" at the end.
Use the % wildcard to include all nodes under a specific node or node-type, note that this will apply the cleanup to all nodes that are yet to be created, as long as they match the path.purge_node_background_tasks field removes finished node background tasks, along with their log lines and run API key tokens, once a newer task of the same type exists for the template version history.
The latest successful and latest non cancelled generate actions requests, a mintmodel concretise task referenced by any generate actions request, tasks referenced by a change or an agent status, and build agent image tasks whose image has not yet been purged are always retained.purge_artefacts field removes old artefact versions once they exceed a size-tiered retention policy, given via filters.artefacts.size_tiers: an array of { up_to, keep_versions, keep_days } objects, ordered by increasing size. up_to is a Kubernetes-style quantity string (e.g. "10Mi") giving the tier's inclusive upper size bound, or null for the catch-all tier covering anything larger. An artefact version is purged only once it both exceeds its own tier's keep_versions (ranked newest-first per node/code) and is older than its tier's keep_days. When purge_artefacts is true, filters.artefacts.size_tiers must contain at least one tier, otherwise the request is rejected with a 422 error on filters; it is optional when purge_artefacts is false.analyze_statistics field refreshes the PostgreSQL planner statistics of any table whose statistics are stale, after the purges have run. It applies to the whole database, so the node_paths and filters fields are ignored for it.required | object |
{- "data": {
- "attributes": {
- "name": "matrix",
- "enabled": true,
- "node_paths": [ ],
- "filters": { },
- "purge_activities": false,
- "purge_events": false,
- "purge_jobs": true,
- "cron_schedule": "0 0 * * *",
- "run_at": null,
- "end_at": null,
- "maximum_run_count": null,
- "repeat": true,
- "purge_agent_images": true,
- "purge_node_background_tasks": false,
- "analyze_statistics": false,
- "purge_artefacts": false
}
}
}{- "data": {
- "id": "01a11920-7f78-7751-b48c-db26979b9f3d",
- "type": "data_cleanup_definition",
- "attributes": {
- "name": "capacitor",
- "enabled": true,
- "created_by": "logged_in_user",
- "cron_schedule": "0 2 * * *",
- "repeat": true,
- "maximum_run_count": null,
- "purge_activities": true,
- "purge_events": false,
- "purge_jobs": true,
- "purge_agent_images": false,
- "purge_node_background_tasks": false,
- "purge_artefacts": false,
- "analyze_statistics": true,
- "filters": {
- "build_agent_image_tasks": {
- "created_at_days_ago_lteq": 30
}, - "node_background_tasks": {
- "created_at_days_ago_lteq": 90
}, - "artefacts": {
- "size_tiers": [
- {
- "up_to": "10Mi",
- "keep_versions": 20,
- "keep_days": 90
}, - {
- "up_to": "100Mi",
- "keep_versions": 5,
- "keep_days": 30
}, - {
- "up_to": null,
- "keep_versions": 1,
- "keep_days": 7
}
]
}
}, - "node_paths": [ ],
- "run_count": 0,
- "created_at": "2026-10-08T01:28:42.615171Z",
- "updated_at": "2026-10-08T01:28:42.615171Z",
- "next_run_at": "2026-10-08T15:00:00.000000Z",
- "run_at": null,
- "end_at": null
}, - "links": {
- "self": "/api/data_cleanup_definitions/01a11920-7f78-7751-b48c-db26979b9f3d"
}
}, - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Reports how many artefact versions, and how many bytes, a purge_artefacts retention policy would purge for the supplied node paths and size tiers, without purging anything.
Notes:
node_paths and filters.artefacts.size_tiers attributes have the same shape and validation as when creating a data cleanup definition with purge_artefacts set to true.keep_versions newest versions per node and artefact code, and is older than its tier's keep_days.meta object. meta.tiers lists each tier, in order of increasing size, with the versions and bytes it would purge. meta.totals sums them across all tiers.required | object |
{- "data": {
- "attributes": {
- "node_paths": [
- "/projects%"
], - "filters": {
- "artefacts": {
- "size_tiers": [
- {
- "up_to": "10Mi",
- "keep_versions": 20,
- "keep_days": 90
}, - {
- "up_to": null,
- "keep_versions": 1,
- "keep_days": 7
}
]
}
}
}
}
}{- "data": null,
- "meta": {
- "tiers": [
- {
- "up_to": "10Mi",
- "keep_versions": 20,
- "keep_days": 90,
- "versions": 0,
- "bytes": 0
}, - {
- "up_to": null,
- "keep_versions": 1,
- "keep_days": 7,
- "versions": 0,
- "bytes": 0
}
], - "totals": {
- "versions": 0,
- "bytes": 0
}
}
}Shows a data cleanup definition.
| data_cleanup_definition_id required | string Example: 01a1191f-19ac-7924-bc71-ea6f2584725a data cleanup definition id |
{- "data": {
- "id": "01a11920-887b-7a83-863b-e4dbc7f39a77",
- "type": "data_cleanup_definition",
- "attributes": {
- "name": "protocol",
- "enabled": true,
- "created_by": "santos_nienow-1380",
- "cron_schedule": "0 0 7,14,21,28 * *",
- "repeat": true,
- "maximum_run_count": null,
- "purge_activities": true,
- "purge_events": false,
- "purge_jobs": false,
- "purge_agent_images": false,
- "purge_node_background_tasks": false,
- "purge_artefacts": false,
- "analyze_statistics": false,
- "filters": {
- "changes": {
- "created_at_lt": "2026-10-01T01:28:44.916Z"
}
}, - "node_paths": [
- "/projects/opc/environments/dev"
], - "run_count": 0,
- "created_at": "2026-10-08T01:28:44.922720Z",
- "updated_at": "2026-10-08T01:28:44.922720Z",
- "next_run_at": "2026-10-15T01:28:44.916561Z",
- "run_at": "2026-10-15T01:28:44.916561Z",
- "end_at": "2027-01-06T01:28:44.916590Z"
}, - "links": {
- "self": "/api/data_cleanup_definitions/01a11920-887b-7a83-863b-e4dbc7f39a77"
}
}, - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Updates a data cleanup definition.
Notes:
| data_cleanup_definition_id required | string Example: 01a1191f-19ac-7924-bc71-ea6f2584725a data cleanup definition id |
required | object |
{- "data": {
- "attributes": {
- "name": "new_name",
- "run_at": null,
- "end_at": null
}
}
}{- "data": {
- "id": "01a11920-8ac2-7647-82f1-b7af6387e252",
- "type": "data_cleanup_definition",
- "attributes": {
- "name": "new_name",
- "enabled": true,
- "created_by": "marylin_hegmann-1390",
- "cron_schedule": "0 0 7,14,21,28 * *",
- "repeat": true,
- "maximum_run_count": 5,
- "purge_activities": true,
- "purge_events": false,
- "purge_jobs": true,
- "purge_agent_images": false,
- "purge_node_background_tasks": true,
- "purge_artefacts": false,
- "analyze_statistics": false,
- "filters": {
- "changes": {
- "created_at_lt": "2026-10-01T01:28:45.493Z"
}
}, - "node_paths": [
- "/projects/opc/environments/dev"
], - "run_count": 0,
- "created_at": "2026-10-08T01:28:45.505107Z",
- "updated_at": "2026-10-08T01:28:45.525415Z",
- "next_run_at": "2026-10-15T01:28:45.494024Z",
- "run_at": "2026-10-15T01:28:45.494024Z",
- "end_at": "2027-01-06T01:28:45.494044Z"
}, - "links": {
- "self": "/api/data_cleanup_definitions/01a11920-8ac2-7647-82f1-b7af6387e252"
}
}, - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}Delete a data cleanup definition.
| data_cleanup_definition_id required | string Example: 01a1191f-19ac-7924-bc71-ea6f2584725a data cleanup definition id |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find DataCleanupDefinition"
}
}
]
}Endpoints to manage the remote runner targets that run steps and change workers outside the OpsChain cluster.
Lists the remote runner targets the caller can read. Include remote_runner_target_scopes to return the node paths each target serves.
| include | string Example: include=remote_runner_target_scopes Related resources to include |
| filter[<query/sort filter>]= | string Example: filter[<query/sort filter>]==> filter[code_cont]=dc1 API filtering guide. Named filters: |
{- "data": [
- {
- "id": "01a11921-83b9-7ccc-9f17-e4ec9e7342f8",
- "type": "remote_runner_target",
- "attributes": {
- "code": "dc1_runner",
- "description": "Runner in the DC1 network",
- "maintenance_mode": false,
- "drained": false,
- "live": true,
- "key_rotation_overdue": false,
- "created_at": "2026-10-08T01:29:49.241062Z",
- "updated_at": "2026-10-08T01:29:49.241062Z",
- "last_connected_at": "2026-10-08T01:29:49.137292Z",
- "key_expires_at": null
}, - "relationships": {
- "settings": {
- "data": {
- "id": "01a11921-83bc-75cf-a6ee-7d85ec2542bd",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-83bc-75cf-a6ee-7d85ec2542bd"
}
}, - "node": {
- "data": {
- "id": "01a11921-8338-782f-a0e8-80f735631a02",
- "type": "node"
}
}, - "remote_runner_target_scopes": {
- "data": [
- {
- "id": "01a11921-83c1-7ea2-a757-a309309de072",
- "type": "remote_runner_target_scope"
}
]
}
}, - "links": {
- "self": "/api/remote_runner_targets/01a11921-83b9-7ccc-9f17-e4ec9e7342f8"
}, - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}
], - "included": [
- {
- "id": "01a11921-83c1-7ea2-a757-a309309de072",
- "type": "remote_runner_target_scope",
- "attributes": {
- "path": "/projects/opc/environments/dev"
}
}
], - "meta": {
- "authorisations": {
- "update": true
}, - "partial_response": false
}
}Creates a remote runner target. The response meta.bearer_token holds the token the remote runner daemon authenticates with; it is only returned by this request.
Notes:
node_id to create an instance-wide target (superuser only).scope_paths restricts the target to the listed node paths. Include remote_runner_target_scopes to return them in the response.| include | string Example: include=remote_runner_target_scopes Related resources to include |
required | object |
{- "data": {
- "attributes": {
- "code": "dc2_runner",
- "description": "Runner in the DC2 network",
- "public_key": "-----BEGIN PUBLIC KEY-----\n...\n-----END PUBLIC KEY-----\n",
- "client_certificate": "-----BEGIN CERTIFICATE-----\n...\n-----END CERTIFICATE-----\n",
- "node_id": "01a1191e-f86a-7f6f-b90f-08e0684677fa",
- "scope_paths": [
- "/projects/opc/environments/dev"
]
}
}
}{- "data": {
- "id": "01a11921-861e-747b-a132-a1e323d56af8",
- "type": "remote_runner_target",
- "attributes": {
- "code": "dc2_runner",
- "description": "Runner in the DC2 network",
- "maintenance_mode": false,
- "drained": false,
- "live": false,
- "key_rotation_overdue": false,
- "created_at": "2026-10-08T01:29:49.853385Z",
- "updated_at": "2026-10-08T01:29:49.853385Z",
- "last_connected_at": null,
- "key_expires_at": "2027-10-08T23:59:59.999999Z"
}, - "relationships": {
- "settings": {
- "data": {
- "id": "01a11921-8620-7a1b-88e1-9d60f87cc2a8",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-8620-7a1b-88e1-9d60f87cc2a8"
}
}, - "node": {
- "data": {
- "id": "01a11921-84b5-7110-aa8d-fbfadc260934",
- "type": "node"
}
}, - "remote_runner_target_scopes": {
- "data": [
- {
- "id": "01a11921-8626-7521-b0ee-c2c2bfa7de3f",
- "type": "remote_runner_target_scope"
}
]
}
}, - "links": {
- "self": "/api/remote_runner_targets/01a11921-861e-747b-a132-a1e323d56af8"
}, - "meta": {
- "bearer_token": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIwMWExMTkyMS04NjJhLTc0ZTgtYjU4Zi02OWI5OGUxNzQyOTAiLCJpc3MiOiJPcHNDaGFpbiIsImF1ZCI6Im9wc2NoYWluX2FwaSIsImV4cCI6MTgyMzAzOTk5OSwiaWF0IjoxNzkxNDIyOTg5fQ.JaciA4eEK86xGya3QJFTnHqM5oymLRRWxp4gfhRT3_g"
}
}, - "included": [
- {
- "id": "01a11921-8626-7521-b0ee-c2c2bfa7de3f",
- "type": "remote_runner_target_scope",
- "attributes": {
- "path": "/projects/opc/environments/dev"
}
}
]
}Shows a remote runner target. Include remote_runner_target_scopes to return the node paths it serves.
| target_id required | string Example: 01a1191f-1ead-7fa5-af34-d6ac71f4b1f4 remote runner target id |
| include | string Example: include=remote_runner_target_scopes Related resources to include |
{- "data": {
- "id": "01a11921-8a98-7143-a347-05f6c465273b",
- "type": "remote_runner_target",
- "attributes": {
- "code": "dc1_runner",
- "description": "Runner in the DC1 network",
- "maintenance_mode": false,
- "drained": false,
- "live": true,
- "key_rotation_overdue": false,
- "created_at": "2026-10-08T01:29:50.999259Z",
- "updated_at": "2026-10-08T01:29:50.999259Z",
- "last_connected_at": "2026-10-08T01:29:50.785445Z",
- "key_expires_at": null
}, - "relationships": {
- "settings": {
- "data": {
- "id": "01a11921-8a9a-77cd-8cdb-99c6f1ce0ef8",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-8a9a-77cd-8cdb-99c6f1ce0ef8"
}
}, - "node": {
- "data": {
- "id": "01a11921-89aa-775e-80ac-a74daab6158b",
- "type": "node"
}
}, - "remote_runner_target_scopes": {
- "data": [
- {
- "id": "01a11921-8aa1-7708-ad0a-3bcd15002ccb",
- "type": "remote_runner_target_scope"
}
]
}
}, - "links": {
- "self": "/api/remote_runner_targets/01a11921-8a98-7143-a347-05f6c465273b"
}, - "meta": {
- "authorisations": {
- "update": true,
- "delete": true
}
}
}, - "included": [
- {
- "id": "01a11921-8aa1-7708-ad0a-3bcd15002ccb",
- "type": "remote_runner_target_scope",
- "attributes": {
- "path": "/projects/opc/environments/dev"
}
}
]
}Updates a remote runner target's description, maintenance mode or scopes.
Only the scope paths being added are checked for existence and authorisation; scopes that are kept or removed are not.
| target_id required | string Example: 01a1191f-1ead-7fa5-af34-d6ac71f4b1f4 remote runner target id |
| include | string Example: include=remote_runner_target_scopes Related resources to include |
required | object |
{- "data": {
- "attributes": {
- "description": "Runner in the DC1 network",
- "maintenance_mode": true,
- "scope_paths": [
- "/projects/opc/environments/dev"
]
}
}
}{- "data": {
- "id": "01a11921-8d92-71f3-8e9c-f6b600a94495",
- "type": "remote_runner_target",
- "attributes": {
- "code": "dc1_runner",
- "description": "Runner in the DC1 network",
- "maintenance_mode": true,
- "drained": true,
- "live": true,
- "key_rotation_overdue": false,
- "created_at": "2026-10-08T01:29:51.761220Z",
- "updated_at": "2026-10-08T01:29:51.796725Z",
- "last_connected_at": "2026-10-08T01:29:51.612639Z",
- "key_expires_at": null
}, - "relationships": {
- "settings": {
- "data": {
- "id": "01a11921-8d97-7914-be0e-099c3f3c4419",
- "type": "settings"
}, - "links": {
- "related": "/api/settings/01a11921-8d97-7914-be0e-099c3f3c4419"
}
}, - "node": {
- "data": {
- "id": "01a11921-8ce8-78eb-94e1-a66d068cec53",
- "type": "node"
}
}, - "remote_runner_target_scopes": {
- "data": [
- {
- "id": "01a11921-8da0-72e2-922c-95fe7e63df8d",
- "type": "remote_runner_target_scope"
}
]
}
}, - "links": {
- "self": "/api/remote_runner_targets/01a11921-8d92-71f3-8e9c-f6b600a94495"
}, - "meta": null
}, - "included": [
- {
- "id": "01a11921-8da0-72e2-922c-95fe7e63df8d",
- "type": "remote_runner_target_scope",
- "attributes": {
- "path": "/projects/opc/environments/dev"
}
}
]
}Deletes a remote runner target. Work it has not yet claimed is left for another eligible target.
| target_id required | string Example: 01a1191f-1ead-7fa5-af34-d6ac71f4b1f4 remote runner target id |
{- "errors": [
- {
- "status": 404,
- "title": "Record not found",
- "meta": {
- "message": "Couldn't find RemoteRunnerTarget with 'id'=\"abc\""
}
}
]
}Extracts the converged properties, converged settings, and relevant asset MintModel for the two nodes supplied. Also includes environments and assets summaries, and most recent change for each node.
required | object |
{- "data": {
- "attributes": {
- "node_path_a": "/projects/opc/environments/dev/assets/env_soa",
- "node_path_b": "/projects/opc/assets/prj_soa"
}
}
}{- "data": {
- "id": "env_soa:prj_soa",
- "type": "node_comparison",
- "attributes": {
- "nodes": {
- "node_a": {
- "name": "Environment asset (env_soa)",
- "path": "/projects/opc/environments/dev/assets/env_soa",
- "created_at": "2026-10-08T01:28:37.194040Z",
- "updated_at": "2026-10-08T01:28:37.194040Z",
- "properties": {
- "updated_at": "2026-10-08T01:28:37.203760Z",
- "version": 1
}, - "settings": {
- "updated_at": "2026-10-08T01:28:37.231606Z",
- "version": 1
}, - "mintmodel": {
- "filename": "soa.json.erb",
- "valid?": true
}, - "latest_change": null,
- "parent": "Development (dev)"
}, - "node_b": {
- "name": "Project asset (prj_soa)",
- "path": "/projects/opc/assets/prj_soa",
- "created_at": "2026-10-08T01:28:37.384551Z",
- "updated_at": "2026-10-08T01:28:37.384551Z",
- "properties": {
- "updated_at": "2026-10-08T01:28:37.397743Z",
- "version": 1
}, - "settings": {
- "updated_at": "2026-10-08T01:28:37.429620Z",
- "version": 1
}, - "mintmodel": {
- "filename": "soa.json.erb",
- "valid?": true
}, - "latest_change": null,
- "parent": "OpsChain (opc)"
}
}, - "properties": {
- "node_a": {
- "data": {
- "example_property": "value_a"
}, - "sources": {
- "example_property": "Development (dev)"
}
}, - "node_b": {
- "data": {
- "example_property": "value_b",
- "another_property": "extra"
}, - "sources": {
- "example_property": "OpsChain (opc)",
- "another_property": "OpsChain (opc)"
}
}
}, - "settings": {
- "node_a": {
- "data": {
- "example_setting": "value_a"
}, - "sources": null
}, - "node_b": {
- "data": {
- "example_setting": "value_b"
}, - "sources": null
}
}, - "mintmodel": {
- "node_a": {
- "complex": {
- "json": {
- "mintmodel": "data"
}
}
}, - "node_b": {
- "complex": {
- "json": {
- "mintmodel": "data"
}
}
}, - "diff": { }
}, - "environments": {
- "node_a": null,
- "node_b": null
}, - "assets": {
- "node_a": null,
- "node_b": null
}, - "agents": {
- "node_a": null,
- "node_b": null
}
}
}
}