Skip to content

System Initiative Public API

This is the API spec for the System Initiative Public API. All endpoints require a workspace scoped API token for the workspace to interact with.

root

Root API endpoints

system_status_route

Request format

GET /

Example responses

200 Response

json
{
  "API Documentation": "Available at /swagger-ui"
}

Responses

StatusMeaningDescriptionSchema
200OKSystem status informationSystemStatusResponse
401UnauthorizedUnauthorized - Invalid or missing tokenNone
503Service UnavailableService in maintenance modeNone

whoami

User identity endpoints

whoami

Request format

GET /whoami

Example responses

200 Response

json
{
  "token": {},
  "userEmail": "user@example.com",
  "userId": "01H9ZQCBJ3E7HBTRN3J58JQX8K",
  "workspaceId": "01H9ZQD35JPMBGHH69BT0Q79VY"
}

Responses

StatusMeaningDescriptionSchema
200OKSuccessfully retrieved user informationWhoamiResponse
401UnauthorizedUnauthorized - Invalid or expired tokenNone
403ForbiddenForbidden - Insufficient permissionsNone

change_sets

Change Set management endpoints

List all active Change Sets

Request format

GET /v1/w/{workspace_id}/change-sets

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier

Example responses

200 Response

json
{
  "changeSets": "[{\"id\":\"01H9ZQD35JPMBGHH69BT0Q79VY\",\"name\":\"Add new feature\",\"status\":\"Open\",\"isHead\": \"false\"},{\"id\":\"01H9ZQE356JPMBGHH69BT0Q70UO\",\"name\":\"HEAD\",\"status\":\"Open\", \"isHead\": \"true\"}]"
}

Responses

StatusMeaningDescriptionSchema
200OKChange Sets listed successfullyListChangeSetV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
500Internal Server ErrorInternal server errorApiError

Create a Change Set

Request format

POST /v1/w/{workspace_id}/change-sets

Body parameter

json
{
  "changeSetName": "My new feature"
}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
bodybodyCreateChangeSetV1Requesttruenone

Example responses

200 Response

json
{
  "changeSet": {
    "id": "string",
    "isHead": true,
    "name": "string",
    "status": "string"
  }
}

Responses

StatusMeaningDescriptionSchema
200OKChange Set created successfullyCreateChangeSetV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
422Unprocessable EntityValidation error - Invalid request dataApiError
500Internal Server ErrorInternal server errorApiError

Abandon all active Change Sets

Request format

POST /v1/w/{workspace_id}/change-sets/purge_open

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier

Example responses

200 Response

json
{
  "success": {
    "success": "true"
  }
}

Responses

StatusMeaningDescriptionSchema
200OKChange Sets purged successfullyPurgeOpenChangeSetsV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
500Internal Server ErrorInternal server errorApiError

Get a Change Set by Change Set Id

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier

Example responses

200 Response

json
{
  "changeSet": {
    "id": "string",
    "isHead": true,
    "name": "string",
    "status": "string"
  }
}

Responses

StatusMeaningDescriptionSchema
200OKChange details retrieved successfullyGetChangeSetV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundChange Set not foundNone
500Internal Server ErrorInternal server errorApiError

Delete a Change Set

Request format

DELETE /v1/w/{workspace_id}/change-sets/{change_set_id}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier

Example responses

200 Response

json
{
  "success": "true"
}

Responses

StatusMeaningDescriptionSchema
200OKChange Set deleted successfullyDeleteChangeSetV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
500Internal Server ErrorInternal server errorApiError

Merge Change Set without approval

Request format

POST /v1/w/{workspace_id}/change-sets/{change_set_id}/force_apply

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier

Example responses

200 Response

json
{
  "success": "true"
}

Responses

StatusMeaningDescriptionSchema
200OKChange Set force applied successfullyForceApplyChangeSetV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
500Internal Server ErrorInternal server errorApiError

Get Change Set post merge status

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}/merge_status

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier

Example responses

200 Response

json
{
  "changeSet": {
    "id": "01FXNV4P306V3KGZ73YSVN8A60",
    "name": "My feature",
    "status": "Ready"
  },
  "actions": [
    {
      "id": "01H9ZQD35JPMBGHH69BT0Q79VY",
      "component": {
        "id": "01H9ZQD35JPMBGHH69BT0Q79AB",
        "name": "my-ec2-instance"
      },
      "state": "Pending",
      "kind": "Create",
      "name": "Create EC2 Instance"
    }
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKChange Set merge status retrieved successfullyMergeStatusV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
500Internal Server ErrorInternal server errorApiError

Request Change Set merge approval

Request format

POST /v1/w/{workspace_id}/change-sets/{change_set_id}/request_approval

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier

Example responses

200 Response

json
{
  "success": "true"
}

Responses

StatusMeaningDescriptionSchema
200OKChange Set approval requested successfullyRequestApprovalChangeSetV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
500Internal Server ErrorInternal server errorApiError

components

Components management endpoints

List all components

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}/components

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
limitquerystringfalseMaximum number of results to return (default: 50, max: 300)
cursorquerystringfalseCursor for pagination (ComponentId of the last item from previous page)

Example responses

200 Response

json
[
  "01H9ZQD35JPMBGHH69BT0Q79AA",
  "01H9ZQD35JPMBGHH69BT0Q79BB",
  "01H9ZQD35JPMBGHH69BT0Q79CC"
]

500 Response

json
{
  "message": "Invalid request data",
  "statusCode": 422,
  "code": 4001
}

Responses

StatusMeaningDescriptionSchema
200OKComponents retrieved successfullyListComponentsV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
500Internal Server ErrorInternal server errorApiError

Create a component

Request format

POST /v1/w/{workspace_id}/change-sets/{change_set_id}/components

Body parameter

json
{
  "connections": [
    {
      "from": {
        "component": "OtherComponentName",
        "socketName": "SocketName"
      },
      "to": "ThisComponentInputSocketName"
    },
    {
      "from": {
        "componentId": "01H9ZQD35JPMBGHH69BT0Q79VY",
        "socketName": "SocketName"
      },
      "to": "ThisComponentInputSocketName"
    },
    {
      "from": "ThisComponentOutputSocketName",
      "to": {
        "component": "OtherComponentName",
        "socketName": "InputSocketName"
      }
    },
    {
      "from": "ThisComponentOutputSocketName",
      "to": {
        "componentId": "01H9ZQD35JPMBGHH69BT0Q79VY",
        "socketName": "InputSocketName"
      }
    }
  ],
  "domain": {
    "propId1": "value1",
    "path/to/prop": "value2"
  },
  "name": "MyComponentName",
  "resourceId": "i-12345678",
  "schemaName": "AWS::EC2::Instance",
  "secrets": {
    "secretDefinitionName": "secretName"
  },
  "viewName": "MyView"
}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
bodybodyCreateComponentV1Requesttruenone

Example responses

200 Response

json
{
  "component": {
    "canBeUpgraded": true,
    "connections": [
      {
        "incoming": {
          "from": "string",
          "fromComponentId": "string",
          "fromComponentName": "string",
          "to": "string"
        }
      }
    ],
    "domainProps": [
      {
        "id": "string",
        "path": "path/to/prop",
        "propId": "string",
        "value": {}
      }
    ],
    "id": "string",
    "name": "string",
    "resourceId": "string",
    "resourceProps": [
      {
        "id": "string",
        "path": "path/to/prop",
        "propId": "string",
        "value": {}
      }
    ],
    "schemaId": "string",
    "schemaVariantId": "string",
    "sockets": [
      {
        "arity": "one",
        "direction": "input",
        "id": "string",
        "name": "string",
        "value": {}
      }
    ],
    "toDelete": true,
    "views": [
      {
        "id": "string",
        "isDefault": true,
        "name": "string"
      }
    ]
  }
}

Responses

StatusMeaningDescriptionSchema
200OKComponent created successfullyCreateComponentV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundComponent not foundNone
412Precondition FailedPrecondition Failed - View not foundApiError
422Unprocessable EntityValidation error - Invalid request dataApiError
500Internal Server ErrorInternal server errorApiError

Find a component by name or component Id

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}/components/find

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
componentquerystring,nullfalsenone
componentIdquerystring,nullfalsenone

Example responses

200 Response

