@celigo/api-specs 0.2.202 → 0.2.204

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/dist/tool.yml CHANGED
@@ -1241,8 +1241,8 @@ paths:
1241
1241
  '422':
1242
1242
  description: |-
1243
1243
  A step failed, or the Tool was refused before any step ran: a connection binding is
1244
- missing (`connection_not_overridden`) or has no `_id`, its branches don't all merge
1245
- back (`tool_dangling_branch`), or the input fails `input.schema` (a missing `required`
1244
+ missing (`connection_not_overridden`), its branches don't all merge back
1245
+ (`tool_dangling_branch`), or the input fails `input.schema` (a missing `required`
1246
1246
  property answers `tool_input_schema_validation_failed`). The output stage answers 422 too when the stored
1247
1247
  `output.schema` holds `additionalProperties: false` and the output mappings write a field
1248
1248
  it doesn't list ("Tool output validation failed: must NOT have additional properties").
@@ -1250,6 +1250,14 @@ paths:
1250
1250
  `proceedOnFailure: true`: the later steps still run, but the response carries the error,
1251
1251
  not the output. Either way the response includes `invocationId` when logging is active,
1252
1252
  so the run can be opened in the run history.
1253
+
1254
+ Once the Tool is found and has steps, a malformed `overrides` block is refused with
1255
+ `invalid_override` ("Invalid override at <path>. <reason>") before any step runs:
1256
+ `overrides` is not an object, a `connections`/`exports`/`imports`/`routers` value is not
1257
+ an array or holds a non-object entry, a connection binding has no `_abstractId`, names
1258
+ none of `_id`, `_borrowConcurrencyFromConnectionId`, or `requiresEndUserCredentials`, or
1259
+ sets both `_id` and `_borrowConcurrencyFromConnectionId`. These refusals carry only `code`
1260
+ and `message`, and no `invocationId` even with `x-log-mode: debug`.
1253
1261
  content:
1254
1262
  application/json:
1255
1263
  schema:
@@ -1259,7 +1267,7 @@ paths:
1259
1267
  properties:
1260
1268
  errors:
1261
1269
  type: array
1262
- description: Execution errors, each with a `code`, `message`, `source`, and epoch-millisecond `time`.
1270
+ description: Execution errors, each with a `code`, `message`, `source`, and epoch-millisecond `time`. An `invalid_override` refusal has only `code` and `message`.
1263
1271
  items:
1264
1272
  type: object
1265
1273
  additionalProperties: true
@@ -1280,10 +1288,23 @@ paths:
1280
1288
  message: 'Missing connection overrides. The following connection IDs must be overridden: 6ab1f5657b3d01a9084253a5.'
1281
1289
  invocationId: 6ab1f5877cd5cdd66da1cc8b
1282
1290
  binding_without_id:
1283
- summary: A connection binding without `_id`
1291
+ summary: A connection binding with only `_abstractId`
1292
+ value:
1293
+ errors:
1294
+ - code: invalid_override
1295
+ message: 'Invalid override at overrides.connections[0]. Connection override must include at least one of: _id, _borrowConcurrencyFromConnectionId, requiresEndUserCredentials.'
1296
+ binding_without_abstract_id:
1297
+ summary: A connection binding without `_abstractId`
1298
+ value:
1299
+ errors:
1300
+ - code: invalid_override
1301
+ message: Invalid override at overrides.connections[0]._abstractId. Missing required _abstractId.
1302
+ overrides_not_object:
1303
+ summary: '`overrides` sent as an array'
1284
1304
  value:
1285
1305
  errors:
1286
- - message: 'Invalid override at overrides.connections[0]. Connection override must include at least one of: _id, _borrowConcurrencyFromConnectionId, requiresEndUserCredentials.'
1306
+ - code: invalid_override
1307
+ message: Invalid override at overrides. Expected overrides to be an object.
1287
1308
  /v1/tools/{_id}/invocations:
1288
1309
  get:
1289
1310
  x-internal: false
@@ -1895,12 +1916,14 @@ paths:
1895
1916
  not landed yet; re-query before concluding nothing was stored.
1896
1917
 
1897
1918
  For nested Tools, set `stage` to `tool` with the nested ToolImport id to fetch the
1898
- composed input/output payload.
1919
+ composed input/output payload; `groupId` is not needed for that stage and is ignored.
1920
+ Until the nested Tool's payloads land, that entry carries only `_expOrImpId` and `stage`.
1899
1921
 
1900
1922
  When the invocation is missing or not visible under the caller's integration ACL,
1901
1923
  the endpoint returns `204 No Content`. `404` applies only to an unknown or inaccessible
1902
- Tool `_id`. A malformed `executionId` returns `422`, and a body missing any of the four
1903
- selector keys returns `400`. Sandbox Tools return `403`.
1924
+ Tool `_id`. A malformed `executionId` returns `422`, and a body missing a required
1925
+ selector key (`groupId` is required for every stage except `tool`) returns `400`.
1926
+ Sandbox Tools return `403`.
1904
1927
  parameters:
1905
1928
  - name: _id
1906
1929
  in: path
@@ -1947,7 +1970,6 @@ paths:
1947
1970
  value:
1948
1971
  _expOrImpId: 67ee026136f4d1eeb529ad63
1949
1972
  stage: tool
1950
- groupId: g-12345
1951
1973
  recordId: r-67890
1952
1974
  responses:
1953
1975
  '200':
@@ -2012,6 +2034,21 @@ paths:
2012
2034
  content-type: application/json; charset=utf-8
2013
2035
  body: '[{"_id":"6a50f177a8d85436a4a890db","name":"SO-1043"}]'
2014
2036
  errors: []
2037
+ nestedToolStage:
2038
+ summary: Nested Tool composed payload — the record it received and the record it returned
2039
+ value:
2040
+ logs:
2041
+ - log:
2042
+ _expOrImpId: 67ee026136f4d1eeb529ad63
2043
+ stage: tool
2044
+ input:
2045
+ record:
2046
+ orderId: SO-1043
2047
+ output:
2048
+ record:
2049
+ orderId: SO-1043
2050
+ title: Sample Slide Show
2051
+ errors: []
2015
2052
  noMatch:
2016
2053
  summary: Selector matched no stored payload
2017
2054
  value:
@@ -31247,7 +31284,8 @@ components:
31247
31284
  description: |-
31248
31285
  Provider-native ID of the storage root (e.g. a Google Drive shared-drive ID) the relative
31249
31286
  path resolves against; set when pathMode is relativePath. The provider's own ID, not a Celigo ID.
31250
- For Google Cloud Storage it is the bucket name.
31287
+ For Google Cloud Storage it is the bucket name, and a bucket that doesn't exist fails the
31288
+ export preview with 422 `gcs_bucket_not_found`.
31251
31289
  examples:
31252
31290
  - 1qU1hvFarBFMb4-twqKm1rR5o_6j9vs9g
31253
31291
  - erp-exports
@@ -39498,8 +39536,15 @@ components:
39498
39536
  required:
39499
39537
  - _expOrImpId
39500
39538
  - stage
39501
- - groupId
39502
39539
  - recordId
39540
+ if:
39541
+ properties:
39542
+ stage:
39543
+ not:
39544
+ const: tool
39545
+ then:
39546
+ required:
39547
+ - groupId
39503
39548
  properties:
39504
39549
  _expOrImpId:
39505
39550
  type: string
@@ -39526,7 +39571,7 @@ components:
39526
39571
  - tool
39527
39572
  groupId:
39528
39573
  type: string
39529
- description: Group identifier of the step record.
39574
+ description: Group identifier of the step record. Ignored when `stage` is `tool`.
39530
39575
  examples:
39531
39576
  - YYFuqOqC
39532
39577
  recordId:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@celigo/api-specs",
3
- "version": "0.2.202",
3
+ "version": "0.2.204",
4
4
  "private": false,
5
5
  "description": "Public OpenAPI bundles (dist/) and the celigo-cli lint schema pack (schemas.json).",
6
6
  "keywords": [
package/schemas.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "provenance": {
3
3
  "repo": "celigo/integrator-api-specs",
4
- "iasCommit": "4a026a0b",
4
+ "iasCommit": "bbd50898",
5
5
  "generatedAt": "2026-10-28"
6
6
  },
7
7
  "roots": {