@celigo/api-specs 0.2.149 → 0.2.151
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/ai-agent.yml +11 -3
- package/dist/api.yml +80 -37
- package/dist/connection.yml +17 -4
- package/dist/enduser.yml +17 -4
- package/dist/export.yml +98 -56
- package/dist/filedefinition.yml +35 -4
- package/dist/flow.yml +17 -8
- package/dist/guardrail.yml +75 -24
- package/dist/import.yml +42 -22
- package/dist/integration.yml +9 -3
- package/dist/mcp-server.yml +17 -4
- package/dist/template.yml +16 -5
- package/dist/tool.yml +204 -105
- package/dist/user.yml +8 -1
- package/package.json +1 -1
- package/schemas.json +3 -1
package/dist/guardrail.yml
CHANGED
|
@@ -25,6 +25,14 @@ tags:
|
|
|
25
25
|
CRUD operations use the `/v1/imports` endpoints. The `guardrail` object
|
|
26
26
|
holds the type-specific configuration.
|
|
27
27
|
|
|
28
|
+
A guardrail returns a verdict for each record and never changes the
|
|
29
|
+
record. The verdict fields are at the top level of the result:
|
|
30
|
+
`flagged`, plus `masked` (a `pii` guardrail with `mask: true`) or
|
|
31
|
+
`reasoning` (an `ai_agent` guardrail), while `_json` is empty when a saved
|
|
32
|
+
guardrail is invoked by id. In a flow, the guardrail step's response
|
|
33
|
+
mapping copies them onto the record (`{"extract": "masked", "generate":
|
|
34
|
+
"description"}`), and routers branch on the mapped `flagged`.
|
|
35
|
+
|
|
28
36
|
## Guardrail schema
|
|
29
37
|
|
|
30
38
|
{% openapi-schemas spec="guardrail" schemas="Guardrail" grouped="true" %}
|
|
@@ -906,12 +914,17 @@ components:
|
|
|
906
914
|
run at `default` regardless of what's set here.
|
|
907
915
|
output:
|
|
908
916
|
type: object
|
|
909
|
-
description:
|
|
917
|
+
description: |-
|
|
918
|
+
Output format configuration. A guardrail stores `format` but doesn't use it: the
|
|
919
|
+
request to the model always carries the guardrail's own `validation_result` JSON
|
|
920
|
+
schema (`flagged`, `reasoning`, `confidence`), and the result returns `flagged` and
|
|
921
|
+
`reasoning` whatever `format` holds.
|
|
910
922
|
properties:
|
|
911
923
|
format:
|
|
912
924
|
type: object
|
|
913
925
|
description: |
|
|
914
|
-
|
|
926
|
+
Stored output structure. The request to the model uses the guardrail's own
|
|
927
|
+
verdict schema instead (see `output`).
|
|
915
928
|
properties:
|
|
916
929
|
type:
|
|
917
930
|
type: string
|
|
@@ -920,10 +933,10 @@ components:
|
|
|
920
933
|
- json_schema
|
|
921
934
|
- blob
|
|
922
935
|
x-enumDescriptions:
|
|
923
|
-
text:
|
|
924
|
-
json_schema:
|
|
925
|
-
blob:
|
|
926
|
-
description: Output format type.
|
|
936
|
+
text: Stored format type; the model request still uses the guardrail's verdict schema.
|
|
937
|
+
json_schema: A stored JSON schema (`jsonSchema`); the model request still uses the guardrail's verdict schema.
|
|
938
|
+
blob: Stored format type; the model request still uses the guardrail's verdict schema.
|
|
939
|
+
description: Output format type, as stored.
|
|
927
940
|
schemaMode:
|
|
928
941
|
type: string
|
|
929
942
|
enum:
|
|
@@ -933,9 +946,9 @@ components:
|
|
|
933
946
|
manual: The schema editor opens `jsonSchema` in the visual field-by-field view
|
|
934
947
|
json: The schema editor opens `jsonSchema` in the raw JSON view
|
|
935
948
|
description: |-
|
|
936
|
-
Which view a schema editor opens `jsonSchema` in
|
|
937
|
-
|
|
938
|
-
|
|
949
|
+
Which view a schema editor opens `jsonSchema` in. Stored and echoed on
|
|
950
|
+
guardrails for parity with the AI-agent format block — the guardrail form
|
|
951
|
+
does not set it today, and neither view changes the model request.
|
|
939
952
|
x-celigo-ai-guidance:
|
|
940
953
|
- |-
|
|
941
954
|
Resend the stored value on every update — a full PUT that omits the field
|
|
@@ -947,18 +960,20 @@ components:
|
|
|
947
960
|
x-celigo-ui-override: Required by the AI agent form when output format type is json_schema. Encoded here to mirror the form so builders produce connectable configurations.
|
|
948
961
|
strict:
|
|
949
962
|
type: boolean
|
|
950
|
-
description:
|
|
963
|
+
description: Stored strict-validation flag for `jsonSchema`. A guardrail's model request uses its own verdict schema, so this doesn't apply there.
|
|
951
964
|
x-celigo-ai-guidance:
|
|
952
|
-
-
|
|
965
|
+
- Stored only on a guardrail; it doesn't change the guardrail's verdict.
|
|
953
966
|
jsonSchema:
|
|
954
967
|
type: object
|
|
955
968
|
description: |
|
|
956
|
-
JSON Schema
|
|
969
|
+
Stored JSON Schema. Required when `format.type` is "json_schema". A guardrail
|
|
970
|
+
doesn't send it to the model; the request carries the `validation_result`
|
|
971
|
+
verdict schema instead.
|
|
957
972
|
x-celigo-ui-override: Required by the AI agent form when output format type is json_schema. Encoded here to mirror the form so builders produce connectable configurations.
|
|
958
973
|
properties:
|
|
959
974
|
type:
|
|
960
975
|
type: string
|
|
961
|
-
description: Root
|
|
976
|
+
description: Root type of the stored JSON Schema.
|
|
962
977
|
enum:
|
|
963
978
|
- object
|
|
964
979
|
- array
|
|
@@ -976,15 +991,15 @@ components:
|
|
|
976
991
|
properties:
|
|
977
992
|
type: object
|
|
978
993
|
additionalProperties: true
|
|
979
|
-
description:
|
|
994
|
+
description: Field definitions in the stored JSON Schema.
|
|
980
995
|
required:
|
|
981
996
|
type: array
|
|
982
|
-
description: Property names the
|
|
997
|
+
description: Property names the stored JSON Schema marks as required.
|
|
983
998
|
items:
|
|
984
999
|
type: string
|
|
985
1000
|
additionalproperties:
|
|
986
1001
|
type: boolean
|
|
987
|
-
description:
|
|
1002
|
+
description: Whether the stored JSON Schema allows properties beyond those in `properties`.
|
|
988
1003
|
schema:
|
|
989
1004
|
type: object
|
|
990
1005
|
readOnly: true
|
|
@@ -1762,10 +1777,15 @@ components:
|
|
|
1762
1777
|
type: boolean
|
|
1763
1778
|
default: false
|
|
1764
1779
|
description: |-
|
|
1765
|
-
When true,
|
|
1766
|
-
|
|
1780
|
+
When true, the result also carries `masked`: the evaluated input with each detected
|
|
1781
|
+
value replaced by asterisks. The record itself is unchanged. With whole-record input
|
|
1782
|
+
(no `mapping`, and no top-level `text` field on the record), `masked` is the record
|
|
1783
|
+
serialized as one JSON string. When false, PII is flagged only.
|
|
1767
1784
|
x-celigo-ai-guidance:
|
|
1768
|
-
-
|
|
1785
|
+
- |-
|
|
1786
|
+
Masking doesn't rewrite the record. To pass masked text on, select the field as the
|
|
1787
|
+
`text` input (`mapping`) and response-map `masked` back onto that field on the
|
|
1788
|
+
guardrail's flow step (`{"extract": "masked", "generate": "<field>"}`).
|
|
1769
1789
|
moderation:
|
|
1770
1790
|
type: object
|
|
1771
1791
|
required:
|
|
@@ -2152,8 +2172,10 @@ components:
|
|
|
2152
2172
|
mapping:
|
|
2153
2173
|
type: object
|
|
2154
2174
|
description: |-
|
|
2155
|
-
Mapper 1.0 input mapping
|
|
2156
|
-
guardrail created without one has no
|
|
2175
|
+
Mapper 1.0 input mapping that selects the field evaluated as `text`.
|
|
2176
|
+
Served only when populated — a guardrail created without one has no
|
|
2177
|
+
`mapping` in responses, and evaluates the whole record (or the
|
|
2178
|
+
record's own top-level `text` field, when it has one).
|
|
2157
2179
|
properties:
|
|
2158
2180
|
fields:
|
|
2159
2181
|
type: array
|
|
@@ -2211,7 +2233,11 @@ components:
|
|
|
2211
2233
|
- []
|
|
2212
2234
|
mockResponse:
|
|
2213
2235
|
type: array
|
|
2214
|
-
description:
|
|
2236
|
+
description: |-
|
|
2237
|
+
Sample evaluation results stored with the guardrail. The UI populates these from a
|
|
2238
|
+
preview run; accepted on create and update. Each item has the shape of the result a
|
|
2239
|
+
run produces for one record, with the verdict fields (`flagged`, `masked`,
|
|
2240
|
+
`reasoning`) at the top level.
|
|
2215
2241
|
items:
|
|
2216
2242
|
type: object
|
|
2217
2243
|
properties:
|
|
@@ -2225,6 +2251,23 @@ components:
|
|
|
2225
2251
|
description: When true, the sample input tripped the guardrail.
|
|
2226
2252
|
examples:
|
|
2227
2253
|
- true
|
|
2254
|
+
reasoning:
|
|
2255
|
+
type: string
|
|
2256
|
+
description: |-
|
|
2257
|
+
The model's explanation of the verdict. Returned by `ai_agent` guardrails,
|
|
2258
|
+
whatever output format the guardrail stores.
|
|
2259
|
+
examples:
|
|
2260
|
+
- The discount is 45% on an account opened 30 days ago, so the order is flagged.
|
|
2261
|
+
_json:
|
|
2262
|
+
type: object
|
|
2263
|
+
description: |-
|
|
2264
|
+
Empty (`{}`) in the result of a saved guardrail invoked by id. A preview's result
|
|
2265
|
+
carries the raw verdict under `_json.data`: `flagged`, `reasoning` and
|
|
2266
|
+
`confidence` for `ai_agent`, or `flagged`, `masked` and `entities_detected`
|
|
2267
|
+
for `pii`. Read the top-level fields, not `_json`.
|
|
2268
|
+
additionalProperties: true
|
|
2269
|
+
examples:
|
|
2270
|
+
- {}
|
|
2228
2271
|
ignored:
|
|
2229
2272
|
type: boolean
|
|
2230
2273
|
description: When true, the result fell below `confidenceThreshold` and was disregarded.
|
|
@@ -2303,9 +2346,17 @@ components:
|
|
|
2303
2346
|
Mapper 1.0 mapping that selects the guardrail's input from the
|
|
2304
2347
|
incoming record. The UI writes a single field entry that maps a
|
|
2305
2348
|
record field to the `text` input (e.g.
|
|
2306
|
-
`{"fields": [{"extract": "employeeSummary", "generate": "text"}]}`)
|
|
2307
|
-
|
|
2349
|
+
`{"fields": [{"extract": "employeeSummary", "generate": "text"}]}`);
|
|
2350
|
+
only that field is evaluated, and fields outside it are neither
|
|
2351
|
+
scanned nor masked. Optional — when omitted the whole record is
|
|
2352
|
+
evaluated, serialized as JSON, unless the record has its own
|
|
2353
|
+
top-level `text` field, which is then evaluated alone. The server
|
|
2308
2354
|
serves this field only when populated.
|
|
2355
|
+
x-celigo-ai-guidance:
|
|
2356
|
+
- |-
|
|
2357
|
+
Send the input selection here as `mapping`, not as Mapper 2.0
|
|
2358
|
+
`mappings` rows. Map the field explicitly when records carry their
|
|
2359
|
+
own `text` field.
|
|
2309
2360
|
properties:
|
|
2310
2361
|
fields:
|
|
2311
2362
|
type: array
|
package/dist/import.yml
CHANGED
|
@@ -10968,12 +10968,17 @@ components:
|
|
|
10968
10968
|
run at `default` regardless of what's set here.
|
|
10969
10969
|
output:
|
|
10970
10970
|
type: object
|
|
10971
|
-
description:
|
|
10971
|
+
description: |-
|
|
10972
|
+
Output format configuration. A guardrail stores `format` but doesn't use it: the
|
|
10973
|
+
request to the model always carries the guardrail's own `validation_result` JSON
|
|
10974
|
+
schema (`flagged`, `reasoning`, `confidence`), and the result returns `flagged` and
|
|
10975
|
+
`reasoning` whatever `format` holds.
|
|
10972
10976
|
properties:
|
|
10973
10977
|
format:
|
|
10974
10978
|
type: object
|
|
10975
10979
|
description: |
|
|
10976
|
-
|
|
10980
|
+
Stored output structure. The request to the model uses the guardrail's own
|
|
10981
|
+
verdict schema instead (see `output`).
|
|
10977
10982
|
properties:
|
|
10978
10983
|
type:
|
|
10979
10984
|
type: string
|
|
@@ -10982,10 +10987,10 @@ components:
|
|
|
10982
10987
|
- json_schema
|
|
10983
10988
|
- blob
|
|
10984
10989
|
x-enumDescriptions:
|
|
10985
|
-
text:
|
|
10986
|
-
json_schema:
|
|
10987
|
-
blob:
|
|
10988
|
-
description: Output format type.
|
|
10990
|
+
text: Stored format type; the model request still uses the guardrail's verdict schema.
|
|
10991
|
+
json_schema: A stored JSON schema (`jsonSchema`); the model request still uses the guardrail's verdict schema.
|
|
10992
|
+
blob: Stored format type; the model request still uses the guardrail's verdict schema.
|
|
10993
|
+
description: Output format type, as stored.
|
|
10989
10994
|
schemaMode:
|
|
10990
10995
|
type: string
|
|
10991
10996
|
enum:
|
|
@@ -10995,9 +11000,9 @@ components:
|
|
|
10995
11000
|
manual: The schema editor opens `jsonSchema` in the visual field-by-field view
|
|
10996
11001
|
json: The schema editor opens `jsonSchema` in the raw JSON view
|
|
10997
11002
|
description: |-
|
|
10998
|
-
Which view a schema editor opens `jsonSchema` in
|
|
10999
|
-
|
|
11000
|
-
|
|
11003
|
+
Which view a schema editor opens `jsonSchema` in. Stored and echoed on
|
|
11004
|
+
guardrails for parity with the AI-agent format block — the guardrail form
|
|
11005
|
+
does not set it today, and neither view changes the model request.
|
|
11001
11006
|
x-celigo-ai-guidance:
|
|
11002
11007
|
- |-
|
|
11003
11008
|
Resend the stored value on every update — a full PUT that omits the field
|
|
@@ -11009,18 +11014,20 @@ components:
|
|
|
11009
11014
|
x-celigo-ui-override: Required by the AI agent form when output format type is json_schema. Encoded here to mirror the form so builders produce connectable configurations.
|
|
11010
11015
|
strict:
|
|
11011
11016
|
type: boolean
|
|
11012
|
-
description:
|
|
11017
|
+
description: Stored strict-validation flag for `jsonSchema`. A guardrail's model request uses its own verdict schema, so this doesn't apply there.
|
|
11013
11018
|
x-celigo-ai-guidance:
|
|
11014
|
-
-
|
|
11019
|
+
- Stored only on a guardrail; it doesn't change the guardrail's verdict.
|
|
11015
11020
|
jsonSchema:
|
|
11016
11021
|
type: object
|
|
11017
11022
|
description: |
|
|
11018
|
-
JSON Schema
|
|
11023
|
+
Stored JSON Schema. Required when `format.type` is "json_schema". A guardrail
|
|
11024
|
+
doesn't send it to the model; the request carries the `validation_result`
|
|
11025
|
+
verdict schema instead.
|
|
11019
11026
|
x-celigo-ui-override: Required by the AI agent form when output format type is json_schema. Encoded here to mirror the form so builders produce connectable configurations.
|
|
11020
11027
|
properties:
|
|
11021
11028
|
type:
|
|
11022
11029
|
type: string
|
|
11023
|
-
description: Root
|
|
11030
|
+
description: Root type of the stored JSON Schema.
|
|
11024
11031
|
enum:
|
|
11025
11032
|
- object
|
|
11026
11033
|
- array
|
|
@@ -11038,15 +11045,15 @@ components:
|
|
|
11038
11045
|
properties:
|
|
11039
11046
|
type: object
|
|
11040
11047
|
additionalProperties: true
|
|
11041
|
-
description:
|
|
11048
|
+
description: Field definitions in the stored JSON Schema.
|
|
11042
11049
|
required:
|
|
11043
11050
|
type: array
|
|
11044
|
-
description: Property names the
|
|
11051
|
+
description: Property names the stored JSON Schema marks as required.
|
|
11045
11052
|
items:
|
|
11046
11053
|
type: string
|
|
11047
11054
|
additionalproperties:
|
|
11048
11055
|
type: boolean
|
|
11049
|
-
description:
|
|
11056
|
+
description: Whether the stored JSON Schema allows properties beyond those in `properties`.
|
|
11050
11057
|
schema:
|
|
11051
11058
|
type: object
|
|
11052
11059
|
readOnly: true
|
|
@@ -11854,10 +11861,15 @@ components:
|
|
|
11854
11861
|
type: boolean
|
|
11855
11862
|
default: false
|
|
11856
11863
|
description: |-
|
|
11857
|
-
When true,
|
|
11858
|
-
|
|
11864
|
+
When true, the result also carries `masked`: the evaluated input with each detected
|
|
11865
|
+
value replaced by asterisks. The record itself is unchanged. With whole-record input
|
|
11866
|
+
(no `mapping`, and no top-level `text` field on the record), `masked` is the record
|
|
11867
|
+
serialized as one JSON string. When false, PII is flagged only.
|
|
11859
11868
|
x-celigo-ai-guidance:
|
|
11860
|
-
-
|
|
11869
|
+
- |-
|
|
11870
|
+
Masking doesn't rewrite the record. To pass masked text on, select the field as the
|
|
11871
|
+
`text` input (`mapping`) and response-map `masked` back onto that field on the
|
|
11872
|
+
guardrail's flow step (`{"extract": "masked", "generate": "<field>"}`).
|
|
11861
11873
|
moderation:
|
|
11862
11874
|
type: object
|
|
11863
11875
|
required:
|
|
@@ -12492,19 +12504,27 @@ components:
|
|
|
12492
12504
|
properties:
|
|
12493
12505
|
function:
|
|
12494
12506
|
type: string
|
|
12495
|
-
description:
|
|
12507
|
+
description: |-
|
|
12508
|
+
Function to invoke: one in the script named by `_scriptId`, or one the code deployed on
|
|
12509
|
+
the stack named by `_stackId` exposes.
|
|
12496
12510
|
examples:
|
|
12497
12511
|
- transformRecords
|
|
12498
12512
|
_scriptId:
|
|
12499
12513
|
type: string
|
|
12500
12514
|
format: objectId
|
|
12501
12515
|
x-celigo-refModel: scripts
|
|
12502
|
-
description: Script containing the hook function named in `function`.
|
|
12516
|
+
description: Script containing the hook function named in `function`. Send this or `_stackId`, not both.
|
|
12503
12517
|
_stackId:
|
|
12504
12518
|
type: string
|
|
12505
12519
|
format: objectId
|
|
12506
12520
|
x-celigo-refModel: stacks
|
|
12507
|
-
description:
|
|
12521
|
+
description: |-
|
|
12522
|
+
Stack that hosts the hook logic, used instead of a script for stack-based deployments.
|
|
12523
|
+
The API doesn't enforce the either/or: a save carrying both `_scriptId` and `_stackId`
|
|
12524
|
+
answers 200 and stores both, and the script and the stack then each list the step as a
|
|
12525
|
+
dependent.
|
|
12526
|
+
x-celigo-ai-guidance:
|
|
12527
|
+
- When moving a hook onto a stack, remove `_scriptId` and set `function` to the stack's function in the same update.
|
|
12508
12528
|
configuration:
|
|
12509
12529
|
type:
|
|
12510
12530
|
- object
|
package/dist/integration.yml
CHANGED
|
@@ -547,6 +547,8 @@ paths:
|
|
|
547
547
|
description: |-
|
|
548
548
|
Returns every revision entry (snapshots, pulls, reverts) for the integration, newest first.
|
|
549
549
|
An integration with no revision history returns an empty response (204), not `[]`.
|
|
550
|
+
x-celigo-ai-guidance:
|
|
551
|
+
- To roll back a pull, find its revision here (its diff shows what it changed) and have the user revert it in the integration's Revisions tab with **Revert to before this revision**. The API can't start a revert, and writing old values back to the resources by hand misses what the pull created or deleted and records no revert.
|
|
550
552
|
parameters:
|
|
551
553
|
- name: _id
|
|
552
554
|
in: path
|
|
@@ -4698,8 +4700,8 @@ components:
|
|
|
4698
4700
|
- pull
|
|
4699
4701
|
- revert
|
|
4700
4702
|
x-enumDescriptions:
|
|
4701
|
-
snapshot: Point-in-time capture of the current integration state.
|
|
4702
|
-
pull: Changes pulled in from a related integration in another environment or clone.
|
|
4703
|
+
snapshot: Point-in-time capture of the current integration state, taken when a user (or `POST /v1/integrations/{_id}/revisions/create`) asks for one.
|
|
4704
|
+
pull: Changes pulled in from a related integration in another environment or clone. The pull's own revision keeps the state from before and after the merge (`beforeRevisionHash`, `afterRevisionHash`); no separate snapshot revisions are written for it.
|
|
4703
4705
|
revert: Restoration of the integration to a prior revision state.
|
|
4704
4706
|
status:
|
|
4705
4707
|
type: string
|
|
@@ -4724,7 +4726,11 @@ components:
|
|
|
4724
4726
|
- Stable baseline before deploying v2
|
|
4725
4727
|
beforeRevisionHash:
|
|
4726
4728
|
type: string
|
|
4727
|
-
description:
|
|
4729
|
+
description: |-
|
|
4730
|
+
Content hash of the integration state prior to this revision. On a `pull` it is the
|
|
4731
|
+
restore point that the Revisions tab's **Revert to before this revision** returns to:
|
|
4732
|
+
the revert names the pull in `_revertToRevisionId` and copies this hash into
|
|
4733
|
+
`revertToRevisionHash`.
|
|
4728
4734
|
examples:
|
|
4729
4735
|
- 34b7ae8d56563e242bc0bd42fd28874442657e58
|
|
4730
4736
|
transactionHash:
|
package/dist/mcp-server.yml
CHANGED
|
@@ -5139,7 +5139,12 @@ components:
|
|
|
5139
5139
|
type: boolean
|
|
5140
5140
|
description: |
|
|
5141
5141
|
When true, uses iClient-managed OAuth credentials (clientId/clientSecret)
|
|
5142
|
-
instead of the values in this configuration.
|
|
5142
|
+
instead of the values in this configuration. The iClient is the connection's
|
|
5143
|
+
`_iClientId` — on an HTTP connection `http._iClientId`, beside `auth`, not inside it —
|
|
5144
|
+
and it also supplies the grant type and the authorization and token endpoints, so a
|
|
5145
|
+
create needs only `auth.type: "oauth"`, `auth.oauth.useIClientFields: true` and the
|
|
5146
|
+
iClient id. The connection holds no tokens until a person completes the authorization
|
|
5147
|
+
in a browser.
|
|
5143
5148
|
oauth1:
|
|
5144
5149
|
type: object
|
|
5145
5150
|
description: |-
|
|
@@ -5268,7 +5273,7 @@ components:
|
|
|
5268
5273
|
x-celigo-ai-guidance:
|
|
5269
5274
|
- |-
|
|
5270
5275
|
## OAUTH 2.0 GRANT TYPES
|
|
5271
|
-
- "
|
|
5276
|
+
- "authorizecode" — Authorization Code flow (browser-based user consent).
|
|
5272
5277
|
Requires authURI, tokenURI, and user authorization via browser.
|
|
5273
5278
|
- "clientcredentials" — Client Credentials flow (server-to-server, no user).
|
|
5274
5279
|
Requires tokenURI, clientId, clientSecret.
|
|
@@ -5859,7 +5864,11 @@ components:
|
|
|
5859
5864
|
description: |
|
|
5860
5865
|
The API key or bearer token value (encrypted at rest); returned masked as `"******"`.
|
|
5861
5866
|
On update, the mask sent back keeps the stored token; a new value replaces it.
|
|
5862
|
-
Required unless automatic token refresh is configured
|
|
5867
|
+
Required unless automatic token refresh is configured: a token block without a
|
|
5868
|
+
token must carry a `refreshMethod`, so a create or update that sends neither fails
|
|
5869
|
+
with 422 `Expected field: refreshMethod to be present.` To create a static-token
|
|
5870
|
+
connection before the real token is available, send a placeholder value and
|
|
5871
|
+
replace it later.
|
|
5863
5872
|
examples:
|
|
5864
5873
|
- my-api-token-EXAMPLE
|
|
5865
5874
|
location:
|
|
@@ -8065,7 +8074,11 @@ components:
|
|
|
8065
8074
|
description: |
|
|
8066
8075
|
The API key or bearer token value (encrypted at rest); returned masked as `"******"`.
|
|
8067
8076
|
On update, the mask sent back keeps the stored token; a new value replaces it.
|
|
8068
|
-
Required unless automatic token refresh is configured
|
|
8077
|
+
Required unless automatic token refresh is configured: a token block without a
|
|
8078
|
+
token must carry a `refreshMethod`, so a create or update that sends neither fails
|
|
8079
|
+
with 422 `Expected field: refreshMethod to be present.` To create a static-token
|
|
8080
|
+
connection before the real token is available, send a placeholder value and
|
|
8081
|
+
replace it later.
|
|
8069
8082
|
examples:
|
|
8070
8083
|
- my-api-token-EXAMPLE
|
|
8071
8084
|
location:
|
package/dist/template.yml
CHANGED
|
@@ -331,9 +331,20 @@ paths:
|
|
|
331
331
|
Check `type` on the `GET /v1/templates/{_id}/preview` response first.
|
|
332
332
|
|
|
333
333
|
This one-shot install doesn't run a template's own install steps. A
|
|
334
|
-
template whose preview `Integration` object lists `
|
|
335
|
-
|
|
336
|
-
|
|
334
|
+
template whose preview `Integration` object lists a `template_zip`
|
|
335
|
+
install step (most published templates have one) is refused with 422
|
|
336
|
+
and nothing is created; install it from the integrator.io marketplace,
|
|
337
|
+
whose installer runs those steps.
|
|
338
|
+
|
|
339
|
+
Every request that reaches the platform starts a new install — there is
|
|
340
|
+
no idempotency key, so a retry after a timeout or an ambiguous failure
|
|
341
|
+
creates a second integration with its own flows, exports and imports.
|
|
342
|
+
Before retrying, look for the integration the first request created: one
|
|
343
|
+
carrying this template's `_templateId`, named like the preview's
|
|
344
|
+
`Integration` object, with a `createdAt` near the request.
|
|
345
|
+
x-celigo-ai-guidance:
|
|
346
|
+
- Read `GET /v1/templates/{_id}/preview` first. Every `Connection` object's `_id` must be a key of `connectionMap`, and an `installSteps` entry with `type` `template_zip` on the `Integration` object means this endpoint refuses the template — send the user to the marketplace installer instead.
|
|
347
|
+
- Never retry this POST after a timeout or an ambiguous failure without first listing integrations for one carrying this template's `_templateId`, created by the earlier request. If it exists, the install went through; a second request installs a duplicate.
|
|
337
348
|
parameters:
|
|
338
349
|
- name: _id
|
|
339
350
|
in: path
|
|
@@ -446,8 +457,8 @@ paths:
|
|
|
446
457
|
'422':
|
|
447
458
|
description: |-
|
|
448
459
|
Connection IDs in `connectionMap` do not match the template's
|
|
449
|
-
expected connection IDs, or the template
|
|
450
|
-
|
|
460
|
+
expected connection IDs, or the template's install steps include a
|
|
461
|
+
`template_zip` step, which this install doesn't run. Nothing is created.
|
|
451
462
|
content:
|
|
452
463
|
application/json:
|
|
453
464
|
schema:
|