json
{
  "actionFunctions": [
    {
      "prototypeId": "01HAXYZF3GC9CYA6ZVSM3E4YGG",
      "funcName": "Terminate Instance"
    }
  ],
  "component": {
    "canBeUpgraded": true,
    "connections": [
      {
        "incoming": {
          "from": "string",
          "fromComponentId": "string",
          "fromComponentName": "string",
          "to": "string"
        }
      }
    ],
    "domainProps": [
      {
        "id": "string",
        "path": "path/to/prop",
        "propId": "string",
        "value": {}
      }
    ],
    "id": "string",
    "name": "string",
    "resourceId": "string",
    "resourceProps": [
      {
        "id": "string",
        "path": "path/to/prop",
        "propId": "string",
        "value": {}
      }
    ],
    "schemaId": "string",
    "schemaVariantId": "string",
    "sockets": [
      {
        "arity": "one",
        "direction": "input",
        "id": "string",
        "name": "string",
        "value": {}
      }
    ],
    "toDelete": true,
    "views": [
      {
        "id": "string",
        "isDefault": true,
        "name": "string"
      }
    ]
  },
  "managementFunctions": [
    {
      "managementPrototypeId": "01HAXYZF3GC9CYA6ZVSM3E4YFF",
      "funcName": "Start Instance"
    }
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKComponent retrieved successfullyGetComponentV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundComponent not foundNone
500Internal Server ErrorInternal server errorApiError

Complex search for components

Request format

POST /v1/w/{workspace_id}/change-sets/{change_set_id}/components/search

Body parameter

json
{
  "schemaName": "AWS::EC2::Instance"
}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
bodybodySearchComponentsV1Requesttruenone

Example responses

200 Response

json
{
  "components": [
    "01H9ZQD35JPMBGHH69BT0Q79AA",
    "01H9ZQD35JPMBGHH69BT0Q79BB",
    "01H9ZQD35JPMBGHH69BT0Q79CC"
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKComponents retrieved successfullySearchComponentsV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundComponent not foundNone
500Internal Server ErrorInternal server errorApiError

Get a component by component Id

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}/components/{component_id}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
component_idpathstringtrueComponent identifier

Example responses

200 Response

json
{
  "actionFunctions": [
    {
      "prototypeId": "01HAXYZF3GC9CYA6ZVSM3E4YGG",
      "funcName": "Terminate Instance"
    }
  ],
  "component": {
    "canBeUpgraded": true,
    "connections": [
      {
        "incoming": {
          "from": "string",
          "fromComponentId": "string",
          "fromComponentName": "string",
          "to": "string"
        }
      }
    ],
    "domainProps": [
      {
        "id": "string",
        "path": "path/to/prop",
        "propId": "string",
        "value": {}
      }
    ],
    "id": "string",
    "name": "string",
    "resourceId": "string",
    "resourceProps": [
      {
        "id": "string",
        "path": "path/to/prop",
        "propId": "string",
        "value": {}
      }
    ],
    "schemaId": "string",
    "schemaVariantId": "string",
    "sockets": [
      {
        "arity": "one",
        "direction": "input",
        "id": "string",
        "name": "string",
        "value": {}
      }
    ],
    "toDelete": true,
    "views": [
      {
        "id": "string",
        "isDefault": true,
        "name": "string"
      }
    ]
  },
  "managementFunctions": [
    {
      "managementPrototypeId": "01HAXYZF3GC9CYA6ZVSM3E4YFF",
      "funcName": "Start Instance"
    }
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKComponent retrieved successfullyGetComponentV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundComponent not foundNone
500Internal Server ErrorInternal server errorApiError

Update a component

Request format

PUT /v1/w/{workspace_id}/change-sets/{change_set_id}/components/{component_id}

Body parameter

json
{
  "connectionChanges": {
    "add": [
      {
        "from": {
          "component": "OtherComponentName",
          "socketName": "output"
        },
        "to": "ThisComponentInputSocketName"
      },
      {
        "from": "ThisComponentOutputSocketName",
        "to": {
          "componentId": "01H9ZQD35JPMBGHH69BT0Q79VY",
          "socketName": "InputSocketName"
        }
      }
    ],
    "remove": [
      {
        "from": {
          "componentId": "01H9ZQD35JPMBGHH69BT0Q79VY",
          "socketName": "output"
        },
        "to": "ThisComponentInputSocketName"
      },
      {
        "from": "ThisComponentOutputSocketName",
        "to": {
          "component": "OtherComponentName",
          "socketName": "InputSocketName"
        }
      }
    ]
  },
  "domain": {
    "propId1": "value1",
    "path/to/prop": "value2"
  },
  "name": "MyUpdatedComponentName",
  "resourceId": "i-12345678",
  "secrets": {
    "secretDefinitionName": "secretName"
  },
  "unset": [
    "propId1",
    "path/to/prop"
  ]
}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
component_idpathstringtrueComponent identifier
bodybodyUpdateComponentV1Requesttruenone

Example responses

200 Response

json
{
  "component": {
    "canBeUpgraded": true,
    "connections": [
      {
        "incoming": {
          "from": "string",
          "fromComponentId": "string",
          "fromComponentName": "string",
          "to": "string"
        }
      }
    ],
    "domainProps": [
      {
        "id": "string",
        "path": "path/to/prop",
        "propId": "string",
        "value": {}
      }
    ],
    "id": "string",
    "name": "string",
    "resourceId": "string",
    "resourceProps": [
      {
        "id": "string",
        "path": "path/to/prop",
        "propId": "string",
        "value": {}
      }
    ],
    "schemaId": "string",
    "schemaVariantId": "string",
    "sockets": [
      {
        "arity": "one",
        "direction": "input",
        "id": "string",
        "name": "string",
        "value": {}
      }
    ],
    "toDelete": true,
    "views": [
      {
        "id": "string",
        "isDefault": true,
        "name": "string"
      }
    ]
  }
}

Responses

StatusMeaningDescriptionSchema
200OKComponent updated successfullyUpdateComponentV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundComponent not foundNone
412Precondition FailedPrecondition failed - Duplicate component nameNone
422Unprocessable EntityValidation error - Invalid request dataApiError
500Internal Server ErrorInternal server errorApiError

Delete a component

Request format

DELETE /v1/w/{workspace_id}/change-sets/{change_set_id}/components/{component_id}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
component_idpathstringtrueComponent identifier

Example responses

200 Response

json
{
  "status": "MarkedForDeletion"
}

Responses

StatusMeaningDescriptionSchema
200OKComponent deleted successfullyDeleteComponentV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundComponent not foundNone
500Internal Server ErrorInternal server errorApiError

Queue action for a component

Request format

POST /v1/w/{workspace_id}/change-sets/{change_set_id}/components/{component_id}/action

Body parameter

json
{
  "action": {
    "function": "Create Asset"
  }
}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
component_idpathstringtrueComponent identifier
bodybodyAddActionV1Requesttruenone

Example responses

200 Response

json
{
  "success": true
}

Responses

StatusMeaningDescriptionSchema
200OKAction successfully queuedAddActionV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundComponent or function not foundNone
409Conflictaction already enqueuedApiError
412Precondition FailedPrecondition Failed - View not found or duplicate function nameApiError
422Unprocessable EntityValidation error - Invalid request dataApiError
500Internal Server ErrorInternal server errorApiError

Execute a component's management function

Request format

POST /v1/w/{workspace_id}/change-sets/{change_set_id}/components/{component_id}/execute-management-function

Body parameter

json
{
  "viewName": "MyViewName",
  "managementFunction": {
    "function": "CreateVpc"
  }
}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
component_idpathstringtrueComponent identifier
bodybodyExecuteManagementFunctionV1Requesttruenone

Example responses

200 Response

json
{
  "funcRunId": "string",
  "managementFuncJobStateId": "01H9ZQD35JPMBGHH69BT0Q79VY",
  "message": "enqueued",
  "status": "Ok"
}

Responses

StatusMeaningDescriptionSchema
200OKFunction successfully dispatchedExecuteManagementFunctionV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundComponent or function not foundNone
412Precondition FailedPrecondition Failed - View not found or duplicate function nameApiError
422Unprocessable EntityValidation error - Invalid request dataApiError
500Internal Server ErrorInternal server errorApiError

schemas

Schemas management endpoints

List all schemas (paginated endpoint)

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}/schemas

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
limitquerystringfalseMaximum number of results to return (default: 50, max: 300)
cursorquerystringfalseCursor for pagination (SchemaId of the last item from previous page)

Example responses

200 Response

json
{
  "nextCursor": "string",
  "schemas": [
    {
      "category": "AWS::EC2",
      "installed": "false",
      "schemaId": "01H9ZQD35JPMBGHH69BT0Q79VY",
      "schemaName": "AWS::EC2::Instance"
    }
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKSchemas listed successfullyListSchemaV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
500Internal Server ErrorInternal server errorApiError

Find schema by name or schema id

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}/schemas/find

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
schemaquerystring,nullfalsenone
schemaIdquerystring,nullfalsenone

Example responses

200 Response

json
{
  "category": "string",
  "installed": true,
  "schemaId": "string",
  "schemaName": "string"
}

Responses

StatusMeaningDescriptionSchema
200OKSchema retrieved successfullyFindSchemaV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundSchema not foundNone
500Internal Server ErrorInternal server errorApiError

Get a schema by schema id

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}/schemas/{schema_id}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
schema_idpathstringtrueSchema identifier

Example responses

200 Response

json
{
  "defaultVariantId": "01H9ZQD35JPMBGHH69BT0Q79VZ",
  "name": "AWS::EC2::Instance",
  "variantIds": [
    "01H9ZQD35JPMBGHH69BT0Q79VZ",
    "01H9ZQD35JPMBGHH69BT0Q79VY"
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKSchema retrieved successfullyGetSchemaV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundSchema not foundNone
500Internal Server ErrorInternal server errorApiError

Get the default variant for a schema id

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}/schemas/{schema_id}/variant/default

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
schema_idpathstringtrueSchema identifier

Example responses

200 Response

json
{
  "assetFuncId": "01H9ZQD35JPMBGHH69BT0Q75XY",
  "category": "AWS::EC2",
  "color": "#FF5733",
  "description": "Amazon EC2 Instance resource type",
  "displayName": "AWS EC2 Instance",
  "domainProps": {
    "children": [
      {}
    ],
    "description": "string",
    "name": "string",
    "propId": "string",
    "propType": "string"
  },
  "isDefaultVariant": true,
  "isLocked": false,
  "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instance.html",
  "variantFuncIds": [
    "01H9ZQD35JPMBGHH69BT0Q75AA",
    "01H9ZQD35JPMBGHH69BT0Q75BB"
  ],
  "variantId": "01H9ZQD35JPMBGHH69BT0Q79VZ"
}

Responses

StatusMeaningDescriptionSchema
200OKSchema variant retrieved successfullyGetSchemaVariantV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundSchema variant not foundNone
500Internal Server ErrorInternal server errorApiError

Get a schema variant by schema id and schema variant id

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}/schemas/{schema_id}/variant/{schema_variant_id}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
schema_idpathstringtrueSchema identifier
schema_variant_idpathstringtrueSchema variant identifier

Example responses

200 Response

json
{
  "assetFuncId": "01H9ZQD35JPMBGHH69BT0Q75XY",
  "category": "AWS::EC2",
  "color": "#FF5733",
  "description": "Amazon EC2 Instance resource type",
  "displayName": "AWS EC2 Instance",
  "domainProps": {
    "children": [
      {}
    ],
    "description": "string",
    "name": "string",
    "propId": "string",
    "propType": "string"
  },
  "isDefaultVariant": true,
  "isLocked": false,
  "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instance.html",
  "variantFuncIds": [
    "01H9ZQD35JPMBGHH69BT0Q75AA",
    "01H9ZQD35JPMBGHH69BT0Q75BB"
  ],
  "variantId": "01H9ZQD35JPMBGHH69BT0Q79VZ"
}

Responses

StatusMeaningDescriptionSchema
200OKSchema variant retrieved successfullyGetSchemaVariantV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundSchema variant not foundNone
412Precondition FailedSchema variant not found for schemaNone
500Internal Server ErrorInternal server errorApiError

actions

Actions management endpoints

List queued actions

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}/actions/

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier

Example responses

200 Response

json
{
  "actions": [
    {
      "id": "01H9ZQD35JPMBGHH69BT0Q79VY",
      "prototypeId": "01H9ZQD35JPMBGHH69BT0Q79AB",
      "componentId": "01H9ZQD35JPMBGHH69BT0Q79CD",
      "name": "Create EC2 Instance",
      "description": "Provisions a new EC2 instance in AWS",
      "kind": "Create",
      "state": "Pending",
      "originatingChangeSetId": "01H9ZQD35JPMBGHH69BT0Q79EF",
      "funcRunId": "01H9ZQD35JPMBGHH69BT0Q79GH"
    }
  ]
}

Responses

StatusMeaningDescriptionSchema
200OKActions retrieved successfullyGetActionsV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
500Internal Server ErrorInternal server errorApiError

Remove queued action

Request format

POST /v1/w/{workspace_id}/change-sets/{change_set_id}/actions/{action_id}/cancel

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
action_idpathstringtrueAction identifier

Example responses

200 Response

json
{
  "success": true
}

Responses

StatusMeaningDescriptionSchema
200OKAction cancelled successfullyCancelActionV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundAction not foundNone
500Internal Server ErrorInternal server errorApiError

Put action on-hold

Request format

POST /v1/w/{workspace_id}/change-sets/{change_set_id}/actions/{action_id}/put_on_hold

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
action_idpathstringtrueAction identifier

Example responses

200 Response

json
{
  "success": true
}

Responses

StatusMeaningDescriptionSchema
200OKAction successfully put on holdPutOnHoldActionV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundAction not foundNone
500Internal Server ErrorInternal server errorApiError

Retry action

Request format

POST /v1/w/{workspace_id}/change-sets/{change_set_id}/actions/{action_id}/retry

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
action_idpathstringtrueAction identifier

Example responses

200 Response

json
{
  "success": true
}

Responses

StatusMeaningDescriptionSchema
200OKAction successfully requeuedRetryActionV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundAction not foundNone
500Internal Server ErrorInternal server errorApiError

secrets

Secrets management endpoints

List all secrets

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}/secrets

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier

Example responses

200 Response

json
{
  "aws_credentials": {
    "definition": {
      "secretDefinition": "aws_credentials",
      "formData": [
        {
          "name": "access_key_id",
          "kind": "string"
        },
        {
          "name": "secret_access_key",
          "kind": "password"
        },
        {
          "name": "region",
          "kind": "string"
        },
        {
          "name": "default_output",
          "kind": "string"
        }
      ]
    },
    "secrets": [
      {
        "id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
        "name": "Production AWS Key",
        "definition": "aws_credentials",
        "description": "AWS credentials for production environment"
      },
      {
        "id": "01HAXYZF3GC9CYA6ZVSM3E4YHI",
        "name": "Development AWS Key",
        "definition": "aws_credentials",
        "description": "AWS credentials for development environment"
      }
    ]
  },
  "docker_registry": {
    "definition": {
      "secretDefinition": "docker_registry",
      "formData": [
        {
          "name": "username",
          "kind": "string"
        },
        {
          "name": "password",
          "kind": "password"
        },
        {
          "name": "registry_url",
          "kind": "string"
        }
      ]
    },
    "secrets": [
      {
        "id": "01HAXYZF3GC9CYA6ZVSM3E4YHJ",
        "name": "DockerHub Access",
        "definition": "docker_registry",
        "description": "DockerHub registry credentials"
      }
    ]
  }
}

500 Response

json
{
  "message": "Invalid request data",
  "statusCode": 422,
  "code": 4001
}

Responses

StatusMeaningDescriptionSchema
200OKSecrets retrieved successfullyHashMap
401UnauthorizedUnauthorized - Invalid or missing tokenNone
500Internal Server ErrorInternal server errorApiError

Create a secret

Request format

POST /v1/w/{workspace_id}/change-sets/{change_set_id}/secrets

Body parameter

json
{
  "definitionName": "aws_credentials",
  "description": "AWS credentials for production environment",
  "name": "AWS Access Key",
  "rawData": {
    "access_key_id": "AKIAIOSFODNN7EXAMPLE",
    "secret_access_key": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
    "region": "us-west-2",
    "default_output": "json"
  }
}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
bodybodyCreateSecretV1Requesttruenone

Example responses

200 Response

json
{
  "secret": {
    "definition": "aws_credentials",
    "description": "AWS credentials for production environment",
    "id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
    "name": "Production AWS Key"
  }
}

Responses

StatusMeaningDescriptionSchema
200OKSecret created successfullyCreateSecretV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
422Unprocessable EntityValidation error - Invalid request dataApiError
500Internal Server ErrorInternal server errorApiError

Update a secret

Request format

PUT /v1/w/{workspace_id}/change-sets/{change_set_id}/secrets/{secret_id}

Body parameter

json
{
  "description": "Updated AWS Secret Key for EC2 access",
  "id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
  "name": "AWS Access Key",
  "rawData": {
    "access_key_id": "AKIAIOSFODNN7EXAMPLE",
    "secret_access_key": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
    "region": "us-west-2",
    "default_output": "json"
  }
}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
secret_idpathstringtrueSecret identifier
bodybodyUpdateSecretV1Requesttruenone

Example responses

200 Response

json
{
  "secret": {
    "definition": "aws_credentials",
    "description": "AWS credentials for production environment",
    "id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
    "name": "Production AWS Key"
  }
}

Responses

StatusMeaningDescriptionSchema
200OKSecret updated successfullyUpdateSecretV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundSecret not foundNone
500Internal Server ErrorInternal server errorApiError

Delete a secret

Request format

DELETE /v1/w/{workspace_id}/change-sets/{change_set_id}/secrets/{secret_id}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
secret_idpathstringtrueSecret identifier

Example responses

200 Response

json
{
  "success": true
}

Responses

StatusMeaningDescriptionSchema
200OKSecret deleted successfullyDeleteSecretV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundSecret not foundNone
500Internal Server ErrorInternal server errorApiError

funcs

Functions management endpoints

Get func execution run logs

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}/funcs/runs/{func_run_id}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
func_run_idpathstringtrueFunc run identifier

Example responses

200 Response

json
{
  "funcRun": {
    "id": "01JQCJ0AAXGX5M9QY10AVF4GK1",
    "state": "Success",
    "actor": "System",
    "componentId": "01JP8KHZP3DZKGNXRP83Q6WTQ5",
    "attributeValueId": null,
    "componentName": "NAT Gateway IP 1",
    "schemaName": "AWS::EC2::EIP",
    "actionId": "01JQCHZZY99G3R0C1FA3W4AFR6",
    "actionPrototypeId": "01JPNHEE9Z3DFW48XVZ1FX04KA",
    "actionKind": "Destroy",
    "actionDisplayName": "Destroy",
    "actionOriginatingChangeSetId": "01JQCHZZVTAHHZ7DG0ZSCB9RXB",
    "actionOriginatingChangeSetName": "2025-03-27-19:41",
    "actionResultState": "Success",
    "backendKind": "JsAction",
    "backendResponseType": "Action",
    "functionName": "Delete Asset",
    "functionDisplayName": null,
    "functionKind": "Action",
    "functionDescription": null,
    "functionLink": null,
    "functionArgs": {
      "properties": {
        "domain": {
          "Domain": "vpc",
          "Tags": []
        },
        "resource": {
          "payload": {
            "AllocationId": "eipalloc-033720f9556a3b0c1",
            "PublicIp": "3.213.242.163"
          }
        },
        "si": {
          "name": "NAT Gateway IP 1",
          "resourceId": "3.213.242.163|eipalloc-033720f9556a3b0c1",
          "type": "component"
        }
      }
    },
    "resultValue": {
      "error": null,
      "executionId": "01JQCJ0AAXGX5M9QY10AVF4GK1",
      "message": null,
      "payload": null,
      "resourceId": null,
      "status": "ok"
    },
    "logs": {
      "id": "01JQCJ0ABJSCE01GNQDWVY1ZP5",
      "createdAt": "2025-03-27T19:41:58.514416748Z",
      "updatedAt": "2025-03-27T19:41:58.514416748Z",
      "funcRunId": "01JQCJ0AAXGX5M9QY10AVF4GK1",
      "logs": [
        {
          "stream": "stdout",
          "executionId": "",
          "level": "info",
          "group": "log",
          "message": "Running CLI command",
          "timestamp": 1743104518
        },
        {
          "stream": "output",
          "executionId": "01JQCJ0AAXGX5M9QY10AVF4GK1",
          "level": "info",
          "group": "log",
          "message": "Output: {\"status\":\"success\"}",
          "timestamp": 1743104521
        }
      ],
      "finalized": true
    },
    "createdAt": "2025-03-27T19:41:58.493298051Z",
    "updatedAt": "2025-03-27T19:42:02.192033089Z"
  }
}

500 Response

json
{
  "message": "Invalid request data",
  "statusCode": 422,
  "code": 4001
}

Responses

StatusMeaningDescriptionSchema
200OKFunc Run retrieved successfullyGetFuncRunV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundFunc run not foundNone
500Internal Server ErrorInternal server errorApiError

Get function details

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}/funcs/{func_id}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
func_idpathstringtrueFunc identifier

