@superglue/cli 1.1.220 → 1.1.221
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/.claude-plugin/plugin.json +1 -1
- package/dist/cli.js +2 -2
- package/dist/skills/superglue/SKILL.md +14 -14
- package/dist/skills/superglue/references/graphql.md +1 -1
- package/dist/skills/superglue/references/http.md +1 -1
- package/dist/skills/superglue/references/mongodb.md +5 -5
- package/dist/skills/superglue/references/mssql.md +5 -5
- package/dist/skills/superglue/references/odbc.md +5 -5
- package/dist/skills/superglue/references/postgres.md +5 -5
- package/dist/skills/superglue/references/redis.md +5 -5
- package/dist/skills/superglue/references/sftp-smb.md +5 -5
- package/dist/skills/superglue/references/superglue-info.md +1 -1
- package/package.json +1 -1
- package/skills/superglue/SKILL.md +14 -14
- package/skills/superglue/references/graphql.md +1 -1
- package/skills/superglue/references/http.md +1 -1
- package/skills/superglue/references/mongodb.md +5 -5
- package/skills/superglue/references/mssql.md +5 -5
- package/skills/superglue/references/odbc.md +5 -5
- package/skills/superglue/references/postgres.md +5 -5
- package/skills/superglue/references/redis.md +5 -5
- package/skills/superglue/references/sftp-smb.md +5 -5
- package/skills/superglue/references/superglue-info.md +1 -1
|
@@ -385,16 +385,16 @@ Attach files with repeatable `--file key=path`. Reference in payloads with `file
|
|
|
385
385
|
|
|
386
386
|
**Request step fields** (HTTP, Postgres, MSSQL, Redis, MongoDB, FTP/SFTP, SMB) — see protocol-specific references for full details:
|
|
387
387
|
|
|
388
|
-
| Field | Type | Description
|
|
389
|
-
| ------------- | ------ |
|
|
390
|
-
| `type` | string | `"request"` (default, can be omitted)
|
|
391
|
-
| `systemId` | string | Optional.
|
|
392
|
-
| `url` | string | Full URL with `<<variable>>` placeholders. Required.
|
|
393
|
-
| `method` | string | HTTP method (HTTP only)
|
|
394
|
-
| `headers` | object | HTTP headers with credential placeholders (HTTP only)
|
|
395
|
-
| `queryParams` | object | URL query parameters (HTTP only)
|
|
396
|
-
| `body` | string | Request body / DB query / Redis command / file operation
|
|
397
|
-
| `pagination` | object | Auto-pagination config (HTTP only, see `sg skill http`)
|
|
388
|
+
| Field | Type | Description |
|
|
389
|
+
| ------------- | ------ | ------------------------------------------------------------------ |
|
|
390
|
+
| `type` | string | `"request"` (default, can be omitted) |
|
|
391
|
+
| `systemId` | string | Optional. Resolves connection secrets as `<<systemId_secretName>>` |
|
|
392
|
+
| `url` | string | Full URL with `<<variable>>` placeholders. Required. |
|
|
393
|
+
| `method` | string | HTTP method (HTTP only) |
|
|
394
|
+
| `headers` | object | HTTP headers with credential placeholders (HTTP only) |
|
|
395
|
+
| `queryParams` | object | URL query parameters (HTTP only) |
|
|
396
|
+
| `body` | string | Request body / DB query / Redis command / file operation |
|
|
397
|
+
| `pagination` | object | Auto-pagination config (HTTP only, see `sg skill http`) |
|
|
398
398
|
|
|
399
399
|
**Transform step fields:**
|
|
400
400
|
|
|
@@ -423,8 +423,8 @@ All step config fields (url, headers, body, queryParams) support `<<expression>>
|
|
|
423
423
|
<<userId>> payload inputs
|
|
424
424
|
<<currentItem>> whole current loop item
|
|
425
425
|
<<page>> <<offset>> <<cursor>> <<limit>> <<pageSize>> pagination variables
|
|
426
|
-
<<systemId_api_key>>
|
|
427
|
-
<<systemId_url>>
|
|
426
|
+
<<systemId_api_key>> connection secrets (namespaced: systemId_secretName)
|
|
427
|
+
<<systemId_url>> connection base URLs (namespaced: systemId_url)
|
|
428
428
|
<<sg_auth_email>> email of the user triggering this run (in scheduled runs: the schedule creator)
|
|
429
429
|
<<sg_auth_jwt>> short-lived signed JWT proving the identity of the user triggering this run; receivers verify it against superglue's outbound JWKS endpoint (/api/auth/outbound-jwks on the web app origin)
|
|
430
430
|
```
|
|
@@ -485,7 +485,7 @@ sourceData = {
|
|
|
485
485
|
- State gives at-least-once execution with progress tracking, never exactly-once: crashes, concurrent-run conflicts, and state resets all cause re-processing, which re-executes side effects. Steps that write to external systems MUST be replay-safe — upsert by a stable external id or pass an idempotency key — or duplicates will land in the target system.
|
|
486
486
|
- Keep set-valued keys bounded (e.g. keep only the most recent ~1,000 ids): an unbounded set eventually exceeds the 64KB value limit, which rejects the tool's entire state write on every run.
|
|
487
487
|
- Never copy credential values into state — state is stored unencrypted and readable by anyone with read access to the tool.
|
|
488
|
-
- Inspect current state via `sg tool state get <toolId>` (values matching known
|
|
488
|
+
- Inspect current state via `sg tool state get <toolId>` (values matching known connection secrets are masked); reset it via `sg tool state reset <toolId>`. A reset wins over in-flight runs: their updates to pre-reset keys are discarded as conflicts; only keys they newly add are kept.
|
|
489
489
|
- Set state deliberately via `sg tool state set <toolId> --state '<json>'` (or `--state-file`) — a full replace, subject to the same key and size limits. To test warm-state behavior without touching real state, pass `--state-fixture '<json>'` (or `--state-fixture-file`) to `sg tool run`: it seeds `sourceData.persistedState` for that run and the run never saves state changes. Side effects still execute, including `tool:` chain webhooks — a chained tool runs for real against its own real state.
|
|
490
490
|
|
|
491
491
|
### Naming Rules — Avoiding Key Collisions
|
|
@@ -495,7 +495,7 @@ Everything in `sourceData` shares ONE flat namespace. Saving a tool rejects payl
|
|
|
495
495
|
- `__files__`, `currentItem`, `persistedState`, `sg_auth_email`, `sg_auth_jwt` — injected by the runtime
|
|
496
496
|
- `page`, `offset`, `cursor`, `limit`, `pageSize` — rejected only when the tool has a paginated step, because they would shadow the live pagination counters; on non-paginated tools they are allowed but discouraged (a later edit that adds pagination will force a rename)
|
|
497
497
|
- the tool's own step ids — the step result overwrites a same-named payload key
|
|
498
|
-
- anything starting with `<systemId>_` for a system the tool uses — the entire prefix is reserved for namespaced
|
|
498
|
+
- anything starting with `<systemId>_` for a system the tool uses — the entire prefix is reserved for namespaced secrets (`<systemId>_<secretName>`, `<systemId>_url`), even names that don't match an existing secret, because secrets added to a connection later would silently shadow the input
|
|
499
499
|
|
|
500
500
|
Safe naming: payload inputs get specific, domain-flavored names (`customerId`, `reportMonth`, `maxResults` — prefer `maxResults` over `limit` even on non-paginated tools, and never prefix an input with a referenced system's id); step ids are verb-prefixed camelCase (`fetchUsers`) and distinct from every payload key. If the user asks for an input named like a reserved key, use a safe alternative and explain why.
|
|
501
501
|
|
|
@@ -26,7 +26,7 @@ GraphQL APIs use HTTP POST under the hood. This skill covers the GraphQL-specifi
|
|
|
26
26
|
| `method` | yes | Always `POST` |
|
|
27
27
|
| `headers` | yes | Must include `Content-Type: application/json` and auth |
|
|
28
28
|
| `body` | yes | JSON string with `query` and optional `variables` |
|
|
29
|
-
| `systemId` | no |
|
|
29
|
+
| `systemId` | no | Resolves connection secrets and URL |
|
|
30
30
|
|
|
31
31
|
### Body Format
|
|
32
32
|
|
|
@@ -27,7 +27,7 @@ All fields support `<<variable>>` and `<<(sourceData) => ...>>` expressions.
|
|
|
27
27
|
| `queryParams` | no | Key-value pairs appended to URL |
|
|
28
28
|
| `body` | no | Stripped for GET/HEAD/DELETE/OPTIONS |
|
|
29
29
|
| `pagination` | no | See Pagination section |
|
|
30
|
-
| `systemId` | no |
|
|
30
|
+
| `systemId` | no | Resolves connection secrets and URL. Omit for public APIs |
|
|
31
31
|
|
|
32
32
|
For APIs that require the same query key multiple times, use an array value:
|
|
33
33
|
`{ metadataHeaders: ["From", "Subject"] }` -> `?metadataHeaders=From&metadataHeaders=Subject`.
|
|
@@ -19,11 +19,11 @@ Configure the connection URL based on the selected credential's secrets — use
|
|
|
19
19
|
|
|
20
20
|
### Fields
|
|
21
21
|
|
|
22
|
-
| Field | Required | Notes
|
|
23
|
-
| ---------- | -------- |
|
|
24
|
-
| `url` | yes | Connection string with `<<credential>>` placeholders
|
|
25
|
-
| `body` | yes | JSON: single operation object or array of operations
|
|
26
|
-
| `systemId` | no |
|
|
22
|
+
| Field | Required | Notes |
|
|
23
|
+
| ---------- | -------- | -------------------------------------------------------- |
|
|
24
|
+
| `url` | yes | Connection string with `<<credential>>` placeholders |
|
|
25
|
+
| `body` | yes | JSON: single operation object or array of operations |
|
|
26
|
+
| `systemId` | no | Resolves connection secrets as `<<systemId_secretName>>` |
|
|
27
27
|
|
|
28
28
|
### URL Format
|
|
29
29
|
|
|
@@ -21,11 +21,11 @@ Configure the connection URL based on the selected connection's secrets — use
|
|
|
21
21
|
|
|
22
22
|
### Fields
|
|
23
23
|
|
|
24
|
-
| Field | Required | Notes
|
|
25
|
-
| ---------- | -------- |
|
|
26
|
-
| `url` | yes | Connection string with `<<credential>>` placeholders
|
|
27
|
-
| `body` | yes | JSON string with `query` and optional `params`
|
|
28
|
-
| `systemId` | no |
|
|
24
|
+
| Field | Required | Notes |
|
|
25
|
+
| ---------- | -------- | -------------------------------------------------------- |
|
|
26
|
+
| `url` | yes | Connection string with `<<credential>>` placeholders |
|
|
27
|
+
| `body` | yes | JSON string with `query` and optional `params` |
|
|
28
|
+
| `systemId` | no | Resolves connection secrets as `<<systemId_secretName>>` |
|
|
29
29
|
|
|
30
30
|
### URL Format
|
|
31
31
|
|
|
@@ -19,11 +19,11 @@ Configure the connection URL based on the selected credential's secrets — use
|
|
|
19
19
|
|
|
20
20
|
### Fields
|
|
21
21
|
|
|
22
|
-
| Field | Required | Notes
|
|
23
|
-
| ---------- | -------- |
|
|
24
|
-
| `url` | yes | Connection string with `<<credential>>` placeholders
|
|
25
|
-
| `body` | yes | JSON string with `query` and optional `params`
|
|
26
|
-
| `systemId` | no |
|
|
22
|
+
| Field | Required | Notes |
|
|
23
|
+
| ---------- | -------- | -------------------------------------------------------- |
|
|
24
|
+
| `url` | yes | Connection string with `<<credential>>` placeholders |
|
|
25
|
+
| `body` | yes | JSON string with `query` and optional `params` |
|
|
26
|
+
| `systemId` | no | Resolves connection secrets as `<<systemId_secretName>>` |
|
|
27
27
|
|
|
28
28
|
### URL Format
|
|
29
29
|
|
|
@@ -19,11 +19,11 @@ Configure the connection URL based on the selected credential's secrets — use
|
|
|
19
19
|
|
|
20
20
|
### Fields
|
|
21
21
|
|
|
22
|
-
| Field | Required | Notes
|
|
23
|
-
| ---------- | -------- |
|
|
24
|
-
| `url` | yes | Connection string with `<<credential>>` placeholders
|
|
25
|
-
| `body` | yes | JSON string with `query` and optional `params`
|
|
26
|
-
| `systemId` | no |
|
|
22
|
+
| Field | Required | Notes |
|
|
23
|
+
| ---------- | -------- | -------------------------------------------------------- |
|
|
24
|
+
| `url` | yes | Connection string with `<<credential>>` placeholders |
|
|
25
|
+
| `body` | yes | JSON string with `query` and optional `params` |
|
|
26
|
+
| `systemId` | no | Resolves connection secrets as `<<systemId_secretName>>` |
|
|
27
27
|
|
|
28
28
|
### URL Format
|
|
29
29
|
|
|
@@ -19,11 +19,11 @@ Configure the connection URL based on the selected credential's secrets — use
|
|
|
19
19
|
|
|
20
20
|
### Fields
|
|
21
21
|
|
|
22
|
-
| Field | Required | Notes
|
|
23
|
-
| ---------- | -------- |
|
|
24
|
-
| `url` | yes | Connection string with `<<credential>>` placeholders
|
|
25
|
-
| `body` | yes | JSON: single command object or array for pipeline
|
|
26
|
-
| `systemId` | no |
|
|
22
|
+
| Field | Required | Notes |
|
|
23
|
+
| ---------- | -------- | -------------------------------------------------------- |
|
|
24
|
+
| `url` | yes | Connection string with `<<credential>>` placeholders |
|
|
25
|
+
| `body` | yes | JSON: single command object or array for pipeline |
|
|
26
|
+
| `systemId` | no | Resolves connection secrets as `<<systemId_secretName>>` |
|
|
27
27
|
|
|
28
28
|
### URL Format
|
|
29
29
|
|
|
@@ -21,11 +21,11 @@ Configure the connection URL based on the selected connection's secrets — use
|
|
|
21
21
|
|
|
22
22
|
### Fields
|
|
23
23
|
|
|
24
|
-
| Field | Required | Notes
|
|
25
|
-
| ---------- | -------- |
|
|
26
|
-
| `url` | yes | Connection string with `<<credential>>` placeholders
|
|
27
|
-
| `body` | yes | JSON: single operation object or array for batch
|
|
28
|
-
| `systemId` | no |
|
|
24
|
+
| Field | Required | Notes |
|
|
25
|
+
| ---------- | -------- | -------------------------------------------------------- |
|
|
26
|
+
| `url` | yes | Connection string with `<<credential>>` placeholders |
|
|
27
|
+
| `body` | yes | JSON: single operation object or array for batch |
|
|
28
|
+
| `systemId` | no | Resolves connection secrets as `<<systemId_secretName>>` |
|
|
29
29
|
|
|
30
30
|
### URL Formats
|
|
31
31
|
|
|
@@ -124,7 +124,7 @@ When cloud billing is enabled, Trial organizations see **Upgrade Plan** in the s
|
|
|
124
124
|
1. **Validate** tool structure (id, steps array, URLs on request steps)
|
|
125
125
|
2. **For each step in order:**
|
|
126
126
|
a. Build aggregated data: `{ ...originalPayload, ...previousStepResults }`
|
|
127
|
-
b. Resolve
|
|
127
|
+
b. Resolve connection secrets (refresh OAuth if needed), namespace as `systemId_secretName`
|
|
128
128
|
c. Run `dataSelector` → object means single execution, array means loop
|
|
129
129
|
d. For each item: merge `currentItem` into input and execute
|
|
130
130
|
e. Wrap result: `{ currentItem, data, success }`
|
package/package.json
CHANGED
|
@@ -385,16 +385,16 @@ Attach files with repeatable `--file key=path`. Reference in payloads with `file
|
|
|
385
385
|
|
|
386
386
|
**Request step fields** (HTTP, Postgres, MSSQL, Redis, MongoDB, FTP/SFTP, SMB) — see protocol-specific references for full details:
|
|
387
387
|
|
|
388
|
-
| Field | Type | Description
|
|
389
|
-
| ------------- | ------ |
|
|
390
|
-
| `type` | string | `"request"` (default, can be omitted)
|
|
391
|
-
| `systemId` | string | Optional.
|
|
392
|
-
| `url` | string | Full URL with `<<variable>>` placeholders. Required.
|
|
393
|
-
| `method` | string | HTTP method (HTTP only)
|
|
394
|
-
| `headers` | object | HTTP headers with credential placeholders (HTTP only)
|
|
395
|
-
| `queryParams` | object | URL query parameters (HTTP only)
|
|
396
|
-
| `body` | string | Request body / DB query / Redis command / file operation
|
|
397
|
-
| `pagination` | object | Auto-pagination config (HTTP only, see `sg skill http`)
|
|
388
|
+
| Field | Type | Description |
|
|
389
|
+
| ------------- | ------ | ------------------------------------------------------------------ |
|
|
390
|
+
| `type` | string | `"request"` (default, can be omitted) |
|
|
391
|
+
| `systemId` | string | Optional. Resolves connection secrets as `<<systemId_secretName>>` |
|
|
392
|
+
| `url` | string | Full URL with `<<variable>>` placeholders. Required. |
|
|
393
|
+
| `method` | string | HTTP method (HTTP only) |
|
|
394
|
+
| `headers` | object | HTTP headers with credential placeholders (HTTP only) |
|
|
395
|
+
| `queryParams` | object | URL query parameters (HTTP only) |
|
|
396
|
+
| `body` | string | Request body / DB query / Redis command / file operation |
|
|
397
|
+
| `pagination` | object | Auto-pagination config (HTTP only, see `sg skill http`) |
|
|
398
398
|
|
|
399
399
|
**Transform step fields:**
|
|
400
400
|
|
|
@@ -423,8 +423,8 @@ All step config fields (url, headers, body, queryParams) support `<<expression>>
|
|
|
423
423
|
<<userId>> payload inputs
|
|
424
424
|
<<currentItem>> whole current loop item
|
|
425
425
|
<<page>> <<offset>> <<cursor>> <<limit>> <<pageSize>> pagination variables
|
|
426
|
-
<<systemId_api_key>>
|
|
427
|
-
<<systemId_url>>
|
|
426
|
+
<<systemId_api_key>> connection secrets (namespaced: systemId_secretName)
|
|
427
|
+
<<systemId_url>> connection base URLs (namespaced: systemId_url)
|
|
428
428
|
<<sg_auth_email>> email of the user triggering this run (in scheduled runs: the schedule creator)
|
|
429
429
|
<<sg_auth_jwt>> short-lived signed JWT proving the identity of the user triggering this run; receivers verify it against superglue's outbound JWKS endpoint (/api/auth/outbound-jwks on the web app origin)
|
|
430
430
|
```
|
|
@@ -485,7 +485,7 @@ sourceData = {
|
|
|
485
485
|
- State gives at-least-once execution with progress tracking, never exactly-once: crashes, concurrent-run conflicts, and state resets all cause re-processing, which re-executes side effects. Steps that write to external systems MUST be replay-safe — upsert by a stable external id or pass an idempotency key — or duplicates will land in the target system.
|
|
486
486
|
- Keep set-valued keys bounded (e.g. keep only the most recent ~1,000 ids): an unbounded set eventually exceeds the 64KB value limit, which rejects the tool's entire state write on every run.
|
|
487
487
|
- Never copy credential values into state — state is stored unencrypted and readable by anyone with read access to the tool.
|
|
488
|
-
- Inspect current state via `sg tool state get <toolId>` (values matching known
|
|
488
|
+
- Inspect current state via `sg tool state get <toolId>` (values matching known connection secrets are masked); reset it via `sg tool state reset <toolId>`. A reset wins over in-flight runs: their updates to pre-reset keys are discarded as conflicts; only keys they newly add are kept.
|
|
489
489
|
- Set state deliberately via `sg tool state set <toolId> --state '<json>'` (or `--state-file`) — a full replace, subject to the same key and size limits. To test warm-state behavior without touching real state, pass `--state-fixture '<json>'` (or `--state-fixture-file`) to `sg tool run`: it seeds `sourceData.persistedState` for that run and the run never saves state changes. Side effects still execute, including `tool:` chain webhooks — a chained tool runs for real against its own real state.
|
|
490
490
|
|
|
491
491
|
### Naming Rules — Avoiding Key Collisions
|
|
@@ -495,7 +495,7 @@ Everything in `sourceData` shares ONE flat namespace. Saving a tool rejects payl
|
|
|
495
495
|
- `__files__`, `currentItem`, `persistedState`, `sg_auth_email`, `sg_auth_jwt` — injected by the runtime
|
|
496
496
|
- `page`, `offset`, `cursor`, `limit`, `pageSize` — rejected only when the tool has a paginated step, because they would shadow the live pagination counters; on non-paginated tools they are allowed but discouraged (a later edit that adds pagination will force a rename)
|
|
497
497
|
- the tool's own step ids — the step result overwrites a same-named payload key
|
|
498
|
-
- anything starting with `<systemId>_` for a system the tool uses — the entire prefix is reserved for namespaced
|
|
498
|
+
- anything starting with `<systemId>_` for a system the tool uses — the entire prefix is reserved for namespaced secrets (`<systemId>_<secretName>`, `<systemId>_url`), even names that don't match an existing secret, because secrets added to a connection later would silently shadow the input
|
|
499
499
|
|
|
500
500
|
Safe naming: payload inputs get specific, domain-flavored names (`customerId`, `reportMonth`, `maxResults` — prefer `maxResults` over `limit` even on non-paginated tools, and never prefix an input with a referenced system's id); step ids are verb-prefixed camelCase (`fetchUsers`) and distinct from every payload key. If the user asks for an input named like a reserved key, use a safe alternative and explain why.
|
|
501
501
|
|
|
@@ -26,7 +26,7 @@ GraphQL APIs use HTTP POST under the hood. This skill covers the GraphQL-specifi
|
|
|
26
26
|
| `method` | yes | Always `POST` |
|
|
27
27
|
| `headers` | yes | Must include `Content-Type: application/json` and auth |
|
|
28
28
|
| `body` | yes | JSON string with `query` and optional `variables` |
|
|
29
|
-
| `systemId` | no |
|
|
29
|
+
| `systemId` | no | Resolves connection secrets and URL |
|
|
30
30
|
|
|
31
31
|
### Body Format
|
|
32
32
|
|
|
@@ -27,7 +27,7 @@ All fields support `<<variable>>` and `<<(sourceData) => ...>>` expressions.
|
|
|
27
27
|
| `queryParams` | no | Key-value pairs appended to URL |
|
|
28
28
|
| `body` | no | Stripped for GET/HEAD/DELETE/OPTIONS |
|
|
29
29
|
| `pagination` | no | See Pagination section |
|
|
30
|
-
| `systemId` | no |
|
|
30
|
+
| `systemId` | no | Resolves connection secrets and URL. Omit for public APIs |
|
|
31
31
|
|
|
32
32
|
For APIs that require the same query key multiple times, use an array value:
|
|
33
33
|
`{ metadataHeaders: ["From", "Subject"] }` -> `?metadataHeaders=From&metadataHeaders=Subject`.
|
|
@@ -19,11 +19,11 @@ Configure the connection URL based on the selected credential's secrets — use
|
|
|
19
19
|
|
|
20
20
|
### Fields
|
|
21
21
|
|
|
22
|
-
| Field | Required | Notes
|
|
23
|
-
| ---------- | -------- |
|
|
24
|
-
| `url` | yes | Connection string with `<<credential>>` placeholders
|
|
25
|
-
| `body` | yes | JSON: single operation object or array of operations
|
|
26
|
-
| `systemId` | no |
|
|
22
|
+
| Field | Required | Notes |
|
|
23
|
+
| ---------- | -------- | -------------------------------------------------------- |
|
|
24
|
+
| `url` | yes | Connection string with `<<credential>>` placeholders |
|
|
25
|
+
| `body` | yes | JSON: single operation object or array of operations |
|
|
26
|
+
| `systemId` | no | Resolves connection secrets as `<<systemId_secretName>>` |
|
|
27
27
|
|
|
28
28
|
### URL Format
|
|
29
29
|
|
|
@@ -21,11 +21,11 @@ Configure the connection URL based on the selected connection's secrets — use
|
|
|
21
21
|
|
|
22
22
|
### Fields
|
|
23
23
|
|
|
24
|
-
| Field | Required | Notes
|
|
25
|
-
| ---------- | -------- |
|
|
26
|
-
| `url` | yes | Connection string with `<<credential>>` placeholders
|
|
27
|
-
| `body` | yes | JSON string with `query` and optional `params`
|
|
28
|
-
| `systemId` | no |
|
|
24
|
+
| Field | Required | Notes |
|
|
25
|
+
| ---------- | -------- | -------------------------------------------------------- |
|
|
26
|
+
| `url` | yes | Connection string with `<<credential>>` placeholders |
|
|
27
|
+
| `body` | yes | JSON string with `query` and optional `params` |
|
|
28
|
+
| `systemId` | no | Resolves connection secrets as `<<systemId_secretName>>` |
|
|
29
29
|
|
|
30
30
|
### URL Format
|
|
31
31
|
|
|
@@ -19,11 +19,11 @@ Configure the connection URL based on the selected credential's secrets — use
|
|
|
19
19
|
|
|
20
20
|
### Fields
|
|
21
21
|
|
|
22
|
-
| Field | Required | Notes
|
|
23
|
-
| ---------- | -------- |
|
|
24
|
-
| `url` | yes | Connection string with `<<credential>>` placeholders
|
|
25
|
-
| `body` | yes | JSON string with `query` and optional `params`
|
|
26
|
-
| `systemId` | no |
|
|
22
|
+
| Field | Required | Notes |
|
|
23
|
+
| ---------- | -------- | -------------------------------------------------------- |
|
|
24
|
+
| `url` | yes | Connection string with `<<credential>>` placeholders |
|
|
25
|
+
| `body` | yes | JSON string with `query` and optional `params` |
|
|
26
|
+
| `systemId` | no | Resolves connection secrets as `<<systemId_secretName>>` |
|
|
27
27
|
|
|
28
28
|
### URL Format
|
|
29
29
|
|
|
@@ -19,11 +19,11 @@ Configure the connection URL based on the selected credential's secrets — use
|
|
|
19
19
|
|
|
20
20
|
### Fields
|
|
21
21
|
|
|
22
|
-
| Field | Required | Notes
|
|
23
|
-
| ---------- | -------- |
|
|
24
|
-
| `url` | yes | Connection string with `<<credential>>` placeholders
|
|
25
|
-
| `body` | yes | JSON string with `query` and optional `params`
|
|
26
|
-
| `systemId` | no |
|
|
22
|
+
| Field | Required | Notes |
|
|
23
|
+
| ---------- | -------- | -------------------------------------------------------- |
|
|
24
|
+
| `url` | yes | Connection string with `<<credential>>` placeholders |
|
|
25
|
+
| `body` | yes | JSON string with `query` and optional `params` |
|
|
26
|
+
| `systemId` | no | Resolves connection secrets as `<<systemId_secretName>>` |
|
|
27
27
|
|
|
28
28
|
### URL Format
|
|
29
29
|
|
|
@@ -19,11 +19,11 @@ Configure the connection URL based on the selected credential's secrets — use
|
|
|
19
19
|
|
|
20
20
|
### Fields
|
|
21
21
|
|
|
22
|
-
| Field | Required | Notes
|
|
23
|
-
| ---------- | -------- |
|
|
24
|
-
| `url` | yes | Connection string with `<<credential>>` placeholders
|
|
25
|
-
| `body` | yes | JSON: single command object or array for pipeline
|
|
26
|
-
| `systemId` | no |
|
|
22
|
+
| Field | Required | Notes |
|
|
23
|
+
| ---------- | -------- | -------------------------------------------------------- |
|
|
24
|
+
| `url` | yes | Connection string with `<<credential>>` placeholders |
|
|
25
|
+
| `body` | yes | JSON: single command object or array for pipeline |
|
|
26
|
+
| `systemId` | no | Resolves connection secrets as `<<systemId_secretName>>` |
|
|
27
27
|
|
|
28
28
|
### URL Format
|
|
29
29
|
|
|
@@ -21,11 +21,11 @@ Configure the connection URL based on the selected connection's secrets — use
|
|
|
21
21
|
|
|
22
22
|
### Fields
|
|
23
23
|
|
|
24
|
-
| Field | Required | Notes
|
|
25
|
-
| ---------- | -------- |
|
|
26
|
-
| `url` | yes | Connection string with `<<credential>>` placeholders
|
|
27
|
-
| `body` | yes | JSON: single operation object or array for batch
|
|
28
|
-
| `systemId` | no |
|
|
24
|
+
| Field | Required | Notes |
|
|
25
|
+
| ---------- | -------- | -------------------------------------------------------- |
|
|
26
|
+
| `url` | yes | Connection string with `<<credential>>` placeholders |
|
|
27
|
+
| `body` | yes | JSON: single operation object or array for batch |
|
|
28
|
+
| `systemId` | no | Resolves connection secrets as `<<systemId_secretName>>` |
|
|
29
29
|
|
|
30
30
|
### URL Formats
|
|
31
31
|
|
|
@@ -124,7 +124,7 @@ When cloud billing is enabled, Trial organizations see **Upgrade Plan** in the s
|
|
|
124
124
|
1. **Validate** tool structure (id, steps array, URLs on request steps)
|
|
125
125
|
2. **For each step in order:**
|
|
126
126
|
a. Build aggregated data: `{ ...originalPayload, ...previousStepResults }`
|
|
127
|
-
b. Resolve
|
|
127
|
+
b. Resolve connection secrets (refresh OAuth if needed), namespace as `systemId_secretName`
|
|
128
128
|
c. Run `dataSelector` → object means single execution, array means loop
|
|
129
129
|
d. For each item: merge `currentItem` into input and execute
|
|
130
130
|
e. Wrap result: `{ currentItem, data, success }`
|