@mobilerun/sdk 5.5.0 → 5.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/client.d.mts +8 -8
- package/client.d.mts.map +1 -1
- package/client.d.ts +8 -8
- package/client.d.ts.map +1 -1
- package/client.js +1 -0
- package/client.js.map +1 -1
- package/client.mjs +2 -1
- package/client.mjs.map +1 -1
- package/package.json +1 -1
- package/resources/apps.d.mts +18 -15
- package/resources/apps.d.mts.map +1 -1
- package/resources/apps.d.ts +18 -15
- package/resources/apps.d.ts.map +1 -1
- package/resources/apps.js +5 -2
- package/resources/apps.js.map +1 -1
- package/resources/apps.mjs +5 -2
- package/resources/apps.mjs.map +1 -1
- package/resources/assistant/conversations.d.mts +7 -17
- package/resources/assistant/conversations.d.mts.map +1 -1
- package/resources/assistant/conversations.d.ts +7 -17
- package/resources/assistant/conversations.d.ts.map +1 -1
- package/resources/assistant/conversations.js +4 -11
- package/resources/assistant/conversations.js.map +1 -1
- package/resources/assistant/conversations.mjs +4 -11
- package/resources/assistant/conversations.mjs.map +1 -1
- package/resources/connect/connect.d.mts +2 -2
- package/resources/connect/connect.d.mts.map +1 -1
- package/resources/connect/connect.d.ts +2 -2
- package/resources/connect/connect.d.ts.map +1 -1
- package/resources/connect/connect.js.map +1 -1
- package/resources/connect/connect.mjs.map +1 -1
- package/resources/connect/index.d.mts +1 -1
- package/resources/connect/index.d.mts.map +1 -1
- package/resources/connect/index.d.ts +1 -1
- package/resources/connect/index.d.ts.map +1 -1
- package/resources/connect/index.js.map +1 -1
- package/resources/connect/index.mjs.map +1 -1
- package/resources/connect/proxies.d.mts +94 -11
- package/resources/connect/proxies.d.mts.map +1 -1
- package/resources/connect/proxies.d.ts +94 -11
- package/resources/connect/proxies.d.ts.map +1 -1
- package/resources/connect/proxies.js +21 -10
- package/resources/connect/proxies.js.map +1 -1
- package/resources/connect/proxies.mjs +21 -10
- package/resources/connect/proxies.mjs.map +1 -1
- package/resources/devices/browser.d.mts +9 -3
- package/resources/devices/browser.d.mts.map +1 -1
- package/resources/devices/browser.d.ts +9 -3
- package/resources/devices/browser.d.ts.map +1 -1
- package/resources/devices/browser.js +9 -3
- package/resources/devices/browser.js.map +1 -1
- package/resources/devices/browser.mjs +9 -3
- package/resources/devices/browser.mjs.map +1 -1
- package/resources/devices/devices.d.mts +52 -23
- package/resources/devices/devices.d.mts.map +1 -1
- package/resources/devices/devices.d.ts +52 -23
- package/resources/devices/devices.d.ts.map +1 -1
- package/resources/devices/devices.js +17 -7
- package/resources/devices/devices.js.map +1 -1
- package/resources/devices/devices.mjs +17 -7
- package/resources/devices/devices.mjs.map +1 -1
- package/resources/devices/index.d.mts +1 -1
- package/resources/devices/index.d.mts.map +1 -1
- package/resources/devices/index.d.ts +1 -1
- package/resources/devices/index.d.ts.map +1 -1
- package/resources/devices/index.js.map +1 -1
- package/resources/devices/index.mjs.map +1 -1
- package/resources/devices/recordings.d.mts +4 -2
- package/resources/devices/recordings.d.mts.map +1 -1
- package/resources/devices/recordings.d.ts +4 -2
- package/resources/devices/recordings.d.ts.map +1 -1
- package/resources/devices/traffic-sessions.d.mts +1 -11
- package/resources/devices/traffic-sessions.d.mts.map +1 -1
- package/resources/devices/traffic-sessions.d.ts +1 -11
- package/resources/devices/traffic-sessions.d.ts.map +1 -1
- package/resources/devices/traffic-sessions.js +2 -8
- package/resources/devices/traffic-sessions.js.map +1 -1
- package/resources/devices/traffic-sessions.mjs +2 -8
- package/resources/devices/traffic-sessions.mjs.map +1 -1
- package/resources/files.d.mts +5 -19
- package/resources/files.d.mts.map +1 -1
- package/resources/files.d.ts +5 -19
- package/resources/files.d.ts.map +1 -1
- package/resources/files.js +2 -10
- package/resources/files.js.map +1 -1
- package/resources/files.mjs +2 -10
- package/resources/files.mjs.map +1 -1
- package/resources/index.d.mts +4 -4
- package/resources/index.d.mts.map +1 -1
- package/resources/index.d.ts +4 -4
- package/resources/index.d.ts.map +1 -1
- package/resources/index.js.map +1 -1
- package/resources/index.mjs +1 -1
- package/resources/index.mjs.map +1 -1
- package/resources/mailboxes/connections.d.mts +64 -0
- package/resources/mailboxes/connections.d.mts.map +1 -0
- package/resources/mailboxes/connections.d.ts +64 -0
- package/resources/mailboxes/connections.d.ts.map +1 -0
- package/resources/mailboxes/connections.js +42 -0
- package/resources/mailboxes/connections.js.map +1 -0
- package/resources/mailboxes/connections.mjs +38 -0
- package/resources/mailboxes/connections.mjs.map +1 -0
- package/resources/mailboxes/index.d.mts +2 -1
- package/resources/mailboxes/index.d.mts.map +1 -1
- package/resources/mailboxes/index.d.ts +2 -1
- package/resources/mailboxes/index.d.ts.map +1 -1
- package/resources/mailboxes/index.js +3 -1
- package/resources/mailboxes/index.js.map +1 -1
- package/resources/mailboxes/index.mjs +1 -0
- package/resources/mailboxes/index.mjs.map +1 -1
- package/resources/mailboxes/mailboxes.d.mts +73 -24
- package/resources/mailboxes/mailboxes.d.mts.map +1 -1
- package/resources/mailboxes/mailboxes.d.ts +73 -24
- package/resources/mailboxes/mailboxes.d.ts.map +1 -1
- package/resources/mailboxes/mailboxes.js +25 -8
- package/resources/mailboxes/mailboxes.js.map +1 -1
- package/resources/mailboxes/mailboxes.mjs +25 -8
- package/resources/mailboxes/mailboxes.mjs.map +1 -1
- package/resources/messages/index.d.mts +1 -1
- package/resources/messages/index.d.mts.map +1 -1
- package/resources/messages/index.d.ts +1 -1
- package/resources/messages/index.d.ts.map +1 -1
- package/resources/messages/index.js.map +1 -1
- package/resources/messages/index.mjs +1 -1
- package/resources/messages/index.mjs.map +1 -1
- package/resources/messages/messages.d.mts +26 -1
- package/resources/messages/messages.d.mts.map +1 -1
- package/resources/messages/messages.d.ts +26 -1
- package/resources/messages/messages.d.ts.map +1 -1
- package/resources/messages/messages.js +9 -0
- package/resources/messages/messages.js.map +1 -1
- package/resources/messages/messages.mjs +9 -0
- package/resources/messages/messages.mjs.map +1 -1
- package/resources/notifications.d.mts +27 -1
- package/resources/notifications.d.mts.map +1 -1
- package/resources/notifications.d.ts +27 -1
- package/resources/notifications.d.ts.map +1 -1
- package/resources/notifications.js +17 -0
- package/resources/notifications.js.map +1 -1
- package/resources/notifications.mjs +17 -0
- package/resources/notifications.mjs.map +1 -1
- package/resources/numbers/index.d.mts +1 -1
- package/resources/numbers/index.d.mts.map +1 -1
- package/resources/numbers/index.d.ts +1 -1
- package/resources/numbers/index.d.ts.map +1 -1
- package/resources/numbers/index.js.map +1 -1
- package/resources/numbers/index.mjs +1 -1
- package/resources/numbers/index.mjs.map +1 -1
- package/resources/numbers/messages.d.mts +60 -1
- package/resources/numbers/messages.d.mts.map +1 -1
- package/resources/numbers/messages.d.ts +60 -1
- package/resources/numbers/messages.d.ts.map +1 -1
- package/resources/numbers/messages.js +21 -0
- package/resources/numbers/messages.js.map +1 -1
- package/resources/numbers/messages.mjs +21 -0
- package/resources/numbers/messages.mjs.map +1 -1
- package/resources/numbers/numbers.d.mts +123 -15
- package/resources/numbers/numbers.d.mts.map +1 -1
- package/resources/numbers/numbers.d.ts +123 -15
- package/resources/numbers/numbers.d.ts.map +1 -1
- package/resources/numbers/numbers.js +2 -11
- package/resources/numbers/numbers.js.map +1 -1
- package/resources/numbers/numbers.mjs +3 -12
- package/resources/numbers/numbers.mjs.map +1 -1
- package/resources/store/apps.d.mts +23 -2
- package/resources/store/apps.d.mts.map +1 -1
- package/resources/store/apps.d.ts +23 -2
- package/resources/store/apps.d.ts.map +1 -1
- package/resources/tasks/tasks.d.mts +16 -55
- package/resources/tasks/tasks.d.mts.map +1 -1
- package/resources/tasks/tasks.d.ts +16 -55
- package/resources/tasks/tasks.d.ts.map +1 -1
- package/resources/tasks/tasks.js +2 -10
- package/resources/tasks/tasks.js.map +1 -1
- package/resources/tasks/tasks.mjs +2 -10
- package/resources/tasks/tasks.mjs.map +1 -1
- package/resources/webhooks/deliveries.d.mts +22 -31
- package/resources/webhooks/deliveries.d.mts.map +1 -1
- package/resources/webhooks/deliveries.d.ts +22 -31
- package/resources/webhooks/deliveries.d.ts.map +1 -1
- package/resources/webhooks/deliveries.js +4 -30
- package/resources/webhooks/deliveries.js.map +1 -1
- package/resources/webhooks/deliveries.mjs +4 -30
- package/resources/webhooks/deliveries.mjs.map +1 -1
- package/resources/webhooks/index.d.mts +1 -0
- package/resources/webhooks/index.d.mts.map +1 -1
- package/resources/webhooks/index.d.ts +1 -0
- package/resources/webhooks/index.d.ts.map +1 -1
- package/resources/webhooks/index.js +3 -1
- package/resources/webhooks/index.js.map +1 -1
- package/resources/webhooks/index.mjs +1 -0
- package/resources/webhooks/index.mjs.map +1 -1
- package/resources/webhooks/integrations.d.mts +77 -0
- package/resources/webhooks/integrations.d.mts.map +1 -0
- package/resources/webhooks/integrations.d.ts +77 -0
- package/resources/webhooks/integrations.d.ts.map +1 -0
- package/resources/webhooks/integrations.js +26 -0
- package/resources/webhooks/integrations.js.map +1 -0
- package/resources/webhooks/integrations.mjs +22 -0
- package/resources/webhooks/integrations.mjs.map +1 -0
- package/resources/webhooks/webhooks.d.mts +279 -71
- package/resources/webhooks/webhooks.d.mts.map +1 -1
- package/resources/webhooks/webhooks.d.ts +279 -71
- package/resources/webhooks/webhooks.d.ts.map +1 -1
- package/resources/webhooks/webhooks.js +27 -60
- package/resources/webhooks/webhooks.js.map +1 -1
- package/resources/webhooks/webhooks.mjs +27 -60
- package/resources/webhooks/webhooks.mjs.map +1 -1
- package/resources/workflows/action-catalog.d.mts +7 -3
- package/resources/workflows/action-catalog.d.mts.map +1 -1
- package/resources/workflows/action-catalog.d.ts +7 -3
- package/resources/workflows/action-catalog.d.ts.map +1 -1
- package/resources/workflows/actions/actions.d.mts +9 -5
- package/resources/workflows/actions/actions.d.mts.map +1 -1
- package/resources/workflows/actions/actions.d.ts +9 -5
- package/resources/workflows/actions/actions.d.ts.map +1 -1
- package/resources/workflows/actions/actions.js +4 -0
- package/resources/workflows/actions/actions.js.map +1 -1
- package/resources/workflows/actions/actions.mjs +4 -0
- package/resources/workflows/actions/actions.mjs.map +1 -1
- package/resources/workflows/events.d.mts +48 -4
- package/resources/workflows/events.d.mts.map +1 -1
- package/resources/workflows/events.d.ts +48 -4
- package/resources/workflows/events.d.ts.map +1 -1
- package/resources/workflows/executions/executions.d.mts +334 -0
- package/resources/workflows/executions/executions.d.mts.map +1 -0
- package/resources/workflows/executions/executions.d.ts +334 -0
- package/resources/workflows/executions/executions.d.ts.map +1 -0
- package/resources/workflows/executions/executions.js +49 -0
- package/resources/workflows/executions/executions.js.map +1 -0
- package/resources/workflows/executions/executions.mjs +44 -0
- package/resources/workflows/executions/executions.mjs.map +1 -0
- package/resources/workflows/executions/index.d.mts +3 -0
- package/resources/workflows/executions/index.d.mts.map +1 -0
- package/resources/workflows/executions/index.d.ts +3 -0
- package/resources/workflows/executions/index.d.ts.map +1 -0
- package/resources/workflows/executions/index.js +9 -0
- package/resources/workflows/executions/index.js.map +1 -0
- package/resources/workflows/executions/index.mjs +4 -0
- package/resources/workflows/executions/index.mjs.map +1 -0
- package/resources/workflows/executions/screenshots.d.mts +18 -0
- package/resources/workflows/executions/screenshots.d.mts.map +1 -0
- package/resources/workflows/executions/screenshots.d.ts +18 -0
- package/resources/workflows/executions/screenshots.d.ts.map +1 -0
- package/resources/workflows/executions/screenshots.js +23 -0
- package/resources/workflows/executions/screenshots.js.map +1 -0
- package/resources/workflows/executions/screenshots.mjs +19 -0
- package/resources/workflows/executions/screenshots.mjs.map +1 -0
- package/resources/workflows/executions.d.mts +1 -269
- package/resources/workflows/executions.d.mts.map +1 -1
- package/resources/workflows/executions.d.ts +1 -269
- package/resources/workflows/executions.d.ts.map +1 -1
- package/resources/workflows/executions.js +2 -37
- package/resources/workflows/executions.js.map +1 -1
- package/resources/workflows/executions.mjs +1 -35
- package/resources/workflows/executions.mjs.map +1 -1
- package/resources/workflows/flows/actions.d.mts +39 -0
- package/resources/workflows/flows/actions.d.mts.map +1 -1
- package/resources/workflows/flows/actions.d.ts +39 -0
- package/resources/workflows/flows/actions.d.ts.map +1 -1
- package/resources/workflows/flows/actions.js +4 -0
- package/resources/workflows/flows/actions.js.map +1 -1
- package/resources/workflows/flows/actions.mjs +4 -0
- package/resources/workflows/flows/actions.mjs.map +1 -1
- package/resources/workflows/flows/flows.d.mts +529 -18
- package/resources/workflows/flows/flows.d.mts.map +1 -1
- package/resources/workflows/flows/flows.d.ts +529 -18
- package/resources/workflows/flows/flows.d.ts.map +1 -1
- package/resources/workflows/flows/flows.js +75 -0
- package/resources/workflows/flows/flows.js.map +1 -1
- package/resources/workflows/flows/flows.mjs +75 -0
- package/resources/workflows/flows/flows.mjs.map +1 -1
- package/resources/workflows/flows/index.d.mts +1 -1
- package/resources/workflows/flows/index.d.mts.map +1 -1
- package/resources/workflows/flows/index.d.ts +1 -1
- package/resources/workflows/flows/index.d.ts.map +1 -1
- package/resources/workflows/flows/index.js.map +1 -1
- package/resources/workflows/flows/index.mjs.map +1 -1
- package/resources/workflows/index.d.mts +2 -2
- package/resources/workflows/index.d.mts.map +1 -1
- package/resources/workflows/index.d.ts +2 -2
- package/resources/workflows/index.d.ts.map +1 -1
- package/resources/workflows/index.js +4 -4
- package/resources/workflows/index.js.map +1 -1
- package/resources/workflows/index.mjs +1 -1
- package/resources/workflows/index.mjs.map +1 -1
- package/resources/workflows/triggers.d.mts +107 -9
- package/resources/workflows/triggers.d.mts.map +1 -1
- package/resources/workflows/triggers.d.ts +107 -9
- package/resources/workflows/triggers.d.ts.map +1 -1
- package/resources/workflows/triggers.js +14 -0
- package/resources/workflows/triggers.js.map +1 -1
- package/resources/workflows/triggers.mjs +14 -0
- package/resources/workflows/triggers.mjs.map +1 -1
- package/resources/workflows/workflows.d.mts +4 -4
- package/resources/workflows/workflows.d.mts.map +1 -1
- package/resources/workflows/workflows.d.ts +4 -4
- package/resources/workflows/workflows.d.ts.map +1 -1
- package/resources/workflows/workflows.js +2 -2
- package/resources/workflows/workflows.js.map +1 -1
- package/resources/workflows/workflows.mjs +2 -2
- package/resources/workflows/workflows.mjs.map +1 -1
- package/src/client.ts +18 -1
- package/src/resources/apps.ts +18 -15
- package/src/resources/assistant/conversations.ts +12 -27
- package/src/resources/connect/connect.ts +6 -0
- package/src/resources/connect/index.ts +3 -0
- package/src/resources/connect/proxies.ts +119 -19
- package/src/resources/devices/browser.ts +9 -3
- package/src/resources/devices/devices.ts +80 -30
- package/src/resources/devices/index.ts +2 -0
- package/src/resources/devices/recordings.ts +4 -2
- package/src/resources/devices/traffic-sessions.ts +2 -19
- package/src/resources/files.ts +8 -29
- package/src/resources/index.ts +11 -1
- package/src/resources/mailboxes/connections.ts +91 -0
- package/src/resources/mailboxes/index.ts +7 -0
- package/src/resources/mailboxes/mailboxes.ts +146 -24
- package/src/resources/messages/index.ts +6 -1
- package/src/resources/messages/messages.ts +55 -1
- package/src/resources/notifications.ts +37 -0
- package/src/resources/numbers/index.ts +7 -1
- package/src/resources/numbers/messages.ts +92 -1
- package/src/resources/numbers/numbers.ts +143 -25
- package/src/resources/store/apps.ts +291 -2
- package/src/resources/tasks/tasks.ts +18 -65
- package/src/resources/webhooks/deliveries.ts +26 -31
- package/src/resources/webhooks/index.ts +6 -0
- package/src/resources/webhooks/integrations.ts +107 -0
- package/src/resources/webhooks/webhooks.ts +326 -71
- package/src/resources/workflows/action-catalog.ts +11 -3
- package/src/resources/workflows/actions/actions.ts +9 -5
- package/src/resources/workflows/events.ts +62 -4
- package/src/resources/workflows/executions/executions.ts +514 -0
- package/src/resources/workflows/executions/index.ts +12 -0
- package/src/resources/workflows/executions/screenshots.ts +34 -0
- package/src/resources/workflows/executions.ts +1 -412
- package/src/resources/workflows/flows/actions.ts +46 -0
- package/src/resources/workflows/flows/flows.ts +765 -17
- package/src/resources/workflows/flows/index.ts +11 -0
- package/src/resources/workflows/index.ts +12 -1
- package/src/resources/workflows/triggers.ts +128 -10
- package/src/resources/workflows/workflows.ts +32 -10
- package/src/version.ts +1 -1
- package/version.d.mts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
|
@@ -25,6 +25,10 @@ export class Flows extends APIResource {
|
|
|
25
25
|
* with at least one action required. Optional settings include target `deviceIds`,
|
|
26
26
|
* a cooldown (`cooldownSeconds`/`cooldownScope`), and webhook notifications on
|
|
27
27
|
* success or failure.
|
|
28
|
+
*
|
|
29
|
+
* Supports an optional `Idempotency-Key` header (1-255 printable ASCII
|
|
30
|
+
* characters). Replays with the same key and an identical body return the original
|
|
31
|
+
* 201; a changed body under the same key returns 422 `idempotency_key_reused`.
|
|
28
32
|
*/
|
|
29
33
|
create(body: FlowCreateParams, options?: RequestOptions): APIPromise<FlowCreateResponse> {
|
|
30
34
|
return this._client.post('/flows', { body, ...options });
|
|
@@ -73,6 +77,19 @@ export class Flows extends APIResource {
|
|
|
73
77
|
return this._client.delete(path`/flows/${flowID}`, options);
|
|
74
78
|
}
|
|
75
79
|
|
|
80
|
+
/**
|
|
81
|
+
* Activate a disabled flow only when the supplied verification execution succeeded
|
|
82
|
+
* and the flow graph has not changed since verification. Repeating activation is
|
|
83
|
+
* idempotent for an already-enabled flow.
|
|
84
|
+
*/
|
|
85
|
+
activate(
|
|
86
|
+
flowID: string,
|
|
87
|
+
body: FlowActivateParams,
|
|
88
|
+
options?: RequestOptions,
|
|
89
|
+
): APIPromise<FlowActivateResponse> {
|
|
90
|
+
return this._client.post(path`/flows/${flowID}/activate`, { body, ...options });
|
|
91
|
+
}
|
|
92
|
+
|
|
76
93
|
/**
|
|
77
94
|
* Returns an owner-scoped snapshot of finite included workflow-agent capacity
|
|
78
95
|
* after locally stored enabled and disabled agents. Available only while slot
|
|
@@ -87,6 +104,10 @@ export class Flows extends APIResource {
|
|
|
87
104
|
* Create a copy of an existing flow, including its actions and settings. The
|
|
88
105
|
* optional body can override the new flow's `name` and target `deviceIds`. Returns
|
|
89
106
|
* 404 if the source flow does not exist.
|
|
107
|
+
*
|
|
108
|
+
* Supports an optional `Idempotency-Key` header (1-255 printable ASCII
|
|
109
|
+
* characters). Replays with the same key and an identical body return the original
|
|
110
|
+
* 201; a changed body under the same key returns 422 `idempotency_key_reused`.
|
|
90
111
|
*/
|
|
91
112
|
clone(
|
|
92
113
|
flowID: string,
|
|
@@ -96,6 +117,17 @@ export class Flows extends APIResource {
|
|
|
96
117
|
return this._client.post(path`/flows/${flowID}/clone`, { body, ...options });
|
|
97
118
|
}
|
|
98
119
|
|
|
120
|
+
/**
|
|
121
|
+
* Return the recording/delivery readiness for a flow (recording mode, whether
|
|
122
|
+
* delivery can include the recording, whether a files.upload action exists, the
|
|
123
|
+
* first direct OneDrive/Google Drive upload step if any) plus, per destination,
|
|
124
|
+
* whether the flow owner has an active integrations-api connection. Returns 404 if
|
|
125
|
+
* the flow does not exist.
|
|
126
|
+
*/
|
|
127
|
+
deliveryOptions(flowID: string, options?: RequestOptions): APIPromise<FlowDeliveryOptionsResponse> {
|
|
128
|
+
return this._client.get(path`/flows/${flowID}/delivery-options`, options);
|
|
129
|
+
}
|
|
130
|
+
|
|
99
131
|
/**
|
|
100
132
|
* Simulate this flow firing without storing events, enqueuing jobs, or consuming
|
|
101
133
|
* cooldown/rate-limit slots.
|
|
@@ -127,6 +159,34 @@ export class Flows extends APIResource {
|
|
|
127
159
|
return this._client.get(path`/flows/${flowID}/repairs`, options);
|
|
128
160
|
}
|
|
129
161
|
|
|
162
|
+
/**
|
|
163
|
+
* Immediately enqueue one live execution on every device bound to the flow,
|
|
164
|
+
* regardless of whether its trigger is event-based, custom, or scheduled.
|
|
165
|
+
*
|
|
166
|
+
* Supports an optional `Idempotency-Key` header (1-255 printable ASCII
|
|
167
|
+
* characters). The run identity is derived from the key, so a retry never starts a
|
|
168
|
+
* second run. Replays with the same key and an identical body return the original
|
|
169
|
+
* status and the original `executionIds`; a changed body under the same key
|
|
170
|
+
* returns 422 `idempotency_key_reused`.
|
|
171
|
+
*/
|
|
172
|
+
run(
|
|
173
|
+
flowID: string,
|
|
174
|
+
body: FlowRunParams | null | undefined = {},
|
|
175
|
+
options?: RequestOptions,
|
|
176
|
+
): APIPromise<FlowRunResponse> {
|
|
177
|
+
return this._client.post(path`/flows/${flowID}/run`, { body, ...options });
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
/**
|
|
181
|
+
* Get flow template context
|
|
182
|
+
*/
|
|
183
|
+
templateContext(
|
|
184
|
+
query: FlowTemplateContextParams | null | undefined = {},
|
|
185
|
+
options?: RequestOptions,
|
|
186
|
+
): APIPromise<FlowTemplateContextResponse> {
|
|
187
|
+
return this._client.get('/flows/template-context', { query, ...options });
|
|
188
|
+
}
|
|
189
|
+
|
|
130
190
|
/**
|
|
131
191
|
* Clear a flow's blocked status after fixing the underlying issue. Idempotent —
|
|
132
192
|
* safe to call on already-healthy flows.
|
|
@@ -134,6 +194,38 @@ export class Flows extends APIResource {
|
|
|
134
194
|
unblock(flowID: string, options?: RequestOptions): APIPromise<FlowUnblockResponse> {
|
|
135
195
|
return this._client.post(path`/flows/${flowID}/unblock`, options);
|
|
136
196
|
}
|
|
197
|
+
|
|
198
|
+
/**
|
|
199
|
+
* Validate a flow
|
|
200
|
+
*/
|
|
201
|
+
validate(body: FlowValidateParams, options?: RequestOptions): APIPromise<FlowValidateResponse> {
|
|
202
|
+
return this._client.post('/flows/validate', { body, ...options });
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
/**
|
|
206
|
+
* Run a bound, deduplicated **verification** of this flow on exactly one device
|
|
207
|
+
* through the real worker.
|
|
208
|
+
*
|
|
209
|
+
* Unlike a normal trigger firing, verification:
|
|
210
|
+
*
|
|
211
|
+
* - runs a flow that is `enabled` OR `disabled` (an archived flow returns 404);
|
|
212
|
+
* - targets one device (`deviceId`, or the single bound device);
|
|
213
|
+
* - is idempotent per `invocationId`: a repeat returns the existing run
|
|
214
|
+
* (`deduplicated: true`, HTTP 200) instead of enqueuing another (HTTP 202);
|
|
215
|
+
* - never mutates flow health, `lastTriggeredAt`, or the repair loop.
|
|
216
|
+
*
|
|
217
|
+
* Per-activation payload gate:
|
|
218
|
+
*
|
|
219
|
+
* - `custom`: validates the payload against the custom payload schema (422 on
|
|
220
|
+
* failure).
|
|
221
|
+
* - `event`: validates the payload against the event catalog schema and evaluates
|
|
222
|
+
* the trigger conditions; a failing gate returns 409 `conditions_not_met` with
|
|
223
|
+
* the dry-run report.
|
|
224
|
+
* - `schedule`: the payload is ignored.
|
|
225
|
+
*/
|
|
226
|
+
verify(flowID: string, body: FlowVerifyParams, options?: RequestOptions): APIPromise<FlowVerifyResponse> {
|
|
227
|
+
return this._client.post(path`/flows/${flowID}/verify`, { body, ...options });
|
|
228
|
+
}
|
|
137
229
|
}
|
|
138
230
|
|
|
139
231
|
export interface FlowCreateResponse {
|
|
@@ -158,6 +250,8 @@ export namespace FlowCreateResponse {
|
|
|
158
250
|
|
|
159
251
|
createdBy: string | null;
|
|
160
252
|
|
|
253
|
+
delivery: Data.Delivery | null;
|
|
254
|
+
|
|
161
255
|
description: string | null;
|
|
162
256
|
|
|
163
257
|
deviceIds: Array<string>;
|
|
@@ -212,8 +306,9 @@ export namespace FlowCreateResponse {
|
|
|
212
306
|
/**
|
|
213
307
|
* Template-resolver semantics this flow runs under (MVA-23). 1 = legacy
|
|
214
308
|
* (missing/forbidden/null all resolve to ''). 2 = typed (missing/forbidden throw,
|
|
215
|
-
* a whole-token null stays JSON null).
|
|
216
|
-
*
|
|
309
|
+
* a whole-token null stays JSON null). 3 = typed, key-based (steps are addressed
|
|
310
|
+
* as {{steps.<key>...}} instead of by name; trigger.payload is not available).
|
|
311
|
+
* Existing flows stay 1; new flows default to the current version.
|
|
217
312
|
*/
|
|
218
313
|
templateResolutionVersion: number;
|
|
219
314
|
|
|
@@ -228,6 +323,22 @@ export namespace FlowCreateResponse {
|
|
|
228
323
|
}
|
|
229
324
|
|
|
230
325
|
export namespace Data {
|
|
326
|
+
export interface Delivery {
|
|
327
|
+
destination: 'one_drive' | 'google_drive';
|
|
328
|
+
|
|
329
|
+
folder?: string;
|
|
330
|
+
|
|
331
|
+
recording?: Delivery.Recording;
|
|
332
|
+
|
|
333
|
+
screenshots?: unknown;
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
export namespace Delivery {
|
|
337
|
+
export interface Recording {
|
|
338
|
+
filename: string;
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
|
|
231
342
|
export interface RecordingPolicy {
|
|
232
343
|
mode: 'off' | 'flow' | 'selected_steps';
|
|
233
344
|
}
|
|
@@ -256,6 +367,8 @@ export namespace FlowRetrieveResponse {
|
|
|
256
367
|
|
|
257
368
|
createdBy: string | null;
|
|
258
369
|
|
|
370
|
+
delivery: Data.Delivery | null;
|
|
371
|
+
|
|
259
372
|
description: string | null;
|
|
260
373
|
|
|
261
374
|
deviceIds: Array<string>;
|
|
@@ -310,8 +423,9 @@ export namespace FlowRetrieveResponse {
|
|
|
310
423
|
/**
|
|
311
424
|
* Template-resolver semantics this flow runs under (MVA-23). 1 = legacy
|
|
312
425
|
* (missing/forbidden/null all resolve to ''). 2 = typed (missing/forbidden throw,
|
|
313
|
-
* a whole-token null stays JSON null).
|
|
314
|
-
*
|
|
426
|
+
* a whole-token null stays JSON null). 3 = typed, key-based (steps are addressed
|
|
427
|
+
* as {{steps.<key>...}} instead of by name; trigger.payload is not available).
|
|
428
|
+
* Existing flows stay 1; new flows default to the current version.
|
|
315
429
|
*/
|
|
316
430
|
templateResolutionVersion: number;
|
|
317
431
|
|
|
@@ -326,6 +440,22 @@ export namespace FlowRetrieveResponse {
|
|
|
326
440
|
}
|
|
327
441
|
|
|
328
442
|
export namespace Data {
|
|
443
|
+
export interface Delivery {
|
|
444
|
+
destination: 'one_drive' | 'google_drive';
|
|
445
|
+
|
|
446
|
+
folder?: string;
|
|
447
|
+
|
|
448
|
+
recording?: Delivery.Recording;
|
|
449
|
+
|
|
450
|
+
screenshots?: unknown;
|
|
451
|
+
}
|
|
452
|
+
|
|
453
|
+
export namespace Delivery {
|
|
454
|
+
export interface Recording {
|
|
455
|
+
filename: string;
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
|
|
329
459
|
export interface RecordingPolicy {
|
|
330
460
|
mode: 'off' | 'flow' | 'selected_steps';
|
|
331
461
|
}
|
|
@@ -354,6 +484,8 @@ export namespace FlowUpdateResponse {
|
|
|
354
484
|
|
|
355
485
|
createdBy: string | null;
|
|
356
486
|
|
|
487
|
+
delivery: Data.Delivery | null;
|
|
488
|
+
|
|
357
489
|
description: string | null;
|
|
358
490
|
|
|
359
491
|
deviceIds: Array<string>;
|
|
@@ -408,8 +540,9 @@ export namespace FlowUpdateResponse {
|
|
|
408
540
|
/**
|
|
409
541
|
* Template-resolver semantics this flow runs under (MVA-23). 1 = legacy
|
|
410
542
|
* (missing/forbidden/null all resolve to ''). 2 = typed (missing/forbidden throw,
|
|
411
|
-
* a whole-token null stays JSON null).
|
|
412
|
-
*
|
|
543
|
+
* a whole-token null stays JSON null). 3 = typed, key-based (steps are addressed
|
|
544
|
+
* as {{steps.<key>...}} instead of by name; trigger.payload is not available).
|
|
545
|
+
* Existing flows stay 1; new flows default to the current version.
|
|
413
546
|
*/
|
|
414
547
|
templateResolutionVersion: number;
|
|
415
548
|
|
|
@@ -424,6 +557,22 @@ export namespace FlowUpdateResponse {
|
|
|
424
557
|
}
|
|
425
558
|
|
|
426
559
|
export namespace Data {
|
|
560
|
+
export interface Delivery {
|
|
561
|
+
destination: 'one_drive' | 'google_drive';
|
|
562
|
+
|
|
563
|
+
folder?: string;
|
|
564
|
+
|
|
565
|
+
recording?: Delivery.Recording;
|
|
566
|
+
|
|
567
|
+
screenshots?: unknown;
|
|
568
|
+
}
|
|
569
|
+
|
|
570
|
+
export namespace Delivery {
|
|
571
|
+
export interface Recording {
|
|
572
|
+
filename: string;
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
|
|
427
576
|
export interface RecordingPolicy {
|
|
428
577
|
mode: 'off' | 'flow' | 'selected_steps';
|
|
429
578
|
}
|
|
@@ -454,6 +603,8 @@ export namespace FlowListResponse {
|
|
|
454
603
|
|
|
455
604
|
createdBy: string | null;
|
|
456
605
|
|
|
606
|
+
delivery: Item.Delivery | null;
|
|
607
|
+
|
|
457
608
|
description: string | null;
|
|
458
609
|
|
|
459
610
|
deviceIds: Array<string>;
|
|
@@ -508,8 +659,9 @@ export namespace FlowListResponse {
|
|
|
508
659
|
/**
|
|
509
660
|
* Template-resolver semantics this flow runs under (MVA-23). 1 = legacy
|
|
510
661
|
* (missing/forbidden/null all resolve to ''). 2 = typed (missing/forbidden throw,
|
|
511
|
-
* a whole-token null stays JSON null).
|
|
512
|
-
*
|
|
662
|
+
* a whole-token null stays JSON null). 3 = typed, key-based (steps are addressed
|
|
663
|
+
* as {{steps.<key>...}} instead of by name; trigger.payload is not available).
|
|
664
|
+
* Existing flows stay 1; new flows default to the current version.
|
|
513
665
|
*/
|
|
514
666
|
templateResolutionVersion: number;
|
|
515
667
|
|
|
@@ -524,6 +676,22 @@ export namespace FlowListResponse {
|
|
|
524
676
|
}
|
|
525
677
|
|
|
526
678
|
export namespace Item {
|
|
679
|
+
export interface Delivery {
|
|
680
|
+
destination: 'one_drive' | 'google_drive';
|
|
681
|
+
|
|
682
|
+
folder?: string;
|
|
683
|
+
|
|
684
|
+
recording?: Delivery.Recording;
|
|
685
|
+
|
|
686
|
+
screenshots?: unknown;
|
|
687
|
+
}
|
|
688
|
+
|
|
689
|
+
export namespace Delivery {
|
|
690
|
+
export interface Recording {
|
|
691
|
+
filename: string;
|
|
692
|
+
}
|
|
693
|
+
}
|
|
694
|
+
|
|
527
695
|
export interface RecordingPolicy {
|
|
528
696
|
mode: 'off' | 'flow' | 'selected_steps';
|
|
529
697
|
}
|
|
@@ -534,6 +702,123 @@ export interface FlowDeleteResponse {
|
|
|
534
702
|
message: string;
|
|
535
703
|
}
|
|
536
704
|
|
|
705
|
+
export interface FlowActivateResponse {
|
|
706
|
+
data: FlowActivateResponse.Data;
|
|
707
|
+
}
|
|
708
|
+
|
|
709
|
+
export namespace FlowActivateResponse {
|
|
710
|
+
export interface Data {
|
|
711
|
+
id: string;
|
|
712
|
+
|
|
713
|
+
archivedAt: string | null;
|
|
714
|
+
|
|
715
|
+
blockedAt: string | null;
|
|
716
|
+
|
|
717
|
+
consecutiveFailures: number;
|
|
718
|
+
|
|
719
|
+
cooldownScope: 'flow' | 'device';
|
|
720
|
+
|
|
721
|
+
cooldownSeconds: number | null;
|
|
722
|
+
|
|
723
|
+
createdAt: string | null;
|
|
724
|
+
|
|
725
|
+
createdBy: string | null;
|
|
726
|
+
|
|
727
|
+
delivery: Data.Delivery | null;
|
|
728
|
+
|
|
729
|
+
description: string | null;
|
|
730
|
+
|
|
731
|
+
deviceIds: Array<string>;
|
|
732
|
+
|
|
733
|
+
/**
|
|
734
|
+
* Compatibility projection of lifecycleStatus; true only when lifecycleStatus is
|
|
735
|
+
* enabled.
|
|
736
|
+
*/
|
|
737
|
+
enabled: boolean;
|
|
738
|
+
|
|
739
|
+
healthMonitoringEnabled: boolean;
|
|
740
|
+
|
|
741
|
+
lastFailureAt: string | null;
|
|
742
|
+
|
|
743
|
+
lastFailureCode:
|
|
744
|
+
| 'device_not_found'
|
|
745
|
+
| 'permission_denied'
|
|
746
|
+
| 'client_error'
|
|
747
|
+
| 'transient'
|
|
748
|
+
| 'logic'
|
|
749
|
+
| 'invalid_config'
|
|
750
|
+
| null;
|
|
751
|
+
|
|
752
|
+
lastTriggeredAt: string | null;
|
|
753
|
+
|
|
754
|
+
lifecycleStatus: 'enabled' | 'disabled' | 'archived';
|
|
755
|
+
|
|
756
|
+
name: string;
|
|
757
|
+
|
|
758
|
+
notifyOnFailure: boolean;
|
|
759
|
+
|
|
760
|
+
notifyOnSuccess: boolean;
|
|
761
|
+
|
|
762
|
+
notifyWebhookId: string | null;
|
|
763
|
+
|
|
764
|
+
ownerId: string;
|
|
765
|
+
|
|
766
|
+
/**
|
|
767
|
+
* @deprecated Deprecated: use recordingPolicy.mode ("flow" =
|
|
768
|
+
* recordingEnabled=true, "off" = recordingEnabled=false).
|
|
769
|
+
*/
|
|
770
|
+
recordingEnabled: boolean;
|
|
771
|
+
|
|
772
|
+
recordingPolicy: Data.RecordingPolicy;
|
|
773
|
+
|
|
774
|
+
selfHealingEnabled: boolean;
|
|
775
|
+
|
|
776
|
+
selfHealingMaxAttempts: number;
|
|
777
|
+
|
|
778
|
+
status: 'healthy' | 'failing' | 'blocked';
|
|
779
|
+
|
|
780
|
+
/**
|
|
781
|
+
* Template-resolver semantics this flow runs under (MVA-23). 1 = legacy
|
|
782
|
+
* (missing/forbidden/null all resolve to ''). 2 = typed (missing/forbidden throw,
|
|
783
|
+
* a whole-token null stays JSON null). 3 = typed, key-based (steps are addressed
|
|
784
|
+
* as {{steps.<key>...}} instead of by name; trigger.payload is not available).
|
|
785
|
+
* Existing flows stay 1; new flows default to the current version.
|
|
786
|
+
*/
|
|
787
|
+
templateResolutionVersion: number;
|
|
788
|
+
|
|
789
|
+
triggerId: string;
|
|
790
|
+
|
|
791
|
+
updatedAt: string | null;
|
|
792
|
+
|
|
793
|
+
/**
|
|
794
|
+
* @deprecated Deprecated: use ownerId (tenancy) / createdBy (actor).
|
|
795
|
+
*/
|
|
796
|
+
userId: string;
|
|
797
|
+
}
|
|
798
|
+
|
|
799
|
+
export namespace Data {
|
|
800
|
+
export interface Delivery {
|
|
801
|
+
destination: 'one_drive' | 'google_drive';
|
|
802
|
+
|
|
803
|
+
folder?: string;
|
|
804
|
+
|
|
805
|
+
recording?: Delivery.Recording;
|
|
806
|
+
|
|
807
|
+
screenshots?: unknown;
|
|
808
|
+
}
|
|
809
|
+
|
|
810
|
+
export namespace Delivery {
|
|
811
|
+
export interface Recording {
|
|
812
|
+
filename: string;
|
|
813
|
+
}
|
|
814
|
+
}
|
|
815
|
+
|
|
816
|
+
export interface RecordingPolicy {
|
|
817
|
+
mode: 'off' | 'flow' | 'selected_steps';
|
|
818
|
+
}
|
|
819
|
+
}
|
|
820
|
+
}
|
|
821
|
+
|
|
537
822
|
export interface FlowCapacityResponse {
|
|
538
823
|
data: FlowCapacityResponse.Data;
|
|
539
824
|
}
|
|
@@ -570,6 +855,8 @@ export namespace FlowCloneResponse {
|
|
|
570
855
|
|
|
571
856
|
createdBy: string | null;
|
|
572
857
|
|
|
858
|
+
delivery: Data.Delivery | null;
|
|
859
|
+
|
|
573
860
|
description: string | null;
|
|
574
861
|
|
|
575
862
|
deviceIds: Array<string>;
|
|
@@ -624,8 +911,9 @@ export namespace FlowCloneResponse {
|
|
|
624
911
|
/**
|
|
625
912
|
* Template-resolver semantics this flow runs under (MVA-23). 1 = legacy
|
|
626
913
|
* (missing/forbidden/null all resolve to ''). 2 = typed (missing/forbidden throw,
|
|
627
|
-
* a whole-token null stays JSON null).
|
|
628
|
-
*
|
|
914
|
+
* a whole-token null stays JSON null). 3 = typed, key-based (steps are addressed
|
|
915
|
+
* as {{steps.<key>...}} instead of by name; trigger.payload is not available).
|
|
916
|
+
* Existing flows stay 1; new flows default to the current version.
|
|
629
917
|
*/
|
|
630
918
|
templateResolutionVersion: number;
|
|
631
919
|
|
|
@@ -640,12 +928,69 @@ export namespace FlowCloneResponse {
|
|
|
640
928
|
}
|
|
641
929
|
|
|
642
930
|
export namespace Data {
|
|
931
|
+
export interface Delivery {
|
|
932
|
+
destination: 'one_drive' | 'google_drive';
|
|
933
|
+
|
|
934
|
+
folder?: string;
|
|
935
|
+
|
|
936
|
+
recording?: Delivery.Recording;
|
|
937
|
+
|
|
938
|
+
screenshots?: unknown;
|
|
939
|
+
}
|
|
940
|
+
|
|
941
|
+
export namespace Delivery {
|
|
942
|
+
export interface Recording {
|
|
943
|
+
filename: string;
|
|
944
|
+
}
|
|
945
|
+
}
|
|
946
|
+
|
|
643
947
|
export interface RecordingPolicy {
|
|
644
948
|
mode: 'off' | 'flow' | 'selected_steps';
|
|
645
949
|
}
|
|
646
950
|
}
|
|
647
951
|
}
|
|
648
952
|
|
|
953
|
+
export interface FlowDeliveryOptionsResponse {
|
|
954
|
+
data: FlowDeliveryOptionsResponse.Data;
|
|
955
|
+
}
|
|
956
|
+
|
|
957
|
+
export namespace FlowDeliveryOptionsResponse {
|
|
958
|
+
export interface Data {
|
|
959
|
+
canDeliverRecording: boolean;
|
|
960
|
+
|
|
961
|
+
/**
|
|
962
|
+
* Delivery destinations in registry order.
|
|
963
|
+
*/
|
|
964
|
+
destinations: Array<Data.Destination>;
|
|
965
|
+
|
|
966
|
+
directUploadStep: Data.DirectUploadStep | null;
|
|
967
|
+
|
|
968
|
+
hasFilesUpload: boolean;
|
|
969
|
+
|
|
970
|
+
recordingMode: 'off' | 'flow' | 'selected_steps';
|
|
971
|
+
}
|
|
972
|
+
|
|
973
|
+
export namespace Data {
|
|
974
|
+
export interface Destination {
|
|
975
|
+
connection: 'connected' | 'not_connected' | 'expired' | 'unknown';
|
|
976
|
+
|
|
977
|
+
connectKey: string;
|
|
978
|
+
|
|
979
|
+
iconUrl: string | null;
|
|
980
|
+
|
|
981
|
+
key: 'one_drive' | 'google_drive';
|
|
982
|
+
|
|
983
|
+
label: string;
|
|
984
|
+
}
|
|
985
|
+
|
|
986
|
+
export interface DirectUploadStep {
|
|
987
|
+
flowActionId: string;
|
|
988
|
+
|
|
989
|
+
name: string;
|
|
990
|
+
}
|
|
991
|
+
}
|
|
992
|
+
}
|
|
993
|
+
|
|
649
994
|
export interface FlowDryRunResponse {
|
|
650
995
|
data: FlowDryRunResponse.Data;
|
|
651
996
|
}
|
|
@@ -675,13 +1020,15 @@ export namespace FlowDryRunResponse {
|
|
|
675
1020
|
|
|
676
1021
|
flowActionId: string;
|
|
677
1022
|
|
|
1023
|
+
key: string;
|
|
1024
|
+
|
|
678
1025
|
method: string;
|
|
679
1026
|
|
|
680
1027
|
name: string;
|
|
681
1028
|
|
|
682
1029
|
recordingEnabled: boolean;
|
|
683
1030
|
|
|
684
|
-
service: 'tasks_api' | 'devices_api' | 'agents_api' | 'webhooks';
|
|
1031
|
+
service: 'tasks_api' | 'devices_api' | 'agents_api' | 'webhooks' | 'integrations_api';
|
|
685
1032
|
|
|
686
1033
|
/**
|
|
687
1034
|
* Nested child actions (loop/branch bodies), each the same shape as a
|
|
@@ -776,6 +1123,70 @@ export namespace FlowListRepairsResponse {
|
|
|
776
1123
|
}
|
|
777
1124
|
}
|
|
778
1125
|
|
|
1126
|
+
export interface FlowRunResponse {
|
|
1127
|
+
data: FlowRunResponse.Data;
|
|
1128
|
+
}
|
|
1129
|
+
|
|
1130
|
+
export namespace FlowRunResponse {
|
|
1131
|
+
export interface Data {
|
|
1132
|
+
enqueuedCount: number;
|
|
1133
|
+
|
|
1134
|
+
/**
|
|
1135
|
+
* Ids of the executions this run created. An idempotent replay returns the ids of
|
|
1136
|
+
* the original run.
|
|
1137
|
+
*/
|
|
1138
|
+
executionIds: Array<string>;
|
|
1139
|
+
}
|
|
1140
|
+
}
|
|
1141
|
+
|
|
1142
|
+
export interface FlowTemplateContextResponse {
|
|
1143
|
+
data: FlowTemplateContextResponse.Data;
|
|
1144
|
+
}
|
|
1145
|
+
|
|
1146
|
+
export namespace FlowTemplateContextResponse {
|
|
1147
|
+
export interface Data {
|
|
1148
|
+
grammar: string;
|
|
1149
|
+
|
|
1150
|
+
loop: Data.Loop;
|
|
1151
|
+
|
|
1152
|
+
payloadAliases: Array<string>;
|
|
1153
|
+
|
|
1154
|
+
roots: Array<Data.Root>;
|
|
1155
|
+
|
|
1156
|
+
stepReference: Data.StepReference;
|
|
1157
|
+
|
|
1158
|
+
templateResolutionVersion: number;
|
|
1159
|
+
}
|
|
1160
|
+
|
|
1161
|
+
export namespace Data {
|
|
1162
|
+
export interface Loop {
|
|
1163
|
+
context: Array<string>;
|
|
1164
|
+
|
|
1165
|
+
itemVariableDefault: string;
|
|
1166
|
+
|
|
1167
|
+
name: string;
|
|
1168
|
+
}
|
|
1169
|
+
|
|
1170
|
+
export interface Root {
|
|
1171
|
+
description: string;
|
|
1172
|
+
|
|
1173
|
+
name: string;
|
|
1174
|
+
|
|
1175
|
+
shape?: unknown;
|
|
1176
|
+
}
|
|
1177
|
+
|
|
1178
|
+
export interface StepReference {
|
|
1179
|
+
note: string;
|
|
1180
|
+
|
|
1181
|
+
pattern: string;
|
|
1182
|
+
|
|
1183
|
+
keyRule?: string;
|
|
1184
|
+
|
|
1185
|
+
slugRule?: string;
|
|
1186
|
+
}
|
|
1187
|
+
}
|
|
1188
|
+
}
|
|
1189
|
+
|
|
779
1190
|
export interface FlowUnblockResponse {
|
|
780
1191
|
data: FlowUnblockResponse.Data;
|
|
781
1192
|
}
|
|
@@ -798,6 +1209,8 @@ export namespace FlowUnblockResponse {
|
|
|
798
1209
|
|
|
799
1210
|
createdBy: string | null;
|
|
800
1211
|
|
|
1212
|
+
delivery: Data.Delivery | null;
|
|
1213
|
+
|
|
801
1214
|
description: string | null;
|
|
802
1215
|
|
|
803
1216
|
deviceIds: Array<string>;
|
|
@@ -852,8 +1265,9 @@ export namespace FlowUnblockResponse {
|
|
|
852
1265
|
/**
|
|
853
1266
|
* Template-resolver semantics this flow runs under (MVA-23). 1 = legacy
|
|
854
1267
|
* (missing/forbidden/null all resolve to ''). 2 = typed (missing/forbidden throw,
|
|
855
|
-
* a whole-token null stays JSON null).
|
|
856
|
-
*
|
|
1268
|
+
* a whole-token null stays JSON null). 3 = typed, key-based (steps are addressed
|
|
1269
|
+
* as {{steps.<key>...}} instead of by name; trigger.payload is not available).
|
|
1270
|
+
* Existing flows stay 1; new flows default to the current version.
|
|
857
1271
|
*/
|
|
858
1272
|
templateResolutionVersion: number;
|
|
859
1273
|
|
|
@@ -868,12 +1282,98 @@ export namespace FlowUnblockResponse {
|
|
|
868
1282
|
}
|
|
869
1283
|
|
|
870
1284
|
export namespace Data {
|
|
1285
|
+
export interface Delivery {
|
|
1286
|
+
destination: 'one_drive' | 'google_drive';
|
|
1287
|
+
|
|
1288
|
+
folder?: string;
|
|
1289
|
+
|
|
1290
|
+
recording?: Delivery.Recording;
|
|
1291
|
+
|
|
1292
|
+
screenshots?: unknown;
|
|
1293
|
+
}
|
|
1294
|
+
|
|
1295
|
+
export namespace Delivery {
|
|
1296
|
+
export interface Recording {
|
|
1297
|
+
filename: string;
|
|
1298
|
+
}
|
|
1299
|
+
}
|
|
1300
|
+
|
|
871
1301
|
export interface RecordingPolicy {
|
|
872
1302
|
mode: 'off' | 'flow' | 'selected_steps';
|
|
873
1303
|
}
|
|
874
1304
|
}
|
|
875
1305
|
}
|
|
876
1306
|
|
|
1307
|
+
export interface FlowValidateResponse {
|
|
1308
|
+
data: FlowValidateResponse.Data;
|
|
1309
|
+
}
|
|
1310
|
+
|
|
1311
|
+
export namespace FlowValidateResponse {
|
|
1312
|
+
export interface Data {
|
|
1313
|
+
errors: Array<Data.Error>;
|
|
1314
|
+
|
|
1315
|
+
valid: boolean;
|
|
1316
|
+
|
|
1317
|
+
warnings: Array<Data.Warning>;
|
|
1318
|
+
}
|
|
1319
|
+
|
|
1320
|
+
export namespace Data {
|
|
1321
|
+
export interface Error {
|
|
1322
|
+
code: string;
|
|
1323
|
+
|
|
1324
|
+
field: string;
|
|
1325
|
+
|
|
1326
|
+
message: string;
|
|
1327
|
+
|
|
1328
|
+
knownSteps?: Array<string>;
|
|
1329
|
+
|
|
1330
|
+
reference?: string;
|
|
1331
|
+
}
|
|
1332
|
+
|
|
1333
|
+
export interface Warning {
|
|
1334
|
+
code: string;
|
|
1335
|
+
|
|
1336
|
+
message: string;
|
|
1337
|
+
|
|
1338
|
+
connectKey?: string;
|
|
1339
|
+
|
|
1340
|
+
destination?: string;
|
|
1341
|
+
}
|
|
1342
|
+
}
|
|
1343
|
+
}
|
|
1344
|
+
|
|
1345
|
+
export interface FlowVerifyResponse {
|
|
1346
|
+
data: FlowVerifyResponse.Data;
|
|
1347
|
+
}
|
|
1348
|
+
|
|
1349
|
+
export namespace FlowVerifyResponse {
|
|
1350
|
+
export interface Data {
|
|
1351
|
+
/**
|
|
1352
|
+
* True when this run already existed for the (flow, invocationId) key (HTTP 200);
|
|
1353
|
+
* false for a newly enqueued run (HTTP 202).
|
|
1354
|
+
*/
|
|
1355
|
+
deduplicated: boolean;
|
|
1356
|
+
|
|
1357
|
+
/**
|
|
1358
|
+
* Device the verification runs on; null for a device-free verification (a 0-device
|
|
1359
|
+
* flow whose actions are all device-free allowlisted).
|
|
1360
|
+
*/
|
|
1361
|
+
deviceId: string | null;
|
|
1362
|
+
|
|
1363
|
+
executionId: string;
|
|
1364
|
+
|
|
1365
|
+
flowId: string;
|
|
1366
|
+
|
|
1367
|
+
invocationId: string;
|
|
1368
|
+
|
|
1369
|
+
kind: 'verification';
|
|
1370
|
+
|
|
1371
|
+
status: 'pending' | 'running' | 'success' | 'failed' | 'cancelled' | 'skipped' | 'invalid';
|
|
1372
|
+
|
|
1373
|
+
triggerId: string;
|
|
1374
|
+
}
|
|
1375
|
+
}
|
|
1376
|
+
|
|
877
1377
|
export interface FlowCreateParams {
|
|
878
1378
|
actions: Array<FlowCreateParams.Action>;
|
|
879
1379
|
|
|
@@ -885,6 +1385,8 @@ export interface FlowCreateParams {
|
|
|
885
1385
|
|
|
886
1386
|
cooldownSeconds?: number | null;
|
|
887
1387
|
|
|
1388
|
+
delivery?: FlowCreateParams.Delivery;
|
|
1389
|
+
|
|
888
1390
|
description?: string;
|
|
889
1391
|
|
|
890
1392
|
deviceIds?: Array<string>;
|
|
@@ -899,10 +1401,6 @@ export interface FlowCreateParams {
|
|
|
899
1401
|
|
|
900
1402
|
notifyWebhookId?: string | null;
|
|
901
1403
|
|
|
902
|
-
/**
|
|
903
|
-
* @deprecated Deprecated compatibility field. true maps to
|
|
904
|
-
* recordingPolicy.mode="flow"; false maps to "off".
|
|
905
|
-
*/
|
|
906
1404
|
recordingEnabled?: boolean;
|
|
907
1405
|
|
|
908
1406
|
recordingPolicy?: FlowCreateParams.RecordingPolicy;
|
|
@@ -922,6 +1420,15 @@ export namespace FlowCreateParams {
|
|
|
922
1420
|
|
|
923
1421
|
continueOnError?: boolean;
|
|
924
1422
|
|
|
1423
|
+
/**
|
|
1424
|
+
* Stable identifier used by template resolution v2+ to address this step as
|
|
1425
|
+
* {{key.field}}. Omitted keys are derived from the step name whenever a flow is
|
|
1426
|
+
* created. For template resolution v3, replacing an existing flow's full action
|
|
1427
|
+
* tree requires every step to carry an explicit key — a missing key is rejected
|
|
1428
|
+
* there, not derived, so a name change can never silently move a step's key.
|
|
1429
|
+
*/
|
|
1430
|
+
key?: string;
|
|
1431
|
+
|
|
925
1432
|
nameOverride?: string;
|
|
926
1433
|
|
|
927
1434
|
overrides?: Action.Overrides | null;
|
|
@@ -937,6 +1444,15 @@ export namespace FlowCreateParams {
|
|
|
937
1444
|
|
|
938
1445
|
continueOnError?: boolean;
|
|
939
1446
|
|
|
1447
|
+
/**
|
|
1448
|
+
* Stable identifier used by template resolution v2+ to address this step as
|
|
1449
|
+
* {{key.field}}. Omitted keys are derived from the step name whenever a flow is
|
|
1450
|
+
* created. For template resolution v3, replacing an existing flow's full action
|
|
1451
|
+
* tree requires every step to carry an explicit key — a missing key is rejected
|
|
1452
|
+
* there, not derived, so a name change can never silently move a step's key.
|
|
1453
|
+
*/
|
|
1454
|
+
key?: string;
|
|
1455
|
+
|
|
940
1456
|
nameOverride?: string;
|
|
941
1457
|
|
|
942
1458
|
overrides?: Child.Overrides | null;
|
|
@@ -955,6 +1471,22 @@ export namespace FlowCreateParams {
|
|
|
955
1471
|
}
|
|
956
1472
|
}
|
|
957
1473
|
|
|
1474
|
+
export interface Delivery {
|
|
1475
|
+
destination: 'one_drive' | 'google_drive';
|
|
1476
|
+
|
|
1477
|
+
folder?: string;
|
|
1478
|
+
|
|
1479
|
+
recording?: Delivery.Recording;
|
|
1480
|
+
|
|
1481
|
+
screenshots?: unknown;
|
|
1482
|
+
}
|
|
1483
|
+
|
|
1484
|
+
export namespace Delivery {
|
|
1485
|
+
export interface Recording {
|
|
1486
|
+
filename: string;
|
|
1487
|
+
}
|
|
1488
|
+
}
|
|
1489
|
+
|
|
958
1490
|
export interface RecordingPolicy {
|
|
959
1491
|
mode: 'off' | 'flow' | 'selected_steps';
|
|
960
1492
|
}
|
|
@@ -965,6 +1497,8 @@ export interface FlowUpdateParams {
|
|
|
965
1497
|
|
|
966
1498
|
cooldownSeconds?: number | null;
|
|
967
1499
|
|
|
1500
|
+
delivery?: FlowUpdateParams.Delivery | null;
|
|
1501
|
+
|
|
968
1502
|
description?: string;
|
|
969
1503
|
|
|
970
1504
|
deviceIds?: Array<string>;
|
|
@@ -1002,6 +1536,22 @@ export interface FlowUpdateParams {
|
|
|
1002
1536
|
}
|
|
1003
1537
|
|
|
1004
1538
|
export namespace FlowUpdateParams {
|
|
1539
|
+
export interface Delivery {
|
|
1540
|
+
destination: 'one_drive' | 'google_drive';
|
|
1541
|
+
|
|
1542
|
+
folder?: string;
|
|
1543
|
+
|
|
1544
|
+
recording?: Delivery.Recording;
|
|
1545
|
+
|
|
1546
|
+
screenshots?: unknown;
|
|
1547
|
+
}
|
|
1548
|
+
|
|
1549
|
+
export namespace Delivery {
|
|
1550
|
+
export interface Recording {
|
|
1551
|
+
filename: string;
|
|
1552
|
+
}
|
|
1553
|
+
}
|
|
1554
|
+
|
|
1005
1555
|
export interface RecordingPolicy {
|
|
1006
1556
|
mode: 'off' | 'flow' | 'selected_steps';
|
|
1007
1557
|
}
|
|
@@ -1035,6 +1585,10 @@ export interface FlowListParams {
|
|
|
1035
1585
|
triggerId?: string;
|
|
1036
1586
|
}
|
|
1037
1587
|
|
|
1588
|
+
export interface FlowActivateParams {
|
|
1589
|
+
verificationExecutionId: string;
|
|
1590
|
+
}
|
|
1591
|
+
|
|
1038
1592
|
export interface FlowCloneParams {
|
|
1039
1593
|
deviceIds?: Array<string>;
|
|
1040
1594
|
|
|
@@ -1045,6 +1599,189 @@ export interface FlowDryRunParams {
|
|
|
1045
1599
|
payload?: { [key: string]: unknown };
|
|
1046
1600
|
}
|
|
1047
1601
|
|
|
1602
|
+
export interface FlowRunParams {
|
|
1603
|
+
payload?: { [key: string]: unknown };
|
|
1604
|
+
}
|
|
1605
|
+
|
|
1606
|
+
export interface FlowTemplateContextParams {
|
|
1607
|
+
templateResolutionVersion?: number;
|
|
1608
|
+
}
|
|
1609
|
+
|
|
1610
|
+
export interface FlowValidateParams {
|
|
1611
|
+
actions: Array<FlowValidateParams.FlowActionInput | FlowValidateParams.FlowDraftActionInput>;
|
|
1612
|
+
|
|
1613
|
+
name: string;
|
|
1614
|
+
|
|
1615
|
+
cooldownScope?: 'flow' | 'device';
|
|
1616
|
+
|
|
1617
|
+
cooldownSeconds?: number | null;
|
|
1618
|
+
|
|
1619
|
+
delivery?: FlowValidateParams.Delivery;
|
|
1620
|
+
|
|
1621
|
+
description?: string;
|
|
1622
|
+
|
|
1623
|
+
deviceIds?: Array<string>;
|
|
1624
|
+
|
|
1625
|
+
enabled?: boolean;
|
|
1626
|
+
|
|
1627
|
+
healthMonitoringEnabled?: boolean;
|
|
1628
|
+
|
|
1629
|
+
notifyOnFailure?: boolean;
|
|
1630
|
+
|
|
1631
|
+
notifyOnSuccess?: boolean;
|
|
1632
|
+
|
|
1633
|
+
notifyWebhookId?: string | null;
|
|
1634
|
+
|
|
1635
|
+
recordingEnabled?: boolean;
|
|
1636
|
+
|
|
1637
|
+
recordingPolicy?: FlowValidateParams.RecordingPolicy;
|
|
1638
|
+
|
|
1639
|
+
selfHealingEnabled?: boolean;
|
|
1640
|
+
|
|
1641
|
+
selfHealingMaxAttempts?: number;
|
|
1642
|
+
|
|
1643
|
+
triggerId?: string;
|
|
1644
|
+
}
|
|
1645
|
+
|
|
1646
|
+
export namespace FlowValidateParams {
|
|
1647
|
+
export interface FlowActionInput {
|
|
1648
|
+
actionId: string;
|
|
1649
|
+
|
|
1650
|
+
position: number;
|
|
1651
|
+
|
|
1652
|
+
children?: Array<FlowActionInput.Child>;
|
|
1653
|
+
|
|
1654
|
+
continueOnError?: boolean;
|
|
1655
|
+
|
|
1656
|
+
/**
|
|
1657
|
+
* Stable identifier used by template resolution v2+ to address this step as
|
|
1658
|
+
* {{key.field}}. Omitted keys are derived from the step name whenever a flow is
|
|
1659
|
+
* created. For template resolution v3, replacing an existing flow's full action
|
|
1660
|
+
* tree requires every step to carry an explicit key — a missing key is rejected
|
|
1661
|
+
* there, not derived, so a name change can never silently move a step's key.
|
|
1662
|
+
*/
|
|
1663
|
+
key?: string;
|
|
1664
|
+
|
|
1665
|
+
nameOverride?: string;
|
|
1666
|
+
|
|
1667
|
+
overrides?: FlowActionInput.Overrides | null;
|
|
1668
|
+
|
|
1669
|
+
recordingEnabled?: boolean;
|
|
1670
|
+
}
|
|
1671
|
+
|
|
1672
|
+
export namespace FlowActionInput {
|
|
1673
|
+
export interface Child {
|
|
1674
|
+
actionId: string;
|
|
1675
|
+
|
|
1676
|
+
position: number;
|
|
1677
|
+
|
|
1678
|
+
continueOnError?: boolean;
|
|
1679
|
+
|
|
1680
|
+
/**
|
|
1681
|
+
* Stable identifier used by template resolution v2+ to address this step as
|
|
1682
|
+
* {{key.field}}. Omitted keys are derived from the step name whenever a flow is
|
|
1683
|
+
* created. For template resolution v3, replacing an existing flow's full action
|
|
1684
|
+
* tree requires every step to carry an explicit key — a missing key is rejected
|
|
1685
|
+
* there, not derived, so a name change can never silently move a step's key.
|
|
1686
|
+
*/
|
|
1687
|
+
key?: string;
|
|
1688
|
+
|
|
1689
|
+
nameOverride?: string;
|
|
1690
|
+
|
|
1691
|
+
overrides?: Child.Overrides | null;
|
|
1692
|
+
|
|
1693
|
+
recordingEnabled?: boolean;
|
|
1694
|
+
}
|
|
1695
|
+
|
|
1696
|
+
export namespace Child {
|
|
1697
|
+
export interface Overrides {
|
|
1698
|
+
params?: { [key: string]: unknown };
|
|
1699
|
+
}
|
|
1700
|
+
}
|
|
1701
|
+
|
|
1702
|
+
export interface Overrides {
|
|
1703
|
+
params?: { [key: string]: unknown };
|
|
1704
|
+
}
|
|
1705
|
+
}
|
|
1706
|
+
|
|
1707
|
+
export interface FlowDraftActionInput {
|
|
1708
|
+
draft: FlowDraftActionInput.Draft;
|
|
1709
|
+
|
|
1710
|
+
position: number;
|
|
1711
|
+
|
|
1712
|
+
continueOnError?: boolean;
|
|
1713
|
+
|
|
1714
|
+
/**
|
|
1715
|
+
* Stable identifier used by template resolution v2+ to address this step as
|
|
1716
|
+
* {{key.field}}. Omitted keys are derived from the step name whenever a flow is
|
|
1717
|
+
* created. For template resolution v3, replacing an existing flow's full action
|
|
1718
|
+
* tree requires every step to carry an explicit key — a missing key is rejected
|
|
1719
|
+
* there, not derived, so a name change can never silently move a step's key.
|
|
1720
|
+
*/
|
|
1721
|
+
key?: string;
|
|
1722
|
+
|
|
1723
|
+
nameOverride?: string;
|
|
1724
|
+
|
|
1725
|
+
overrides?: FlowDraftActionInput.Overrides | null;
|
|
1726
|
+
|
|
1727
|
+
recordingEnabled?: boolean;
|
|
1728
|
+
}
|
|
1729
|
+
|
|
1730
|
+
export namespace FlowDraftActionInput {
|
|
1731
|
+
export interface Draft {
|
|
1732
|
+
method: string;
|
|
1733
|
+
|
|
1734
|
+
name: string;
|
|
1735
|
+
|
|
1736
|
+
service: string;
|
|
1737
|
+
|
|
1738
|
+
params?: { [key: string]: unknown };
|
|
1739
|
+
}
|
|
1740
|
+
|
|
1741
|
+
export interface Overrides {
|
|
1742
|
+
params?: { [key: string]: unknown };
|
|
1743
|
+
}
|
|
1744
|
+
}
|
|
1745
|
+
|
|
1746
|
+
export interface Delivery {
|
|
1747
|
+
destination: 'one_drive' | 'google_drive';
|
|
1748
|
+
|
|
1749
|
+
folder?: string;
|
|
1750
|
+
|
|
1751
|
+
recording?: Delivery.Recording;
|
|
1752
|
+
|
|
1753
|
+
screenshots?: unknown;
|
|
1754
|
+
}
|
|
1755
|
+
|
|
1756
|
+
export namespace Delivery {
|
|
1757
|
+
export interface Recording {
|
|
1758
|
+
filename: string;
|
|
1759
|
+
}
|
|
1760
|
+
}
|
|
1761
|
+
|
|
1762
|
+
export interface RecordingPolicy {
|
|
1763
|
+
mode: 'off' | 'flow' | 'selected_steps';
|
|
1764
|
+
}
|
|
1765
|
+
}
|
|
1766
|
+
|
|
1767
|
+
export interface FlowVerifyParams {
|
|
1768
|
+
/**
|
|
1769
|
+
* Client-supplied idempotency key. A repeat request for the same (flow,
|
|
1770
|
+
* invocationId) returns the existing verification run (`deduplicated: true`,
|
|
1771
|
+
* HTTP 200) instead of enqueuing another.
|
|
1772
|
+
*/
|
|
1773
|
+
invocationId: string;
|
|
1774
|
+
|
|
1775
|
+
/**
|
|
1776
|
+
* Device to run the verification on. Must be one the flow is bound to. Optional
|
|
1777
|
+
* only when the flow is bound to exactly one device (that device is used);
|
|
1778
|
+
* otherwise required.
|
|
1779
|
+
*/
|
|
1780
|
+
deviceId?: string;
|
|
1781
|
+
|
|
1782
|
+
payload?: { [key: string]: unknown };
|
|
1783
|
+
}
|
|
1784
|
+
|
|
1048
1785
|
Flows.Actions = Actions;
|
|
1049
1786
|
|
|
1050
1787
|
export declare namespace Flows {
|
|
@@ -1054,16 +1791,27 @@ export declare namespace Flows {
|
|
|
1054
1791
|
type FlowUpdateResponse as FlowUpdateResponse,
|
|
1055
1792
|
type FlowListResponse as FlowListResponse,
|
|
1056
1793
|
type FlowDeleteResponse as FlowDeleteResponse,
|
|
1794
|
+
type FlowActivateResponse as FlowActivateResponse,
|
|
1057
1795
|
type FlowCapacityResponse as FlowCapacityResponse,
|
|
1058
1796
|
type FlowCloneResponse as FlowCloneResponse,
|
|
1797
|
+
type FlowDeliveryOptionsResponse as FlowDeliveryOptionsResponse,
|
|
1059
1798
|
type FlowDryRunResponse as FlowDryRunResponse,
|
|
1060
1799
|
type FlowListRepairsResponse as FlowListRepairsResponse,
|
|
1800
|
+
type FlowRunResponse as FlowRunResponse,
|
|
1801
|
+
type FlowTemplateContextResponse as FlowTemplateContextResponse,
|
|
1061
1802
|
type FlowUnblockResponse as FlowUnblockResponse,
|
|
1803
|
+
type FlowValidateResponse as FlowValidateResponse,
|
|
1804
|
+
type FlowVerifyResponse as FlowVerifyResponse,
|
|
1062
1805
|
type FlowCreateParams as FlowCreateParams,
|
|
1063
1806
|
type FlowUpdateParams as FlowUpdateParams,
|
|
1064
1807
|
type FlowListParams as FlowListParams,
|
|
1808
|
+
type FlowActivateParams as FlowActivateParams,
|
|
1065
1809
|
type FlowCloneParams as FlowCloneParams,
|
|
1066
1810
|
type FlowDryRunParams as FlowDryRunParams,
|
|
1811
|
+
type FlowRunParams as FlowRunParams,
|
|
1812
|
+
type FlowTemplateContextParams as FlowTemplateContextParams,
|
|
1813
|
+
type FlowValidateParams as FlowValidateParams,
|
|
1814
|
+
type FlowVerifyParams as FlowVerifyParams,
|
|
1067
1815
|
};
|
|
1068
1816
|
|
|
1069
1817
|
export {
|