Example responses

200 Response

json
[
  {
    "funcId": "01JP8A3S8VDQ1KRQWQRHB1ZEB2",
    "code": "async function main(input: Input): Promise < Output > {\n    if (!input.domain?.region) {\n        return {\n            result: \"failure\",\n            message: \"No Region Name to validate\",\n        };\n    }\n\n    const child = await siExec.waitUntilEnd(\"aws\", [\n        \"ec2\",\n        \"describe-regions\",\n        \"--region-names\",\n        input.domain?.region!,\n        \"--region\",\n        \"us-east-1\",\n    ]);\n\n    if (child.exitCode !== 0) {\n        console.error(child.stderr);\n        return {\n            result: \"failure\",\n            message: \"Error from API\"\n        }\n    }\n\n    const regionDetails = JSON.parse(child.stdout).Regions;\n    if (regionDetails.length === 0 || regionDetails.length > 1) {\n        return {\n            result: \"failure\",\n            message: \"Unable to find Region\"\n        }\n    }\n\n    if (regionDetails[0].OptInStatus === \"not-opted-in\") {\n        return {\n            result: \"failure\",\n            message: \"Region not-opted-in for use\"\n        }\n    }\n\n    return {\n        result: \"success\",\n        message: \"Region is available to use\",\n    };\n}",
    "name": "AWS Region Validator",
    "description": "Validates if an AWS region exists and is available for use",
    "displayName": "Validate Region",
    "kind": "Qualification",
    "isLocked": false,
    "link": "https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRegions.html"
  }
]

