New to Corsair? See API access, authentication, and error handling.
Scenarios
activate
scenarios.activate
Activate scenario
Risk: destructive
await corsair.make.api.scenarios.activate({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
| Name | Type | Required | Description |
|---|---|---|---|
scenario | object | No | — |
scenario full type
scenario full type
{
id?: number,
isActive?: boolean,
islinked?: boolean
}
addBuildVariables
scenarios.addBuildVariables
Add new buildtime variables to scenario metadata
Risk: write
await corsair.make.api.scenarios.addBuildVariables({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
body | object | No | — |
body full type
body full type
{
input?: {
name?: string,
value?: string
}[]
}
| Name | Type | Required | Description |
|---|---|---|---|
ok | number | No | — |
clone
scenarios.clone
Clone scenario
Risk: write
await corsair.make.api.scenarios.clone({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
organizationId | number | Yes | — |
cols[] | (id | name | teamId | hookId | devices | deviceId | deviceScope | description | folderId | concept | folderPath | isinvalid | islinked | isActive | islocked | isPaused | usedPackages | usedModules | lastEdit | scheduling | iswaiting | dlqCount | allDlqCount | chainingRole | isShared | type | createdByUser | updatedByUser | created | nextExec | operations | centicredits | transfer | executions | errors | customProperties | templateMetadata | deleted | deletedAt | labels)[] | No | — |
confirmed | boolean | No | — |
notAnalyze | boolean | No | — |
body | object | Yes | — |
body full type
body full type
{
name: string,
teamId: number,
account?: Record<string, any>,
key?: Record<string, any>,
hook?: Record<string, any>,
device?: Record<string, any>,
udt?: Record<string, any>,
datastore?: Record<string, any>,
states: boolean
}
| Name | Type | Required | Description |
|---|---|---|---|
scenario | object | No | — |
scenario full type
scenario full type
{
id?: number,
name?: string,
teamId?: number,
hookId?: number | null,
devices?: {
id?: number,
scope?: string
}[],
deviceId?: number | null,
deviceScope?: string | null,
description?: string | null,
folderId?: number | null,
concept?: boolean,
folderPath?: string | null,
isinvalid?: boolean,
islinked?: boolean,
isActive?: boolean,
islocked?: boolean,
isPaused?: boolean,
usedPackages?: string[],
usedModules?: {
packageName?: string,
moduleName?: string
}[],
lastEdit?: string,
scheduling?: {
type?: string,
interval?: number
},
iswaiting?: boolean,
dlqCount?: number,
allDlqCount?: number,
createdByUser?: {
id?: number,
name?: string,
email?: string
} | null,
updatedByUser?: {
id?: number,
name?: string,
email?: string
} | null,
nextExec?: string | null,
created?: string,
scenarioVersion?: number,
moduleSequenceId?: number,
type?: string,
chainingRole?: string | null,
isShared?: boolean | null,
operations?: number,
centicredits?: number,
transfer?: number,
executions?: number,
errors?: number,
customProperties?: Record<string, any> | null,
templateMetadata?: {
isOem?: boolean,
versionId?: number,
metadataId?: number,
instantiableId?: number
} | null,
deleted?: boolean,
deletedAt?: string | null,
labels?: {
id?: number,
name?: string,
colour?: string,
scope?: string,
teamId?: number,
description?: string | null,
createdBy?: number | null,
created?: string,
updated?: string | null
}[]
}
countTrash
scenarios.countTrash
Count scenarios in trash
Risk: read
await corsair.make.api.scenarios.countTrash({});
| Name | Type | Required | Description |
|---|---|---|---|
teamId | number | Yes | — |
| Name | Type | Required | Description |
|---|---|---|---|
scenariosTrashedTotal | number | No | — |
create
scenarios.create
Create scenario
Risk: write
await corsair.make.api.scenarios.create({});
| Name | Type | Required | Description |
|---|---|---|---|
cols[] | (id | name | teamId | hookId | devices | deviceId | deviceScope | description | folderId | concept | folderPath | isinvalid | islinked | isActive | islocked | isPaused | usedPackages | usedModules | lastEdit | scheduling | iswaiting | dlqCount | allDlqCount | chainingRole | isShared | type | createdByUser | updatedByUser | created | nextExec | operations | centicredits | transfer | executions | errors | customProperties | templateMetadata | deleted | deletedAt | labels)[] | No | — |
confirmed | boolean | No | — |
body | object | Yes | — |
body full type
body full type
{
blueprint: string,
teamId: number,
scheduling: string,
folderId?: number,
basedon?: number,
description?: string,
metadata?: {
input_spec?: Record<string, any>[],
output_spec?: Record<string, any>[],
template_metadata?: Record<string, any>
}
}
| Name | Type | Required | Description |
|---|---|---|---|
scenario | object | No | — |
scenarioVersion | object | No | — |
scenario full type
scenario full type
{
id?: number,
name?: string,
teamId?: number,
hookId?: number | null,
devices?: {
id?: number,
scope?: string
}[],
deviceId?: number | null,
deviceScope?: string | null,
description?: string | null,
folderId?: number | null,
concept?: boolean,
folderPath?: string | null,
isinvalid?: boolean,
islinked?: boolean,
isActive?: boolean,
islocked?: boolean,
isPaused?: boolean,
usedPackages?: string[],
usedModules?: {
packageName?: string,
moduleName?: string
}[],
lastEdit?: string,
scheduling?: {
type?: string,
interval?: number
},
iswaiting?: boolean,
dlqCount?: number,
allDlqCount?: number,
createdByUser?: {
id?: number,
name?: string,
email?: string
} | null,
updatedByUser?: {
id?: number,
name?: string,
email?: string
} | null,
nextExec?: string | null,
created?: string,
scenarioVersion?: number,
moduleSequenceId?: number,
type?: string,
chainingRole?: string | null,
isShared?: boolean | null,
operations?: number,
centicredits?: number,
transfer?: number,
executions?: number,
errors?: number,
customProperties?: Record<string, any> | null,
templateMetadata?: {
isOem?: boolean,
versionId?: number,
metadataId?: number,
instantiableId?: number
} | null,
deleted?: boolean,
deletedAt?: string | null,
labels?: {
id?: number,
name?: string,
colour?: string,
scope?: string,
teamId?: number,
description?: string | null,
createdBy?: number | null,
created?: string,
updated?: string | null
}[]
}
scenarioVersion full type
scenarioVersion full type
{
version?: number,
draft?: boolean
}
deactivate
scenarios.deactivate
Deactivate scenario
Risk: write
await corsair.make.api.scenarios.deactivate({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
| Name | Type | Required | Description |
|---|---|---|---|
scenario | object | No | — |
scenario full type
scenario full type
{
id?: number,
isActive?: boolean,
islinked?: boolean
}
delete
scenarios.delete
Delete scenario
Risk: destructive
await corsair.make.api.scenarios.delete({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
| Name | Type | Required | Description |
|---|---|---|---|
scenario | number | No | — |
deleteBuildVariable
scenarios.deleteBuildVariable
Delete buildtime variable
Risk: destructive
await corsair.make.api.scenarios.deleteBuildVariable({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
value | string | Yes | — |
| Name | Type | Required | Description |
|---|---|---|---|
ok | number | No | — |
get
scenarios.get
Get scenario details
Risk: read
await corsair.make.api.scenarios.get({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
cols[] | (id | name | teamId | hookId | devices | deviceId | deviceScope | description | folderId | concept | folderPath | isinvalid | islinked | isActive | islocked | isPaused | usedPackages | usedModules | lastEdit | scheduling | iswaiting | dlqCount | allDlqCount | chainingRole | isShared | type | createdByUser | updatedByUser | created | nextExec | operations | centicredits | transfer | executions | errors | customProperties | templateMetadata | deleted | deletedAt | labels)[] | No | — |
| Name | Type | Required | Description |
|---|---|---|---|
scenario | object | No | — |
scenario full type
scenario full type
{
id?: number,
name?: string,
teamId?: number,
hookId?: number | null,
devices?: {
id?: number,
scope?: string
}[],
deviceId?: number | null,
deviceScope?: string | null,
description?: string | null,
folderId?: number | null,
concept?: boolean,
folderPath?: string | null,
isinvalid?: boolean,
islinked?: boolean,
isActive?: boolean,
islocked?: boolean,
isPaused?: boolean,
usedPackages?: string[],
usedModules?: {
packageName?: string,
moduleName?: string
}[],
lastEdit?: string,
scheduling?: {
type?: string,
interval?: number
},
iswaiting?: boolean,
dlqCount?: number,
allDlqCount?: number,
createdByUser?: {
id?: number,
name?: string,
email?: string
} | null,
updatedByUser?: {
id?: number,
name?: string,
email?: string
} | null,
nextExec?: string | null,
created?: string,
scenarioVersion?: number,
moduleSequenceId?: number,
type?: string,
chainingRole?: string | null,
isShared?: boolean | null,
operations?: number,
centicredits?: number,
transfer?: number,
executions?: number,
errors?: number,
customProperties?: Record<string, any> | null,
templateMetadata?: {
isOem?: boolean,
versionId?: number,
metadataId?: number,
instantiableId?: number
} | null,
deleted?: boolean,
deletedAt?: string | null,
labels?: {
id?: number,
name?: string,
colour?: string,
scope?: string,
teamId?: number,
description?: string | null,
createdBy?: number | null,
created?: string,
updated?: string | null
}[]
}
getAiAgentModules
scenarios.getAiAgentModules
Get AI agent module details for scenarios
Risk: read
await corsair.make.api.scenarios.getAiAgentModules({});
| Name | Type | Required | Description |
|---|---|---|---|
teamId | number | Yes | — |
pg[offset] | number | No | — |
pg[limit] | number | No | — |
body | object | No | — |
body full type
body full type
{
scenarioIds?: number[]
}
| Name | Type | Required | Description |
|---|---|---|---|
agentModules | object[] | No | — |
pg | object | No | — |
agentModules full type
agentModules full type
{
scenarioId?: number,
id?: number,
module?: string,
userLabel?: string | null,
evaluationMode?: string,
tools?: {
moduleId?: number,
module?: string,
name?: string,
fileIds?: string[]
}[]
}[]
pg full type
pg full type
{
limit?: number,
offset?: number
}
getInterface
scenarios.getInterface
Get scenario interface
Risk: read
await corsair.make.api.scenarios.getInterface({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
| Name | Type | Required | Description |
|---|---|---|---|
interface | Record<string, any> | No | — |
getModuleData
scenarios.getModuleData
Check module data
Risk: read
await corsair.make.api.scenarios.getModuleData({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
moduleId | number | Yes | — |
| Name | Type | Required | Description |
|---|---|---|---|
exists | boolean | No | — |
getTriggers
scenarios.getTriggers
Get trigger details
Risk: read
await corsair.make.api.scenarios.getTriggers({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
| Name | Type | Required | Description |
|---|---|---|---|
id | number | No | — |
name | string | No | — |
udid | string | No | — |
scope | string | No | — |
queueCount | number | No | — |
queueLimit | number | No | — |
typeName | string | No | — |
type | string | No | — |
url | string | No | — |
flags | Record<string, any> | No | — |
getUsage
scenarios.getUsage
Get scenario usage
Risk: read
await corsair.make.api.scenarios.getUsage({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
organizationTimezone | boolean | No | — |
| Name | Type | Required | Description |
|---|---|---|---|
data | object[] | No | — |
data full type
data full type
{
date?: string,
operations?: number,
dataTransfer?: number,
centicredits?: number
}[]
list
scenarios.list
List scenarios
Risk: read
await corsair.make.api.scenarios.list({});
| Name | Type | Required | Description |
|---|---|---|---|
teamId | number | No | — |
organizationId | number | No | — |
id[] | number[] | No | — |
folderId | number | No | — |
includeSubfolders | boolean | No | — |
labelIds[] | number[] | No | — |
isActive | boolean | No | — |
concept | boolean | No | — |
type | scenario | tool | No | — |
deleted | boolean | No | — |
name | string | No | — |
search | string | No | — |
isinvalid | boolean | No | — |
islocked | boolean | No | — |
createdByUserName | string | No | — |
updatedByUserName | string | No | — |
dlqCount | number | No | — |
cols[] | (id | name | teamId | hookId | devices | deviceId | deviceScope | description | folderId | concept | folderPath | isinvalid | islinked | isActive | islocked | isPaused | usedPackages | usedModules | lastEdit | scheduling | iswaiting | dlqCount | allDlqCount | chainingRole | isShared | type | createdByUser | updatedByUser | created | nextExec | operations | centicredits | transfer | executions | errors | customProperties | templateMetadata | deleted | deletedAt | labels)[] | No | — |
pg[offset] | number | No | — |
pg[limit] | number | No | — |
pg[sortBy] | proprietal | id | name | teamId | folderId | isActive | islinked | isinvalid | islocked | lastEdit | createdByUserName | updatedByUserName | created | dlqCount | operations | executions | centicredits | transfer | errors | No | — |
pg[sortDir] | asc | desc | No | — |
| Name | Type | Required | Description |
|---|---|---|---|
scenarios | object[] | No | — |
pg | object | No | — |
scenarios full type
scenarios full type
{
id?: number,
name?: string,
teamId?: number,
hookId?: number | null,
devices?: {
id?: number,
scope?: string
}[],
deviceId?: number | null,
deviceScope?: string | null,
description?: string | null,
folderId?: number | null,
concept?: boolean,
folderPath?: string | null,
isinvalid?: boolean,
islinked?: boolean,
isActive?: boolean,
islocked?: boolean,
isPaused?: boolean,
usedPackages?: string[],
usedModules?: {
packageName?: string,
moduleName?: string
}[],
lastEdit?: string,
scheduling?: {
type?: string,
interval?: number
},
iswaiting?: boolean,
dlqCount?: number,
allDlqCount?: number,
createdByUser?: {
id?: number,
name?: string,
email?: string
} | null,
updatedByUser?: {
id?: number,
name?: string,
email?: string
} | null,
nextExec?: string | null,
created?: string,
scenarioVersion?: number,
moduleSequenceId?: number,
type?: string,
chainingRole?: string | null,
isShared?: boolean | null,
operations?: number,
centicredits?: number,
transfer?: number,
executions?: number,
errors?: number,
customProperties?: Record<string, any> | null,
templateMetadata?: {
isOem?: boolean,
versionId?: number,
metadataId?: number,
instantiableId?: number
} | null,
deleted?: boolean,
deletedAt?: string | null,
labels?: {
id?: number,
name?: string,
colour?: string,
scope?: string,
teamId?: number,
description?: string | null,
createdBy?: number | null,
created?: string,
updated?: string | null
}[]
}[]
pg full type
pg full type
{
last?: string,
showLast?: boolean,
sortBy?: string,
sortDir?: string,
limit?: number,
offset?: number
}
listAiAgents
scenarios.listAiAgents
List AI agent scenarios
Risk: read
await corsair.make.api.scenarios.listAiAgents({});
| Name | Type | Required | Description |
|---|---|---|---|
teamId | number | Yes | — |
pg[offset] | number | No | — |
pg[limit] | number | No | — |
| Name | Type | Required | Description |
|---|---|---|---|
scenarios | object[] | No | — |
pg | object | No | — |
scenarios full type
scenarios full type
{
id?: number,
name?: string,
description?: string | null,
isActive?: boolean,
teamId?: number,
created?: string,
lastEdit?: string,
scheduling?: Record<string, any>,
usedPackages?: string[],
agentCount?: number,
createdByUser?: {
id?: number,
name?: string | null,
email?: string
} | null
}[]
pg full type
pg full type
{
limit?: number,
offset?: number
}
listBuildVariables
scenarios.listBuildVariables
List buildtime variables
Risk: read
await corsair.make.api.scenarios.listBuildVariables({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
| Name | Type | Required | Description |
|---|---|---|---|
variables | Record<string, any> | No | — |
moveToTrash
scenarios.moveToTrash
Move scenarios to trash
Risk: destructive
await corsair.make.api.scenarios.moveToTrash({});
| Name | Type | Required | Description |
|---|---|---|---|
body | object | Yes | — |
body full type
body full type
{
teamId: number,
scenarioIds: number[]
}
| Name | Type | Required | Description |
|---|---|---|---|
trashedScenarioIds | number[] | Yes | — |
rejectedScenarios | object[] | Yes | — |
summary | object | Yes | — |
rejectedScenarios full type
rejectedScenarios full type
{
scenarioId: number,
code: string,
detail: string
}[]
summary full type
summary full type
{
total: number,
trashed: number,
rejected: number
}
replay
scenarios.replay
Replay scenario executions
Risk: destructive
await corsair.make.api.scenarios.replay({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
body | object | Yes | — |
body full type
body full type
{
executionIds: string[]
}
| Name | Type | Required | Description |
|---|---|---|---|
executionId | string | Yes | — |
replayed | object[] | Yes | — |
failed | object[] | Yes | — |
replayed full type
replayed full type
{
executionId: string,
replayExecutionId: string
}[]
failed full type
failed full type
{
executionId: string,
code: string,
message: string
}[]
restore
scenarios.restore
Restore scenario from trash
Risk: write
await corsair.make.api.scenarios.restore({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
| Name | Type | Required | Description |
|---|---|---|---|
scenario | object | No | — |
strippedModules | object[] | No | — |
scenario full type
scenario full type
{
id?: number,
deleted?: boolean,
deletedAt?: string | null,
containsErrors?: boolean
}
strippedModules full type
strippedModules full type
{
moduleId?: number,
moduleName?: string,
entities?: {
entityType?: string,
entityId?: number
}[]
}[]
run
scenarios.run
Run a scenario
Risk: destructive
await corsair.make.api.scenarios.run({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
body | object | No | — |
body full type
body full type
{
data?: Record<string, any>,
responsive?: boolean,
callbackUrl?: string
}
| Name | Type | Required | Description |
|---|---|---|---|
executionId | string | No | — |
status | number | string | No | — |
update
scenarios.update
Update scenario
Risk: write
await corsair.make.api.scenarios.update({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
cols[] | (id | name | teamId | hookId | devices | deviceId | deviceScope | description | folderId | concept | folderPath | isinvalid | islinked | isActive | islocked | isPaused | usedPackages | usedModules | lastEdit | scheduling | iswaiting | dlqCount | allDlqCount | chainingRole | isShared | type | createdByUser | updatedByUser | created | nextExec | operations | centicredits | transfer | executions | errors | customProperties | templateMetadata | deleted | deletedAt | labels)[] | No | — |
confirmed | boolean | No | — |
body | object | No | — |
body full type
body full type
{
blueprint?: string,
scheduling?: string,
folderId?: number | null,
name?: string,
baseVersion?: number
}
| Name | Type | Required | Description |
|---|---|---|---|
scenario | object | No | — |
scenarioVersion | object | No | — |
scenario full type
scenario full type
{
id?: number,
name?: string,
teamId?: number,
hookId?: number | null,
devices?: {
id?: number,
scope?: string
}[],
deviceId?: number | null,
deviceScope?: string | null,
description?: string | null,
folderId?: number | null,
concept?: boolean,
folderPath?: string | null,
isinvalid?: boolean,
islinked?: boolean,
isActive?: boolean,
islocked?: boolean,
isPaused?: boolean,
usedPackages?: string[],
usedModules?: {
packageName?: string,
moduleName?: string
}[],
lastEdit?: string,
scheduling?: {
type?: string,
interval?: number
},
iswaiting?: boolean,
dlqCount?: number,
allDlqCount?: number,
createdByUser?: {
id?: number,
name?: string,
email?: string
} | null,
updatedByUser?: {
id?: number,
name?: string,
email?: string
} | null,
nextExec?: string | null,
created?: string,
scenarioVersion?: number,
moduleSequenceId?: number,
type?: string,
chainingRole?: string | null,
isShared?: boolean | null,
operations?: number,
centicredits?: number,
transfer?: number,
executions?: number,
errors?: number,
customProperties?: Record<string, any> | null,
templateMetadata?: {
isOem?: boolean,
versionId?: number,
metadataId?: number,
instantiableId?: number
} | null,
deleted?: boolean,
deletedAt?: string | null,
labels?: {
id?: number,
name?: string,
colour?: string,
scope?: string,
teamId?: number,
description?: string | null,
createdBy?: number | null,
created?: string,
updated?: string | null
}[]
}
scenarioVersion full type
scenarioVersion full type
{
scenarioId?: number,
version?: number,
draft?: boolean
}
updateBuildVariables
scenarios.updateBuildVariables
Replace buildtime variables in scenario metadata (variables left out are overwritten)
Risk: destructive
await corsair.make.api.scenarios.updateBuildVariables({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
body | object | No | — |
body full type
body full type
{
input?: {
name?: string,
value?: string
}[]
}
| Name | Type | Required | Description |
|---|---|---|---|
ok | number | No | — |
updateInterface
scenarios.updateInterface
Update scenario interface
Risk: write
await corsair.make.api.scenarios.updateInterface({});
| Name | Type | Required | Description |
|---|---|---|---|
scenarioId | number | Yes | — |
body | object | No | — |
body full type
body full type
{
interface?: Record<string, any>
}
| Name | Type | Required | Description |
|---|---|---|---|
interface | Record<string, any> | No | — |