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
{
"API Documentation": "Available at /swagger-ui",
"What is this?": "I am luminork, the new System Initiative External API application"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | System status information | SystemStatusResponse |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
503 | Service Unavailable | Service in maintenance mode | None |
whoami
User identity endpoints
whoami
Request format
GET /whoami
Example responses
200 Response
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"userEmail": "user@example.com",
"userId": "01H9ZQCBJ3E7HBTRN3J58JQX8K",
"workspaceId": "01H9ZQD35JPMBGHH69BT0Q79VY"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Successfully retrieved user information | WhoamiResponse |
401 | Unauthorized | Unauthorized - Invalid or expired token | None |
403 | Forbidden | Forbidden - Insufficient permissions | None |
change_sets
Change set management endpoints
list_change_sets
Request format
GET /v1/w/{workspace_id}/change-sets
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
Example responses
200 Response
{
"changeSets": "[{\"id\":\"01H9ZQD35JPMBGHH69BT0Q79VY\",\"name\":\"Add new feature\",\"status\":\"Open\",\"isHead\": \"false\"},{\"id\":\"01H9ZQE356JPMBGHH69BT0Q70UO\",\"name\":\"HEAD\",\"status\":\"Open\", \"isHead\": \"true\"}]"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Change sets listed successfully | ListChangeSetV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
500 | Internal Server Error | Internal server error | ApiError |
create_change_set
Request format
POST /v1/w/{workspace_id}/change-sets
Body parameter
{
"changeSetName": "My new feature"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
body | body | CreateChangeSetV1Request | true | none |
Example responses
200 Response
{
"changeSet": {
"id": "string",
"isHead": true,
"name": "string",
"status": "string"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Change set created successfully | CreateChangeSetV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
422 | Unprocessable Entity | Validation error - Invalid request data | ApiError |
500 | Internal Server Error | Internal server error | ApiError |
get_change_set
Request format
GET /v1/w/{workspace_id}/change-sets/{change_set_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
Example responses
200 Response
{
"changeSet": {
"id": "string",
"isHead": true,
"name": "string",
"status": "string"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Change details retrieved successfully | GetChangeSetV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Change set not found | None |
500 | Internal Server Error | Internal server error | ApiError |
abandon_change_set
Request format
DELETE /v1/w/{workspace_id}/change-sets/{change_set_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
Example responses
200 Response
{
"success": "true"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Change set deleted successfully | DeleteChangeSetV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
500 | Internal Server Error | Internal server error | ApiError |
force_apply
Request format
POST /v1/w/{workspace_id}/change-sets/{change_set_id}/force_apply
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
Example responses
200 Response
{
"success": "true"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Change set force applied successfully | ForceApplyChangeSetV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
500 | Internal Server Error | Internal server error | ApiError |
merge_status
Request format
GET /v1/w/{workspace_id}/change-sets/{change_set_id}/merge_status
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
Example responses
200 Response
{
"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
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Change set merge status retrieved successfully | MergeStatusV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
500 | Internal Server Error | Internal server error | ApiError |
request_approval
Request format
POST /v1/w/{workspace_id}/change-sets/{change_set_id}/request_approval
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
Example responses
200 Response
{
"success": "true"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Change set approval requested successfully | RequestApprovalChangeSetV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
500 | Internal Server Error | Internal server error | ApiError |
components
Components management endpoints
list_components
Request format
GET /v1/w/{workspace_id}/change-sets/{change_set_id}/components
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
Example responses
200 Response
[
"01H9ZQD35JPMBGHH69BT0Q79AA",
"01H9ZQD35JPMBGHH69BT0Q79BB",
"01H9ZQD35JPMBGHH69BT0Q79CC"
]
500 Response
{
"message": "Invalid request data",
"statusCode": 422,
"code": 4001
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Components retrieved successfully | ListComponentsV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
500 | Internal Server Error | Internal server error | ApiError |
create_component
Request format
POST /v1/w/{workspace_id}/change-sets/{change_set_id}/components
Body parameter
{
"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",
"schemaName": "AWS::EC2::Instance",
"secrets": {
"secretDefinitionName": "secretName"
},
"viewName": "MyView"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
body | body | CreateComponentV1Request | true | none |
Example responses
200 Response
{
"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
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Component created successfully | CreateComponentV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Component not found | None |
412 | Precondition Failed | Precondition Failed - View not found | ApiError |
422 | Unprocessable Entity | Validation error - Invalid request data | ApiError |
500 | Internal Server Error | Internal server error | ApiError |
find_component
Request format
GET /v1/w/{workspace_id}/change-sets/{change_set_id}/components/find
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
component | query | string,null | false | none |
componentId | query | string,null | false | none |
Example responses
200 Response
{
"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
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Component retrieved successfully | GetComponentV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Component not found | None |
500 | Internal Server Error | Internal server error | ApiError |
get_component
Request format
GET /v1/w/{workspace_id}/change-sets/{change_set_id}/components/{component_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
component_id | path | string | true | Component identifier |
Example responses
200 Response
{
"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
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Component retrieved successfully | GetComponentV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Component not found | None |
500 | Internal Server Error | Internal server error | ApiError |
update_component
Request format
PUT /v1/w/{workspace_id}/change-sets/{change_set_id}/components/{component_id}
Body parameter
{
"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",
"secrets": {
"secretDefinitionName": "secretName"
},
"unset": [
"propId1",
"path/to/prop"
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
component_id | path | string | true | Component identifier |
body | body | UpdateComponentV1Request | true | none |
Example responses
200 Response
{
"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
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Component updated successfully | UpdateComponentV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Component not found | None |
412 | Precondition Failed | Precondition failed - Duplicate component name | None |
422 | Unprocessable Entity | Validation error - Invalid request data | ApiError |
500 | Internal Server Error | Internal server error | ApiError |
delete_component
Request format
DELETE /v1/w/{workspace_id}/change-sets/{change_set_id}/components/{component_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
component_id | path | string | true | Component identifier |
Example responses
200 Response
{
"status": "MarkedForDeletion"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Component deleted successfully | DeleteComponentV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Component not found | None |
500 | Internal Server Error | Internal server error | ApiError |
add_action
Request format
POST /v1/w/{workspace_id}/change-sets/{change_set_id}/components/{component_id}/action
Body parameter
{
"action": {
"function": "Create Asset"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
component_id | path | string | true | Component identifier |
body | body | AddActionV1Request | true | none |
Example responses
200 Response
{
"success": true
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Action successfully queued | AddActionV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Component or function not found | None |
409 | Conflict | action already enqueued | ApiError |
412 | Precondition Failed | Precondition Failed - View not found or duplicate function name | ApiError |
422 | Unprocessable Entity | Validation error - Invalid request data | ApiError |
500 | Internal Server Error | Internal server error | ApiError |
execute_management_function
Request format
POST /v1/w/{workspace_id}/change-sets/{change_set_id}/components/{component_id}/execute-management-function
Body parameter
{
"viewName": "MyViewName",
"managementFunction": {
"function": "CreateVpc"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
component_id | path | string | true | Component identifier |
body | body | ExecuteManagementFunctionV1Request | true | none |
Example responses
200 Response
{
"funcRunId": "01H9ZQD35JPMBGHH69BT0Q79VY"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Function successfully dispatched | ExecuteManagementFunctionV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Component or function not found | None |
412 | Precondition Failed | Precondition Failed - View not found or duplicate function name | ApiError |
422 | Unprocessable Entity | Validation error - Invalid request data | ApiError |
500 | Internal Server Error | Internal server error | ApiError |
schemas
Schemsa management endpoints
list_schemas
Request format
GET /v1/w/{workspace_id}/change-sets/{change_set_id}/schema
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
Example responses
200 Response
{
"schemas": "[{\"schemaId\":\"01H9ZQD35JPMBGHH69BT0Q79VY\",\"schemaName\":\"AWS::EC2::Instance\",\"category\":\"AWS::EC2\",\"installed\": \"true\"}]"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Schemas listed successfully | ListSchemaV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
500 | Internal Server Error | Internal server error | ApiError |
find_schema
Request format
GET /v1/w/{workspace_id}/change-sets/{change_set_id}/schema/find
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
schema | query | string,null | false | none |
schemaId | query | string,null | false | none |
Example responses
200 Response
{
"category": "string",
"installed": true,
"schemaId": "string",
"schemaName": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Schema retrieved successfully | FindSchemaV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Schema not found | None |
500 | Internal Server Error | Internal server error | ApiError |
get_schema
Request format
GET /v1/w/{workspace_id}/change-sets/{change_set_id}/schema/{schema_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
schema_id | path | string | true | Schema identifier |
Example responses
200 Response
{
"defaultVariantId": "01H9ZQD35JPMBGHH69BT0Q79VZ",
"name": "AWS::EC2::Instance",
"variantIds": [
"01H9ZQD35JPMBGHH69BT0Q79VZ",
"01H9ZQD35JPMBGHH69BT0Q79VY"
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Schema retrieved successfully | GetSchemaV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Schema not found | None |
500 | Internal Server Error | Internal server error | ApiError |
get_default_variant
Request format
GET /v1/w/{workspace_id}/change-sets/{change_set_id}/schema/{schema_id}/variant/default
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
schema_id | path | string | true | Schema identifier |
Example responses
200 Response
{
"assetFuncId": "01H9ZQD35JPMBGHH69BT0Q75XY",
"category": "AWS::EC2",
"color": "#FF5733",
"description": "Amazon EC2 Instance resource type",
"displayName": "AWS EC2 Instance",
"isDefaultVariant": true,
"isLocked": false,
"link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instance.html",
"variantFuncIds": [
"01H9ZQD35JPMBGHH69BT0Q75AA",
"01H9ZQD35JPMBGHH69BT0Q75BB"
],
"variantId": "01H9ZQD35JPMBGHH69BT0Q79VZ"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Schema variant retrieved successfully | GetSchemaVariantV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Schema variant not found | None |
500 | Internal Server Error | Internal server error | ApiError |
get_variant
Request format
GET /v1/w/{workspace_id}/change-sets/{change_set_id}/schema/{schema_id}/variant/{schema_variant_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
schema_id | path | string | true | Schema identifier |
schema_variant_id | path | string | true | Schema variant identifier |
Example responses
200 Response
{
"assetFuncId": "01H9ZQD35JPMBGHH69BT0Q75XY",
"category": "AWS::EC2",
"color": "#FF5733",
"description": "Amazon EC2 Instance resource type",
"displayName": "AWS EC2 Instance",
"isDefaultVariant": true,
"isLocked": false,
"link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instance.html",
"variantFuncIds": [
"01H9ZQD35JPMBGHH69BT0Q75AA",
"01H9ZQD35JPMBGHH69BT0Q75BB"
],
"variantId": "01H9ZQD35JPMBGHH69BT0Q79VZ"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Schema variant retrieved successfully | GetSchemaVariantV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Schema variant not found | None |
412 | Precondition Failed | Schema variant not found for schema | None |
500 | Internal Server Error | Internal server error | ApiError |
actions
Actions management endpoints
get_actions
Request format
GET /v1/w/{workspace_id}/change-sets/{change_set_id}/actions/
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
Example responses
200 Response
{
"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
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Actions retrieved successfully | GetActionsV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
500 | Internal Server Error | Internal server error | ApiError |
cancel_action
Request format
POST /v1/w/{workspace_id}/change-sets/{change_set_id}/actions/{action_id}/cancel
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
action_id | path | string | true | Action identifier |
Example responses
200 Response
{
"success": true
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Action cancelled successfully | CancelActionV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Action not found | None |
500 | Internal Server Error | Internal server error | ApiError |
put_on_hold
Request format
POST /v1/w/{workspace_id}/change-sets/{change_set_id}/actions/{action_id}/put_on_hold
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
action_id | path | string | true | Action identifier |
Example responses
200 Response
{
"success": true
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Action successfully put on hold | PutOnHoldActionV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Action not found | None |
500 | Internal Server Error | Internal server error | ApiError |
retry_action
Request format
POST /v1/w/{workspace_id}/change-sets/{change_set_id}/actions/{action_id}/retry
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
action_id | path | string | true | Action identifier |
Example responses
200 Response
{
"success": true
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Action successfully requeued | RetryActionV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Action not found | None |
500 | Internal Server Error | Internal server error | ApiError |
secrets
Secrets management endpoints
get_secrets
Request format
GET /v1/w/{workspace_id}/change-sets/{change_set_id}/secrets
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
Example responses
200 Response
{
"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
{
"message": "Invalid request data",
"statusCode": 422,
"code": 4001
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Secrets retrieved successfully | HashMap |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
500 | Internal Server Error | Internal server error | ApiError |
create_secret
Request format
POST /v1/w/{workspace_id}/change-sets/{change_set_id}/secrets
Body parameter
{
"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
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
body | body | CreateSecretV1Request | true | none |
Example responses
200 Response
{
"secret": {
"definition": "aws_credentials",
"description": "AWS credentials for production environment",
"id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
"name": "Production AWS Key"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Secret created successfully | CreateSecretV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
422 | Unprocessable Entity | Validation error - Invalid request data | ApiError |
500 | Internal Server Error | Internal server error | ApiError |
update_secret
Request format
PUT /v1/w/{workspace_id}/change-sets/{change_set_id}/secrets/{secret_id}
Body parameter
{
"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
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
secret_id | path | string | true | Secret identifier |
body | body | UpdateSecretV1Request | true | none |
Example responses
200 Response
{
"secret": {
"definition": "aws_credentials",
"description": "AWS credentials for production environment",
"id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
"name": "Production AWS Key"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Secret updated successfully | UpdateSecretV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Secret not found | None |
500 | Internal Server Error | Internal server error | ApiError |
delete_secret
Request format
DELETE /v1/w/{workspace_id}/change-sets/{change_set_id}/secrets/{secret_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
secret_id | path | string | true | Secret identifier |
Example responses
200 Response
{
"success": true
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Secret deleted successfully | DeleteSecretV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Secret not found | None |
500 | Internal Server Error | Internal server error | ApiError |
funcs
Functions management endpoints
get_func_run
Request format
GET /v1/w/{workspace_id}/change-sets/{change_set_id}/funcs/runs/{func_run_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
func_run_id | path | string | true | Func run identifier |
Example responses
200 Response
{
"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
{
"message": "Invalid request data",
"statusCode": 422,
"code": 4001
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Func Run retrieved successfully | GetFuncRunV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Func run not found | None |
500 | Internal Server Error | Internal server error | ApiError |
get_func
Request format
GET /v1/w/{workspace_id}/change-sets/{change_set_id}/funcs/{func_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workspace_id | path | string | true | Workspace identifier |
change_set_id | path | string | true | Change set identifier |
func_id | path | string | true | Func identifier |
Example responses
200 Response
[
{
"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
{
"message": "Invalid request data",
"statusCode": 422,
"code": 4001
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Func retrieved successfully | GetFuncV1Response |
401 | Unauthorized | Unauthorized - Invalid or missing token | None |
404 | Not Found | Func not found | None |
500 | Internal Server Error | Internal server error | ApiError |
Schemas
ActionReference
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» function | string | true | none | none |
xor
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» actionPrototypeId | string | true | none | none |
ActionV1RequestPath
{
"action_id": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
action_id | string | true | none | none |
ActionViewV1
{
"componentId": "string",
"description": "string",
"funcRunId": "string",
"id": "string",
"kind": "string",
"name": "string",
"originatingChangeSetId": "string",
"prototypeId": "string",
"state": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
componentId | string | true | none | none |
description | string | true | none | none |
funcRunId | string | true | none | none |
id | string | true | none | none |
kind | string | true | none | none |
name | string | true | none | none |
originatingChangeSetId | string | true | none | none |
prototypeId | string | true | none | none |
state | string | true | none | none |
AddActionV1Request
{
"action": {
"function": "Create Asset"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
action | ActionReference | true | none | 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. |
AddActionV1Response
{
"success": true
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
success | boolean | true | none | none |
ApiError
{
"message": "Invalid request data",
"statusCode": 422,
"code": 4001
}
Standard error response format for v1 API
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
code | integer,null(int32) | false | none | none |
message | string | true | none | none |
statusCode | integer(int32) | true | none | none |
ApiSuccess_String
{
"data": "string"
}
Standard success response format for v1 API
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
data | string | true | none | none |
CancelActionV1Response
{
"success": true
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
success | boolean | true | none | none |
ChangeSetViewV1
{
"id": "string",
"isHead": true,
"name": "string",
"status": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | string | true | none | none |
isHead | boolean | true | none | none |
name | string | true | none | none |
status | string | true | none | none |
ComponentPropKey
"string"
Properties
oneOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | none |
xor
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | DomainPropPath | false | none | A prop path, starting from root/domain, with / instead of PROP_PATH_SEPARATOR as its separator |
ComponentPropViewV1
{
"id": "string",
"path": "path/to/prop",
"propId": "string",
"value": {}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | string | true | none | none |
path | string | true | none | none |
propId | string | true | none | none |
value | object | true | none | none |
ComponentReference
{
"componentId": "01H9ZQD35JPMBGHH69BT0Q79VY"
}
Properties
oneOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» component | string | true | none | none |
xor
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» componentId | string | true | none | none |
ComponentV1RequestPath
{
"component_id": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
component_id | string | true | none | none |
ComponentViewV1
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
canBeUpgraded | boolean | true | none | none |
connections | [ConnectionViewV1] | true | none | none |
domainProps | [ComponentPropViewV1] | true | none | none |
id | string | true | none | none |
name | string | true | none | none |
resourceId | string | true | none | none |
resourceProps | [ComponentPropViewV1] | true | none | none |
schemaId | string | true | none | none |
schemaVariantId | string | true | none | none |
sockets | [SocketViewV1] | true | none | none |
toDelete | boolean | true | none | none |
views | [ViewV1] | true | none | none |
Connection
{
"from": {
"componentId": "01H9ZQD35JPMBGHH69BT0Q79VY",
"socketName": "output"
},
"to": "ThisComponentInputSocketName"
}
Properties
oneOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» from | ConnectionPoint | true | none | none |
» to | string | true | none | none |
xor
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» from | string | true | none | none |
» to | ConnectionPoint | true | none | none |
ConnectionDetails
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
add | [Connection] | false | none | none |
remove | [Connection] | false | none | none |
ConnectionPoint
{
"componentId": "01H9ZQD35JPMBGHH69BT0Q79VY",
"socketName": "OutputSocketName"
}
Properties
allOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | ComponentReference | false | none | none |
and
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» socketName | string | true | none | none |
ConnectionViewV1
{
"incoming": {
"from": "string",
"fromComponentId": "string",
"fromComponentName": "string",
"to": "string"
}
}
Properties
oneOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» incoming | IncomingConnectionViewV1 | true | none | none |
xor
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» outgoing | OutgoingConnectionViewV1 | true | none | none |
xor
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» managing | ManagingConnectionViewV1 | true | none | none |
xor
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» managedBy | ManagedByConnectionViewV1 | true | none | none |
CreateChangeSetV1Request
{
"changeSetName": "My new feature"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
changeSetName | string | true | none | none |
CreateChangeSetV1Response
{
"changeSet": {
"id": "string",
"isHead": true,
"name": "string",
"status": "string"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
changeSet | ChangeSetViewV1 | true | none | none |
CreateComponentV1Request
{
"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",
"schemaName": "AWS::EC2::Instance",
"secrets": {
"secretDefinitionName": "secretName"
},
"viewName": "MyView"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
connections | [Connection] | false | none | none |
domain | object | false | none | none |
» additionalProperties | any | false | none | none |
name | string | true | none | none |
schemaName | string | true | none | none |
secrets | object | false | none | none |
» additionalProperties | any | false | none | none |
viewName | string,null | false | none | none |
CreateComponentV1Response
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
component | ComponentViewV1 | true | none | none |
CreateSecretV1Request
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
definitionName | string | true | none | none |
description | string | true | none | none |
name | string | true | none | none |
rawData | object | false | none | none |
» additionalProperties | string | false | none | none |
CreateSecretV1Response
{
"secret": {
"definition": "aws_credentials",
"description": "AWS credentials for production environment",
"id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
"name": "Production AWS Key"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
secret | SecretV1 | true | none | none |
DeleteChangeSetV1Response
{
"success": "true"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
success | boolean | true | none | none |
DeleteComponentV1Response
{
"status": "MarkedForDeletion"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
status | string | true | none | none |
DeleteSecretV1Response
{
"success": true
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
success | boolean | true | none | none |
DomainPropPath
"string"
A prop path, starting from root/domain, with / instead of PROP_PATH_SEPARATOR as its separator
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | A prop path, starting from root/domain, with / instead of PROP_PATH_SEPARATOR as its separator |
ErrorDetail
{
"code": 0,
"message": "string",
"status_code": 0
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
code | integer(int32) | true | none | none |
message | string | true | none | none |
status_code | integer(int32) | true | none | none |
ErrorResponse
{
"error": {
"code": 0,
"message": "string",
"status_code": 0
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
error | ErrorDetail | true | none | none |
ExecuteManagementFunctionV1Request
{
"viewName": "MyViewName",
"managementFunction": {
"function": "CreateVpc"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
managementFunction | ManagementFunctionReference | true | none | 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. |
viewName | string,null | false | none | none |
ExecuteManagementFunctionV1Response
{
"funcRunId": "01H9ZQD35JPMBGHH69BT0Q79VY"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
funcRunId | string | true | none | none |
FindComponentV1Params
{
"component": "string",
"componentId": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
component | string,null | false | none | none |
componentId | string | true | none | none |
FindSchemaV1Params
{
"schema": "string",
"schemaId": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
schema | string,null | false | none | none |
schemaId | string | true | none | none |
FindSchemaV1Response
{
"category": "string",
"installed": true,
"schemaId": "string",
"schemaName": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
category | string | true | none | none |
installed | boolean | true | none | none |
schemaId | string | true | none | none |
schemaName | string | true | none | none |
ForceApplyChangeSetV1Response
{
"success": "true"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
success | boolean | true | none | none |
FuncRunLogViewV1
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
createdAt | string | true | none | none |
finalized | boolean | true | none | none |
funcRunId | string | true | none | none |
id | string | true | none | none |
logs | [object] | true | none | none |
updatedAt | string | true | none | none |
FuncRunV1RequestPath
{
"func_run_id": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
func_run_id | string | true | none | none |
FuncRunViewV1
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
actionDisplayName | string | true | none | none |
actionId | string | true | none | none |
actionKind | string | true | none | none |
actionOriginatingChangeSetId | string | true | none | none |
actionOriginatingChangeSetName | string | true | none | none |
actionPrototypeId | string | true | none | none |
actionResultState | string | true | none | none |
attributeValueId | string | true | none | none |
backendKind | string | true | none | none |
backendResponseType | string | true | none | none |
componentId | string | true | none | none |
componentName | string | true | none | none |
createdAt | string | true | none | none |
functionArgs | any | true | none | none |
functionCodeBase64 | string | true | none | none |
functionDescription | string | true | none | none |
functionDisplayName | string | true | none | none |
functionKind | string | true | none | none |
functionLink | string | true | none | none |
functionName | string | true | none | none |
id | string | true | none | none |
logs | any | false | none | none |
oneOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» anonymous | null | false | none | none |
xor
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» anonymous | FuncRunLogViewV1 | false | none | none |
continued
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
resultValue | any | false | none | none |
schemaName | string | true | none | none |
state | string | true | none | none |
updatedAt | string | true | none | none |
GetActionsV1Response
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
actions | [ActionViewV1] | true | none | none |
GetChangeSetV1Response
{
"changeSet": {
"id": "string",
"isHead": true,
"name": "string",
"status": "string"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
changeSet | ChangeSetViewV1 | true | none | none |
GetComponentV1Response
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
actionFunctions | [GetComponentV1ResponseActionFunction] | true | none | none |
component | ComponentViewV1 | true | none | none |
managementFunctions | [GetComponentV1ResponseManagementFunction] | true | none | none |
GetComponentV1ResponseActionFunction
{
"funcName": "Terminate Instance",
"prototypeId": "01HAXYZF3GC9CYA6ZVSM3E4YGG"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
funcName | string | true | none | none |
prototypeId | string | true | none | none |
GetComponentV1ResponseManagementFunction
{
"funcName": "Start Instance",
"managementPrototypeId": "01HAXYZF3GC9CYA6ZVSM3E4YFF"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
funcName | string | true | none | none |
managementPrototypeId | string | true | none | none |
GetFuncRunV1Response
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
funcRun | FuncRunViewV1 | true | none | none |
GetFuncV1Response
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
code | string | true | none | none |
description | string | true | none | none |
displayName | string | true | none | none |
isLocked | boolean | true | none | none |
kind | string | true | none | none |
link | string | true | none | none |
name | string | true | none | none |
GetSchemaV1Response
{
"defaultVariantId": "01H9ZQD35JPMBGHH69BT0Q79VZ",
"name": "AWS::EC2::Instance",
"variantIds": [
"01H9ZQD35JPMBGHH69BT0Q79VZ",
"01H9ZQD35JPMBGHH69BT0Q79VY"
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
defaultVariantId | string | true | none | none |
name | string | true | none | none |
variantIds | [string] | true | none | none |
GetSchemaVariantV1Response
{
"assetFuncId": "01H9ZQD35JPMBGHH69BT0Q75XY",
"category": "AWS::EC2",
"color": "#FF5733",
"description": "Amazon EC2 Instance resource type",
"displayName": "AWS EC2 Instance",
"isDefaultVariant": true,
"isLocked": false,
"link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instance.html",
"variantFuncIds": [
"01H9ZQD35JPMBGHH69BT0Q75AA",
"01H9ZQD35JPMBGHH69BT0Q75BB"
],
"variantId": "01H9ZQD35JPMBGHH69BT0Q79VZ"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
assetFuncId | string | true | none | none |
category | string | true | none | none |
color | string | true | none | none |
description | string | true | none | none |
displayName | string | true | none | none |
isDefaultVariant | boolean | true | none | none |
isLocked | boolean | true | none | none |
link | string | true | none | none |
variantFuncIds | [string] | true | none | none |
variantId | string | true | none | none |
HashMap
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
additionalProperties | object | false | none | none |
» definition | SecretDefinitionV1 | true | none | none |
» secrets | [SecretV1] | true | none | none |
IncomingConnectionViewV1
{
"from": "string",
"fromComponentId": "string",
"fromComponentName": "string",
"to": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
from | string | true | none | none |
fromComponentId | string | true | none | none |
fromComponentName | string | true | none | none |
to | string | true | none | none |
ListChangeSetV1Response
{
"changeSets": "[{\"id\":\"01H9ZQD35JPMBGHH69BT0Q79VY\",\"name\":\"Add new feature\",\"status\":\"Open\",\"isHead\": \"false\"},{\"id\":\"01H9ZQE356JPMBGHH69BT0Q70UO\",\"name\":\"HEAD\",\"status\":\"Open\", \"isHead\": \"true\"}]"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
changeSets | [object] | true | none | none |
ListComponentsV1Response
{
"components": [
"01H9ZQD35JPMBGHH69BT0Q79AA",
"01H9ZQD35JPMBGHH69BT0Q79BB",
"01H9ZQD35JPMBGHH69BT0Q79CC"
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
components | [string] | true | none | none |
ListSchemaV1Response
{
"schemas": "[{\"schemaId\":\"01H9ZQD35JPMBGHH69BT0Q79VY\",\"schemaName\":\"AWS::EC2::Instance\",\"category\":\"AWS::EC2\",\"installed\": \"true\"}]"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
schemas | [object] | true | none | none |
ManagedByConnectionViewV1
{
"componentId": "string",
"componentName": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
componentId | string | true | none | none |
componentName | string | true | none | none |
ManagementFunctionReference
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» function | string | true | none | none |
xor
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» managementPrototypeId | string | true | none | none |
ManagingConnectionViewV1
{
"componentId": "string",
"componentName": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
componentId | string | true | none | none |
componentName | string | true | none | none |
MergeStatusV1Response
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
actions | [MergeStatusV1ResponseAction] | true | none | [Action item in merge status response] |
changeSet | object | true | none | none |
MergeStatusV1ResponseAction
{
"id": "01H9ZQD35JPMBGHH69BT0Q79VY",
"component": {
"id": "01H9ZQD35JPMBGHH69BT0Q79AB",
"name": "my-ec2-instance"
},
"state": "Pending",
"kind": "Create",
"name": "Create EC2 Instance"
}
Action item in merge status response
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
component | any | false | none | none |
oneOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» anonymous | null | false | none | none |
xor
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» anonymous | MergeStatusV1ResponseActionComponent | false | none | Component details in action response |
continued
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | string | true | none | none |
kind | string | true | none | none |
name | string | true | none | none |
state | string | true | none | none |
MergeStatusV1ResponseActionComponent
{
"id": "01H9ZQD35JPMBGHH69BT0Q79AB",
"name": "my-ec2-instance"
}
Component details in action response
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | string | true | none | none |
name | string | true | none | none |
OutgoingConnectionViewV1
{
"from": "string",
"toComponentId": "string",
"toComponentName": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
from | string | true | none | none |
toComponentId | string | true | none | none |
toComponentName | string | true | none | none |
OutputLineViewV1
{
"executionId": "01JQCJ0AAXGX5M9QY10AVF4GK1",
"group": "log",
"level": "info",
"message": "Running CLI command: \"aws 'cloudcontrol' 'delete-resource'\"",
"stream": "stdout",
"timestamp": 1743104518
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
executionId | string | true | none | none |
group | string,null | false | none | none |
level | string | true | none | none |
message | string | true | none | none |
stream | string | true | none | none |
timestamp | integer(int64) | true | none | none |
PutOnHoldActionV1Response
{
"success": true
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
success | boolean | true | none | none |
RequestApprovalChangeSetV1Response
{
"success": "true"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
success | boolean | true | none | none |
RetryActionV1Response
{
"success": true
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
success | boolean | true | none | none |
SchemaV1RequestPath
{
"schema_id": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
schema_id | string | true | none | none |
SchemaVariantV1RequestPath
{
"schema_id": "string",
"schema_variant_id": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
schema_id | string | true | none | none |
schema_variant_id | string | true | none | none |
SecretDefinitionV1
{
"formData": [
{
"name": "access_key_id",
"kind": "string"
},
{
"name": "secret_access_key",
"kind": "password"
}
],
"secretDefinition": "aws_credentials"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
formData | [SecretFormDataV1] | true | none | none |
secretDefinition | string | true | none | none |
SecretFormDataV1
{
"kind": "string",
"name": "access_key_id"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
kind | string | true | none | none |
name | string | true | none | none |
SecretPropKey
"string"
Properties
oneOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | none |
xor
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | SecretPropPath | false | none | none |
SecretPropPath
"string"
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | none |
SecretV1
{
"definition": "aws_credentials",
"description": "AWS credentials for production environment",
"id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
"name": "Production AWS Key"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
definition | string | true | none | none |
description | string | true | none | none |
id | string | true | none | none |
name | string | true | none | none |
SocketDirection
"input"
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | none |
Enumerated Values
Property | Value |
---|---|
anonymous | input |
anonymous | output |
SocketViewV1
{
"arity": "one",
"direction": "input",
"id": "string",
"name": "string",
"value": {}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
arity | string | true | none | none |
direction | SocketDirection | true | none | none |
id | string | true | none | none |
name | string | true | none | none |
value | object | true | none | none |
SystemStatusResponse
{
"API Documentation": "Available at /swagger-ui",
"What is this?": "I am luminork, the new System Initiative External API application"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
API Documentation | string | true | none | none |
What is this? | string | true | none | none |
UpdateComponentV1Request
{
"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",
"secrets": {
"secretDefinitionName": "secretName"
},
"unset": [
"propId1",
"path/to/prop"
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
connectionChanges | ConnectionDetails | false | none | none |
domain | object | false | none | none |
» additionalProperties | any | false | none | none |
name | string,null | false | none | none |
secrets | object | false | none | none |
» additionalProperties | any | false | none | none |
unset | [string] | false | none | none |
UpdateComponentV1Response
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
component | ComponentViewV1 | true | none | none |
UpdateSecretV1Request
{
"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
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
description | string | true | none | none |
id | string | true | none | none |
name | string | true | none | none |
rawData | object | false | none | none |
» additionalProperties | string | false | none | none |
UpdateSecretV1Response
{
"secret": {
"definition": "aws_credentials",
"description": "AWS credentials for production environment",
"id": "01HAXYZF3GC9CYA6ZVSM3E4YHH",
"name": "Production AWS Key"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
secret | SecretV1 | true | none | none |
ViewV1
{
"id": "string",
"isDefault": true,
"name": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | string | true | none | none |
isDefault | boolean | true | none | none |
name | string | true | none | none |
WhoamiResponse
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"userEmail": "user@example.com",
"userId": "01H9ZQCBJ3E7HBTRN3J58JQX8K",
"workspaceId": "01H9ZQD35JPMBGHH69BT0Q79VY"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
token | string | true | none | none |
userEmail | string | true | none | none |
userId | string | true | none | none |
workspaceId | string | true | none | none |