500 Response

json
{
  "message": "Invalid request data",
  "statusCode": 422,
  "code": 4001
}

Responses

StatusMeaningDescriptionSchema
200OKFunc retrieved successfullyGetFuncV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundFunc not foundNone
500Internal Server ErrorInternal server errorApiError

management_funcs

Management functions endpoints

Get management funcs job state details

Request format

GET /v1/w/{workspace_id}/change-sets/{change_set_id}/management-funcs/{management_func_job_state_id}

Parameters

NameInTypeRequiredDescription
workspace_idpathstringtrueWorkspace identifier
change_set_idpathstringtrueChange Set identifier
management_func_job_state_idpathstringtrueManagement Func Job identifier

Example responses

200 Response

json
{
  "funcRunId": "01H9ZQD35JPMBGHH69BT0Q79VY",
  "state": "Executing"
}

Responses

StatusMeaningDescriptionSchema
200OKManagement Func Job retrieved successfullyGetManagementFuncJobStateV1Response
401UnauthorizedUnauthorized - Invalid or missing tokenNone
404Not FoundManagement Func Job not foundNone
500Internal Server ErrorInternal server errorApiError

Schemas

ActionReference

json
{
  "function": "Create Asset"
}

Reference to a management function by either name or ID. This allows clients to use the more human-friendly name approach or the more precise ID approach when working with actions.

Properties

oneOf

NameTypeRequiredRestrictionsDescription
anonymousobjectfalsenonenone
» functionstringtruenonenone

xor

NameTypeRequiredRestrictionsDescription
anonymousobjectfalsenonenone
» actionPrototypeIdstringtruenonenone

ActionV1RequestPath

