@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/flow.yml
CHANGED
|
@@ -2153,12 +2153,14 @@ paths:
|
|
|
2153
2153
|
|
|
2154
2154
|
The `data` field is the record as the failing stage held it: for an import-stage error
|
|
2155
2155
|
(`page_processor_import`) on an HTTP import, the record before the import's mappings, not the
|
|
2156
|
-
request the import sent; for a
|
|
2156
|
+
request the import sent; for a lookup's error (`page_processor_export`), the record as it reached
|
|
2157
|
+
the lookup; for a postResponseMap hook's error (`post_response_mapping`), the record
|
|
2157
2158
|
after the step's response mapping. Use `PUT .../{retryDataKey}/data` to mutate
|
|
2158
2159
|
the snapshot before retrying. Only errors with a `retryDataKey` expose this endpoint;
|
|
2159
2160
|
connection-class errors are rejected with `no_retrydata_found`. The `stage` field indicates
|
|
2160
2161
|
where the retry will resume: `page_processor_import` re-runs the import (most common, and where a
|
|
2161
|
-
postSubmit hook's errors are stored
|
|
2162
|
+
postSubmit hook's errors are stored — a retry writes again a record the destination accepted,
|
|
2163
|
+
and resends one whose refusal the hook reworded), `page_processor_export` re-runs the lookup,
|
|
2162
2164
|
`post_response_mapping` (a postResponseMap hook's error) resumes after the import from the stored
|
|
2163
2165
|
reply in `adaptorResponse`, sending nothing to the destination again and carrying the record on
|
|
2164
2166
|
to the flow's next steps, and `page_generator` means the error was upstream of the processor.
|
|
@@ -4342,6 +4344,10 @@ paths:
|
|
|
4342
4344
|
|
|
4343
4345
|
An empty object `{}` means no other resources depend on the target — this is also returned for a
|
|
4344
4346
|
well-formatted but nonexistent id.
|
|
4347
|
+
|
|
4348
|
+
A `flows` entry whose `paths` holds `_runNextFlowIds` is an upstream flow: its own
|
|
4349
|
+
`_runNextFlowIds` lists this flow, so this flow starts when a run of that one completes. The
|
|
4350
|
+
flows this flow starts are in its own `_runNextFlowIds`, not in this response.
|
|
4345
4351
|
parameters:
|
|
4346
4352
|
- name: _id
|
|
4347
4353
|
in: path
|
|
@@ -4364,7 +4370,7 @@ paths:
|
|
|
4364
4370
|
summary: No dependents (also returned for a nonexistent id)
|
|
4365
4371
|
value: {}
|
|
4366
4372
|
populated:
|
|
4367
|
-
summary: Another flow
|
|
4373
|
+
summary: Another flow starts this one when its run completes
|
|
4368
4374
|
value:
|
|
4369
4375
|
flows:
|
|
4370
4376
|
- id: 69f4b2cb95ec28be9ca1a88d
|
|
@@ -5847,9 +5853,11 @@ components:
|
|
|
5847
5853
|
- string
|
|
5848
5854
|
- 'null'
|
|
5849
5855
|
description: |-
|
|
5850
|
-
IANA timezone for the schedule (e.g. `America/New_York`).
|
|
5851
|
-
|
|
5852
|
-
|
|
5856
|
+
IANA timezone for the schedule (e.g. `America/New_York`). The flow's `schedule` and each
|
|
5857
|
+
page generator's own `schedule` are read in this timezone; a page generator has no
|
|
5858
|
+
timezone of its own. A flow saved without one stores none, and its schedule then runs in
|
|
5859
|
+
UTC when the account owner's profile has no time zone; per the Help Center's time zone
|
|
5860
|
+
precedence, it runs in the owner's profile time zone when the profile sets one.
|
|
5853
5861
|
examples:
|
|
5854
5862
|
- America/New_York
|
|
5855
5863
|
- Europe/London
|
|
@@ -6935,8 +6943,10 @@ components:
|
|
|
6935
6943
|
`application` covers the step's whole call to the external system, not only its answer:
|
|
6936
6944
|
besides errors the destination returned, it marks a request that never got an answer,
|
|
6937
6945
|
such as a URL template that failed to render (`handlebars_template_parse_error`) or a
|
|
6938
|
-
refused connection, so read `code` and `message` with it. `
|
|
6939
|
-
|
|
6946
|
+
refused connection, so read `code` and `message` with it. `post_submit_hook` marks an error
|
|
6947
|
+
a postSubmit hook added or reworded — a destination refusal included — while one the hook
|
|
6948
|
+
passes along unchanged keeps `application`, so it does not mean the destination accepted the
|
|
6949
|
+
record. `GET /v1/errors/filterMetadata` lists the source values the errors filter accepts.
|
|
6940
6950
|
examples:
|
|
6941
6951
|
- application
|
|
6942
6952
|
code:
|
|
@@ -7831,7 +7841,8 @@ components:
|
|
|
7831
7841
|
(an import's errors, a postSubmit hook's included) it is the incoming record, before the
|
|
7832
7842
|
import's mappings — not the request body the import sent or the response it got back — and a
|
|
7833
7843
|
retry maps it again with the import's current mappings, so a mapping fix reaches the retried
|
|
7834
|
-
record. At `
|
|
7844
|
+
record. At `page_processor_export` (a lookup's errors) it is the record as it reached the
|
|
7845
|
+
lookup. At `post_response_mapping` (a postResponseMap hook's error) it is the record after the
|
|
7835
7846
|
step's response mapping, with the mapped fields: a retry neither maps nor sends it again, and
|
|
7836
7847
|
the destination's reply is in `adaptorResponse`. Shape varies by adaptor.
|
|
7837
7848
|
additionalProperties: true
|
|
@@ -7840,14 +7851,25 @@ components:
|
|
|
7840
7851
|
description: |-
|
|
7841
7852
|
Pipeline stage where the record was when the error occurred, which is where a retry resumes.
|
|
7842
7853
|
`page_processor_import` is the record as it entered the import, so a retry sends it to the
|
|
7843
|
-
destination again
|
|
7844
|
-
the
|
|
7845
|
-
|
|
7846
|
-
the
|
|
7847
|
-
|
|
7848
|
-
|
|
7854
|
+
destination again. A postSubmit hook's errors are stored here whether the destination accepted
|
|
7855
|
+
the record or refused it and the hook reworded the refusal (live, 2026-10-30), so neither the
|
|
7856
|
+
stage nor the error's `post_submit_hook` source says whether the record was written: retrying
|
|
7857
|
+
an error the hook raised after the destination accepted the record writes it a second time
|
|
7858
|
+
(live, 2026-10-22), while a reworded refusal is a record the destination did not take.
|
|
7859
|
+
`page_processor_export` is a lookup's error: a retry runs the lookup again as it is configured
|
|
7860
|
+
now (live, 2026-10-30: after the lookup's template was fixed, the retried records succeeded).
|
|
7861
|
+
`post_response_mapping` is a postResponseMap hook's error, raised after the destination
|
|
7862
|
+
answered: a retry runs the hook from the stored reply and carries the record on to the flow's
|
|
7863
|
+
next steps, sending nothing to that destination again (live, 2026-10-23 and 2026-10-25: the
|
|
7864
|
+
import's request count didn't change, and the next import received the retried records).
|
|
7865
|
+
x-celigo-ai-guidance:
|
|
7866
|
+
- |-
|
|
7867
|
+
Before retrying `post_submit_hook` errors, find out whether the destination took each
|
|
7868
|
+
record — the hook's message, or a lookup of the record in the destination — and retry the
|
|
7869
|
+
refusals. A hook error on a record the destination accepted is written again by the retry.
|
|
7849
7870
|
examples:
|
|
7850
7871
|
- page_processor_import
|
|
7872
|
+
- page_processor_export
|
|
7851
7873
|
- post_response_mapping
|
|
7852
7874
|
- importMappingExtract
|
|
7853
7875
|
pgExportId:
|
package/dist/import.yml
CHANGED
|
@@ -15442,12 +15442,16 @@ components:
|
|
|
15442
15442
|
- |-
|
|
15443
15443
|
On a grouped record (the export groups rows, so the record is an
|
|
15444
15444
|
array) only `create` can author output — build it from the rows with
|
|
15445
|
-
`$[0].field`, `$[*].field`, or a `buildArrayHelper` over `$[*]
|
|
15445
|
+
`$[0].field`, `$[*].field`, or a `buildArrayHelper` over `$[*]`
|
|
15446
|
+
(`$.rows[0].field` and `$.rows[*]` with `inputContext: envelope`).
|
|
15446
15447
|
`modify` has no object to overlay onto an array: the record passes
|
|
15447
|
-
through untouched and the processor reports success.
|
|
15448
|
-
|
|
15449
|
-
|
|
15450
|
-
|
|
15448
|
+
through untouched and the processor reports success. Paths written
|
|
15449
|
+
for one object record (`$.field`, an entry `$.lines[*]`) resolve
|
|
15450
|
+
nothing there, so `create` returns `{}` for each record, also with
|
|
15451
|
+
no error (live, 2026-10-30). Either mode reshapes the inside of one
|
|
15452
|
+
record; neither changes how many records the page carries (that is
|
|
15453
|
+
the export's `preSavePage` hook) or whether the export groups at all
|
|
15454
|
+
(that is its grouping setting).
|
|
15451
15455
|
examples:
|
|
15452
15456
|
- create
|
|
15453
15457
|
- modify
|
|
@@ -15512,8 +15516,8 @@ components:
|
|
|
15512
15516
|
- record
|
|
15513
15517
|
- envelope
|
|
15514
15518
|
x-enumDescriptions:
|
|
15515
|
-
record: The transform processor evaluates `mappings[].extract` JSONPath against the flat record itself (`$.field`, no `record.` segment) — the default when absent.
|
|
15516
|
-
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`).
|
|
15519
|
+
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.
|
|
15520
|
+
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`).
|
|
15517
15521
|
description: |
|
|
15518
15522
|
Controls the JSON shape the transformTwoDotZero processor
|
|
15519
15523
|
evaluates `mappings[].extract` JSONPath values against at
|
|
@@ -15529,24 +15533,38 @@ components:
|
|
|
15529
15533
|
processor sees the FLAT record as its evaluation root.
|
|
15530
15534
|
`mappings[].extract` JSONPath MUST anchor directly at
|
|
15531
15535
|
`$` with NO `record.` segment — e.g. `"$.orderId"`,
|
|
15532
|
-
`"$.customer.email"
|
|
15536
|
+
`"$.customer.email"` on an object record, `"$[0].orderId"`
|
|
15537
|
+
on a grouped one; PLACEHOLDER extracts use
|
|
15533
15538
|
`"$.PLACEHOLDER_<field>"`.
|
|
15534
15539
|
This is the dominant Celigo idiom and the right choice for new transforms.
|
|
15535
15540
|
- `envelope`: the processor sees a wrapped object
|
|
15536
15541
|
`{record: {...}, job, testMode, settings, headers,
|
|
15537
15542
|
queryParams}` (plus `fileMeta` on file-provider steps).
|
|
15538
15543
|
`mappings[].extract` JSONPath MUST include the
|
|
15539
|
-
`record.` segment for record fields — e.g.
|
|
15540
|
-
`"$.record.orderId"
|
|
15544
|
+
`record.` segment for an object record's fields — e.g.
|
|
15545
|
+
`"$.record.orderId"`; a grouped record sits under `rows`
|
|
15546
|
+
instead (`"$.rows[0].orderId"`) — and reads `headers` and
|
|
15541
15547
|
`queryParams` beside it (`$.headers['X-Id']`);
|
|
15542
15548
|
PLACEHOLDER extracts use `"$.record.PLACEHOLDER_<field>"`.
|
|
15543
15549
|
Pick this only when the transform was authored against
|
|
15544
15550
|
the envelope shape on purpose.
|
|
15545
15551
|
- |-
|
|
15546
|
-
Handlebars expressions inside `extract`
|
|
15547
|
-
|
|
15548
|
-
|
|
15552
|
+
Handlebars expressions inside `extract` reference the
|
|
15553
|
+
`record` root on an object record (`{{record.field}}`,
|
|
15554
|
+
`{{dateFormat ... record.field}}`) and `rows` on a
|
|
15555
|
+
grouped one (`{{rows.0.field}}`), regardless of
|
|
15549
15556
|
`inputContext` — only JSONPath anchoring flips.
|
|
15557
|
+
- |-
|
|
15558
|
+
## Grouped records
|
|
15559
|
+
|
|
15560
|
+
When the export groups rows, each record is an array of
|
|
15561
|
+
rows. In `record` mode JSONPath roots at that array
|
|
15562
|
+
(`$[0].field`, `$[*]`); `envelope` binds it as `rows`,
|
|
15563
|
+
not `record` — `$.rows[0].field`, and an entry
|
|
15564
|
+
`$.rows[*]` whose children read `$.rows.field` — while
|
|
15565
|
+
`$.record[0].field` and `$.record[*]` resolve nothing,
|
|
15566
|
+
with no error (live, 2026-10-30). Handlebars extracts
|
|
15567
|
+
read it as `rows` in both modes (`{{rows.0.field}}`).
|
|
15550
15568
|
- |-
|
|
15551
15569
|
In `envelope` mode the output is still a bare record: a
|
|
15552
15570
|
`modify` transform returns the record with its mapped
|
|
@@ -15567,7 +15585,8 @@ components:
|
|
|
15567
15585
|
``mappings[].extract`` JSONPath values MUST anchor
|
|
15568
15586
|
directly at ``$`` with NO ``record.`` segment — for
|
|
15569
15587
|
example ``"$.orderId"`` or
|
|
15570
|
-
``"$.customer.email"
|
|
15588
|
+
``"$.customer.email"`` on an object record, and
|
|
15589
|
+
``"$[0].orderId"`` on a grouped one. PLACEHOLDER extracts use
|
|
15571
15590
|
``"$.PLACEHOLDER_<field>"``. This is the dominant
|
|
15572
15591
|
Celigo idiom and the right choice for new transforms.
|
|
15573
15592
|
|
|
@@ -15579,9 +15598,10 @@ components:
|
|
|
15579
15598
|
``record``) — the
|
|
15580
15599
|
same runtime-context envelope Handlebars / SQL /
|
|
15581
15600
|
GraphQL templates render against. ``mappings[].extract``
|
|
15582
|
-
JSONPath values for record fields MUST include the
|
|
15601
|
+
JSONPath values for an object record's fields MUST include the
|
|
15583
15602
|
``record.`` segment — for example ``"$.record.orderId"``
|
|
15584
|
-
or ``"$.record.customer.email"
|
|
15603
|
+
or ``"$.record.customer.email"``; a grouped record's rows
|
|
15604
|
+
sit under ``rows`` instead (``"$.rows[0].orderId"``) — while ``headers`` and
|
|
15585
15605
|
``queryParams`` are read beside it
|
|
15586
15606
|
(``"$.headers['X-Id']"``). PLACEHOLDER extracts
|
|
15587
15607
|
use ``"$.record.PLACEHOLDER_<field>"``. Pick this
|
|
@@ -15594,8 +15614,9 @@ components:
|
|
|
15594
15614
|
|
|
15595
15615
|
Handlebars expressions inside ``extract``
|
|
15596
15616
|
(``{{record.field}}``,
|
|
15597
|
-
``{{dateFormat ... record.field}}``, etc.)
|
|
15598
|
-
|
|
15617
|
+
``{{dateFormat ... record.field}}``, etc.) reference the
|
|
15618
|
+
runtime context's ``record`` root on an object record,
|
|
15619
|
+
and ``rows`` (``{{rows.0.field}}``) on a grouped one,
|
|
15599
15620
|
regardless of ``inputContext`` — the Handlebars runtime
|
|
15600
15621
|
always sees the wrapped envelope. Only JSONPath
|
|
15601
15622
|
behavior flips with this field.
|
package/dist/mcp-server.yml
CHANGED
|
@@ -5121,11 +5121,22 @@ components:
|
|
|
5121
5121
|
format: objectId
|
|
5122
5122
|
x-celigo-refModel: agents
|
|
5123
5123
|
description: |
|
|
5124
|
-
Reference to a Celigo on-premise Agent.
|
|
5125
|
-
|
|
5124
|
+
Reference to a Celigo on-premise Agent. Connection types that need local network or
|
|
5125
|
+
filesystem access (JDBC, filesystem, Oracle RDBMS, and on-premise MongoDB) carry one
|
|
5126
|
+
binding — this agent, or an agent group in `_agentGroupId`; never both.
|
|
5126
5127
|
The agent establishes a secure tunnel between the on-premise environment and integrator.io.
|
|
5127
5128
|
examples:
|
|
5128
5129
|
- 5f8d43a1b9e5a80011a35f2c
|
|
5130
|
+
_agentGroupId:
|
|
5131
|
+
type: string
|
|
5132
|
+
format: objectId
|
|
5133
|
+
x-celigo-refModel: agentgroups
|
|
5134
|
+
description: |-
|
|
5135
|
+
On-premise agent group serving this connection, when one is bound
|
|
5136
|
+
instead of a single `_agentId`. Absent on connections that use a
|
|
5137
|
+
single agent or none.
|
|
5138
|
+
examples:
|
|
5139
|
+
- 6650a1b2c3d4e5f60718293a
|
|
5129
5140
|
_borrowConcurrencyFromConnectionId:
|
|
5130
5141
|
type: string
|
|
5131
5142
|
format: objectId
|
|
@@ -7903,8 +7914,10 @@ components:
|
|
|
7903
7914
|
x-celigo-ai-guidance:
|
|
7904
7915
|
- The POST is rejected with 422 if type-specific required fields are missing (see the per-type conditional rules).
|
|
7905
7916
|
- |-
|
|
7906
|
-
For Oracle, a placeholder connection cannot be created without a real
|
|
7907
|
-
|
|
7917
|
+
For Oracle, a placeholder connection cannot be created without a real on-premise binding — a
|
|
7918
|
+
connection-level _agentId, or an agent group through _agentGroupId (validator error
|
|
7919
|
+
agent_mode_only with neither; live-verified that a POST carrying only _agentGroupId is not
|
|
7920
|
+
answered with it) — direct the user to install a Celigo Agent first. All other
|
|
7908
7921
|
RDBMS types accept placeholder credentials that satisfy the per-type required fields.
|
|
7909
7922
|
- |-
|
|
7910
7923
|
Celigo has native support for these database systems:
|
|
@@ -7955,16 +7968,17 @@ components:
|
|
|
7955
7968
|
`_iClientId` with `basic` auth is rejected. Both types share the
|
|
7956
7969
|
`mssql` sub-object; `azuresynapse` is cloud-only, and the SQL Server
|
|
7957
7970
|
connection form offers service-principal auth in Cloud mode only — it
|
|
7958
|
-
saves `basic` for an on-premise connection (`_agentId` set).
|
|
7959
|
-
- **Oracle** — runs in agent mode only, so requires
|
|
7960
|
-
parent connection object
|
|
7971
|
+
saves `basic` for an on-premise connection (`_agentId` or `_agentGroupId` set).
|
|
7972
|
+
- **Oracle** — runs in agent mode only, so requires an on-premise binding on
|
|
7973
|
+
the parent connection object: `_agentId`, or an agent group's `_agentGroupId`
|
|
7974
|
+
(one of the two, never both). Uses `serviceName` instead of `database`.
|
|
7961
7975
|
Optionally also takes `serverType` and `instanceName`.
|
|
7962
7976
|
|
|
7963
7977
|
## PLACEHOLDER / DUMMY RDBMS CONNECTIONS
|
|
7964
7978
|
|
|
7965
7979
|
For Oracle, placeholder connections cannot be created without a real
|
|
7966
|
-
`_agentId` — the validator will reject them. Direct the
|
|
7967
|
-
a Celigo Agent first. For all other RDBMS types, a placeholder can be
|
|
7980
|
+
`_agentId` or `_agentGroupId` — the validator will reject them. Direct the
|
|
7981
|
+
user to install a Celigo Agent first. For all other RDBMS types, a placeholder can be
|
|
7968
7982
|
created with dummy credentials matching the rules above.
|
|
7969
7983
|
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.'
|
|
7970
7984
|
required:
|
|
@@ -7987,7 +8001,7 @@ components:
|
|
|
7987
8001
|
postgresql: PostgreSQL database (default port 5432).
|
|
7988
8002
|
mssql: Microsoft SQL Server (default port 1433).
|
|
7989
8003
|
snowflake: Snowflake Data Cloud (requires snowflake.warehouse).
|
|
7990
|
-
oracle: Oracle Database; runs in agent mode and requires a connection-level _agentId (default port 1521, uses serviceName instead of database).
|
|
8004
|
+
oracle: Oracle Database; runs in agent mode and requires a connection-level _agentId or _agentGroupId (default port 1521, uses serviceName instead of database).
|
|
7991
8005
|
bigquery: Google BigQuery; requires service account credentials in the bigquery sub-object.
|
|
7992
8006
|
redshift: Amazon Redshift — provisioned clusters or Redshift Serverless; authenticates with static access keys or an AWS IAM role iClient (redshift.authType).
|
|
7993
8007
|
mariadb: MariaDB database (default port 3306).
|
|
@@ -8212,7 +8226,7 @@ components:
|
|
|
8212
8226
|
iClient — a client secret, or on SQL Server a certificate — and
|
|
8213
8227
|
`_iClientId` must reference it. The SQL Server connection form
|
|
8214
8228
|
offers `azure-service-principal` in Cloud mode only and saves
|
|
8215
|
-
`basic` for an on-premise connection (`_agentId` set).
|
|
8229
|
+
`basic` for an on-premise connection (`_agentId` or `_agentGroupId` set).
|
|
8216
8230
|
default: basic
|
|
8217
8231
|
examples:
|
|
8218
8232
|
- basic
|
|
@@ -8678,9 +8692,9 @@ components:
|
|
|
8678
8692
|
422 "Expected field: <field> to be present" if any of the three is missing. database is not
|
|
8679
8693
|
required; when omitted, set it per operation instead.
|
|
8680
8694
|
- |-
|
|
8681
|
-
For an on-premise MongoDB instance,
|
|
8682
|
-
|
|
8683
|
-
need no agent.
|
|
8695
|
+
For an on-premise MongoDB instance, bind the connection to one agent (connection-level
|
|
8696
|
+
_agentId) or to one agent group (_agentGroupId) — the form's "On-premise" mode — so traffic
|
|
8697
|
+
routes through a Celigo Agent. Cloud-reachable instances (including Atlas) need no agent.
|
|
8684
8698
|
- |-
|
|
8685
8699
|
## AUTHENTICATION
|
|
8686
8700
|
Username and password are optional — only required when the MongoDB server has
|
|
@@ -9380,8 +9394,8 @@ components:
|
|
|
9380
9394
|
description: |-
|
|
9381
9395
|
Configuration for filesystem connections. Used when the connection type is "filesystem".
|
|
9382
9396
|
Provides access to directories on a Celigo on-premise Agent's host or mounted network
|
|
9383
|
-
drives, so
|
|
9384
|
-
this type. File-based PGP encryption/decryption is configured through the connection-level
|
|
9397
|
+
drives, so an on-premise binding is required — a connection-level `_agentId`, or an agent
|
|
9398
|
+
group through `_agentGroupId` — and cloud-only deployments cannot use this type. File-based PGP encryption/decryption is configured through the connection-level
|
|
9385
9399
|
`pgp` object.
|
|
9386
9400
|
properties:
|
|
9387
9401
|
ping:
|
|
@@ -9427,9 +9441,10 @@ components:
|
|
|
9427
9441
|
mounted network drives.
|
|
9428
9442
|
|
|
9429
9443
|
## AGENT REQUIREMENT
|
|
9430
|
-
A Celigo Agent is REQUIRED for filesystem connections
|
|
9431
|
-
|
|
9432
|
-
|
|
9444
|
+
A Celigo Agent is REQUIRED for filesystem connections: bind the parent connection
|
|
9445
|
+
object to one agent (_agentId) or to one agent group (_agentGroupId) — one of the
|
|
9446
|
+
two, never both. The agent provides the filesystem access — cloud-only deployments
|
|
9447
|
+
cannot use this connection type.
|
|
9433
9448
|
token:
|
|
9434
9449
|
type: object
|
|
9435
9450
|
description: |
|
|
@@ -9903,13 +9918,17 @@ components:
|
|
|
9903
9918
|
Configuration for JDBC (Java Database Connectivity) connections. Used when the connection
|
|
9904
9919
|
type is "jdbc". Provides access through Java JDBC drivers to databases not covered by the
|
|
9905
9920
|
rdbms type — such as NetSuite SuiteAnalytics, Databricks, DB2, and Workday. The driver runs
|
|
9906
|
-
on a Celigo on-premise Agent, so most jdbc connections need
|
|
9921
|
+
on a Celigo on-premise Agent, so most jdbc connections need an on-premise binding — a
|
|
9922
|
+
connection-level _agentId, or an agent group through _agentGroupId.
|
|
9907
9923
|
x-celigo-ai-guidance:
|
|
9908
9924
|
- The POST is rejected with 422 if type-specific required fields are missing (see the per-type conditional rules).
|
|
9909
9925
|
- |-
|
|
9910
|
-
The agent and activedirectory types require a real
|
|
9911
|
-
|
|
9912
|
-
|
|
9926
|
+
The agent and activedirectory types require a real on-premise binding — a connection-level
|
|
9927
|
+
_agentId, or an agent group through _agentGroupId (one of the two, never both; the agent-mode
|
|
9928
|
+
check accepts either — live-verified for both agent and activedirectory: a POST carrying only
|
|
9929
|
+
_agentGroupId is not answered with agent_mode_only): with neither, the POST fails with 422 "The JDBC
|
|
9930
|
+
connection requires Agent. Expected field: _agentId to be present in the connection doc." A
|
|
9931
|
+
placeholder cannot be created without one, so the user should install a Celigo Agent first.
|
|
9913
9932
|
Other types commonly run on an agent too, but only these two are validator-enforced (live-verified
|
|
9914
9933
|
celigo-labs-2 2026-06-11).
|
|
9915
9934
|
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/processor.yml
CHANGED
|
@@ -1179,8 +1179,10 @@ paths:
|
|
|
1179
1179
|
`http.relativeURI`; triple braces insert it unchanged. A `timestamp` with no time zone
|
|
1180
1180
|
renders in UTC.
|
|
1181
1181
|
|
|
1182
|
-
|
|
1183
|
-
|
|
1182
|
+
By default a null value, a field under an object that is null, and a path the data doesn't
|
|
1183
|
+
carry all render empty here. With `rules.strict` true, a path the data doesn't carry or one
|
|
1184
|
+
through a null object fails with 422, while a null or empty value still renders empty. An
|
|
1185
|
+
HTTP import escapes values its own way, at run time and in the import preview: in its JSON body a
|
|
1184
1186
|
double-brace value that is null, or under a null object, is written as the text `null`
|
|
1185
1187
|
(triple braces rendered `{{{record.customer.name}}}` empty, whether `customer` or its `name`
|
|
1186
1188
|
was null); in its relative URI a null field is sent as the text
|
|
@@ -1221,6 +1223,21 @@ paths:
|
|
|
1221
1223
|
description: Form of the result; `text` returns the rendered string.
|
|
1222
1224
|
examples:
|
|
1223
1225
|
- text
|
|
1226
|
+
strict:
|
|
1227
|
+
type: boolean
|
|
1228
|
+
default: false
|
|
1229
|
+
description: |-
|
|
1230
|
+
When true, a path the data doesn't carry, or one through a missing or null
|
|
1231
|
+
object, fails the render with 422 instead of rendering empty: `"poNumber" not
|
|
1232
|
+
defined in the model`, or `not defined in undefined` / `not defined in null`
|
|
1233
|
+
when the object above it is missing or null — the detail a step's
|
|
1234
|
+
`handlebars_template_parse_error` carries. A null or empty value still renders
|
|
1235
|
+
empty.
|
|
1236
|
+
x-celigo-ai-guidance:
|
|
1237
|
+
- |-
|
|
1238
|
+
Render with `strict: true` to check a template's paths against a sample
|
|
1239
|
+
record: by default a misspelled or wrongly rooted path (`{{record.poNumber}}`
|
|
1240
|
+
on a record that carries `po_number`) renders empty with 200.
|
|
1224
1241
|
options:
|
|
1225
1242
|
type: object
|
|
1226
1243
|
description: |-
|
|
@@ -1292,6 +1309,16 @@ paths:
|
|
|
1292
1309
|
data:
|
|
1293
1310
|
record:
|
|
1294
1311
|
name: Smith & Sons
|
|
1312
|
+
strict:
|
|
1313
|
+
summary: Fail on a path the record doesn't carry
|
|
1314
|
+
value:
|
|
1315
|
+
rules:
|
|
1316
|
+
template: '{{record.poNumber}}'
|
|
1317
|
+
resultMode: text
|
|
1318
|
+
strict: true
|
|
1319
|
+
data:
|
|
1320
|
+
record:
|
|
1321
|
+
po_number: '10482'
|
|
1295
1322
|
static_lookup:
|
|
1296
1323
|
summary: Resolve an HTTP import's static lookup
|
|
1297
1324
|
value:
|
|
@@ -1352,7 +1379,8 @@ paths:
|
|
|
1352
1379
|
'422':
|
|
1353
1380
|
description: |-
|
|
1354
1381
|
The template could not be rendered, for example because it calls a helper that does not
|
|
1355
|
-
exist ('Missing helper: "first"').
|
|
1382
|
+
exist ('Missing helper: "first"') or, with `rules.strict`, reads a path the data doesn't
|
|
1383
|
+
carry ('"poNumber" not defined in the model').
|
|
1356
1384
|
content:
|
|
1357
1385
|
application/json:
|
|
1358
1386
|
schema:
|
package/dist/subscription.yml
CHANGED
|
@@ -518,7 +518,8 @@ components:
|
|
|
518
518
|
description: |-
|
|
519
519
|
Base number of endpoints (distinct connected applications) included with the plan, per
|
|
520
520
|
environment. Whether the count is taken from endpoints in use or from endpoints invoked
|
|
521
|
-
in the billing period depends on the account's pricing model
|
|
521
|
+
in the billing period depends on the account's pricing model, which the license's `type`
|
|
522
|
+
names.
|
|
522
523
|
example: 600
|
|
523
524
|
numAddOnEndpoints:
|
|
524
525
|
type: integer
|
|
@@ -529,7 +530,7 @@ components:
|
|
|
529
530
|
description: |-
|
|
530
531
|
Base flow entitlement included with the plan, per environment. Whether it caps enabled
|
|
531
532
|
flows or the distinct flows run in a billing period — and whether reaching it blocks or
|
|
532
|
-
only notifies — depends on the account's pricing model.
|
|
533
|
+
only notifies — depends on the account's pricing model, which the license's `type` names.
|
|
533
534
|
example: 80
|
|
534
535
|
numAddOnFlows:
|
|
535
536
|
type: integer
|
|
@@ -581,9 +582,14 @@ components:
|
|
|
581
582
|
the number of environments, prepaid AI balances, and the other non-resource fields —
|
|
582
583
|
belong to the parent license and are not repeated per environment.
|
|
583
584
|
- |-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
585
|
+
No field names what a flow or endpoint entitlement METERS; the account-level license's
|
|
586
|
+
`type` tells it. A `platform` license meters runs: on `GET /v1/licenseEntitlementUsage`,
|
|
587
|
+
`flowUsage.numEnabled` counts the distinct flows that ran in the billing period and
|
|
588
|
+
`endpointUsage.numConsumed` the endpoints they used, and `GET /v1/historicalMonthlyUsage`
|
|
589
|
+
returns its monthly rows. An `endpoint` license meters enabled resources: its endpoints are
|
|
590
|
+
counted across enabled flows. Neither `endpoint` nor `integrator` licenses store monthly
|
|
591
|
+
usage (that route fails with 500 for them). Interpret the counts for the plan this account
|
|
592
|
+
is on only; do not infer the rule from field names such as `numEnabled`.
|
|
587
593
|
properties:
|
|
588
594
|
_id:
|
|
589
595
|
type: string
|
|
@@ -632,8 +638,8 @@ components:
|
|
|
632
638
|
- integrationAppChild
|
|
633
639
|
x-enumDescriptions:
|
|
634
640
|
integrator: Account-level subscription (legacy integrator pricing model).
|
|
635
|
-
platform: Account-level subscription (platform pricing model; the tier name carries the plan generation).
|
|
636
|
-
endpoint: Account-level subscription (endpoint pricing model, metered on distinct endpoints).
|
|
641
|
+
platform: Account-level subscription (platform pricing model, metered on flow runs in the billing period; the tier name carries the plan generation).
|
|
642
|
+
endpoint: Account-level subscription (endpoint pricing model, metered on the distinct endpoints enabled flows use).
|
|
637
643
|
connector: Connector-specific license for an Integration App.
|
|
638
644
|
integrationApp: Integration App license (parent).
|
|
639
645
|
integrationAppChild: Integration App child license (inherits from a parent via `_parentId`).
|