@celigo/api-specs 0.2.157 → 0.2.158
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/api.yml +24 -3
- package/dist/tool.yml +48 -8
- package/package.json +1 -1
- package/schemas.json +1 -1
package/dist/api.yml
CHANGED
|
@@ -3038,7 +3038,13 @@ components:
|
|
|
3038
3038
|
- Premium customers
|
|
3039
3039
|
inputFilter:
|
|
3040
3040
|
type: object
|
|
3041
|
-
description:
|
|
3041
|
+
description: |-
|
|
3042
|
+
Filter criteria for branch selection. Send `version` and `rules` directly on
|
|
3043
|
+
`inputFilter` — not inside the `{type: "expression", expression: {...}}` wrapper
|
|
3044
|
+
that export and import filters use. A wrapped filter is saved without an error,
|
|
3045
|
+
but the branch is stored with no `inputFilter` and takes every request.
|
|
3046
|
+
x-celigo-ai-guidance:
|
|
3047
|
+
- Read the API back after saving a branching router and check that each filtered branch still has its `inputFilter`; a filter sent in the export-filter wrapper is dropped on save without an error.
|
|
3042
3048
|
properties:
|
|
3043
3049
|
version:
|
|
3044
3050
|
type: string
|
|
@@ -3073,12 +3079,22 @@ components:
|
|
|
3073
3079
|
followed by operands which can be nested expressions.
|
|
3074
3080
|
nextRouterId:
|
|
3075
3081
|
type: string
|
|
3076
|
-
description:
|
|
3082
|
+
description: |-
|
|
3083
|
+
Next router to chain to, or "apiRouter" for the response router. Every branch needs
|
|
3084
|
+
one: a branch without it is saved, but every test run of the API is then refused
|
|
3085
|
+
with 400 "One or more branches are not merged back. Review the setup to ensure all
|
|
3086
|
+
branches converge.", whichever branch the request takes. An id that names no router
|
|
3087
|
+
fails the save with 422 "Invalid nextRouterId is defined on the branch. Please
|
|
3088
|
+
correct the branch configuration."
|
|
3077
3089
|
examples:
|
|
3078
3090
|
- apiRouter
|
|
3079
3091
|
pageProcessors:
|
|
3080
3092
|
type: array
|
|
3081
|
-
description:
|
|
3093
|
+
description: |-
|
|
3094
|
+
Processing steps to execute in this branch. An export is a step at most once in an
|
|
3095
|
+
API: using it again, on another branch or in the same one, fails the save with 422
|
|
3096
|
+
"The export <id> is already included as a lookup in your API and cannot be added
|
|
3097
|
+
again."
|
|
3082
3098
|
items:
|
|
3083
3099
|
type: object
|
|
3084
3100
|
properties:
|
|
@@ -3344,6 +3360,11 @@ components:
|
|
|
3344
3360
|
matches; the typed `context.success` filter doesn't prevent that, because
|
|
3345
3361
|
`context.success` is true whenever no step failed, including when a lookup found nothing.
|
|
3346
3362
|
A step that fails with `proceedOnFailure` off selects the `fail` response.
|
|
3363
|
+
|
|
3364
|
+
Send `version` and `rules` directly on `inputFilter`, not inside the
|
|
3365
|
+
`{type: "expression", expression: {...}}` wrapper that export and import filters use. A
|
|
3366
|
+
wrapped filter is saved without an error, but the response is stored with no
|
|
3367
|
+
`inputFilter`, so it matches every request that reaches it.
|
|
3347
3368
|
properties:
|
|
3348
3369
|
version:
|
|
3349
3370
|
type: string
|
package/dist/tool.yml
CHANGED
|
@@ -460,9 +460,10 @@ paths:
|
|
|
460
460
|
summary: Delete a tool
|
|
461
461
|
description: |-
|
|
462
462
|
Deletes a tool. Soft-deleted and retained in the recycle bin for 30 days.
|
|
463
|
-
Fails with 422 if other resources (MCP servers, access tokens
|
|
464
|
-
|
|
465
|
-
|
|
463
|
+
Fails with 422 if other resources (MCP servers, access tokens, or a
|
|
464
|
+
`ToolImport` import whose `tool._toolId` names it: "import <id> must be
|
|
465
|
+
deleted before you can delete tool <id>") still reference this tool — call
|
|
466
|
+
`GET /v1/tools/{_id}/dependencies` first to check; it lists those imports.
|
|
466
467
|
operationId: deleteTool
|
|
467
468
|
tags:
|
|
468
469
|
- Tools
|
|
@@ -1231,8 +1232,12 @@ paths:
|
|
|
1231
1232
|
'422':
|
|
1232
1233
|
description: |-
|
|
1233
1234
|
A step failed, or the Tool was refused before any step ran: a connection binding is
|
|
1234
|
-
missing (`connection_not_overridden`) or has no `_id`,
|
|
1235
|
-
back (`tool_dangling_branch`)
|
|
1235
|
+
missing (`connection_not_overridden`) or has no `_id`, its branches don't all merge
|
|
1236
|
+
back (`tool_dangling_branch`), or the input fails `input.schema` (a missing `required`
|
|
1237
|
+
property answers `tool_input_schema_validation_failed`). The output stage answers 422 too when the stored
|
|
1238
|
+
`output.schema` holds `additionalProperties: false` and the output mappings write a field
|
|
1239
|
+
it doesn't list ("Tool output validation failed: must NOT have additional properties").
|
|
1240
|
+
A failed step answers 422 even when it has
|
|
1236
1241
|
`proceedOnFailure: true`: the later steps still run, but the response carries the error,
|
|
1237
1242
|
not the output. Either way the response includes `invocationId` when logging is active,
|
|
1238
1243
|
so the run can be opened in the run history.
|
|
@@ -6354,7 +6359,16 @@ components:
|
|
|
6354
6359
|
JSON Schema describing the expected input data structure.
|
|
6355
6360
|
|
|
6356
6361
|
Used for validation, documentation, and AI-assisted tooling.
|
|
6357
|
-
Must be a valid JSON Schema document.
|
|
6362
|
+
Must be a valid JSON Schema document. Leave `$schema` out or name draft-07: a
|
|
6363
|
+
`$schema` naming draft 2020-12 fails the save with 422 "Invalid input.schema -
|
|
6364
|
+
no schema with key or ref ...". An `$id` saves.
|
|
6365
|
+
|
|
6366
|
+
Each invoke's input is validated against it. A missing `required` property
|
|
6367
|
+
refuses the call with 422 `tool_input_schema_validation_failed` ("Tool input
|
|
6368
|
+
validation failed: must have required property '<name>'"), and a failed
|
|
6369
|
+
`pattern` with 422 "Tool input validation failed: <field>: must match pattern
|
|
6370
|
+
...". A property made required later therefore breaks callers that don't send
|
|
6371
|
+
it.
|
|
6358
6372
|
additionalProperties: true
|
|
6359
6373
|
examples:
|
|
6360
6374
|
- type: object
|
|
@@ -6468,6 +6482,11 @@ components:
|
|
|
6468
6482
|
|
|
6469
6483
|
Used for documentation and validation of the tool's output.
|
|
6470
6484
|
Must be a valid JSON Schema document.
|
|
6485
|
+
|
|
6486
|
+
The mapped output is validated against it. While the stored schema holds
|
|
6487
|
+
`additionalProperties: false`, `POST /v1/tools/{_id}/invoke` answers 422 "Tool
|
|
6488
|
+
output validation failed: must NOT have additional properties" when the output
|
|
6489
|
+
mappings write a field the schema doesn't list.
|
|
6471
6490
|
additionalProperties: true
|
|
6472
6491
|
examples:
|
|
6473
6492
|
- type: object
|
|
@@ -6760,7 +6779,12 @@ components:
|
|
|
6760
6779
|
description: |
|
|
6761
6780
|
Filter criteria to determine if this branch should be selected.
|
|
6762
6781
|
|
|
6763
|
-
Uses Celigo's expression-based filter format.
|
|
6782
|
+
Uses Celigo's expression-based filter format. Send `version` and `rules`
|
|
6783
|
+
directly on `inputFilter` — not inside the `{type: "expression", expression: {...}}`
|
|
6784
|
+
wrapper that export and import filters use. A wrapped filter is saved without an
|
|
6785
|
+
error, but the branch is stored with no `inputFilter` and takes every input.
|
|
6786
|
+
x-celigo-ai-guidance:
|
|
6787
|
+
- Read the tool back after saving a branching router and check that each filtered branch still has its `inputFilter`; a filter sent in the export-filter wrapper is dropped on save without an error.
|
|
6764
6788
|
properties:
|
|
6765
6789
|
version:
|
|
6766
6790
|
type: string
|
|
@@ -6800,6 +6824,13 @@ components:
|
|
|
6800
6824
|
|
|
6801
6825
|
Use "outputRouter" as a special terminal value to exit the tool
|
|
6802
6826
|
and return the processing results.
|
|
6827
|
+
|
|
6828
|
+
Every branch needs one. A branch without it is saved, but every invoke is
|
|
6829
|
+
then refused with 422 and every test run with 400 `tool_dangling_branch`
|
|
6830
|
+
("One or more branches are not merged back. Review the setup to ensure all
|
|
6831
|
+
branches converge."), whichever branch the input takes. An id that names no
|
|
6832
|
+
router fails the save with 422 "Invalid nextRouterId is defined on the branch.
|
|
6833
|
+
Please correct the branch configuration."
|
|
6803
6834
|
examples:
|
|
6804
6835
|
- router_002
|
|
6805
6836
|
- outputRouter
|
|
@@ -6809,7 +6840,10 @@ components:
|
|
|
6809
6840
|
Processing steps to execute in this branch.
|
|
6810
6841
|
|
|
6811
6842
|
Each processor references an export (lookup) or import resource
|
|
6812
|
-
for data retrieval or submission.
|
|
6843
|
+
for data retrieval or submission. An export is a step at most once in a
|
|
6844
|
+
tool: using it again, on another branch or in the same one, fails the save
|
|
6845
|
+
with 422 "The export <id> is already included as a pageProcessor in your
|
|
6846
|
+
flow, and cannot be added again."
|
|
6813
6847
|
items:
|
|
6814
6848
|
type: object
|
|
6815
6849
|
properties:
|
|
@@ -7064,6 +7098,12 @@ components:
|
|
|
7064
7098
|
|
|
7065
7099
|
Branches can chain to other routers or use the special "outputRouter"
|
|
7066
7100
|
terminal value to exit the tool.
|
|
7101
|
+
|
|
7102
|
+
A tool saves without `routers`, but it can't run: `POST /v1/tools/{_id}/invoke`
|
|
7103
|
+
and a test run answer 400 `tool_empty_router` ("Tool has no steps configured.
|
|
7104
|
+
Add at least one step before executing the tool."). A full PUT that omits
|
|
7105
|
+
`routers` removes the steps the same way. Put linear steps in one pass-through
|
|
7106
|
+
router with a single branch.
|
|
7067
7107
|
items:
|
|
7068
7108
|
$ref: '#/components/schemas/Router'
|
|
7069
7109
|
aiDescription:
|
package/package.json
CHANGED