json
{
  "action_id": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
action_idstringtruenonenone

ActionViewV1

json
{
  "componentId": "string",
  "description": "string",
  "funcRunId": "string",
  "id": "string",
  "kind": "string",
  "name": "string",
  "originatingChangeSetId": "string",
  "prototypeId": "string",
  "state": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
componentIdstringtruenonenone
descriptionstringtruenonenone
funcRunIdstringtruenonenone
idstringtruenonenone
kindstringtruenonenone
namestringtruenonenone
originatingChangeSetIdstringtruenonenone
prototypeIdstringtruenonenone
statestringtruenonenone

AddActionV1Request

json
{
  "action": {
    "function": "Create Asset"
  }
}

Properties

NameTypeRequiredRestrictionsDescription
actionActionReferencetruenoneReference to a management function by either name or ID.
This allows clients to use the more human-friendly name approach
or the more precise ID approach when working with actions.

AddActionV1Response

json
{
  "success": true
}

Properties

NameTypeRequiredRestrictionsDescription
successbooleantruenonenone

ApiError

json
{
  "message": "Invalid request data",
  "statusCode": 422,
  "code": 4001
}

Standard error response format for v1 API

Properties

NameTypeRequiredRestrictionsDescription
codeinteger,null(int32)falsenonenone
messagestringtruenonenone
statusCodeinteger(int32)truenonenone

ApiSuccess_String

json
{
  "data": "string"
}

Standard success response format for v1 API

Properties

NameTypeRequiredRestrictionsDescription
datastringtruenonenone

CancelActionV1Response

json
{
  "success": true
}

Properties

NameTypeRequiredRestrictionsDescription
successbooleantruenonenone

ChangeSetViewV1

json
{
  "id": "string",
  "isHead": true,
  "name": "string",
  "status": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
idstringtruenonenone
isHeadbooleantruenonenone
namestringtruenonenone
statusstringtruenonenone

ComponentPropKey

json
"string"

Properties

oneOf

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenonenone

xor

NameTypeRequiredRestrictionsDescription
anonymousDomainPropPathfalsenoneA prop path, starting from root/domain, with / instead of PROP_PATH_SEPARATOR as its separator

ComponentPropViewV1

json
{
  "id": "string",
  "path": "path/to/prop",
  "propId": "string",
  "value": {}
}

Properties

NameTypeRequiredRestrictionsDescription
idstringtruenonenone
pathstringtruenonenone
propIdstringtruenonenone
valueobjecttruenonenone

ComponentReference

json
{
  "componentId": "01H9ZQD35JPMBGHH69BT0Q79VY"
}

Properties

oneOf

NameTypeRequiredRestrictionsDescription
anonymousobjectfalsenonenone
» componentstringtruenonenone

xor

NameTypeRequiredRestrictionsDescription
anonymousobjectfalsenonenone
» componentIdstringtruenonenone

ComponentV1RequestPath

json
{
  "component_id": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
component_idstringtruenonenone

ComponentViewV1

json
{
  "canBeUpgraded": true,
  "connections": [
    {
      "incoming": {
        "from": "string",
        "fromComponentId": "string",
        "fromComponentName": "string",
        "to": "string"
      }
    }
  ],
  "domainProps": [
    {
      "id": "string",
      "path": "path/to/prop",
      "propId": "string",
      "value": {}
    }
  ],
  "id": "string",
  "name": "string",
  "resourceId": "string",
  "resourceProps": [
    {
      "id": "string",
      "path": "path/to/prop",
      "propId": "string",
      "value": {}
    }
  ],
  "schemaId": "string",
  "schemaVariantId": "string",
  "sockets": [
    {
      "arity": "one",
      "direction": "input",
      "id": "string",
      "name": "string",
      "value": {}
    }
  ],
  "toDelete": true,
  "views": [
    {
      "id": "string",
      "isDefault": true,
      "name": "string"
    }
  ]
}

Properties

NameTypeRequiredRestrictionsDescription
canBeUpgradedbooleantruenonenone
connections[ConnectionViewV1]truenonenone
domainProps[ComponentPropViewV1]truenonenone
idstringtruenonenone
namestringtruenonenone
resourceIdstringtruenonenone
resourceProps[ComponentPropViewV1]truenonenone
schemaIdstringtruenonenone
schemaVariantIdstringtruenonenone
sockets[SocketViewV1]truenonenone
toDeletebooleantruenonenone
views[ViewV1]truenonenone

Connection

json
{
  "from": {
    "componentId": "01H9ZQD35JPMBGHH69BT0Q79VY",
    "socketName": "output"
  },
  "to": "ThisComponentInputSocketName"
}

Properties

oneOf

NameTypeRequiredRestrictionsDescription
anonymousobjectfalsenonenone
» fromConnectionPointtruenonenone
» tostringtruenonenone

xor

NameTypeRequiredRestrictionsDescription
anonymousobjectfalsenonenone
» fromstringtruenonenone
» toConnectionPointtruenonenone

ConnectionDetails

json
{
  "add": [
    {
      "from": {
        "component": "OtherComponentName",
        "socketName": "output"
      },
      "to": "ThisComponentInputSocketName"
    },
    {
      "from": "ThisComponentOutputSocketName",
      "to": {
        "componentId": "01H9ZQD35JPMBGHH69BT0Q79VY",
        "socketName": "InputSocketName"
      }
    }
  ],
  "remove": [
    {
      "from": {
        "componentId": "01H9ZQD35JPMBGHH69BT0Q79VY",
        "socketName": "output"
      },
      "to": "ThisComponentInputSocketName"
    },
    {
      "from": "ThisComponentOutputSocketName",
      "to": {
        "component": "OtherComponentName",
        "socketName": "InputSocketName"
      }
    }
  ]
}

Properties

NameTypeRequiredRestrictionsDescription
add[Connection]falsenonenone
remove[Connection]falsenonenone

ConnectionPoint

json
{
  "componentId": "01H9ZQD35JPMBGHH69BT0Q79VY",
  "socketName": "OutputSocketName"
}

Properties

allOf

NameTypeRequiredRestrictionsDescription
anonymousComponentReferencefalsenonenone

and

NameTypeRequiredRestrictionsDescription
anonymousobjectfalsenonenone
» socketNamestringtruenonenone

ConnectionViewV1

json
{
  "incoming": {
    "from": "string",
    "fromComponentId": "string",
    "fromComponentName": "string",
    "to": "string"
  }
}

Properties

oneOf

NameTypeRequiredRestrictionsDescription
anonymousobjectfalsenonenone
» incomingIncomingConnectionViewV1truenonenone

xor

NameTypeRequiredRestrictionsDescription
anonymousobjectfalsenonenone
» outgoingOutgoingConnectionViewV1truenonenone

xor

NameTypeRequiredRestrictionsDescription
anonymousobjectfalsenonenone
» managingManagingConnectionViewV1truenonenone

xor

NameTypeRequiredRestrictionsDescription
anonymousobjectfalsenonenone
» managedByManagedByConnectionViewV1truenonenone

CreateChangeSetV1Request

json
{
  "changeSetName": "My new feature"
}

Properties

NameTypeRequiredRestrictionsDescription
changeSetNamestringtruenonenone

CreateChangeSetV1Response

json
{
  "changeSet": {
    "id": "string",
    "isHead": true,
    "name": "string",
    "status": "string"
  }
}

Properties

NameTypeRequiredRestrictionsDescription
changeSetChangeSetViewV1truenonenone

CreateComponentV1Request

json
{
  "connections": [
    {
      "from": {
        "component": "OtherComponentName",
        "socketName": "SocketName"
      },
      "to": "ThisComponentInputSocketName"
    },
    {
      "from": {
        "componentId": "01H9ZQD35JPMBGHH69BT0Q79VY",
        "socketName": "SocketName"
      },
      "to": "ThisComponentInputSocketName"
    },
    {
      "from": "ThisComponentOutputSocketName",
      "to": {
        "component": "OtherComponentName",
        "socketName": "InputSocketName"
      }
    },
    {
      "from": "ThisComponentOutputSocketName",
      "to": {
        "componentId": "01H9ZQD35JPMBGHH69BT0Q79VY",
        "socketName": "InputSocketName"
      }
    }
  ],
  "domain": {
    "propId1": "value1",
    "path/to/prop": "value2"
  },
  "name": "MyComponentName",
  "resourceId": "i-12345678",
  "schemaName": "AWS::EC2::Instance",
  "secrets": {
    "secretDefinitionName": "secretName"
  },
  "viewName": "MyView"
}

Properties

NameTypeRequiredRestrictionsDescription
connections[Connection]falsenonenone
domainobjectfalsenonenone
» additionalPropertiesanyfalsenonenone
namestringtruenonenone
resourceIdstring,nullfalsenonenone
schemaNamestringtruenonenone
secretsobjectfalsenonenone
» additionalPropertiesanyfalsenonenone
viewNamestring,nullfalsenonenone

CreateComponentV1Response

json
{
  "component": {
    "canBeUpgraded": true,
    "connections": [
      {
        "incoming": {
          "from": "string",
          "fromComponentId": "string",
          "fromComponentName": "string",
          "to": "string"
        }
      }
    ],
    "domainProps": [
      {
        "id": "string",
        "path": "path/to/prop",
        "propId": "string",
        "value": {}
      }
    ],
    "id": "string",
    "name": "string",
    "resourceId": "string",
    "resourceProps": [
      {
        "id": "string",
        "path": "path/to/prop",
        "propId": "string",
        "value": {}
      }
    ],
    "schemaId": "string",
    "schemaVariantId": "string",
    "sockets": [
      {
        "arity": "one",
        "direction": "input",
        "id": "string",
        "name": "string",
        "value": {}
      }
    ],
    "toDelete": true,
    "views": [
      {
        "id": "string",
        "isDefault": true,
        "name": "string"
      }
    ]
  }
}

Properties

NameTypeRequiredRestrictionsDescription
componentComponentViewV1truenonenone

CreateSecretV1Request

json
{
  "definitionName": "aws_credentials",
  "description": "AWS credentials for production environment",
  "name": "AWS Access Key",
  "rawData": {
    "access_key_id": "AKIAIOSFODNN7EXAMPLE",
    "secret_access_key": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
    "region": "us-west-2",
    "default_output": "json"
  }
}

Properties

NameTypeRequiredRestrictionsDescription
definitionNamestringtruenonenone
descriptionstringtruenonenone
namestringtruenonenone
rawDataobjectfalsenonenone
» additionalPropertiesstringfalsenonenone

CreateSecretV1Response

json
{
  "secret": {
    "definition": "aws_credentials",
    "description": "AWS credentials for production environment",
    "id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
    "name": "Production AWS Key"
  }
}

Properties

NameTypeRequiredRestrictionsDescription
secretSecretV1truenonenone

DeleteChangeSetV1Response

json
{
  "success": "true"
}

Properties

NameTypeRequiredRestrictionsDescription
successbooleantruenonenone

DeleteComponentV1Response

json
{
  "status": "MarkedForDeletion"
}

Properties

NameTypeRequiredRestrictionsDescription
statusstringtruenonenone

DeleteSecretV1Response

json
{
  "success": true
}

Properties

NameTypeRequiredRestrictionsDescription
successbooleantruenonenone

DomainPropPath

json
"string"

A prop path, starting from root/domain, with / instead of PROP_PATH_SEPARATOR as its separator

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenoneA prop path, starting from root/domain, with / instead of PROP_PATH_SEPARATOR as its separator

ErrorDetail

json
{
  "code": 0,
  "message": "string",
  "status_code": 0
}

Properties

NameTypeRequiredRestrictionsDescription
codeinteger(int32)truenonenone
messagestringtruenonenone
status_codeinteger(int32)truenonenone

ErrorResponse

json
{
  "error": {
    "code": 0,
    "message": "string",
    "status_code": 0
  }
}

Properties

NameTypeRequiredRestrictionsDescription
errorErrorDetailtruenonenone

ExecuteManagementFunctionV1Request

json
{
  "viewName": "MyViewName",
  "managementFunction": {
    "function": "CreateVpc"
  }
}

Properties

NameTypeRequiredRestrictionsDescription
managementFunctionManagementFunctionReferencetruenoneReference to a management function by either name or ID.
This allows clients to use the more human-friendly name approach
or the more precise ID approach when working with management functions.
viewNamestring,nullfalsenonenone

ExecuteManagementFunctionV1Response

json
{
  "funcRunId": "string",
  "managementFuncJobStateId": "01H9ZQD35JPMBGHH69BT0Q79VY",
  "message": "enqueued",
  "status": "Ok"
}

Properties

NameTypeRequiredRestrictionsDescription
funcRunIdstringtruenonenone
managementFuncJobStateIdstringtruenonenone
messagestringfalsenonenone
statusstringtruenonenone

FindComponentV1Params

json
{
  "component": "string",
  "componentId": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
componentstring,nullfalsenonenone
componentIdstringtruenonenone

FindSchemaV1Params

json
{
  "schema": "string",
  "schemaId": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
schemastring,nullfalsenonenone
schemaIdstringtruenonenone

FindSchemaV1Response

json
{
  "category": "string",
  "installed": true,
  "schemaId": "string",
  "schemaName": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
categorystringtruenonenone
installedbooleantruenonenone
schemaIdstringtruenonenone
schemaNamestringtruenonenone

ForceApplyChangeSetV1Response

json
{
  "success": "true"
}

Properties

NameTypeRequiredRestrictionsDescription
successbooleantruenonenone

FuncRunLogViewV1

json
{
  "createdAt": "2025-03-27T19:41:58.514416748Z",
  "finalized": true,
  "funcRunId": "01JQCJ0AAXGX5M9QY10AVF4GK1",
  "id": "01JQCJ0ABJSCE01GNQDWVY1ZP5",
  "logs": [
    {
      "stream": "stdout",
      "executionId": "",
      "level": "info",
      "group": "log",
      "message": "Running CLI command: \"aws 'cloudcontrol' 'delete-resource'\"",
      "timestamp": 1743104518
    },
    {
      "stream": "output",
      "executionId": "01JQCJ0AAXGX5M9QY10AVF4GK1",
      "level": "info",
      "group": "log",
      "message": "Output: {\"protocol\":\"result\",\"status\":\"success\"}",
      "timestamp": 1743104521
    }
  ],
  "updatedAt": "2025-03-27T19:41:58.514416748Z"
}

Properties

NameTypeRequiredRestrictionsDescription
createdAtstringtruenonenone
finalizedbooleantruenonenone
funcRunIdstringtruenonenone
idstringtruenonenone
logs[object]truenonenone
updatedAtstringtruenonenone

FuncRunV1RequestPath

json
{
  "func_run_id": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
func_run_idstringtruenonenone

FuncRunViewV1

json
{
  "actionDisplayName": "Destroy",
  "actionId": "01JQCHZZY99G3R0C1FA3W4AFR6",
  "actionKind": "Destroy",
  "actionOriginatingChangeSetId": "01JQCHZZVTAHHZ7DG0ZSCB9RXB",
  "actionOriginatingChangeSetName": "2025-03-27-19:41",
  "actionPrototypeId": "01JPNHEE9Z3DFW48XVZ1FX04KA",
  "actionResultState": "Success",
  "attributeValueId": "null",
  "backendKind": "JsAction",
  "backendResponseType": "Action",
  "componentId": "01JP8KHZP3DZKGNXRP83Q6WTQ5",
  "componentName": "NAT Gateway IP 1",
  "createdAt": "2025-03-27T19:41:58.493298051Z",
  "functionArgs": null,
  "functionCodeBase64": "YXN5bmMgZnVuY3Rpb24gbWFpbihjb21wb2...",
  "functionDescription": "null",
  "functionDisplayName": "null",
  "functionKind": "Action",
  "functionLink": "null",
  "functionName": "Delete Asset",
  "id": "01JQCJ0AAXGX5M9QY10AVF4GK1",
  "logs": {},
  "resultValue": null,
  "schemaName": "AWS::EC2::EIP",
  "state": "Success",
  "updatedAt": "2025-03-27T19:42:02.192033089Z"
}

Properties

NameTypeRequiredRestrictionsDescription
actionDisplayNamestringtruenonenone
actionIdstringtruenonenone
actionKindstringtruenonenone
actionOriginatingChangeSetIdstringtruenonenone
actionOriginatingChangeSetNamestringtruenonenone
actionPrototypeIdstringtruenonenone
actionResultStatestringtruenonenone
attributeValueIdstringtruenonenone
backendKindstringtruenonenone
backendResponseTypestringtruenonenone
componentIdstringtruenonenone
componentNamestringtruenonenone
createdAtstringtruenonenone
functionArgsanytruenonenone
functionCodeBase64stringtruenonenone
functionDescriptionstringtruenonenone
functionDisplayNamestringtruenonenone
functionKindstringtruenonenone
functionLinkstringtruenonenone
functionNamestringtruenonenone
idstringtruenonenone
logsanyfalsenonenone

oneOf

NameTypeRequiredRestrictionsDescription
» anonymousnullfalsenonenone

xor

NameTypeRequiredRestrictionsDescription
» anonymousFuncRunLogViewV1falsenonenone

continued

NameTypeRequiredRestrictionsDescription
resultValueanyfalsenonenone
schemaNamestringtruenonenone
statestringtruenonenone
updatedAtstringtruenonenone

GetActionsV1Response

json
{
  "actions": [
    {
      "id": "01H9ZQD35JPMBGHH69BT0Q79VY",
      "prototypeId": "01H9ZQD35JPMBGHH69BT0Q79AB",
      "componentId": "01H9ZQD35JPMBGHH69BT0Q79CD",
      "name": "Create EC2 Instance",
      "description": "Provisions a new EC2 instance in AWS",
      "kind": "Create",
      "state": "Pending",
      "originatingChangeSetId": "01H9ZQD35JPMBGHH69BT0Q79EF",
      "funcRunId": "01H9ZQD35JPMBGHH69BT0Q79GH"
    }
  ]
}

Properties

NameTypeRequiredRestrictionsDescription
actions[ActionViewV1]truenonenone

GetChangeSetV1Response

json
{
  "changeSet": {
    "id": "string",
    "isHead": true,
    "name": "string",
    "status": "string"
  }
}

Properties

NameTypeRequiredRestrictionsDescription
changeSetChangeSetViewV1truenonenone

GetComponentV1Response

json
{
  "actionFunctions": [
    {
      "prototypeId": "01HAXYZF3GC9CYA6ZVSM3E4YGG",
      "funcName": "Terminate Instance"
    }
  ],
  "component": {
    "canBeUpgraded": true,
    "connections": [
      {
        "incoming": {
          "from": "string",
          "fromComponentId": "string",
          "fromComponentName": "string",
          "to": "string"
        }
      }
    ],
    "domainProps": [
      {
        "id": "string",
        "path": "path/to/prop",
        "propId": "string",
        "value": {}
      }
    ],
    "id": "string",
    "name": "string",
    "resourceId": "string",
    "resourceProps": [
      {
        "id": "string",
        "path": "path/to/prop",
        "propId": "string",
        "value": {}
      }
    ],
    "schemaId": "string",
    "schemaVariantId": "string",
    "sockets": [
      {
        "arity": "one",
        "direction": "input",
        "id": "string",
        "name": "string",
        "value": {}
      }
    ],
    "toDelete": true,
    "views": [
      {
        "id": "string",
        "isDefault": true,
        "name": "string"
      }
    ]
  },
  "managementFunctions": [
    {
      "managementPrototypeId": "01HAXYZF3GC9CYA6ZVSM3E4YFF",
      "funcName": "Start Instance"
    }
  ]
}

Properties

NameTypeRequiredRestrictionsDescription
actionFunctions[GetComponentV1ResponseActionFunction]truenonenone
componentComponentViewV1truenonenone
managementFunctions[GetComponentV1ResponseManagementFunction]truenonenone

GetComponentV1ResponseActionFunction

json
{
  "funcName": "Terminate Instance",
  "prototypeId": "01HAXYZF3GC9CYA6ZVSM3E4YGG"
}

Properties

NameTypeRequiredRestrictionsDescription
funcNamestringtruenonenone
prototypeIdstringtruenonenone

GetComponentV1ResponseManagementFunction

json
{
  "funcName": "Start Instance",
  "managementPrototypeId": "01HAXYZF3GC9CYA6ZVSM3E4YFF"
}

Properties

NameTypeRequiredRestrictionsDescription
funcNamestringtruenonenone
managementPrototypeIdstringtruenonenone

GetFuncRunV1Response

json
{
  "funcRun": {
    "actionDisplayName": "Destroy",
    "actionId": "01JQCHZZY99G3R0C1FA3W4AFR6",
    "actionKind": "Destroy",
    "actionOriginatingChangeSetId": "01JQCHZZVTAHHZ7DG0ZSCB9RXB",
    "actionOriginatingChangeSetName": "2025-03-27-19:41",
    "actionPrototypeId": "01JPNHEE9Z3DFW48XVZ1FX04KA",
    "actionResultState": "Success",
    "attributeValueId": "null",
    "backendKind": "JsAction",
    "backendResponseType": "Action",
    "componentId": "01JP8KHZP3DZKGNXRP83Q6WTQ5",
    "componentName": "NAT Gateway IP 1",
    "createdAt": "2025-03-27T19:41:58.493298051Z",
    "functionArgs": null,
    "functionCodeBase64": "YXN5bmMgZnVuY3Rpb24gbWFpbihjb21wb2...",
    "functionDescription": "null",
    "functionDisplayName": "null",
    "functionKind": "Action",
    "functionLink": "null",
    "functionName": "Delete Asset",
    "id": "01JQCJ0AAXGX5M9QY10AVF4GK1",
    "logs": {},
    "resultValue": null,
    "schemaName": "AWS::EC2::EIP",
    "state": "Success",
    "updatedAt": "2025-03-27T19:42:02.192033089Z"
  }
}

Properties

NameTypeRequiredRestrictionsDescription
funcRunFuncRunViewV1truenonenone

GetFuncV1Response

json
{
  "code": "async function main(input: Input): Promise < Output > {\n    if (!input.domain?.region) {\n        return {\n            result: \"failure\",\n            message: \"No Region Name to validate\",\n        };\n    }\n\n    const child = await siExec.waitUntilEnd(\"aws\", [\n        \"ec2\",\n        \"describe-regions\",\n        \"--region-names\",\n        input.domain?.region!,\n        \"--region\",\n        \"us-east-1\",\n    ]);\n\n    if (child.exitCode !== 0) {\n        console.error(child.stderr);\n        return {\n            result: \"failure\",\n            message: \"Error from API\"\n        }\n    }\n\n    const regionDetails = JSON.parse(child.stdout).Regions;\n    if (regionDetails.length === 0 || regionDetails.length > 1) {\n        return {\n            result: \"failure\",\n            message: \"Unable to find Region\"\n        }\n    }\n\n    if (regionDetails[0].OptInStatus === \"not-opted-in\") {\n        return {\n            result: \"failure\",\n            message: \"Region not-opted-in for use\"\n        }\n    }\n\n    return {\n        result: \"success\",\n        message: \"Region is available to use\",\n    };\n}",
  "description": "Validates if an AWS region exists and is available for use",
  "displayName": "Validate Region",
  "isLocked": false,
  "kind": "Qualification",
  "link": "https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRegions.html",
  "name": "AWS Region Validator"
}

Properties

NameTypeRequiredRestrictionsDescription
codestringtruenonenone
descriptionstringtruenonenone
displayNamestringtruenonenone
isLockedbooleantruenonenone
kindstringtruenonenone
linkstringtruenonenone
namestringtruenonenone

GetManagementFuncJobStateV1Response

json
{
  "funcRunId": "01H9ZQD35JPMBGHH69BT0Q79VY",
  "state": "Executing"
}

Properties

NameTypeRequiredRestrictionsDescription
funcRunIdstringtruenonenone
statestringtruenonenone

GetSchemaV1Response

json
{
  "defaultVariantId": "01H9ZQD35JPMBGHH69BT0Q79VZ",
  "name": "AWS::EC2::Instance",
  "variantIds": [
    "01H9ZQD35JPMBGHH69BT0Q79VZ",
    "01H9ZQD35JPMBGHH69BT0Q79VY"
  ]
}

Properties

NameTypeRequiredRestrictionsDescription
defaultVariantIdstringtruenonenone
namestringtruenonenone
variantIds[string]truenonenone

GetSchemaVariantV1Response

json
{
  "assetFuncId": "01H9ZQD35JPMBGHH69BT0Q75XY",
  "category": "AWS::EC2",
  "color": "#FF5733",
  "description": "Amazon EC2 Instance resource type",
  "displayName": "AWS EC2 Instance",
  "domainProps": {
    "children": [
      {}
    ],
    "description": "string",
    "name": "string",
    "propId": "string",
    "propType": "string"
  },
  "isDefaultVariant": true,
  "isLocked": false,
  "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instance.html",
  "variantFuncIds": [
    "01H9ZQD35JPMBGHH69BT0Q75AA",
    "01H9ZQD35JPMBGHH69BT0Q75BB"
  ],
  "variantId": "01H9ZQD35JPMBGHH69BT0Q79VZ"
}

Properties

NameTypeRequiredRestrictionsDescription
assetFuncIdstringtruenonenone
categorystringtruenonenone
colorstringtruenonenone
descriptionstringtruenonenone
displayNamestringtruenonenone
domainPropsPropSchemaV1truenonenone
isDefaultVariantbooleantruenonenone
isLockedbooleantruenonenone
linkstringtruenonenone
variantFuncIds[string]truenonenone
variantIdstringtruenonenone

HashMap

json
{
  "property1": {
    "definition": {
      "formData": [
        {
          "name": "access_key_id",
          "kind": "string"
        },
        {
          "name": "secret_access_key",
          "kind": "password"
        }
      ],
      "secretDefinition": "aws_credentials"
    },
    "secrets": [
      {
        "id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
        "name": "Production AWS Key",
        "definition": "aws_credentials",
        "description": "AWS credentials for production environment"
      },
      {
        "id": "01HAXYZF3GC9CYA6ZVSM3E4YHI",
        "name": "Development AWS Key",
        "definition": "aws_credentials",
        "description": "AWS credentials for development environment"
      }
    ]
  },
  "property2": {
    "definition": {
      "formData": [
        {
          "name": "access_key_id",
          "kind": "string"
        },
        {
          "name": "secret_access_key",
          "kind": "password"
        }
      ],
      "secretDefinition": "aws_credentials"
    },
    "secrets": [
      {
        "id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
        "name": "Production AWS Key",
        "definition": "aws_credentials",
        "description": "AWS credentials for production environment"
      },
      {
        "id": "01HAXYZF3GC9CYA6ZVSM3E4YHI",
        "name": "Development AWS Key",
        "definition": "aws_credentials",
        "description": "AWS credentials for development environment"
      }
    ]
  }
}

Properties

NameTypeRequiredRestrictionsDescription
additionalPropertiesobjectfalsenonenone
» definitionSecretDefinitionV1truenonenone
» secrets[SecretV1]truenonenone

IncomingConnectionViewV1

json
{
  "from": "string",
  "fromComponentId": "string",
  "fromComponentName": "string",
  "to": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
fromstringtruenonenone
fromComponentIdstringtruenonenone
fromComponentNamestringtruenonenone
tostringtruenonenone

ListChangeSetV1Response

json
{
  "changeSets": "[{\"id\":\"01H9ZQD35JPMBGHH69BT0Q79VY\",\"name\":\"Add new feature\",\"status\":\"Open\",\"isHead\": \"false\"},{\"id\":\"01H9ZQE356JPMBGHH69BT0Q70UO\",\"name\":\"HEAD\",\"status\":\"Open\", \"isHead\": \"true\"}]"
}

Properties

NameTypeRequiredRestrictionsDescription
changeSets[object]truenonenone

ListComponentsV1Response

json
{
  "components": [
    "01H9ZQD35JPMBGHH69BT0Q79AA",
    "01H9ZQD35JPMBGHH69BT0Q79BB",
    "01H9ZQD35JPMBGHH69BT0Q79CC"
  ],
  "nextCursor": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
components[array]truenonenone
nextCursorstring,nullfalsenonenone

ListSchemaV1Response

json
{
  "nextCursor": "string",
  "schemas": [
    {
      "category": "AWS::EC2",
      "installed": "false",
      "schemaId": "01H9ZQD35JPMBGHH69BT0Q79VY",
      "schemaName": "AWS::EC2::Instance"
    }
  ]
}

Properties

NameTypeRequiredRestrictionsDescription
nextCursorstring,nullfalsenonenone
schemas[SchemaResponse]truenonenone

ManagedByConnectionViewV1

json
{
  "componentId": "string",
  "componentName": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
componentIdstringtruenonenone
componentNamestringtruenonenone

ManagementFuncJobStateV1RequestPath

json
{
  "management_func_job_state_id": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
management_func_job_state_idstringtruenonenone

ManagementFunctionReference

json
{
  "function": "CreateVpc"
}

Reference to a management function by either name or ID. This allows clients to use the more human-friendly name approach or the more precise ID approach when working with management functions.

Properties

oneOf

NameTypeRequiredRestrictionsDescription
anonymousobjectfalsenonenone
» functionstringtruenonenone

xor

NameTypeRequiredRestrictionsDescription
anonymousobjectfalsenonenone
» managementPrototypeIdstringtruenonenone

ManagingConnectionViewV1

json
{
  "componentId": "string",
  "componentName": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
componentIdstringtruenonenone
componentNamestringtruenonenone

MergeStatusV1Response

json
{
  "changeSet": {
    "id": "01FXNV4P306V3KGZ73YSVN8A60",
    "name": "My feature",
    "status": "Ready"
  },
  "actions": [
    {
      "id": "01H9ZQD35JPMBGHH69BT0Q79VY",
      "component": {
        "id": "01H9ZQD35JPMBGHH69BT0Q79AB",
        "name": "my-ec2-instance"
      },
      "state": "Pending",
      "kind": "Create",
      "name": "Create EC2 Instance"
    }
  ]
}

Response for merge status

Properties

NameTypeRequiredRestrictionsDescription
actions[MergeStatusV1ResponseAction]truenone[Action item in merge status response]
changeSetobjecttruenonenone

MergeStatusV1ResponseAction

json
{
  "id": "01H9ZQD35JPMBGHH69BT0Q79VY",
  "component": {
    "id": "01H9ZQD35JPMBGHH69BT0Q79AB",
    "name": "my-ec2-instance"
  },
  "state": "Pending",
  "kind": "Create",
  "name": "Create EC2 Instance"
}

Action item in merge status response

Properties

NameTypeRequiredRestrictionsDescription
componentanyfalsenonenone

oneOf

NameTypeRequiredRestrictionsDescription
» anonymousnullfalsenonenone

xor

NameTypeRequiredRestrictionsDescription
» anonymousMergeStatusV1ResponseActionComponentfalsenoneComponent details in action response

continued

NameTypeRequiredRestrictionsDescription
idstringtruenonenone
kindstringtruenonenone
namestringtruenonenone
statestringtruenonenone

MergeStatusV1ResponseActionComponent

json
{
  "id": "01H9ZQD35JPMBGHH69BT0Q79AB",
  "name": "my-ec2-instance"
}

Component details in action response

Properties

NameTypeRequiredRestrictionsDescription
idstringtruenonenone
namestringtruenonenone

OutgoingConnectionViewV1

json
{
  "from": "string",
  "toComponentId": "string",
  "toComponentName": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
fromstringtruenonenone
toComponentIdstringtruenonenone
toComponentNamestringtruenonenone

OutputLineViewV1

json
{
  "executionId": "01JQCJ0AAXGX5M9QY10AVF4GK1",
  "group": "log",
  "level": "info",
  "message": "Running CLI command: \"aws 'cloudcontrol' 'delete-resource'\"",
  "stream": "stdout",
  "timestamp": 1743104518
}

Properties

NameTypeRequiredRestrictionsDescription
executionIdstringtruenonenone
groupstring,nullfalsenonenone
levelstringtruenonenone
messagestringtruenonenone
streamstringtruenonenone
timestampinteger(int64)truenonenone

PropSchemaV1

json
{
  "children": [
    {
      "children": [],
      "description": "string",
      "name": "string",
      "propId": "string",
      "propType": "string"
    }
  ],
  "description": "string",
  "name": "string",
  "propId": "string",
  "propType": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
children[PropSchemaV1]truenonenone
descriptionstringtruenonenone
namestringtruenonenone
propIdstringtruenonenone
propTypestringtruenonenone

PurgeOpenChangeSetsV1Response

json
{
  "success": {
    "success": "true"
  }
}

Properties

NameTypeRequiredRestrictionsDescription
successbooleantruenonenone

PutOnHoldActionV1Response

json
{
  "success": true
}

Properties

NameTypeRequiredRestrictionsDescription
successbooleantruenonenone

RequestApprovalChangeSetV1Response

json
{
  "success": "true"
}

Properties

NameTypeRequiredRestrictionsDescription
successbooleantruenonenone

RetryActionV1Response

json
{
  "success": true
}

Properties

NameTypeRequiredRestrictionsDescription
successbooleantruenonenone

SchemaResponse

json
{
  "category": "AWS::EC2",
  "installed": "false",
  "schemaId": "01H9ZQD35JPMBGHH69BT0Q79VY",
  "schemaName": "AWS::EC2::Instance"
}

Properties

NameTypeRequiredRestrictionsDescription
categorystring,nullfalsenonenone
installedbooleantruenonenone
schemaIdstringtruenonenone
schemaNamestringtruenonenone

SchemaV1RequestPath

json
{
  "schema_id": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
schema_idstringtruenonenone

SchemaVariantV1RequestPath

json
{
  "schema_id": "string",
  "schema_variant_id": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
schema_idstringtruenonenone
schema_variant_idstringtruenonenone

SearchComponentsV1Request

json
{
  "schemaName": "AWS::EC2::Instance"
}

Properties

NameTypeRequiredRestrictionsDescription
schemaNamestring,nullfalsenonenone

SearchComponentsV1Response

json
{
  "components": [
    "01H9ZQD35JPMBGHH69BT0Q79AA",
    "01H9ZQD35JPMBGHH69BT0Q79BB",
    "01H9ZQD35JPMBGHH69BT0Q79CC"
  ]
}

Properties

NameTypeRequiredRestrictionsDescription
components[array]truenonenone

SecretDefinitionV1

json
{
  "formData": [
    {
      "name": "access_key_id",
      "kind": "string"
    },
    {
      "name": "secret_access_key",
      "kind": "password"
    }
  ],
  "secretDefinition": "aws_credentials"
}

Properties

NameTypeRequiredRestrictionsDescription
formData[SecretFormDataV1]truenonenone
secretDefinitionstringtruenonenone

SecretFormDataV1

json
{
  "kind": "string",
  "name": "access_key_id"
}

Properties

NameTypeRequiredRestrictionsDescription
kindstringtruenonenone
namestringtruenonenone

SecretPropKey

json
"string"

Properties

oneOf

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenonenone

xor

NameTypeRequiredRestrictionsDescription
anonymousSecretPropPathfalsenonenone

SecretPropPath

json
"string"

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenonenone

SecretV1

json
{
  "definition": "aws_credentials",
  "description": "AWS credentials for production environment",
  "id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
  "name": "Production AWS Key"
}

Properties

NameTypeRequiredRestrictionsDescription
definitionstringtruenonenone
descriptionstringtruenonenone
idstringtruenonenone
namestringtruenonenone

SocketDirection

json
"input"

Properties

NameTypeRequiredRestrictionsDescription
anonymousstringfalsenonenone

Enumerated Values

PropertyValue
anonymousinput
anonymousoutput

SocketViewV1

json
{
  "arity": "one",
  "direction": "input",
  "id": "string",
  "name": "string",
  "value": {}
}

Properties

NameTypeRequiredRestrictionsDescription
aritystringtruenonenone
directionSocketDirectiontruenonenone
idstringtruenonenone
namestringtruenonenone
valueobjecttruenonenone

SystemStatusResponse

json
{
  "API Documentation": "Available at /swagger-ui"
}

Properties

NameTypeRequiredRestrictionsDescription
API Documentationstringtruenonenone

UpdateComponentV1Request

json
{
  "connectionChanges": {
    "add": [
      {
        "from": {
          "component": "OtherComponentName",
          "socketName": "output"
        },
        "to": "ThisComponentInputSocketName"
      },
      {
        "from": "ThisComponentOutputSocketName",
        "to": {
          "componentId": "01H9ZQD35JPMBGHH69BT0Q79VY",
          "socketName": "InputSocketName"
        }
      }
    ],
    "remove": [
      {
        "from": {
          "componentId": "01H9ZQD35JPMBGHH69BT0Q79VY",
          "socketName": "output"
        },
        "to": "ThisComponentInputSocketName"
      },
      {
        "from": "ThisComponentOutputSocketName",
        "to": {
          "component": "OtherComponentName",
          "socketName": "InputSocketName"
        }
      }
    ]
  },
  "domain": {
    "propId1": "value1",
    "path/to/prop": "value2"
  },
  "name": "MyUpdatedComponentName",
  "resourceId": "i-12345678",
  "secrets": {
    "secretDefinitionName": "secretName"
  },
  "unset": [
    "propId1",
    "path/to/prop"
  ]
}

Properties

NameTypeRequiredRestrictionsDescription
connectionChangesConnectionDetailsfalsenonenone
domainobjectfalsenonenone
» additionalPropertiesanyfalsenonenone
namestring,nullfalsenonenone
resourceIdstring,nullfalsenonenone
secretsobjectfalsenonenone
» additionalPropertiesanyfalsenonenone
unset[string]falsenonenone

UpdateComponentV1Response

json
{
  "component": {
    "canBeUpgraded": true,
    "connections": [
      {
        "incoming": {
          "from": "string",
          "fromComponentId": "string",
          "fromComponentName": "string",
          "to": "string"
        }
      }
    ],
    "domainProps": [
      {
        "id": "string",
        "path": "path/to/prop",
        "propId": "string",
        "value": {}
      }
    ],
    "id": "string",
    "name": "string",
    "resourceId": "string",
    "resourceProps": [
      {
        "id": "string",
        "path": "path/to/prop",
        "propId": "string",
        "value": {}
      }
    ],
    "schemaId": "string",
    "schemaVariantId": "string",
    "sockets": [
      {
        "arity": "one",
        "direction": "input",
        "id": "string",
        "name": "string",
        "value": {}
      }
    ],
    "toDelete": true,
    "views": [
      {
        "id": "string",
        "isDefault": true,
        "name": "string"
      }
    ]
  }
}

Properties

NameTypeRequiredRestrictionsDescription
componentComponentViewV1truenonenone

UpdateSecretV1Request

json
{
  "description": "Updated AWS Secret Key for EC2 access",
  "id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
  "name": "AWS Access Key",
  "rawData": {
    "access_key_id": "AKIAIOSFODNN7EXAMPLE",
    "secret_access_key": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
    "region": "us-west-2",
    "default_output": "json"
  }
}

Properties

NameTypeRequiredRestrictionsDescription
descriptionstringtruenonenone
idstringtruenonenone
namestringtruenonenone
rawDataobjectfalsenonenone
» additionalPropertiesstringfalsenonenone

UpdateSecretV1Response

json
{
  "secret": {
    "definition": "aws_credentials",
    "description": "AWS credentials for production environment",
    "id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
    "name": "Production AWS Key"
  }
}

Properties

NameTypeRequiredRestrictionsDescription
secretSecretV1truenonenone

ViewV1

json
{
  "id": "string",
  "isDefault": true,
  "name": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
idstringtruenonenone
isDefaultbooleantruenonenone
namestringtruenonenone

WhoamiResponse

json
{
  "token": {},
  "userEmail": "user@example.com",
  "userId": "01H9ZQCBJ3E7HBTRN3J58JQX8K",
  "workspaceId": "01H9ZQD35JPMBGHH69BT0Q79VY"
}

Properties

NameTypeRequiredRestrictionsDescription
tokenobjecttruenonenone
userEmailstringtruenonenone
userIdstringtruenonenone
workspaceIdstringtruenonenone