@celigo/api-specs 0.2.152 → 0.2.154
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 +58 -11
- package/dist/api.yml +21 -11
- package/dist/asynchelper.yml +58 -11
- package/dist/connection.yml +78 -22
- package/dist/enduser.yml +21 -11
- package/dist/export.yml +58 -11
- package/dist/guardrail.yml +1 -1
- package/dist/iclient.yml +10 -124
- package/dist/import.yml +91 -23
- package/dist/mcp-server.yml +21 -11
- package/dist/tool.yml +112 -34
- package/package.json +1 -1
- package/schemas.json +1 -1
package/dist/tool.yml
CHANGED
|
@@ -3638,6 +3638,12 @@ components:
|
|
|
3638
3638
|
- Examples: '$.customer.firstName', '$.items[0].price', '$.addresses[*].street',
|
|
3639
3639
|
'$[*].Tax' (every row of a grouped record)
|
|
3640
3640
|
- Wildcards like [*] extract multiple values/objects
|
|
3641
|
+
- A key that contains a dot needs bracket notation: `$['P.O. Number']` (or
|
|
3642
|
+
`$["P.O. Number"]`, `$.[P.O. Number]`). `$.P.O. Number` is read as a nested
|
|
3643
|
+
path: it maps nothing and the record still succeeds. Spaces, hyphens and `#`
|
|
3644
|
+
need no brackets (`$.Ship To Name`, `$.Tracking #`)
|
|
3645
|
+
- Filter expressions such as `$.items[?(@.active)]` fail the record with
|
|
3646
|
+
"Eval [?(expr)] prevented in JSONPath expression."
|
|
3641
3647
|
|
|
3642
3648
|
```json
|
|
3643
3649
|
"extract": "$.customer.addresses[*]" // Extracts all addresses
|
|
@@ -3826,6 +3832,12 @@ components:
|
|
|
3826
3832
|
**Usage**
|
|
3827
3833
|
|
|
3828
3834
|
The lookupName refers to a named lookup defined in the lookups array of the same resource.
|
|
3835
|
+
On an HTTP import that is `http.lookups`: a `lookups` array sent only at the top level
|
|
3836
|
+
is dropped on save. On an import, a name that matches no lookup fails every record
|
|
3837
|
+
with "Unable to find lookup in mapping configs - <name>", and a key the lookup
|
|
3838
|
+
doesn't hold follows the lookup's `allowFailures`: false fails the record; true, or
|
|
3839
|
+
the field left out, lets the record succeed with the lookup's `default`, or without
|
|
3840
|
+
the mapped field when there is none.
|
|
3829
3841
|
|
|
3830
3842
|
```json
|
|
3831
3843
|
{
|
|
@@ -4163,6 +4175,11 @@ components:
|
|
|
4163
4175
|
The system creates special composite objects during processing to maintain
|
|
4164
4176
|
hierarchical relationships, allowing easy access to both the current array item
|
|
4165
4177
|
and its parent contexts.
|
|
4178
|
+
|
|
4179
|
+
An iterating entry keeps the `[*]`: `$.line_items` without it yields one empty
|
|
4180
|
+
element per item, with no error. Child extracts drop the `[*]` but keep the
|
|
4181
|
+
array's path (`$.line_items.sku`); `$.line_items[*].sku` maps nothing, and an
|
|
4182
|
+
element-relative `$.sku` reads the record root instead of the element.
|
|
4166
4183
|
examples:
|
|
4167
4184
|
- $.items[*]
|
|
4168
4185
|
- $.order.lineItems[*]
|
|
@@ -4374,14 +4391,17 @@ components:
|
|
|
4374
4391
|
type: string
|
|
4375
4392
|
description: |
|
|
4376
4393
|
**Purpose**
|
|
4377
|
-
|
|
4394
|
+
Controls whether the mapping is applied. Send it on every mapping entry.
|
|
4378
4395
|
|
|
4379
4396
|
**Guidance**
|
|
4380
4397
|
Only `Active` rows run. `Draft` and `Inactive` rows keep their
|
|
4381
4398
|
configuration, are saved with minimal validation, and are skipped at
|
|
4382
4399
|
runtime and in preview; a non-Active parent skips its whole subtree
|
|
4383
|
-
whatever its children say.
|
|
4384
|
-
|
|
4400
|
+
whatever its children say. Imports (on save and in the mapper processor)
|
|
4401
|
+
and API response mappings reject a row missing this field (validation
|
|
4402
|
+
error: "Mapping object must have status field present."); a Tool's
|
|
4403
|
+
output mapping saves and runs one, which is why `required` doesn't
|
|
4404
|
+
list it.
|
|
4385
4405
|
x-celigo-ai-guidance:
|
|
4386
4406
|
- |-
|
|
4387
4407
|
Emit `"Active"` for mappings that should run; `"Draft"` is also
|
|
@@ -4704,6 +4724,12 @@ components:
|
|
|
4704
4724
|
- Examples: '$.customer.firstName', '$.items[0].price', '$.addresses[*].street',
|
|
4705
4725
|
'$[*].Tax' (every row of a grouped record)
|
|
4706
4726
|
- Wildcards like [*] extract multiple values/objects
|
|
4727
|
+
- A key that contains a dot needs bracket notation: `$['P.O. Number']` (or
|
|
4728
|
+
`$["P.O. Number"]`, `$.[P.O. Number]`). `$.P.O. Number` is read as a nested
|
|
4729
|
+
path: it maps nothing and the record still succeeds. Spaces, hyphens and `#`
|
|
4730
|
+
need no brackets (`$.Ship To Name`, `$.Tracking #`)
|
|
4731
|
+
- Filter expressions such as `$.items[?(@.active)]` fail the record with
|
|
4732
|
+
"Eval [?(expr)] prevented in JSONPath expression."
|
|
4707
4733
|
|
|
4708
4734
|
```json
|
|
4709
4735
|
"extract": "$.customer.addresses[*]" // Extracts all addresses
|
|
@@ -4892,6 +4918,12 @@ components:
|
|
|
4892
4918
|
**Usage**
|
|
4893
4919
|
|
|
4894
4920
|
The lookupName refers to a named lookup defined in the lookups array of the same resource.
|
|
4921
|
+
On an HTTP import that is `http.lookups`: a `lookups` array sent only at the top level
|
|
4922
|
+
is dropped on save. On an import, a name that matches no lookup fails every record
|
|
4923
|
+
with "Unable to find lookup in mapping configs - <name>", and a key the lookup
|
|
4924
|
+
doesn't hold follows the lookup's `allowFailures`: false fails the record; true, or
|
|
4925
|
+
the field left out, lets the record succeed with the lookup's `default`, or without
|
|
4926
|
+
the mapped field when there is none.
|
|
4895
4927
|
|
|
4896
4928
|
```json
|
|
4897
4929
|
{
|
|
@@ -5229,6 +5261,11 @@ components:
|
|
|
5229
5261
|
The system creates special composite objects during processing to maintain
|
|
5230
5262
|
hierarchical relationships, allowing easy access to both the current array item
|
|
5231
5263
|
and its parent contexts.
|
|
5264
|
+
|
|
5265
|
+
An iterating entry keeps the `[*]`: `$.line_items` without it yields one empty
|
|
5266
|
+
element per item, with no error. Child extracts drop the `[*]` but keep the
|
|
5267
|
+
array's path (`$.line_items.sku`); `$.line_items[*].sku` maps nothing, and an
|
|
5268
|
+
element-relative `$.sku` reads the record root instead of the element.
|
|
5232
5269
|
examples:
|
|
5233
5270
|
- $.items[*]
|
|
5234
5271
|
- $.order.lineItems[*]
|
|
@@ -5440,14 +5477,17 @@ components:
|
|
|
5440
5477
|
type: string
|
|
5441
5478
|
description: |
|
|
5442
5479
|
**Purpose**
|
|
5443
|
-
|
|
5480
|
+
Controls whether the mapping is applied. Send it on every mapping entry.
|
|
5444
5481
|
|
|
5445
5482
|
**Guidance**
|
|
5446
5483
|
Only `Active` rows run. `Draft` and `Inactive` rows keep their
|
|
5447
5484
|
configuration, are saved with minimal validation, and are skipped at
|
|
5448
5485
|
runtime and in preview; a non-Active parent skips its whole subtree
|
|
5449
|
-
whatever its children say.
|
|
5450
|
-
|
|
5486
|
+
whatever its children say. Imports (on save and in the mapper processor)
|
|
5487
|
+
and API response mappings reject a row missing this field (validation
|
|
5488
|
+
error: "Mapping object must have status field present."); a Tool's
|
|
5489
|
+
output mapping saves and runs one, which is why `required` doesn't
|
|
5490
|
+
list it.
|
|
5451
5491
|
x-celigo-ai-guidance:
|
|
5452
5492
|
- |-
|
|
5453
5493
|
Emit `"Active"` for mappings that should run; `"Draft"` is also
|
|
@@ -5818,8 +5858,8 @@ components:
|
|
|
5818
5858
|
- Original value indicators: "{Original Value}", "No mapping found"
|
|
5819
5859
|
- Neutral values: "Other", "N/A", "Miscellaneous"
|
|
5820
5860
|
|
|
5821
|
-
If allowFailures is false
|
|
5822
|
-
|
|
5861
|
+
If allowFailures is false, a record whose value is unmapped fails and the default
|
|
5862
|
+
is ignored.
|
|
5823
5863
|
examples:
|
|
5824
5864
|
- Unknown
|
|
5825
5865
|
- Other
|
|
@@ -5840,7 +5880,11 @@ components:
|
|
|
5840
5880
|
This field determines how the system handles source values that don't exist in the map:
|
|
5841
5881
|
|
|
5842
5882
|
- true: Use the default value for missing mappings and continue processing
|
|
5843
|
-
- false: Treat missing mappings as errors, failing the record
|
|
5883
|
+
- false: Treat missing mappings as errors, failing the record (`lookup_error` for a
|
|
5884
|
+
static map, `lookupcache_evaluation_failed` for a lookup cache)
|
|
5885
|
+
- omitted or null: the record doesn't fail either. On an import a static lookup writes
|
|
5886
|
+
its default if it has one, and a static or cache lookup without one leaves the
|
|
5887
|
+
mapped field out of the output, with no error
|
|
5844
5888
|
|
|
5845
5889
|
**Recommendation**
|
|
5846
5890
|
|
|
@@ -5854,11 +5898,14 @@ components:
|
|
|
5854
5898
|
- All possible source values are known and controlled
|
|
5855
5899
|
- Missing mappings indicate serious data problems that should be addressed
|
|
5856
5900
|
|
|
5857
|
-
|
|
5858
|
-
|
|
5901
|
+
A default raises no error: records that miss go out with the default value and
|
|
5902
|
+
nothing reports them. Use true only when that fallback is acceptable at the
|
|
5903
|
+
destination, and set false explicitly when a missing value must stop the record.
|
|
5859
5904
|
examples:
|
|
5860
5905
|
- true
|
|
5861
5906
|
- false
|
|
5907
|
+
x-celigo-ai-guidance:
|
|
5908
|
+
- 'Never leave this field out to mean "fail on a miss": on an import, an omitted or null value lets a missing key through without an error (with the default, or without the mapped field when there is none). Only an explicit false fails the record.'
|
|
5862
5909
|
Transform:
|
|
5863
5910
|
type: object
|
|
5864
5911
|
description: |
|
|
@@ -7435,7 +7482,7 @@ components:
|
|
|
7435
7482
|
connection's traffic counts against the referenced connection's limit instead of its own,
|
|
7436
7483
|
and its own concurrency and auto-recovery settings have no effect. One level only: the
|
|
7437
7484
|
referenced connection may not itself borrow, and a connection that others borrow from
|
|
7438
|
-
cannot start borrowing.
|
|
7485
|
+
cannot start borrowing. A connection cannot reference itself (422).
|
|
7439
7486
|
examples:
|
|
7440
7487
|
- 615dfa0742763671275b70ab
|
|
7441
7488
|
x-celigo-ai-guidance:
|
|
@@ -7472,16 +7519,21 @@ components:
|
|
|
7472
7519
|
type: boolean
|
|
7473
7520
|
description: |-
|
|
7474
7521
|
When true, the connection has been taken offline and is skipped during flow execution.
|
|
7475
|
-
|
|
7476
|
-
|
|
7477
|
-
read it again a few
|
|
7522
|
+
It is set by the connection test a create or `PUT` runs: the result arrives in the
|
|
7523
|
+
write's response or, when the target is slow to answer, shortly afterwards (the audit
|
|
7524
|
+
log records a `system` change; `lastModified` doesn't move), so read it again a few
|
|
7525
|
+
seconds after the write. On an `http` connection the write runs the test only when
|
|
7526
|
+
`http.ping` is configured, and an `http` connection that was never tested has no
|
|
7527
|
+
`offline` key.
|
|
7478
7528
|
readOnly: true
|
|
7479
7529
|
needsAuthorization:
|
|
7480
7530
|
type: boolean
|
|
7481
7531
|
readOnly: true
|
|
7482
7532
|
description: |-
|
|
7483
7533
|
OAuth handshake state. Celigo's OAuth callback sets it to `false` once the user consents
|
|
7484
|
-
and the tokens are stored (see `GET /v1/connection/{_id}/oauth2`).
|
|
7534
|
+
and the tokens are stored (see `GET /v1/connection/{_id}/oauth2`). A connection that
|
|
7535
|
+
was never authorized usually has no `needsAuthorization` key, so its absence does not
|
|
7536
|
+
mean the connection is authorized.
|
|
7485
7537
|
_sourceId:
|
|
7486
7538
|
type: string
|
|
7487
7539
|
format: objectId
|
|
@@ -8456,15 +8508,18 @@ components:
|
|
|
8456
8508
|
clientId:
|
|
8457
8509
|
type: string
|
|
8458
8510
|
description: |
|
|
8459
|
-
OAuth client ID (application ID) registered with the API provider.
|
|
8460
|
-
|
|
8511
|
+
OAuth client ID (application ID) registered with the API provider. An `http`
|
|
8512
|
+
connection takes the app from a `custom_oauth2` iClient referenced by `http._iClientId`
|
|
8513
|
+
(an `mcp` connection from `mcp.http._iClientId`) and doesn't store this field: a create
|
|
8514
|
+
that sends `clientId` and `clientSecret` here answers 201 without either (and stores
|
|
8515
|
+
`useIClientFields: true` unless `false` is sent).
|
|
8461
8516
|
examples:
|
|
8462
8517
|
- 0oa1b2c3d4EXAMPLE5
|
|
8463
8518
|
clientSecret:
|
|
8464
8519
|
type: string
|
|
8465
8520
|
description: |
|
|
8466
|
-
OAuth client secret (encrypted at rest).
|
|
8467
|
-
|
|
8521
|
+
OAuth client secret (encrypted at rest). Not stored on an `http` connection: the secret
|
|
8522
|
+
belongs on the iClient (see `clientId`).
|
|
8468
8523
|
writeOnly: true
|
|
8469
8524
|
examples:
|
|
8470
8525
|
- cs_abc123EXAMPLE456secret
|
|
@@ -8680,9 +8735,11 @@ components:
|
|
|
8680
8735
|
- "authorizecode" — Authorization Code flow (browser-based user consent).
|
|
8681
8736
|
Requires authURI, tokenURI, and user authorization via browser.
|
|
8682
8737
|
- "clientcredentials" — Client Credentials flow (server-to-server, no user).
|
|
8683
|
-
Requires tokenURI
|
|
8738
|
+
Requires tokenURI.
|
|
8684
8739
|
- "password" — Resource Owner Password flow (username/password exchange).
|
|
8685
|
-
Requires tokenURI, username, password
|
|
8740
|
+
Requires tokenURI, username, password.
|
|
8741
|
+
- On an `http` connection the client ID and secret are never stored here: a
|
|
8742
|
+
`custom_oauth2` iClient referenced by `http._iClientId` supplies them.
|
|
8686
8743
|
JWT:
|
|
8687
8744
|
type: object
|
|
8688
8745
|
description: |-
|
|
@@ -14411,7 +14468,9 @@ components:
|
|
|
14411
14468
|
|
|
14412
14469
|
- **Field mappings** — a mapping entry sets
|
|
14413
14470
|
``lookupName: "<name>"`` to resolve a field's value through
|
|
14414
|
-
the lookup.
|
|
14471
|
+
the lookup. A ``lookupName`` that matches no entry in this
|
|
14472
|
+
array fails every record with ``Unable to find lookup in
|
|
14473
|
+
mapping configs - <name>``.
|
|
14415
14474
|
- **Handlebars expressions** — anywhere handlebars is
|
|
14416
14475
|
evaluated (relativeURI, headers, body), ``{{lookup "name"
|
|
14417
14476
|
value}}`` calls the lookup with ``value`` as input.
|
|
@@ -14425,9 +14484,13 @@ components:
|
|
|
14425
14484
|
## Mirror invariant
|
|
14426
14485
|
|
|
14427
14486
|
The Celigo platform persists lookups in TWO locations on an HTTP
|
|
14428
|
-
import: top-level ``lookups`` and ``http.lookups
|
|
14429
|
-
|
|
14430
|
-
|
|
14487
|
+
import: top-level ``lookups`` and ``http.lookups``, and
|
|
14488
|
+
``http.lookups`` is the copy that counts. A save keeps
|
|
14489
|
+
``http.lookups`` and mirrors it to the top level, overwriting a
|
|
14490
|
+
top-level copy that differs; a ``lookups`` array sent only at the
|
|
14491
|
+
top level is dropped with no error, on create and on PUT, and both
|
|
14492
|
+
arrays read back null. Write ``http.lookups`` on every save;
|
|
14493
|
+
sending the same array at the top level too is harmless.
|
|
14431
14494
|
- |-
|
|
14432
14495
|
## Static vs dynamic vs cached
|
|
14433
14496
|
|
|
@@ -14477,12 +14540,13 @@ components:
|
|
|
14477
14540
|
- handlebars
|
|
14478
14541
|
description: |
|
|
14479
14542
|
Request body template for POST / PUT / PATCH lookup methods, typically
|
|
14480
|
-
a JSON string with Handlebars placeholders (``{"email":"{{
|
|
14543
|
+
a JSON string with Handlebars placeholders (``{"email":"{{email}}"}``);
|
|
14481
14544
|
ignored for GET / DELETE. The record's fields sit at the top level:
|
|
14482
14545
|
``{{email}}`` renders the record's value, while ``{{record.email}}``
|
|
14483
14546
|
renders empty.
|
|
14484
14547
|
x-celigo-ai-guidance:
|
|
14485
14548
|
- 'Put the lookup''s request template here, not in ``postBody``: a ``postBody`` saves without an error but is not kept under ``http.lookups``, so the lookup goes out with no body and the run reports no error.'
|
|
14549
|
+
- 'Write string values with double braces inside the quotes (``"{{email}}"``): they are JSON-escaped at runtime. With triple braces a value holding a double quote breaks the request body, and the lookup quietly finds nothing, so an existence check writes the record as new.'
|
|
14486
14550
|
headers:
|
|
14487
14551
|
type: array
|
|
14488
14552
|
items:
|
|
@@ -14538,10 +14602,17 @@ components:
|
|
|
14538
14602
|
- boolean
|
|
14539
14603
|
- 'null'
|
|
14540
14604
|
description: |
|
|
14541
|
-
When true, a lookup miss (
|
|
14542
|
-
|
|
14543
|
-
|
|
14544
|
-
|
|
14605
|
+
When true, a lookup miss uses ``default`` (or leaves the mapped
|
|
14606
|
+
field out when there is none) and the record continues. When
|
|
14607
|
+
false, a miss fails the record: ``lookup_error`` ("Could not find
|
|
14608
|
+
value for static lookup: …") for a static ``map``,
|
|
14609
|
+
``lookupcache_evaluation_failed`` for a cache. Omitted or null,
|
|
14610
|
+
a miss doesn't fail the record either: a static lookup writes
|
|
14611
|
+
its ``default`` if it has one, and a lookup without one (static,
|
|
14612
|
+
cache, or a live request that matches nothing or fails) leaves
|
|
14613
|
+
the mapped field out.
|
|
14614
|
+
x-celigo-ai-guidance:
|
|
14615
|
+
- Set false explicitly when a miss must stop the record. Leaving the field out lets the record through with the default or without the looked-up value, so a destination that needs the real value gets a request without it and nothing errors.
|
|
14545
14616
|
useDefaultOnMultipleMatches:
|
|
14546
14617
|
type: boolean
|
|
14547
14618
|
description: |
|
|
@@ -24058,7 +24129,7 @@ components:
|
|
|
24058
24129
|
description: When true, the mapped value cannot be overwritten by later mapping steps.
|
|
24059
24130
|
lookupName:
|
|
24060
24131
|
type: string
|
|
24061
|
-
description: Name of an entry in the import's `lookups` array used to translate the value.
|
|
24132
|
+
description: Name of an entry in the import's `lookups` array (`http.lookups` on an HTTP import) used to translate the value.
|
|
24062
24133
|
x-celigo-ai-guidance:
|
|
24063
24134
|
- |-
|
|
24064
24135
|
Name of a lookup defined on ``resource.lookups`` whose result
|
|
@@ -25510,8 +25581,9 @@ components:
|
|
|
25510
25581
|
|
|
25511
25582
|
Lookups referenced by ``lookupName`` live on the top-level
|
|
25512
25583
|
``resource.lookups`` array (mirrored under the adaptor key for
|
|
25513
|
-
adaptors that maintain their own copy
|
|
25514
|
-
|
|
25584
|
+
adaptors that maintain their own copy; on an HTTP import that
|
|
25585
|
+
copy, ``http.lookups``, is the one a save keeps — see the mirror
|
|
25586
|
+
invariant on ``lookups``). Lookups are independent of this
|
|
25515
25587
|
mapping: they are neither created nor cleared automatically when
|
|
25516
25588
|
this mapping changes.
|
|
25517
25589
|
properties:
|
|
@@ -25630,6 +25702,12 @@ components:
|
|
|
25630
25702
|
|
|
25631
25703
|
Both arrays MUST hold byte-for-byte identical content: write
|
|
25632
25704
|
both on every save and treat them as a single logical field.
|
|
25705
|
+
On an HTTP import the adaptor copy decides: a save keeps
|
|
25706
|
+
``http.lookups`` and mirrors it here, overwriting a copy here
|
|
25707
|
+
that differs, and an array sent only here is dropped on create
|
|
25708
|
+
and on PUT with no error. A mapping row that names one of its
|
|
25709
|
+
lookups then fails every record with ``Unable to find lookup in
|
|
25710
|
+
mapping configs - <name>``.
|
|
25633
25711
|
- |-
|
|
25634
25712
|
## Shape
|
|
25635
25713
|
|
package/package.json
CHANGED