@celigo/api-specs 0.2.21 → 0.2.23
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 +21 -2
- package/dist/export.yml +52 -17
- package/dist/import.yml +32 -6
- package/dist/tool.yml +63 -21
- package/package.json +1 -1
- package/schemas.json +1 -1
package/dist/ai-agent.yml
CHANGED
|
@@ -4951,13 +4951,26 @@ components:
|
|
|
4951
4951
|
are re-joined into the record's original shape — the object with its array, or the array of rows —
|
|
4952
4952
|
carrying any response-mapping enrichment, and that re-joined record is what the next step
|
|
4953
4953
|
receives. Not for locating records in an export's HTTP response; use
|
|
4954
|
-
`http.response.resourcePath` for that.
|
|
4954
|
+
`http.response.resourcePath` for that. Applies to steps that receive a record — imports and
|
|
4955
|
+
lookups (an export referenced as a page processor of a flow, API, or Tool). A standalone export
|
|
4956
|
+
(a flow's page generator) has no incoming record, so the fields are saved but have no effect on
|
|
4957
|
+
the records it produces; to emit one record per array element from a standalone export, use a
|
|
4958
|
+
`hooks.preSavePage` script, or for a file-definition export make the repeating segment the
|
|
4959
|
+
record boundary in the definition's rules.
|
|
4955
4960
|
x-celigo-ai-guidance:
|
|
4956
4961
|
- |-
|
|
4957
4962
|
Two modes, decided by the SHAPE of the record entering the step. Object record with a child
|
|
4958
4963
|
array under a field → set ``pathToMany`` to that field. Array record (a ``groupByFields``
|
|
4959
4964
|
export, a CSV/file group, a script that returns an array) → leave ``pathToMany`` blank; each
|
|
4960
4965
|
element becomes one record. Live-verified 2026-09-10 on flows, Tools, and APIs.
|
|
4966
|
+
- |-
|
|
4967
|
+
Only imports and lookups (exports placed as page processors) fan out. On a standalone export
|
|
4968
|
+
(a flow's page generator) the API saves ``oneToMany`` / ``pathToMany`` and applies neither:
|
|
4969
|
+
the records reach the next step unchanged and no error is raised. Live-verified 2026-09-18 on
|
|
4970
|
+
a flow test run — an order record with three ``lines`` reached the import as ONE record with
|
|
4971
|
+
the setting on the export, and as THREE child records with the same setting on the import.
|
|
4972
|
+
Never propose these fields as the way to split a standalone export's records; that is
|
|
4973
|
+
``hooks.preSavePage`` work (or, for a file definition, the definition's record boundary).
|
|
4961
4974
|
- |-
|
|
4962
4975
|
Blank ``pathToMany`` on an OBJECT record fails every record with code ``oneToMany_error``:
|
|
4963
4976
|
"Failed to extract child records from oneToMany import data. Record at index 0 was not an
|
|
@@ -4987,8 +5000,14 @@ components:
|
|
|
4987
5000
|
Path to the array of child records inside an object record when `oneToMany` is true, in dot
|
|
4988
5001
|
notation (`items`, `lines.lineItems`). Leave blank when the incoming record is itself an array
|
|
4989
5002
|
(grouped or row-based data) — each element is then a child record. A path that does not resolve
|
|
4990
|
-
to an array processes zero records and reports success.
|
|
5003
|
+
to an array processes zero records and reports success. Read only on steps that receive a
|
|
5004
|
+
record (imports, lookup exports); on a standalone export it is saved and ignored — see `oneToMany`.
|
|
4991
5005
|
x-celigo-ai-guidance:
|
|
5006
|
+
- |-
|
|
5007
|
+
Inert on a standalone export (a flow's page generator) exactly like ``oneToMany`` — the value
|
|
5008
|
+
is saved, the export's records reach the next step unchanged, and nothing errors
|
|
5009
|
+
(live-verified 2026-09-18). Splitting a standalone export's records into one per element is
|
|
5010
|
+
``hooks.preSavePage`` work, or the file definition's record boundary; never this field.
|
|
4992
5011
|
- |-
|
|
4993
5012
|
Set this ONLY when the record entering the step is an object whose children sit under a field.
|
|
4994
5013
|
On an array record (a ``groupByFields`` export, a CSV/file group, a script returning an array)
|
package/dist/export.yml
CHANGED
|
@@ -803,13 +803,26 @@ components:
|
|
|
803
803
|
are re-joined into the record's original shape — the object with its array, or the array of rows —
|
|
804
804
|
carrying any response-mapping enrichment, and that re-joined record is what the next step
|
|
805
805
|
receives. Not for locating records in an export's HTTP response; use
|
|
806
|
-
`http.response.resourcePath` for that.
|
|
806
|
+
`http.response.resourcePath` for that. Applies to steps that receive a record — imports and
|
|
807
|
+
lookups (an export referenced as a page processor of a flow, API, or Tool). A standalone export
|
|
808
|
+
(a flow's page generator) has no incoming record, so the fields are saved but have no effect on
|
|
809
|
+
the records it produces; to emit one record per array element from a standalone export, use a
|
|
810
|
+
`hooks.preSavePage` script, or for a file-definition export make the repeating segment the
|
|
811
|
+
record boundary in the definition's rules.
|
|
807
812
|
x-celigo-ai-guidance:
|
|
808
813
|
- |-
|
|
809
814
|
Two modes, decided by the SHAPE of the record entering the step. Object record with a child
|
|
810
815
|
array under a field → set ``pathToMany`` to that field. Array record (a ``groupByFields``
|
|
811
816
|
export, a CSV/file group, a script that returns an array) → leave ``pathToMany`` blank; each
|
|
812
817
|
element becomes one record. Live-verified 2026-09-10 on flows, Tools, and APIs.
|
|
818
|
+
- |-
|
|
819
|
+
Only imports and lookups (exports placed as page processors) fan out. On a standalone export
|
|
820
|
+
(a flow's page generator) the API saves ``oneToMany`` / ``pathToMany`` and applies neither:
|
|
821
|
+
the records reach the next step unchanged and no error is raised. Live-verified 2026-09-18 on
|
|
822
|
+
a flow test run — an order record with three ``lines`` reached the import as ONE record with
|
|
823
|
+
the setting on the export, and as THREE child records with the same setting on the import.
|
|
824
|
+
Never propose these fields as the way to split a standalone export's records; that is
|
|
825
|
+
``hooks.preSavePage`` work (or, for a file definition, the definition's record boundary).
|
|
813
826
|
- |-
|
|
814
827
|
Blank ``pathToMany`` on an OBJECT record fails every record with code ``oneToMany_error``:
|
|
815
828
|
"Failed to extract child records from oneToMany import data. Record at index 0 was not an
|
|
@@ -839,8 +852,14 @@ components:
|
|
|
839
852
|
Path to the array of child records inside an object record when `oneToMany` is true, in dot
|
|
840
853
|
notation (`items`, `lines.lineItems`). Leave blank when the incoming record is itself an array
|
|
841
854
|
(grouped or row-based data) — each element is then a child record. A path that does not resolve
|
|
842
|
-
to an array processes zero records and reports success.
|
|
855
|
+
to an array processes zero records and reports success. Read only on steps that receive a
|
|
856
|
+
record (imports, lookup exports); on a standalone export it is saved and ignored — see `oneToMany`.
|
|
843
857
|
x-celigo-ai-guidance:
|
|
858
|
+
- |-
|
|
859
|
+
Inert on a standalone export (a flow's page generator) exactly like ``oneToMany`` — the value
|
|
860
|
+
is saved, the export's records reach the next step unchanged, and nothing errors
|
|
861
|
+
(live-verified 2026-09-18). Splitting a standalone export's records into one per element is
|
|
862
|
+
``hooks.preSavePage`` work, or the file definition's record boundary; never this field.
|
|
844
863
|
- |-
|
|
845
864
|
Set this ONLY when the record entering the step is an object whose children sit under a field.
|
|
846
865
|
On an array record (a ``groupByFields`` export, a CSV/file group, a script returning an array)
|
|
@@ -5902,10 +5921,10 @@ components:
|
|
|
5902
5921
|
- blob
|
|
5903
5922
|
- csvstream
|
|
5904
5923
|
x-enumDescriptions:
|
|
5905
|
-
file:
|
|
5924
|
+
file: Works with files instead of a record endpoint — a raw file download (PDFs, images, binary data), or a file-provider folder whose files the file object parses into records (csv, json, xml, xlsx, filedefinition incl. EDI)
|
|
5906
5925
|
blob: Transfers the raw response body downstream as a blob without parsing it into records.
|
|
5907
5926
|
csvstream: Streams a large CSV response, parsing it row-by-row instead of loading the whole body into memory.
|
|
5908
|
-
description: Set to `file`
|
|
5927
|
+
description: 'Set to `file` when the export works with files rather than a record-returning endpoint: raw file downloads (PDFs, images, binary data) and the folder mode of the cloud file providers (Google Drive, Box, Dropbox, Azure Blob, Google Cloud Storage, Celigo Storage), where each file in the folder is parsed by the `file` object''s `type` (csv, json, xml, xlsx, filedefinition — including EDI) into records; the `file` object must also be configured. Leave undefined for standard data exports that return structured records (JSON, XML, GraphQL, SOAP responses) — the response is then parsed into records for downstream steps. When set to `file` or `blob`, the export appears as a "Transfer" step in Flow Builder instead of a standard "Export" step.'
|
|
5909
5928
|
x-celigo-ai-guidance:
|
|
5910
5929
|
- |-
|
|
5911
5930
|
## IMPORTANT: This field should be LEFT UNDEFINED for the vast majority of HTTP exports.
|
|
@@ -5927,18 +5946,24 @@ components:
|
|
|
5927
5946
|
- "Export all Shopify Customers" → undefined (returns JSON customer records)
|
|
5928
5947
|
- "Retrieve orders from custom REST API" → undefined (returns JSON order records)
|
|
5929
5948
|
- |-
|
|
5930
|
-
## WHEN TO SET THIS FIELD TO 'file' (
|
|
5949
|
+
## WHEN TO SET THIS FIELD TO 'file' (the export works with FILES, not a record endpoint):
|
|
5931
5950
|
|
|
5932
|
-
Set this field to 'file'
|
|
5933
|
-
- The endpoint
|
|
5934
|
-
|
|
5935
|
-
|
|
5936
|
-
-
|
|
5951
|
+
Set this field to 'file' in two situations:
|
|
5952
|
+
- The HTTP endpoint is specifically designed to download files — it returns raw binary
|
|
5953
|
+
file content (PDFs, images, ZIP files) or is a file download service (invoices,
|
|
5954
|
+
reports, attachments) whose body is saved as a file rather than parsed as records
|
|
5955
|
+
- The connection is a cloud file provider used in FOLDER mode (Google Drive, Box, Dropbox,
|
|
5956
|
+
Azure Blob Storage, Google Cloud Storage, Celigo Storage): the export reads the files
|
|
5957
|
+
in a folder and the 'file' object's `type` (csv, json, xml, xlsx, filedefinition)
|
|
5958
|
+
parses each one into records — the same file layer as an FTP or S3 export
|
|
5937
5959
|
|
|
5938
5960
|
Examples of when to set type: "file":
|
|
5939
5961
|
- "Download PDF invoices from the API" → type: "file"
|
|
5940
5962
|
- "Retrieve image files from a file server" → type: "file"
|
|
5941
|
-
- "
|
|
5963
|
+
- "Read the CSV files dropped in our Google Drive folder" → type: "file", with file.type "csv"
|
|
5964
|
+
- "Parse EDI X12 850 files from a Google Drive / Celigo Storage folder" → type: "file",
|
|
5965
|
+
with file.type "filedefinition" and a top-level _ediProfileId (EDI fields are
|
|
5966
|
+
accepted on HTTP exports only in file mode)
|
|
5942
5967
|
- |-
|
|
5943
5968
|
## IMPLEMENTATION DETAILS
|
|
5944
5969
|
|
|
@@ -5946,7 +5971,9 @@ components:
|
|
|
5946
5971
|
- The 'file' object property MUST also be configured
|
|
5947
5972
|
- The export appears as a "Transfer" step in the Flow Builder UI
|
|
5948
5973
|
- The system applies file-specific processing to the HTTP response
|
|
5949
|
-
- Downstream steps receive file
|
|
5974
|
+
- Downstream steps receive records when the 'file' object's `type` parses the files
|
|
5975
|
+
(csv, json, xml, xlsx, filedefinition with `file.output: "records"`), or the file
|
|
5976
|
+
content itself when `file.output` is "blobKeys"
|
|
5950
5977
|
|
|
5951
5978
|
When this field is undefined (default for most exports):
|
|
5952
5979
|
- The export appears as a standard "Export" step in the Flow Builder UI
|
|
@@ -5961,6 +5988,9 @@ components:
|
|
|
5961
5988
|
→ YES: Leave this field undefined
|
|
5962
5989
|
3. Does the API endpoint return raw file content (PDFs, images, binary data)?
|
|
5963
5990
|
→ YES: Set this field to "file" (and configure the 'file' property)
|
|
5991
|
+
4. Is the connection a cloud file provider and the export reads a FOLDER of files
|
|
5992
|
+
(CSV, JSON, XML, XLSX, or EDI via a file definition)?
|
|
5993
|
+
→ YES: Set this field to "file" (and configure the 'file' property with the parsing type)
|
|
5964
5994
|
|
|
5965
5995
|
Remember: When in doubt, leave this field undefined. Most HTTP exports are standard data exports.
|
|
5966
5996
|
examples:
|
|
@@ -16185,9 +16215,12 @@ components:
|
|
|
16185
16215
|
format: objectId
|
|
16186
16216
|
x-celigo-refModel: ediprofiles
|
|
16187
16217
|
description: |-
|
|
16188
|
-
EDI profile this export uses to parse incoming X12
|
|
16189
|
-
it supplies the envelope qualifiers, delimiters, version, and validation rules.
|
|
16190
|
-
when the export parses or validates EDI files; omit it otherwise.
|
|
16218
|
+
EDI profile this export uses to parse incoming X12 or EDIFACT documents into structured
|
|
16219
|
+
JSON — it supplies the envelope qualifiers, delimiters, version, and validation rules.
|
|
16220
|
+
Set it when the export parses or validates EDI files; omit it otherwise. Accepted on the
|
|
16221
|
+
file-reading exports — FTP, AS2, S3 and HTTP file mode (`http.type: "file"`).
|
|
16222
|
+
x-celigo-ai-guidance:
|
|
16223
|
+
- 'An HTTP export accepts this field only in file mode (`http.type: "file"`, the folder mode of file-provider connectors such as Google Drive, Box, Dropbox, Azure Blob, Google Cloud Storage and Celigo Storage). On a REST/records HTTP export the save is rejected with `not_supported`: "EDIProfile can only be associated with the export of type FTP, AS2, S3 or HTTP file."'
|
|
16191
16224
|
examples:
|
|
16192
16225
|
- 60a2c4e6f321d800129a1a3c
|
|
16193
16226
|
_postParseListenerId:
|
|
@@ -16197,8 +16230,10 @@ components:
|
|
|
16197
16230
|
description: |-
|
|
16198
16231
|
Webhook export invoked once per file after EDI parsing, on both success and failure
|
|
16199
16232
|
(errors are included in the payload when parsing fails). Primarily used to send
|
|
16200
|
-
functional acknowledgements (997/999) to trading partners.
|
|
16201
|
-
|
|
16233
|
+
functional acknowledgements (997/999) to trading partners. Accepted on the file-reading
|
|
16234
|
+
exports that parse EDI — FTP, AS2, S3 and HTTP file mode (`http.type: "file"`).
|
|
16235
|
+
x-celigo-ai-guidance:
|
|
16236
|
+
- 'The listener must be an export with `type: "webhook"` and `webhook.provider: "integrator-extension"`; any other export id is rejected with `invalid_post_parse_listener`. On an HTTP export outside file mode the save is rejected with `post_parse_listener_not_supported`: "Listener for functional acknowledgment is only supported for AS2, FTP, S3 and HTTP file export."'
|
|
16202
16237
|
examples:
|
|
16203
16238
|
- 60a2c4e6f321d800129a1a3c
|
|
16204
16239
|
externalId:
|
package/dist/import.yml
CHANGED
|
@@ -8247,11 +8247,15 @@ components:
|
|
|
8247
8247
|
- `S3Import`
|
|
8248
8248
|
- `FTPImport`
|
|
8249
8249
|
- `AS2Import`
|
|
8250
|
+
- `HTTPImport` in file mode (`http.type: "file"` — the folder mode of the cloud file
|
|
8251
|
+
providers such as Google Drive, Box, Dropbox, Azure Blob, Google Cloud Storage and Celigo
|
|
8252
|
+
Storage); the same `file` object, including `type: filedefinition` with `_ediProfileId`
|
|
8253
|
+
for EDI, applies as on S3 / FTP
|
|
8250
8254
|
|
|
8251
8255
|
❌ **DO NOT SET** for non-file-based imports like:
|
|
8252
8256
|
- `SalesforceImport`
|
|
8253
8257
|
- `NetSuiteImport`
|
|
8254
|
-
- `HTTPImport`
|
|
8258
|
+
- `HTTPImport` in records mode (`http.type` unset — a REST endpoint receiving records)
|
|
8255
8259
|
- `MongodbImport`
|
|
8256
8260
|
- `RDBMSImport`
|
|
8257
8261
|
|
|
@@ -10581,13 +10585,26 @@ components:
|
|
|
10581
10585
|
are re-joined into the record's original shape — the object with its array, or the array of rows —
|
|
10582
10586
|
carrying any response-mapping enrichment, and that re-joined record is what the next step
|
|
10583
10587
|
receives. Not for locating records in an export's HTTP response; use
|
|
10584
|
-
`http.response.resourcePath` for that.
|
|
10588
|
+
`http.response.resourcePath` for that. Applies to steps that receive a record — imports and
|
|
10589
|
+
lookups (an export referenced as a page processor of a flow, API, or Tool). A standalone export
|
|
10590
|
+
(a flow's page generator) has no incoming record, so the fields are saved but have no effect on
|
|
10591
|
+
the records it produces; to emit one record per array element from a standalone export, use a
|
|
10592
|
+
`hooks.preSavePage` script, or for a file-definition export make the repeating segment the
|
|
10593
|
+
record boundary in the definition's rules.
|
|
10585
10594
|
x-celigo-ai-guidance:
|
|
10586
10595
|
- |-
|
|
10587
10596
|
Two modes, decided by the SHAPE of the record entering the step. Object record with a child
|
|
10588
10597
|
array under a field → set ``pathToMany`` to that field. Array record (a ``groupByFields``
|
|
10589
10598
|
export, a CSV/file group, a script that returns an array) → leave ``pathToMany`` blank; each
|
|
10590
10599
|
element becomes one record. Live-verified 2026-09-10 on flows, Tools, and APIs.
|
|
10600
|
+
- |-
|
|
10601
|
+
Only imports and lookups (exports placed as page processors) fan out. On a standalone export
|
|
10602
|
+
(a flow's page generator) the API saves ``oneToMany`` / ``pathToMany`` and applies neither:
|
|
10603
|
+
the records reach the next step unchanged and no error is raised. Live-verified 2026-09-18 on
|
|
10604
|
+
a flow test run — an order record with three ``lines`` reached the import as ONE record with
|
|
10605
|
+
the setting on the export, and as THREE child records with the same setting on the import.
|
|
10606
|
+
Never propose these fields as the way to split a standalone export's records; that is
|
|
10607
|
+
``hooks.preSavePage`` work (or, for a file definition, the definition's record boundary).
|
|
10591
10608
|
- |-
|
|
10592
10609
|
Blank ``pathToMany`` on an OBJECT record fails every record with code ``oneToMany_error``:
|
|
10593
10610
|
"Failed to extract child records from oneToMany import data. Record at index 0 was not an
|
|
@@ -10617,8 +10634,14 @@ components:
|
|
|
10617
10634
|
Path to the array of child records inside an object record when `oneToMany` is true, in dot
|
|
10618
10635
|
notation (`items`, `lines.lineItems`). Leave blank when the incoming record is itself an array
|
|
10619
10636
|
(grouped or row-based data) — each element is then a child record. A path that does not resolve
|
|
10620
|
-
to an array processes zero records and reports success.
|
|
10637
|
+
to an array processes zero records and reports success. Read only on steps that receive a
|
|
10638
|
+
record (imports, lookup exports); on a standalone export it is saved and ignored — see `oneToMany`.
|
|
10621
10639
|
x-celigo-ai-guidance:
|
|
10640
|
+
- |-
|
|
10641
|
+
Inert on a standalone export (a flow's page generator) exactly like ``oneToMany`` — the value
|
|
10642
|
+
is saved, the export's records reach the next step unchanged, and nothing errors
|
|
10643
|
+
(live-verified 2026-09-18). Splitting a standalone export's records into one per element is
|
|
10644
|
+
``hooks.preSavePage`` work, or the file definition's record boundary; never this field.
|
|
10622
10645
|
- |-
|
|
10623
10646
|
Set this ONLY when the record entering the step is an object whose children sit under a field.
|
|
10624
10647
|
On an array record (a ``groupByFields`` export, a CSV/file group, a script returning an array)
|
|
@@ -14393,9 +14416,12 @@ components:
|
|
|
14393
14416
|
format: objectId
|
|
14394
14417
|
x-celigo-refModel: ediprofiles
|
|
14395
14418
|
description: |-
|
|
14396
|
-
EDI profile this import uses to generate outbound X12
|
|
14397
|
-
envelope qualifiers, delimiters, version, and validation rules. Set it when the
|
|
14398
|
-
produces EDI output; omit it otherwise.
|
|
14419
|
+
EDI profile this import uses to generate outbound X12 or EDIFACT documents — it supplies
|
|
14420
|
+
the envelope qualifiers, delimiters, version, and validation rules. Set it when the
|
|
14421
|
+
import produces EDI output; omit it otherwise. Accepted on the file-writing imports —
|
|
14422
|
+
FTP, AS2, S3 and HTTP file mode (`http.type: "file"`).
|
|
14423
|
+
x-celigo-ai-guidance:
|
|
14424
|
+
- 'On an HTTP import set `http.type: "file"` (the folder mode of file-provider connectors) and pair this field with `file.type: "filedefinition"` and `file.skipAggregation: true` or `file.aggregation.type: "key"` — the platform saves EDI files per page or per key, never aggregated per run.'
|
|
14399
14425
|
parsers:
|
|
14400
14426
|
type: array
|
|
14401
14427
|
description: |-
|
package/dist/tool.yml
CHANGED
|
@@ -17105,11 +17105,15 @@ components:
|
|
|
17105
17105
|
- `S3Import`
|
|
17106
17106
|
- `FTPImport`
|
|
17107
17107
|
- `AS2Import`
|
|
17108
|
+
- `HTTPImport` in file mode (`http.type: "file"` — the folder mode of the cloud file
|
|
17109
|
+
providers such as Google Drive, Box, Dropbox, Azure Blob, Google Cloud Storage and Celigo
|
|
17110
|
+
Storage); the same `file` object, including `type: filedefinition` with `_ediProfileId`
|
|
17111
|
+
for EDI, applies as on S3 / FTP
|
|
17108
17112
|
|
|
17109
17113
|
❌ **DO NOT SET** for non-file-based imports like:
|
|
17110
17114
|
- `SalesforceImport`
|
|
17111
17115
|
- `NetSuiteImport`
|
|
17112
|
-
- `HTTPImport`
|
|
17116
|
+
- `HTTPImport` in records mode (`http.type` unset — a REST endpoint receiving records)
|
|
17113
17117
|
- `MongodbImport`
|
|
17114
17118
|
- `RDBMSImport`
|
|
17115
17119
|
|
|
@@ -19439,13 +19443,26 @@ components:
|
|
|
19439
19443
|
are re-joined into the record's original shape — the object with its array, or the array of rows —
|
|
19440
19444
|
carrying any response-mapping enrichment, and that re-joined record is what the next step
|
|
19441
19445
|
receives. Not for locating records in an export's HTTP response; use
|
|
19442
|
-
`http.response.resourcePath` for that.
|
|
19446
|
+
`http.response.resourcePath` for that. Applies to steps that receive a record — imports and
|
|
19447
|
+
lookups (an export referenced as a page processor of a flow, API, or Tool). A standalone export
|
|
19448
|
+
(a flow's page generator) has no incoming record, so the fields are saved but have no effect on
|
|
19449
|
+
the records it produces; to emit one record per array element from a standalone export, use a
|
|
19450
|
+
`hooks.preSavePage` script, or for a file-definition export make the repeating segment the
|
|
19451
|
+
record boundary in the definition's rules.
|
|
19443
19452
|
x-celigo-ai-guidance:
|
|
19444
19453
|
- |-
|
|
19445
19454
|
Two modes, decided by the SHAPE of the record entering the step. Object record with a child
|
|
19446
19455
|
array under a field → set ``pathToMany`` to that field. Array record (a ``groupByFields``
|
|
19447
19456
|
export, a CSV/file group, a script that returns an array) → leave ``pathToMany`` blank; each
|
|
19448
19457
|
element becomes one record. Live-verified 2026-09-10 on flows, Tools, and APIs.
|
|
19458
|
+
- |-
|
|
19459
|
+
Only imports and lookups (exports placed as page processors) fan out. On a standalone export
|
|
19460
|
+
(a flow's page generator) the API saves ``oneToMany`` / ``pathToMany`` and applies neither:
|
|
19461
|
+
the records reach the next step unchanged and no error is raised. Live-verified 2026-09-18 on
|
|
19462
|
+
a flow test run — an order record with three ``lines`` reached the import as ONE record with
|
|
19463
|
+
the setting on the export, and as THREE child records with the same setting on the import.
|
|
19464
|
+
Never propose these fields as the way to split a standalone export's records; that is
|
|
19465
|
+
``hooks.preSavePage`` work (or, for a file definition, the definition's record boundary).
|
|
19449
19466
|
- |-
|
|
19450
19467
|
Blank ``pathToMany`` on an OBJECT record fails every record with code ``oneToMany_error``:
|
|
19451
19468
|
"Failed to extract child records from oneToMany import data. Record at index 0 was not an
|
|
@@ -19475,8 +19492,14 @@ components:
|
|
|
19475
19492
|
Path to the array of child records inside an object record when `oneToMany` is true, in dot
|
|
19476
19493
|
notation (`items`, `lines.lineItems`). Leave blank when the incoming record is itself an array
|
|
19477
19494
|
(grouped or row-based data) — each element is then a child record. A path that does not resolve
|
|
19478
|
-
to an array processes zero records and reports success.
|
|
19495
|
+
to an array processes zero records and reports success. Read only on steps that receive a
|
|
19496
|
+
record (imports, lookup exports); on a standalone export it is saved and ignored — see `oneToMany`.
|
|
19479
19497
|
x-celigo-ai-guidance:
|
|
19498
|
+
- |-
|
|
19499
|
+
Inert on a standalone export (a flow's page generator) exactly like ``oneToMany`` — the value
|
|
19500
|
+
is saved, the export's records reach the next step unchanged, and nothing errors
|
|
19501
|
+
(live-verified 2026-09-18). Splitting a standalone export's records into one per element is
|
|
19502
|
+
``hooks.preSavePage`` work, or the file definition's record boundary; never this field.
|
|
19480
19503
|
- |-
|
|
19481
19504
|
Set this ONLY when the record entering the step is an object whose children sit under a field.
|
|
19482
19505
|
On an array record (a ``groupByFields`` export, a CSV/file group, a script returning an array)
|
|
@@ -21172,9 +21195,12 @@ components:
|
|
|
21172
21195
|
format: objectId
|
|
21173
21196
|
x-celigo-refModel: ediprofiles
|
|
21174
21197
|
description: |-
|
|
21175
|
-
EDI profile this import uses to generate outbound X12
|
|
21176
|
-
envelope qualifiers, delimiters, version, and validation rules. Set it when the
|
|
21177
|
-
produces EDI output; omit it otherwise.
|
|
21198
|
+
EDI profile this import uses to generate outbound X12 or EDIFACT documents — it supplies
|
|
21199
|
+
the envelope qualifiers, delimiters, version, and validation rules. Set it when the
|
|
21200
|
+
import produces EDI output; omit it otherwise. Accepted on the file-writing imports —
|
|
21201
|
+
FTP, AS2, S3 and HTTP file mode (`http.type: "file"`).
|
|
21202
|
+
x-celigo-ai-guidance:
|
|
21203
|
+
- 'On an HTTP import set `http.type: "file"` (the folder mode of file-provider connectors) and pair this field with `file.type: "filedefinition"` and `file.skipAggregation: true` or `file.aggregation.type: "key"` — the platform saves EDI files per page or per key, never aggregated per run.'
|
|
21178
21204
|
parsers:
|
|
21179
21205
|
type: array
|
|
21180
21206
|
description: |-
|
|
@@ -26294,10 +26320,10 @@ components:
|
|
|
26294
26320
|
- blob
|
|
26295
26321
|
- csvstream
|
|
26296
26322
|
x-enumDescriptions:
|
|
26297
|
-
file:
|
|
26323
|
+
file: Works with files instead of a record endpoint — a raw file download (PDFs, images, binary data), or a file-provider folder whose files the file object parses into records (csv, json, xml, xlsx, filedefinition incl. EDI)
|
|
26298
26324
|
blob: Transfers the raw response body downstream as a blob without parsing it into records.
|
|
26299
26325
|
csvstream: Streams a large CSV response, parsing it row-by-row instead of loading the whole body into memory.
|
|
26300
|
-
description: Set to `file`
|
|
26326
|
+
description: 'Set to `file` when the export works with files rather than a record-returning endpoint: raw file downloads (PDFs, images, binary data) and the folder mode of the cloud file providers (Google Drive, Box, Dropbox, Azure Blob, Google Cloud Storage, Celigo Storage), where each file in the folder is parsed by the `file` object''s `type` (csv, json, xml, xlsx, filedefinition — including EDI) into records; the `file` object must also be configured. Leave undefined for standard data exports that return structured records (JSON, XML, GraphQL, SOAP responses) — the response is then parsed into records for downstream steps. When set to `file` or `blob`, the export appears as a "Transfer" step in Flow Builder instead of a standard "Export" step.'
|
|
26301
26327
|
x-celigo-ai-guidance:
|
|
26302
26328
|
- |-
|
|
26303
26329
|
## IMPORTANT: This field should be LEFT UNDEFINED for the vast majority of HTTP exports.
|
|
@@ -26319,18 +26345,24 @@ components:
|
|
|
26319
26345
|
- "Export all Shopify Customers" → undefined (returns JSON customer records)
|
|
26320
26346
|
- "Retrieve orders from custom REST API" → undefined (returns JSON order records)
|
|
26321
26347
|
- |-
|
|
26322
|
-
## WHEN TO SET THIS FIELD TO 'file' (
|
|
26348
|
+
## WHEN TO SET THIS FIELD TO 'file' (the export works with FILES, not a record endpoint):
|
|
26323
26349
|
|
|
26324
|
-
Set this field to 'file'
|
|
26325
|
-
- The endpoint
|
|
26326
|
-
|
|
26327
|
-
|
|
26328
|
-
-
|
|
26350
|
+
Set this field to 'file' in two situations:
|
|
26351
|
+
- The HTTP endpoint is specifically designed to download files — it returns raw binary
|
|
26352
|
+
file content (PDFs, images, ZIP files) or is a file download service (invoices,
|
|
26353
|
+
reports, attachments) whose body is saved as a file rather than parsed as records
|
|
26354
|
+
- The connection is a cloud file provider used in FOLDER mode (Google Drive, Box, Dropbox,
|
|
26355
|
+
Azure Blob Storage, Google Cloud Storage, Celigo Storage): the export reads the files
|
|
26356
|
+
in a folder and the 'file' object's `type` (csv, json, xml, xlsx, filedefinition)
|
|
26357
|
+
parses each one into records — the same file layer as an FTP or S3 export
|
|
26329
26358
|
|
|
26330
26359
|
Examples of when to set type: "file":
|
|
26331
26360
|
- "Download PDF invoices from the API" → type: "file"
|
|
26332
26361
|
- "Retrieve image files from a file server" → type: "file"
|
|
26333
|
-
- "
|
|
26362
|
+
- "Read the CSV files dropped in our Google Drive folder" → type: "file", with file.type "csv"
|
|
26363
|
+
- "Parse EDI X12 850 files from a Google Drive / Celigo Storage folder" → type: "file",
|
|
26364
|
+
with file.type "filedefinition" and a top-level _ediProfileId (EDI fields are
|
|
26365
|
+
accepted on HTTP exports only in file mode)
|
|
26334
26366
|
- |-
|
|
26335
26367
|
## IMPLEMENTATION DETAILS
|
|
26336
26368
|
|
|
@@ -26338,7 +26370,9 @@ components:
|
|
|
26338
26370
|
- The 'file' object property MUST also be configured
|
|
26339
26371
|
- The export appears as a "Transfer" step in the Flow Builder UI
|
|
26340
26372
|
- The system applies file-specific processing to the HTTP response
|
|
26341
|
-
- Downstream steps receive file
|
|
26373
|
+
- Downstream steps receive records when the 'file' object's `type` parses the files
|
|
26374
|
+
(csv, json, xml, xlsx, filedefinition with `file.output: "records"`), or the file
|
|
26375
|
+
content itself when `file.output` is "blobKeys"
|
|
26342
26376
|
|
|
26343
26377
|
When this field is undefined (default for most exports):
|
|
26344
26378
|
- The export appears as a standard "Export" step in the Flow Builder UI
|
|
@@ -26353,6 +26387,9 @@ components:
|
|
|
26353
26387
|
→ YES: Leave this field undefined
|
|
26354
26388
|
3. Does the API endpoint return raw file content (PDFs, images, binary data)?
|
|
26355
26389
|
→ YES: Set this field to "file" (and configure the 'file' property)
|
|
26390
|
+
4. Is the connection a cloud file provider and the export reads a FOLDER of files
|
|
26391
|
+
(CSV, JSON, XML, XLSX, or EDI via a file definition)?
|
|
26392
|
+
→ YES: Set this field to "file" (and configure the 'file' property with the parsing type)
|
|
26356
26393
|
|
|
26357
26394
|
Remember: When in doubt, leave this field undefined. Most HTTP exports are standard data exports.
|
|
26358
26395
|
examples:
|
|
@@ -33607,9 +33644,12 @@ components:
|
|
|
33607
33644
|
format: objectId
|
|
33608
33645
|
x-celigo-refModel: ediprofiles
|
|
33609
33646
|
description: |-
|
|
33610
|
-
EDI profile this export uses to parse incoming X12
|
|
33611
|
-
it supplies the envelope qualifiers, delimiters, version, and validation rules.
|
|
33612
|
-
when the export parses or validates EDI files; omit it otherwise.
|
|
33647
|
+
EDI profile this export uses to parse incoming X12 or EDIFACT documents into structured
|
|
33648
|
+
JSON — it supplies the envelope qualifiers, delimiters, version, and validation rules.
|
|
33649
|
+
Set it when the export parses or validates EDI files; omit it otherwise. Accepted on the
|
|
33650
|
+
file-reading exports — FTP, AS2, S3 and HTTP file mode (`http.type: "file"`).
|
|
33651
|
+
x-celigo-ai-guidance:
|
|
33652
|
+
- 'An HTTP export accepts this field only in file mode (`http.type: "file"`, the folder mode of file-provider connectors such as Google Drive, Box, Dropbox, Azure Blob, Google Cloud Storage and Celigo Storage). On a REST/records HTTP export the save is rejected with `not_supported`: "EDIProfile can only be associated with the export of type FTP, AS2, S3 or HTTP file."'
|
|
33613
33653
|
examples:
|
|
33614
33654
|
- 60a2c4e6f321d800129a1a3c
|
|
33615
33655
|
_postParseListenerId:
|
|
@@ -33619,8 +33659,10 @@ components:
|
|
|
33619
33659
|
description: |-
|
|
33620
33660
|
Webhook export invoked once per file after EDI parsing, on both success and failure
|
|
33621
33661
|
(errors are included in the payload when parsing fails). Primarily used to send
|
|
33622
|
-
functional acknowledgements (997/999) to trading partners.
|
|
33623
|
-
|
|
33662
|
+
functional acknowledgements (997/999) to trading partners. Accepted on the file-reading
|
|
33663
|
+
exports that parse EDI — FTP, AS2, S3 and HTTP file mode (`http.type: "file"`).
|
|
33664
|
+
x-celigo-ai-guidance:
|
|
33665
|
+
- 'The listener must be an export with `type: "webhook"` and `webhook.provider: "integrator-extension"`; any other export id is rejected with `invalid_post_parse_listener`. On an HTTP export outside file mode the save is rejected with `post_parse_listener_not_supported`: "Listener for functional acknowledgment is only supported for AS2, FTP, S3 and HTTP file export."'
|
|
33624
33666
|
examples:
|
|
33625
33667
|
- 60a2c4e6f321d800129a1a3c
|
|
33626
33668
|
externalId:
|
package/package.json
CHANGED