@celigo/api-specs 0.2.213 → 0.2.215
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/agent.yml +34 -0
- package/dist/agentgroup.yml +1026 -0
- package/dist/ai-agent.yml +39 -18
- package/dist/api.yml +81 -41
- package/dist/asynchelper.yml +39 -18
- package/dist/connection.yml +80 -33
- package/dist/enduser.yml +42 -23
- package/dist/export.yml +72 -21
- package/dist/flow.yml +37 -15
- package/dist/import.yml +39 -18
- package/dist/mcp-server.yml +42 -23
- package/dist/processor.yml +31 -3
- package/dist/subscription.yml +13 -7
- package/dist/tool.yml +114 -44
- package/package.json +1 -1
- package/schemas.json +857 -836
package/dist/ai-agent.yml
CHANGED
|
@@ -5679,12 +5679,16 @@ components:
|
|
|
5679
5679
|
- |-
|
|
5680
5680
|
On a grouped record (the export groups rows, so the record is an
|
|
5681
5681
|
array) only `create` can author output — build it from the rows with
|
|
5682
|
-
`$[0].field`, `$[*].field`, or a `buildArrayHelper` over `$[*]
|
|
5682
|
+
`$[0].field`, `$[*].field`, or a `buildArrayHelper` over `$[*]`
|
|
5683
|
+
(`$.rows[0].field` and `$.rows[*]` with `inputContext: envelope`).
|
|
5683
5684
|
`modify` has no object to overlay onto an array: the record passes
|
|
5684
|
-
through untouched and the processor reports success.
|
|
5685
|
-
|
|
5686
|
-
|
|
5687
|
-
|
|
5685
|
+
through untouched and the processor reports success. Paths written
|
|
5686
|
+
for one object record (`$.field`, an entry `$.lines[*]`) resolve
|
|
5687
|
+
nothing there, so `create` returns `{}` for each record, also with
|
|
5688
|
+
no error (live, 2026-10-30). Either mode reshapes the inside of one
|
|
5689
|
+
record; neither changes how many records the page carries (that is
|
|
5690
|
+
the export's `preSavePage` hook) or whether the export groups at all
|
|
5691
|
+
(that is its grouping setting).
|
|
5688
5692
|
examples:
|
|
5689
5693
|
- create
|
|
5690
5694
|
- modify
|
|
@@ -5749,8 +5753,8 @@ components:
|
|
|
5749
5753
|
- record
|
|
5750
5754
|
- envelope
|
|
5751
5755
|
x-enumDescriptions:
|
|
5752
|
-
record: The transform processor evaluates `mappings[].extract` JSONPath against the flat record itself (`$.field`, no `record.` segment) — the default when absent.
|
|
5753
|
-
envelope: The transform processor evaluates JSONPath against the wrapped runtime envelope `{record, job, testMode, settings, headers, queryParams}` (file-provider steps also carry `fileMeta`) — record fields need the `record.` segment (`$.record.field`), while `headers` and `queryParams` sit beside `record` (`$.headers['X-Id']`, `$.queryParams.src`).
|
|
5756
|
+
record: The transform processor evaluates `mappings[].extract` JSONPath against the flat record itself (`$.field`, no `record.` segment; a grouped record is the array of rows, `$[0].field`) — the default when absent.
|
|
5757
|
+
envelope: The transform processor evaluates JSONPath against the wrapped runtime envelope `{record, job, testMode, settings, headers, queryParams}` (file-provider steps also carry `fileMeta`) — record fields need the `record.` segment (`$.record.field`), and a grouped record sits under `rows` instead (`$.rows[0].field`), while `headers` and `queryParams` sit beside `record` (`$.headers['X-Id']`, `$.queryParams.src`).
|
|
5754
5758
|
description: |
|
|
5755
5759
|
Controls the JSON shape the transformTwoDotZero processor
|
|
5756
5760
|
evaluates `mappings[].extract` JSONPath values against at
|
|
@@ -5766,24 +5770,38 @@ components:
|
|
|
5766
5770
|
processor sees the FLAT record as its evaluation root.
|
|
5767
5771
|
`mappings[].extract` JSONPath MUST anchor directly at
|
|
5768
5772
|
`$` with NO `record.` segment — e.g. `"$.orderId"`,
|
|
5769
|
-
`"$.customer.email"
|
|
5773
|
+
`"$.customer.email"` on an object record, `"$[0].orderId"`
|
|
5774
|
+
on a grouped one; PLACEHOLDER extracts use
|
|
5770
5775
|
`"$.PLACEHOLDER_<field>"`.
|
|
5771
5776
|
This is the dominant Celigo idiom and the right choice for new transforms.
|
|
5772
5777
|
- `envelope`: the processor sees a wrapped object
|
|
5773
5778
|
`{record: {...}, job, testMode, settings, headers,
|
|
5774
5779
|
queryParams}` (plus `fileMeta` on file-provider steps).
|
|
5775
5780
|
`mappings[].extract` JSONPath MUST include the
|
|
5776
|
-
`record.` segment for record fields — e.g.
|
|
5777
|
-
`"$.record.orderId"
|
|
5781
|
+
`record.` segment for an object record's fields — e.g.
|
|
5782
|
+
`"$.record.orderId"`; a grouped record sits under `rows`
|
|
5783
|
+
instead (`"$.rows[0].orderId"`) — and reads `headers` and
|
|
5778
5784
|
`queryParams` beside it (`$.headers['X-Id']`);
|
|
5779
5785
|
PLACEHOLDER extracts use `"$.record.PLACEHOLDER_<field>"`.
|
|
5780
5786
|
Pick this only when the transform was authored against
|
|
5781
5787
|
the envelope shape on purpose.
|
|
5782
5788
|
- |-
|
|
5783
|
-
Handlebars expressions inside `extract`
|
|
5784
|
-
|
|
5785
|
-
|
|
5789
|
+
Handlebars expressions inside `extract` reference the
|
|
5790
|
+
`record` root on an object record (`{{record.field}}`,
|
|
5791
|
+
`{{dateFormat ... record.field}}`) and `rows` on a
|
|
5792
|
+
grouped one (`{{rows.0.field}}`), regardless of
|
|
5786
5793
|
`inputContext` — only JSONPath anchoring flips.
|
|
5794
|
+
- |-
|
|
5795
|
+
## Grouped records
|
|
5796
|
+
|
|
5797
|
+
When the export groups rows, each record is an array of
|
|
5798
|
+
rows. In `record` mode JSONPath roots at that array
|
|
5799
|
+
(`$[0].field`, `$[*]`); `envelope` binds it as `rows`,
|
|
5800
|
+
not `record` — `$.rows[0].field`, and an entry
|
|
5801
|
+
`$.rows[*]` whose children read `$.rows.field` — while
|
|
5802
|
+
`$.record[0].field` and `$.record[*]` resolve nothing,
|
|
5803
|
+
with no error (live, 2026-10-30). Handlebars extracts
|
|
5804
|
+
read it as `rows` in both modes (`{{rows.0.field}}`).
|
|
5787
5805
|
- |-
|
|
5788
5806
|
In `envelope` mode the output is still a bare record: a
|
|
5789
5807
|
`modify` transform returns the record with its mapped
|
|
@@ -5804,7 +5822,8 @@ components:
|
|
|
5804
5822
|
``mappings[].extract`` JSONPath values MUST anchor
|
|
5805
5823
|
directly at ``$`` with NO ``record.`` segment — for
|
|
5806
5824
|
example ``"$.orderId"`` or
|
|
5807
|
-
``"$.customer.email"
|
|
5825
|
+
``"$.customer.email"`` on an object record, and
|
|
5826
|
+
``"$[0].orderId"`` on a grouped one. PLACEHOLDER extracts use
|
|
5808
5827
|
``"$.PLACEHOLDER_<field>"``. This is the dominant
|
|
5809
5828
|
Celigo idiom and the right choice for new transforms.
|
|
5810
5829
|
|
|
@@ -5816,9 +5835,10 @@ components:
|
|
|
5816
5835
|
``record``) — the
|
|
5817
5836
|
same runtime-context envelope Handlebars / SQL /
|
|
5818
5837
|
GraphQL templates render against. ``mappings[].extract``
|
|
5819
|
-
JSONPath values for record fields MUST include the
|
|
5838
|
+
JSONPath values for an object record's fields MUST include the
|
|
5820
5839
|
``record.`` segment — for example ``"$.record.orderId"``
|
|
5821
|
-
or ``"$.record.customer.email"
|
|
5840
|
+
or ``"$.record.customer.email"``; a grouped record's rows
|
|
5841
|
+
sit under ``rows`` instead (``"$.rows[0].orderId"``) — while ``headers`` and
|
|
5822
5842
|
``queryParams`` are read beside it
|
|
5823
5843
|
(``"$.headers['X-Id']"``). PLACEHOLDER extracts
|
|
5824
5844
|
use ``"$.record.PLACEHOLDER_<field>"``. Pick this
|
|
@@ -5831,8 +5851,9 @@ components:
|
|
|
5831
5851
|
|
|
5832
5852
|
Handlebars expressions inside ``extract``
|
|
5833
5853
|
(``{{record.field}}``,
|
|
5834
|
-
``{{dateFormat ... record.field}}``, etc.)
|
|
5835
|
-
|
|
5854
|
+
``{{dateFormat ... record.field}}``, etc.) reference the
|
|
5855
|
+
runtime context's ``record`` root on an object record,
|
|
5856
|
+
and ``rows`` (``{{rows.0.field}}``) on a grouped one,
|
|
5836
5857
|
regardless of ``inputContext`` — the Handlebars runtime
|
|
5837
5858
|
always sees the wrapped envelope. Only JSONPath
|
|
5838
5859
|
behavior flips with this field.
|
package/dist/api.yml
CHANGED
|
@@ -5263,12 +5263,16 @@ components:
|
|
|
5263
5263
|
- |-
|
|
5264
5264
|
On a grouped record (the export groups rows, so the record is an
|
|
5265
5265
|
array) only `create` can author output — build it from the rows with
|
|
5266
|
-
`$[0].field`, `$[*].field`, or a `buildArrayHelper` over `$[*]
|
|
5266
|
+
`$[0].field`, `$[*].field`, or a `buildArrayHelper` over `$[*]`
|
|
5267
|
+
(`$.rows[0].field` and `$.rows[*]` with `inputContext: envelope`).
|
|
5267
5268
|
`modify` has no object to overlay onto an array: the record passes
|
|
5268
|
-
through untouched and the processor reports success.
|
|
5269
|
-
|
|
5270
|
-
|
|
5271
|
-
|
|
5269
|
+
through untouched and the processor reports success. Paths written
|
|
5270
|
+
for one object record (`$.field`, an entry `$.lines[*]`) resolve
|
|
5271
|
+
nothing there, so `create` returns `{}` for each record, also with
|
|
5272
|
+
no error (live, 2026-10-30). Either mode reshapes the inside of one
|
|
5273
|
+
record; neither changes how many records the page carries (that is
|
|
5274
|
+
the export's `preSavePage` hook) or whether the export groups at all
|
|
5275
|
+
(that is its grouping setting).
|
|
5272
5276
|
examples:
|
|
5273
5277
|
- create
|
|
5274
5278
|
- modify
|
|
@@ -5333,8 +5337,8 @@ components:
|
|
|
5333
5337
|
- record
|
|
5334
5338
|
- envelope
|
|
5335
5339
|
x-enumDescriptions:
|
|
5336
|
-
record: The transform processor evaluates `mappings[].extract` JSONPath against the flat record itself (`$.field`, no `record.` segment) — the default when absent.
|
|
5337
|
-
envelope: The transform processor evaluates JSONPath against the wrapped runtime envelope `{record, job, testMode, settings, headers, queryParams}` (file-provider steps also carry `fileMeta`) — record fields need the `record.` segment (`$.record.field`), while `headers` and `queryParams` sit beside `record` (`$.headers['X-Id']`, `$.queryParams.src`).
|
|
5340
|
+
record: The transform processor evaluates `mappings[].extract` JSONPath against the flat record itself (`$.field`, no `record.` segment; a grouped record is the array of rows, `$[0].field`) — the default when absent.
|
|
5341
|
+
envelope: The transform processor evaluates JSONPath against the wrapped runtime envelope `{record, job, testMode, settings, headers, queryParams}` (file-provider steps also carry `fileMeta`) — record fields need the `record.` segment (`$.record.field`), and a grouped record sits under `rows` instead (`$.rows[0].field`), while `headers` and `queryParams` sit beside `record` (`$.headers['X-Id']`, `$.queryParams.src`).
|
|
5338
5342
|
description: |
|
|
5339
5343
|
Controls the JSON shape the transformTwoDotZero processor
|
|
5340
5344
|
evaluates `mappings[].extract` JSONPath values against at
|
|
@@ -5350,24 +5354,38 @@ components:
|
|
|
5350
5354
|
processor sees the FLAT record as its evaluation root.
|
|
5351
5355
|
`mappings[].extract` JSONPath MUST anchor directly at
|
|
5352
5356
|
`$` with NO `record.` segment — e.g. `"$.orderId"`,
|
|
5353
|
-
`"$.customer.email"
|
|
5357
|
+
`"$.customer.email"` on an object record, `"$[0].orderId"`
|
|
5358
|
+
on a grouped one; PLACEHOLDER extracts use
|
|
5354
5359
|
`"$.PLACEHOLDER_<field>"`.
|
|
5355
5360
|
This is the dominant Celigo idiom and the right choice for new transforms.
|
|
5356
5361
|
- `envelope`: the processor sees a wrapped object
|
|
5357
5362
|
`{record: {...}, job, testMode, settings, headers,
|
|
5358
5363
|
queryParams}` (plus `fileMeta` on file-provider steps).
|
|
5359
5364
|
`mappings[].extract` JSONPath MUST include the
|
|
5360
|
-
`record.` segment for record fields — e.g.
|
|
5361
|
-
`"$.record.orderId"
|
|
5365
|
+
`record.` segment for an object record's fields — e.g.
|
|
5366
|
+
`"$.record.orderId"`; a grouped record sits under `rows`
|
|
5367
|
+
instead (`"$.rows[0].orderId"`) — and reads `headers` and
|
|
5362
5368
|
`queryParams` beside it (`$.headers['X-Id']`);
|
|
5363
5369
|
PLACEHOLDER extracts use `"$.record.PLACEHOLDER_<field>"`.
|
|
5364
5370
|
Pick this only when the transform was authored against
|
|
5365
5371
|
the envelope shape on purpose.
|
|
5366
5372
|
- |-
|
|
5367
|
-
Handlebars expressions inside `extract`
|
|
5368
|
-
|
|
5369
|
-
|
|
5373
|
+
Handlebars expressions inside `extract` reference the
|
|
5374
|
+
`record` root on an object record (`{{record.field}}`,
|
|
5375
|
+
`{{dateFormat ... record.field}}`) and `rows` on a
|
|
5376
|
+
grouped one (`{{rows.0.field}}`), regardless of
|
|
5370
5377
|
`inputContext` — only JSONPath anchoring flips.
|
|
5378
|
+
- |-
|
|
5379
|
+
## Grouped records
|
|
5380
|
+
|
|
5381
|
+
When the export groups rows, each record is an array of
|
|
5382
|
+
rows. In `record` mode JSONPath roots at that array
|
|
5383
|
+
(`$[0].field`, `$[*]`); `envelope` binds it as `rows`,
|
|
5384
|
+
not `record` — `$.rows[0].field`, and an entry
|
|
5385
|
+
`$.rows[*]` whose children read `$.rows.field` — while
|
|
5386
|
+
`$.record[0].field` and `$.record[*]` resolve nothing,
|
|
5387
|
+
with no error (live, 2026-10-30). Handlebars extracts
|
|
5388
|
+
read it as `rows` in both modes (`{{rows.0.field}}`).
|
|
5371
5389
|
- |-
|
|
5372
5390
|
In `envelope` mode the output is still a bare record: a
|
|
5373
5391
|
`modify` transform returns the record with its mapped
|
|
@@ -5388,7 +5406,8 @@ components:
|
|
|
5388
5406
|
``mappings[].extract`` JSONPath values MUST anchor
|
|
5389
5407
|
directly at ``$`` with NO ``record.`` segment — for
|
|
5390
5408
|
example ``"$.orderId"`` or
|
|
5391
|
-
``"$.customer.email"
|
|
5409
|
+
``"$.customer.email"`` on an object record, and
|
|
5410
|
+
``"$[0].orderId"`` on a grouped one. PLACEHOLDER extracts use
|
|
5392
5411
|
``"$.PLACEHOLDER_<field>"``. This is the dominant
|
|
5393
5412
|
Celigo idiom and the right choice for new transforms.
|
|
5394
5413
|
|
|
@@ -5400,9 +5419,10 @@ components:
|
|
|
5400
5419
|
``record``) — the
|
|
5401
5420
|
same runtime-context envelope Handlebars / SQL /
|
|
5402
5421
|
GraphQL templates render against. ``mappings[].extract``
|
|
5403
|
-
JSONPath values for record fields MUST include the
|
|
5422
|
+
JSONPath values for an object record's fields MUST include the
|
|
5404
5423
|
``record.`` segment — for example ``"$.record.orderId"``
|
|
5405
|
-
or ``"$.record.customer.email"
|
|
5424
|
+
or ``"$.record.customer.email"``; a grouped record's rows
|
|
5425
|
+
sit under ``rows`` instead (``"$.rows[0].orderId"``) — while ``headers`` and
|
|
5406
5426
|
``queryParams`` are read beside it
|
|
5407
5427
|
(``"$.headers['X-Id']"``). PLACEHOLDER extracts
|
|
5408
5428
|
use ``"$.record.PLACEHOLDER_<field>"``. Pick this
|
|
@@ -5415,8 +5435,9 @@ components:
|
|
|
5415
5435
|
|
|
5416
5436
|
Handlebars expressions inside ``extract``
|
|
5417
5437
|
(``{{record.field}}``,
|
|
5418
|
-
``{{dateFormat ... record.field}}``, etc.)
|
|
5419
|
-
|
|
5438
|
+
``{{dateFormat ... record.field}}``, etc.) reference the
|
|
5439
|
+
runtime context's ``record`` root on an object record,
|
|
5440
|
+
and ``rows`` (``{{rows.0.field}}``) on a grouped one,
|
|
5420
5441
|
regardless of ``inputContext`` — the Handlebars runtime
|
|
5421
5442
|
always sees the wrapped envelope. Only JSONPath
|
|
5422
5443
|
behavior flips with this field.
|
|
@@ -8342,11 +8363,22 @@ components:
|
|
|
8342
8363
|
format: objectId
|
|
8343
8364
|
x-celigo-refModel: agents
|
|
8344
8365
|
description: |
|
|
8345
|
-
Reference to a Celigo on-premise Agent.
|
|
8346
|
-
|
|
8366
|
+
Reference to a Celigo on-premise Agent. Connection types that need local network or
|
|
8367
|
+
filesystem access (JDBC, filesystem, Oracle RDBMS, and on-premise MongoDB) carry one
|
|
8368
|
+
binding — this agent, or an agent group in `_agentGroupId`; never both.
|
|
8347
8369
|
The agent establishes a secure tunnel between the on-premise environment and integrator.io.
|
|
8348
8370
|
examples:
|
|
8349
8371
|
- 5f8d43a1b9e5a80011a35f2c
|
|
8372
|
+
_agentGroupId:
|
|
8373
|
+
type: string
|
|
8374
|
+
format: objectId
|
|
8375
|
+
x-celigo-refModel: agentgroups
|
|
8376
|
+
description: |-
|
|
8377
|
+
On-premise agent group serving this connection, when one is bound
|
|
8378
|
+
instead of a single `_agentId`. Absent on connections that use a
|
|
8379
|
+
single agent or none.
|
|
8380
|
+
examples:
|
|
8381
|
+
- 6650a1b2c3d4e5f60718293a
|
|
8350
8382
|
_borrowConcurrencyFromConnectionId:
|
|
8351
8383
|
type: string
|
|
8352
8384
|
format: objectId
|
|
@@ -11124,8 +11156,10 @@ components:
|
|
|
11124
11156
|
x-celigo-ai-guidance:
|
|
11125
11157
|
- The POST is rejected with 422 if type-specific required fields are missing (see the per-type conditional rules).
|
|
11126
11158
|
- |-
|
|
11127
|
-
For Oracle, a placeholder connection cannot be created without a real
|
|
11128
|
-
|
|
11159
|
+
For Oracle, a placeholder connection cannot be created without a real on-premise binding — a
|
|
11160
|
+
connection-level _agentId, or an agent group through _agentGroupId (validator error
|
|
11161
|
+
agent_mode_only with neither; live-verified that a POST carrying only _agentGroupId is not
|
|
11162
|
+
answered with it) — direct the user to install a Celigo Agent first. All other
|
|
11129
11163
|
RDBMS types accept placeholder credentials that satisfy the per-type required fields.
|
|
11130
11164
|
- |-
|
|
11131
11165
|
Celigo has native support for these database systems:
|
|
@@ -11176,16 +11210,17 @@ components:
|
|
|
11176
11210
|
`_iClientId` with `basic` auth is rejected. Both types share the
|
|
11177
11211
|
`mssql` sub-object; `azuresynapse` is cloud-only, and the SQL Server
|
|
11178
11212
|
connection form offers service-principal auth in Cloud mode only — it
|
|
11179
|
-
saves `basic` for an on-premise connection (`_agentId` set).
|
|
11180
|
-
- **Oracle** — runs in agent mode only, so requires
|
|
11181
|
-
parent connection object
|
|
11213
|
+
saves `basic` for an on-premise connection (`_agentId` or `_agentGroupId` set).
|
|
11214
|
+
- **Oracle** — runs in agent mode only, so requires an on-premise binding on
|
|
11215
|
+
the parent connection object: `_agentId`, or an agent group's `_agentGroupId`
|
|
11216
|
+
(one of the two, never both). Uses `serviceName` instead of `database`.
|
|
11182
11217
|
Optionally also takes `serverType` and `instanceName`.
|
|
11183
11218
|
|
|
11184
11219
|
## PLACEHOLDER / DUMMY RDBMS CONNECTIONS
|
|
11185
11220
|
|
|
11186
11221
|
For Oracle, placeholder connections cannot be created without a real
|
|
11187
|
-
`_agentId` — the validator will reject them. Direct the
|
|
11188
|
-
a Celigo Agent first. For all other RDBMS types, a placeholder can be
|
|
11222
|
+
`_agentId` or `_agentGroupId` — the validator will reject them. Direct the
|
|
11223
|
+
user to install a Celigo Agent first. For all other RDBMS types, a placeholder can be
|
|
11189
11224
|
created with dummy credentials matching the rules above.
|
|
11190
11225
|
x-celigo-ui-override: 'Several requireds mirror the connection form rather than the API: snowflake.warehouse, redshift.clusterIdentifier, redshift.user, and mssql version. The API creates connections without them (live-verified 201), but the form requires them and a functional connection needs them. For mysql, postgresql, and mariadb the form makes password conditional — not required when a full SSL client certificate (ssl.ca, ssl.key, ssl.cert) is supplied instead; the conditional below keeps password required for the common (non-SSL) path, which is the only path the API enforces.'
|
|
11191
11226
|
required:
|
|
@@ -11208,7 +11243,7 @@ components:
|
|
|
11208
11243
|
postgresql: PostgreSQL database (default port 5432).
|
|
11209
11244
|
mssql: Microsoft SQL Server (default port 1433).
|
|
11210
11245
|
snowflake: Snowflake Data Cloud (requires snowflake.warehouse).
|
|
11211
|
-
oracle: Oracle Database; runs in agent mode and requires a connection-level _agentId (default port 1521, uses serviceName instead of database).
|
|
11246
|
+
oracle: Oracle Database; runs in agent mode and requires a connection-level _agentId or _agentGroupId (default port 1521, uses serviceName instead of database).
|
|
11212
11247
|
bigquery: Google BigQuery; requires service account credentials in the bigquery sub-object.
|
|
11213
11248
|
redshift: Amazon Redshift — provisioned clusters or Redshift Serverless; authenticates with static access keys or an AWS IAM role iClient (redshift.authType).
|
|
11214
11249
|
mariadb: MariaDB database (default port 3306).
|
|
@@ -11433,7 +11468,7 @@ components:
|
|
|
11433
11468
|
iClient — a client secret, or on SQL Server a certificate — and
|
|
11434
11469
|
`_iClientId` must reference it. The SQL Server connection form
|
|
11435
11470
|
offers `azure-service-principal` in Cloud mode only and saves
|
|
11436
|
-
`basic` for an on-premise connection (`_agentId` set).
|
|
11471
|
+
`basic` for an on-premise connection (`_agentId` or `_agentGroupId` set).
|
|
11437
11472
|
default: basic
|
|
11438
11473
|
examples:
|
|
11439
11474
|
- basic
|
|
@@ -11899,9 +11934,9 @@ components:
|
|
|
11899
11934
|
422 "Expected field: <field> to be present" if any of the three is missing. database is not
|
|
11900
11935
|
required; when omitted, set it per operation instead.
|
|
11901
11936
|
- |-
|
|
11902
|
-
For an on-premise MongoDB instance,
|
|
11903
|
-
|
|
11904
|
-
need no agent.
|
|
11937
|
+
For an on-premise MongoDB instance, bind the connection to one agent (connection-level
|
|
11938
|
+
_agentId) or to one agent group (_agentGroupId) — the form's "On-premise" mode — so traffic
|
|
11939
|
+
routes through a Celigo Agent. Cloud-reachable instances (including Atlas) need no agent.
|
|
11905
11940
|
- |-
|
|
11906
11941
|
## AUTHENTICATION
|
|
11907
11942
|
Username and password are optional — only required when the MongoDB server has
|
|
@@ -12601,8 +12636,8 @@ components:
|
|
|
12601
12636
|
description: |-
|
|
12602
12637
|
Configuration for filesystem connections. Used when the connection type is "filesystem".
|
|
12603
12638
|
Provides access to directories on a Celigo on-premise Agent's host or mounted network
|
|
12604
|
-
drives, so
|
|
12605
|
-
this type. File-based PGP encryption/decryption is configured through the connection-level
|
|
12639
|
+
drives, so an on-premise binding is required — a connection-level `_agentId`, or an agent
|
|
12640
|
+
group through `_agentGroupId` — and cloud-only deployments cannot use this type. File-based PGP encryption/decryption is configured through the connection-level
|
|
12606
12641
|
`pgp` object.
|
|
12607
12642
|
properties:
|
|
12608
12643
|
ping:
|
|
@@ -12648,9 +12683,10 @@ components:
|
|
|
12648
12683
|
mounted network drives.
|
|
12649
12684
|
|
|
12650
12685
|
## AGENT REQUIREMENT
|
|
12651
|
-
A Celigo Agent is REQUIRED for filesystem connections
|
|
12652
|
-
|
|
12653
|
-
|
|
12686
|
+
A Celigo Agent is REQUIRED for filesystem connections: bind the parent connection
|
|
12687
|
+
object to one agent (_agentId) or to one agent group (_agentGroupId) — one of the
|
|
12688
|
+
two, never both. The agent provides the filesystem access — cloud-only deployments
|
|
12689
|
+
cannot use this connection type.
|
|
12654
12690
|
token:
|
|
12655
12691
|
type: object
|
|
12656
12692
|
description: |
|
|
@@ -13124,13 +13160,17 @@ components:
|
|
|
13124
13160
|
Configuration for JDBC (Java Database Connectivity) connections. Used when the connection
|
|
13125
13161
|
type is "jdbc". Provides access through Java JDBC drivers to databases not covered by the
|
|
13126
13162
|
rdbms type — such as NetSuite SuiteAnalytics, Databricks, DB2, and Workday. The driver runs
|
|
13127
|
-
on a Celigo on-premise Agent, so most jdbc connections need
|
|
13163
|
+
on a Celigo on-premise Agent, so most jdbc connections need an on-premise binding — a
|
|
13164
|
+
connection-level _agentId, or an agent group through _agentGroupId.
|
|
13128
13165
|
x-celigo-ai-guidance:
|
|
13129
13166
|
- The POST is rejected with 422 if type-specific required fields are missing (see the per-type conditional rules).
|
|
13130
13167
|
- |-
|
|
13131
|
-
The agent and activedirectory types require a real
|
|
13132
|
-
|
|
13133
|
-
|
|
13168
|
+
The agent and activedirectory types require a real on-premise binding — a connection-level
|
|
13169
|
+
_agentId, or an agent group through _agentGroupId (one of the two, never both; the agent-mode
|
|
13170
|
+
check accepts either — live-verified for both agent and activedirectory: a POST carrying only
|
|
13171
|
+
_agentGroupId is not answered with agent_mode_only): with neither, the POST fails with 422 "The JDBC
|
|
13172
|
+
connection requires Agent. Expected field: _agentId to be present in the connection doc." A
|
|
13173
|
+
placeholder cannot be created without one, so the user should install a Celigo Agent first.
|
|
13134
13174
|
Other types commonly run on an agent too, but only these two are validator-enforced (live-verified
|
|
13135
13175
|
celigo-labs-2 2026-06-11).
|
|
13136
13176
|
x-celigo-ui-override: 'Two activedirectory requireds mirror the connection form rather than the API: password and port (default 389). The API creates an activedirectory connection without them (it auto-defaults port to 389), but the form requires both, so they are encoded to mirror the form. The workday user and password requireds are NOT form overrides — they are enforced by the API itself (POST returns 422 "Expected field: user/password to be present"). Per-type forms also require named entries inside jdbc.properties (netsuitejdbc AccountID + ServerDataSource; db2 AuthScheme; workday tenant/connectionType/authScheme; activedirectory LDAPVersion/BaseDN) — documented in prose since they live in the properties name/value array.'
|
package/dist/asynchelper.yml
CHANGED
|
@@ -3158,12 +3158,16 @@ components:
|
|
|
3158
3158
|
- |-
|
|
3159
3159
|
On a grouped record (the export groups rows, so the record is an
|
|
3160
3160
|
array) only `create` can author output — build it from the rows with
|
|
3161
|
-
`$[0].field`, `$[*].field`, or a `buildArrayHelper` over `$[*]
|
|
3161
|
+
`$[0].field`, `$[*].field`, or a `buildArrayHelper` over `$[*]`
|
|
3162
|
+
(`$.rows[0].field` and `$.rows[*]` with `inputContext: envelope`).
|
|
3162
3163
|
`modify` has no object to overlay onto an array: the record passes
|
|
3163
|
-
through untouched and the processor reports success.
|
|
3164
|
-
|
|
3165
|
-
|
|
3166
|
-
|
|
3164
|
+
through untouched and the processor reports success. Paths written
|
|
3165
|
+
for one object record (`$.field`, an entry `$.lines[*]`) resolve
|
|
3166
|
+
nothing there, so `create` returns `{}` for each record, also with
|
|
3167
|
+
no error (live, 2026-10-30). Either mode reshapes the inside of one
|
|
3168
|
+
record; neither changes how many records the page carries (that is
|
|
3169
|
+
the export's `preSavePage` hook) or whether the export groups at all
|
|
3170
|
+
(that is its grouping setting).
|
|
3167
3171
|
examples:
|
|
3168
3172
|
- create
|
|
3169
3173
|
- modify
|
|
@@ -3228,8 +3232,8 @@ components:
|
|
|
3228
3232
|
- record
|
|
3229
3233
|
- envelope
|
|
3230
3234
|
x-enumDescriptions:
|
|
3231
|
-
record: The transform processor evaluates `mappings[].extract` JSONPath against the flat record itself (`$.field`, no `record.` segment) — the default when absent.
|
|
3232
|
-
envelope: The transform processor evaluates JSONPath against the wrapped runtime envelope `{record, job, testMode, settings, headers, queryParams}` (file-provider steps also carry `fileMeta`) — record fields need the `record.` segment (`$.record.field`), while `headers` and `queryParams` sit beside `record` (`$.headers['X-Id']`, `$.queryParams.src`).
|
|
3235
|
+
record: The transform processor evaluates `mappings[].extract` JSONPath against the flat record itself (`$.field`, no `record.` segment; a grouped record is the array of rows, `$[0].field`) — the default when absent.
|
|
3236
|
+
envelope: The transform processor evaluates JSONPath against the wrapped runtime envelope `{record, job, testMode, settings, headers, queryParams}` (file-provider steps also carry `fileMeta`) — record fields need the `record.` segment (`$.record.field`), and a grouped record sits under `rows` instead (`$.rows[0].field`), while `headers` and `queryParams` sit beside `record` (`$.headers['X-Id']`, `$.queryParams.src`).
|
|
3233
3237
|
description: |
|
|
3234
3238
|
Controls the JSON shape the transformTwoDotZero processor
|
|
3235
3239
|
evaluates `mappings[].extract` JSONPath values against at
|
|
@@ -3245,24 +3249,38 @@ components:
|
|
|
3245
3249
|
processor sees the FLAT record as its evaluation root.
|
|
3246
3250
|
`mappings[].extract` JSONPath MUST anchor directly at
|
|
3247
3251
|
`$` with NO `record.` segment — e.g. `"$.orderId"`,
|
|
3248
|
-
`"$.customer.email"
|
|
3252
|
+
`"$.customer.email"` on an object record, `"$[0].orderId"`
|
|
3253
|
+
on a grouped one; PLACEHOLDER extracts use
|
|
3249
3254
|
`"$.PLACEHOLDER_<field>"`.
|
|
3250
3255
|
This is the dominant Celigo idiom and the right choice for new transforms.
|
|
3251
3256
|
- `envelope`: the processor sees a wrapped object
|
|
3252
3257
|
`{record: {...}, job, testMode, settings, headers,
|
|
3253
3258
|
queryParams}` (plus `fileMeta` on file-provider steps).
|
|
3254
3259
|
`mappings[].extract` JSONPath MUST include the
|
|
3255
|
-
`record.` segment for record fields — e.g.
|
|
3256
|
-
`"$.record.orderId"
|
|
3260
|
+
`record.` segment for an object record's fields — e.g.
|
|
3261
|
+
`"$.record.orderId"`; a grouped record sits under `rows`
|
|
3262
|
+
instead (`"$.rows[0].orderId"`) — and reads `headers` and
|
|
3257
3263
|
`queryParams` beside it (`$.headers['X-Id']`);
|
|
3258
3264
|
PLACEHOLDER extracts use `"$.record.PLACEHOLDER_<field>"`.
|
|
3259
3265
|
Pick this only when the transform was authored against
|
|
3260
3266
|
the envelope shape on purpose.
|
|
3261
3267
|
- |-
|
|
3262
|
-
Handlebars expressions inside `extract`
|
|
3263
|
-
|
|
3264
|
-
|
|
3268
|
+
Handlebars expressions inside `extract` reference the
|
|
3269
|
+
`record` root on an object record (`{{record.field}}`,
|
|
3270
|
+
`{{dateFormat ... record.field}}`) and `rows` on a
|
|
3271
|
+
grouped one (`{{rows.0.field}}`), regardless of
|
|
3265
3272
|
`inputContext` — only JSONPath anchoring flips.
|
|
3273
|
+
- |-
|
|
3274
|
+
## Grouped records
|
|
3275
|
+
|
|
3276
|
+
When the export groups rows, each record is an array of
|
|
3277
|
+
rows. In `record` mode JSONPath roots at that array
|
|
3278
|
+
(`$[0].field`, `$[*]`); `envelope` binds it as `rows`,
|
|
3279
|
+
not `record` — `$.rows[0].field`, and an entry
|
|
3280
|
+
`$.rows[*]` whose children read `$.rows.field` — while
|
|
3281
|
+
`$.record[0].field` and `$.record[*]` resolve nothing,
|
|
3282
|
+
with no error (live, 2026-10-30). Handlebars extracts
|
|
3283
|
+
read it as `rows` in both modes (`{{rows.0.field}}`).
|
|
3266
3284
|
- |-
|
|
3267
3285
|
In `envelope` mode the output is still a bare record: a
|
|
3268
3286
|
`modify` transform returns the record with its mapped
|
|
@@ -3283,7 +3301,8 @@ components:
|
|
|
3283
3301
|
``mappings[].extract`` JSONPath values MUST anchor
|
|
3284
3302
|
directly at ``$`` with NO ``record.`` segment — for
|
|
3285
3303
|
example ``"$.orderId"`` or
|
|
3286
|
-
``"$.customer.email"
|
|
3304
|
+
``"$.customer.email"`` on an object record, and
|
|
3305
|
+
``"$[0].orderId"`` on a grouped one. PLACEHOLDER extracts use
|
|
3287
3306
|
``"$.PLACEHOLDER_<field>"``. This is the dominant
|
|
3288
3307
|
Celigo idiom and the right choice for new transforms.
|
|
3289
3308
|
|
|
@@ -3295,9 +3314,10 @@ components:
|
|
|
3295
3314
|
``record``) — the
|
|
3296
3315
|
same runtime-context envelope Handlebars / SQL /
|
|
3297
3316
|
GraphQL templates render against. ``mappings[].extract``
|
|
3298
|
-
JSONPath values for record fields MUST include the
|
|
3317
|
+
JSONPath values for an object record's fields MUST include the
|
|
3299
3318
|
``record.`` segment — for example ``"$.record.orderId"``
|
|
3300
|
-
or ``"$.record.customer.email"
|
|
3319
|
+
or ``"$.record.customer.email"``; a grouped record's rows
|
|
3320
|
+
sit under ``rows`` instead (``"$.rows[0].orderId"``) — while ``headers`` and
|
|
3301
3321
|
``queryParams`` are read beside it
|
|
3302
3322
|
(``"$.headers['X-Id']"``). PLACEHOLDER extracts
|
|
3303
3323
|
use ``"$.record.PLACEHOLDER_<field>"``. Pick this
|
|
@@ -3310,8 +3330,9 @@ components:
|
|
|
3310
3330
|
|
|
3311
3331
|
Handlebars expressions inside ``extract``
|
|
3312
3332
|
(``{{record.field}}``,
|
|
3313
|
-
``{{dateFormat ... record.field}}``, etc.)
|
|
3314
|
-
|
|
3333
|
+
``{{dateFormat ... record.field}}``, etc.) reference the
|
|
3334
|
+
runtime context's ``record`` root on an object record,
|
|
3335
|
+
and ``rows`` (``{{rows.0.field}}``) on a grouped one,
|
|
3315
3336
|
regardless of ``inputContext`` — the Handlebars runtime
|
|
3316
3337
|
always sees the wrapped envelope. Only JSONPath
|
|
3317
3338
|
behavior flips with this field.
|