@celigo/api-specs 0.2.22 → 0.2.24
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 +6 -5
- package/dist/api.yml +25 -14
- package/dist/connection.yml +81 -0
- package/dist/editransaction.yml +7 -7
- package/dist/export.yml +41 -20
- package/dist/import.yml +21 -9
- package/dist/integration.yml +4 -0
- package/dist/tool.yml +52 -24
- package/package.json +1 -1
- package/schemas.json +4 -3
package/dist/ai-agent.yml
CHANGED
|
@@ -4958,11 +4958,6 @@ components:
|
|
|
4958
4958
|
`hooks.preSavePage` script, or for a file-definition export make the repeating segment the
|
|
4959
4959
|
record boundary in the definition's rules.
|
|
4960
4960
|
x-celigo-ai-guidance:
|
|
4961
|
-
- |-
|
|
4962
|
-
Two modes, decided by the SHAPE of the record entering the step. Object record with a child
|
|
4963
|
-
array under a field → set ``pathToMany`` to that field. Array record (a ``groupByFields``
|
|
4964
|
-
export, a CSV/file group, a script that returns an array) → leave ``pathToMany`` blank; each
|
|
4965
|
-
element becomes one record. Live-verified 2026-09-10 on flows, Tools, and APIs.
|
|
4966
4961
|
- |-
|
|
4967
4962
|
Only imports and lookups (exports placed as page processors) fan out. On a standalone export
|
|
4968
4963
|
(a flow's page generator) the API saves ``oneToMany`` / ``pathToMany`` and applies neither:
|
|
@@ -4971,6 +4966,12 @@ components:
|
|
|
4971
4966
|
the setting on the export, and as THREE child records with the same setting on the import.
|
|
4972
4967
|
Never propose these fields as the way to split a standalone export's records; that is
|
|
4973
4968
|
``hooks.preSavePage`` work (or, for a file definition, the definition's record boundary).
|
|
4969
|
+
The rules below apply only on a step that receives a record.
|
|
4970
|
+
- |-
|
|
4971
|
+
Two modes, decided by the SHAPE of the record entering the step. Object record with a child
|
|
4972
|
+
array under a field → set ``pathToMany`` to that field. Array record (a ``groupByFields``
|
|
4973
|
+
export, a CSV/file group, a script that returns an array) → leave ``pathToMany`` blank; each
|
|
4974
|
+
element becomes one record. Live-verified 2026-09-10 on flows, Tools, and APIs.
|
|
4974
4975
|
- |-
|
|
4975
4976
|
Blank ``pathToMany`` on an OBJECT record fails every record with code ``oneToMany_error``:
|
|
4976
4977
|
"Failed to extract child records from oneToMany import data. Record at index 0 was not an
|
package/dist/api.yml
CHANGED
|
@@ -3001,14 +3001,37 @@ components:
|
|
|
3001
3001
|
- Customer API
|
|
3002
3002
|
- Order Management API
|
|
3003
3003
|
_integrationId:
|
|
3004
|
-
type:
|
|
3004
|
+
type:
|
|
3005
|
+
- string
|
|
3006
|
+
- 'null'
|
|
3005
3007
|
format: objectId
|
|
3006
3008
|
x-celigo-refModel: integrations
|
|
3007
|
-
description:
|
|
3009
|
+
description: |-
|
|
3010
|
+
Integration this API belongs to. **Builder mode only** — a script-mode
|
|
3011
|
+
API is always account-level and the server silently drops this field.
|
|
3012
|
+
Send `null` (or omit) to keep the API account-level; on reads the field
|
|
3013
|
+
is omitted when unset, never `null`.
|
|
3008
3014
|
examples:
|
|
3009
3015
|
- 5e9a8f7c6b3d2a0011c4e5f6
|
|
3010
3016
|
x-celigo-ai-guidance:
|
|
3011
3017
|
- To move the API to a different integration, PUT with a changed _integrationId; the platform registers the API's step connections in the target integration on save.
|
|
3018
|
+
- |-
|
|
3019
|
+
PUT is a full replace: omitting _integrationId (or sending null) on an
|
|
3020
|
+
integration-owned API moves it back to the account level and clears
|
|
3021
|
+
_apiGroupingId with it.
|
|
3022
|
+
_apiGroupingId:
|
|
3023
|
+
type:
|
|
3024
|
+
- string
|
|
3025
|
+
- 'null'
|
|
3026
|
+
format: objectId
|
|
3027
|
+
description: |-
|
|
3028
|
+
One of the owning integration's `apiGroupings`, subdividing its APIs.
|
|
3029
|
+
Requires `_integrationId` in the same write — sent without it, the server
|
|
3030
|
+
silently drops both — so builder mode only. `PUT /v1/apis/updateApiGrouping`
|
|
3031
|
+
regroups many APIs at once; this field carries the same value on a single
|
|
3032
|
+
API. On reads the field is omitted when unset, never `null`.
|
|
3033
|
+
examples:
|
|
3034
|
+
- 60a1b2c3d4e5f60012345678
|
|
3012
3035
|
description:
|
|
3013
3036
|
type: string
|
|
3014
3037
|
description: Optional description of the API's purpose.
|
|
@@ -3208,18 +3231,6 @@ components:
|
|
|
3208
3231
|
description: Unique identifier for the API.
|
|
3209
3232
|
examples:
|
|
3210
3233
|
- 68ae4264b5f755d2dd3796b4
|
|
3211
|
-
_apiGroupingId:
|
|
3212
|
-
type:
|
|
3213
|
-
- string
|
|
3214
|
-
- 'null'
|
|
3215
|
-
format: objectId
|
|
3216
|
-
readOnly: true
|
|
3217
|
-
description: |-
|
|
3218
|
-
API grouping this API belongs to. Set only via
|
|
3219
|
-
`PUT /apis/grouping`; the server ignores this field in POST/PUT
|
|
3220
|
-
bodies on this resource. May be `null` after ungrouping.
|
|
3221
|
-
examples:
|
|
3222
|
-
- 60a1b2c3d4e5f60012345678
|
|
3223
3234
|
_scriptId:
|
|
3224
3235
|
type: string
|
|
3225
3236
|
format: objectId
|
package/dist/connection.yml
CHANGED
|
@@ -927,6 +927,87 @@ paths:
|
|
|
927
927
|
Deletes a connection permanently. This operation cannot be undone.
|
|
928
928
|
The connection must not be in use by any active flows or integrations.
|
|
929
929
|
/v1/connections/{_id}/ping:
|
|
930
|
+
get:
|
|
931
|
+
x-internal: false
|
|
932
|
+
summary: Ping an existing connection via GET
|
|
933
|
+
description: |-
|
|
934
|
+
GET variant of the saved-connection ping — identical behavior to
|
|
935
|
+
`POST /v1/connections/{_id}/ping`, with no request body to send. Runs the adaptor's ping
|
|
936
|
+
routine against the connection identified by `_id` to verify its credentials and network
|
|
937
|
+
configuration still work; no data is read, written, or modified.
|
|
938
|
+
|
|
939
|
+
Inspect the response body, not the HTTP status, to determine the outcome: success and
|
|
940
|
+
adaptor-level failures both return HTTP 200 — success is `{code: 200}`, failures are
|
|
941
|
+
`{errors: [...]}`. The only non-success status is 404, when `_id` does not resolve to a
|
|
942
|
+
connection.
|
|
943
|
+
operationId: pingConnectionByGet
|
|
944
|
+
tags:
|
|
945
|
+
- Connections
|
|
946
|
+
parameters:
|
|
947
|
+
- in: path
|
|
948
|
+
name: _id
|
|
949
|
+
required: true
|
|
950
|
+
schema:
|
|
951
|
+
type: string
|
|
952
|
+
format: objectId
|
|
953
|
+
x-celigo-refModel: connections
|
|
954
|
+
description: Connection ID to ping.
|
|
955
|
+
responses:
|
|
956
|
+
'200':
|
|
957
|
+
description: |-
|
|
958
|
+
Ping executed. **Inspect the body** to determine outcome — success and
|
|
959
|
+
adaptor-level failures both return HTTP 200. Success returns
|
|
960
|
+
`{code: 200}`; adaptor-level failures return `{errors: [...]}`.
|
|
961
|
+
content:
|
|
962
|
+
application/json:
|
|
963
|
+
schema:
|
|
964
|
+
oneOf:
|
|
965
|
+
- title: Ping success
|
|
966
|
+
type: object
|
|
967
|
+
required:
|
|
968
|
+
- code
|
|
969
|
+
properties:
|
|
970
|
+
code:
|
|
971
|
+
type: integer
|
|
972
|
+
description: Mirrors the HTTP status — always 200 on success.
|
|
973
|
+
example: 200
|
|
974
|
+
additionalProperties: true
|
|
975
|
+
- $ref: '#/components/schemas/Error'
|
|
976
|
+
examples:
|
|
977
|
+
success:
|
|
978
|
+
summary: Connection reachable
|
|
979
|
+
value:
|
|
980
|
+
code: 200
|
|
981
|
+
dns_failure:
|
|
982
|
+
summary: Connection's baseURI host could not be resolved
|
|
983
|
+
value:
|
|
984
|
+
errors:
|
|
985
|
+
- code: invalid_host
|
|
986
|
+
message: 'Unknown host: api.example.invalid. We were unable to verify this host using a DNS lookup.'
|
|
987
|
+
source: resource
|
|
988
|
+
'401':
|
|
989
|
+
$ref: '#/components/responses/401-unauthorized'
|
|
990
|
+
'404':
|
|
991
|
+
description: |-
|
|
992
|
+
No connection found for the given `_id`. The body is an `invalid_ref`
|
|
993
|
+
error — note this is a 404, not a 400, and the field pointer is `_id`.
|
|
994
|
+
content:
|
|
995
|
+
application/json:
|
|
996
|
+
schema:
|
|
997
|
+
$ref: '#/components/schemas/Error'
|
|
998
|
+
examples:
|
|
999
|
+
invalid_ref:
|
|
1000
|
+
value:
|
|
1001
|
+
errors:
|
|
1002
|
+
- field: _id
|
|
1003
|
+
code: invalid_ref
|
|
1004
|
+
message: unable to find connection for the given id.
|
|
1005
|
+
x-celigo-ai-guidance:
|
|
1006
|
+
- |-
|
|
1007
|
+
Behaves identically to POST /v1/connections/{_id}/ping and takes no request body — use
|
|
1008
|
+
whichever verb the client supports. Both verbs return HTTP 200 with {code: 200} on
|
|
1009
|
+
success and HTTP 200 with {errors: [...]} on adaptor-level failure, so inspect the body,
|
|
1010
|
+
not the status code.
|
|
930
1011
|
post:
|
|
931
1012
|
x-internal: false
|
|
932
1013
|
summary: Ping an existing connection
|
package/dist/editransaction.yml
CHANGED
|
@@ -1047,13 +1047,13 @@ components:
|
|
|
1047
1047
|
- rejected
|
|
1048
1048
|
- failed
|
|
1049
1049
|
x-enumDescriptions:
|
|
1050
|
-
inProgress:
|
|
1051
|
-
notApplicable:
|
|
1052
|
-
notReceived:
|
|
1053
|
-
accepted:
|
|
1054
|
-
acceptedWithErrors:
|
|
1055
|
-
rejected:
|
|
1056
|
-
failed:
|
|
1050
|
+
inProgress: Awaiting functional acknowledgment from the trading partner.
|
|
1051
|
+
notApplicable: No functional acknowledgment expected — the document is itself an FA, or the trading partner does not require one.
|
|
1052
|
+
notReceived: Functional acknowledgment expected but not yet received.
|
|
1053
|
+
accepted: Functional acknowledgment received and transaction was accepted.
|
|
1054
|
+
acceptedWithErrors: Functional acknowledgment received with errors but transaction was accepted.
|
|
1055
|
+
rejected: Functional acknowledgment received and transaction was rejected.
|
|
1056
|
+
failed: Functional acknowledgment processing failed.
|
|
1057
1057
|
description: |-
|
|
1058
1058
|
Filter by functional acknowledgment status. Pass an array of one or
|
|
1059
1059
|
more values to match. Must be an array, not a bare string. Omit to
|
package/dist/export.yml
CHANGED
|
@@ -810,11 +810,6 @@ components:
|
|
|
810
810
|
`hooks.preSavePage` script, or for a file-definition export make the repeating segment the
|
|
811
811
|
record boundary in the definition's rules.
|
|
812
812
|
x-celigo-ai-guidance:
|
|
813
|
-
- |-
|
|
814
|
-
Two modes, decided by the SHAPE of the record entering the step. Object record with a child
|
|
815
|
-
array under a field → set ``pathToMany`` to that field. Array record (a ``groupByFields``
|
|
816
|
-
export, a CSV/file group, a script that returns an array) → leave ``pathToMany`` blank; each
|
|
817
|
-
element becomes one record. Live-verified 2026-09-10 on flows, Tools, and APIs.
|
|
818
813
|
- |-
|
|
819
814
|
Only imports and lookups (exports placed as page processors) fan out. On a standalone export
|
|
820
815
|
(a flow's page generator) the API saves ``oneToMany`` / ``pathToMany`` and applies neither:
|
|
@@ -823,6 +818,12 @@ components:
|
|
|
823
818
|
the setting on the export, and as THREE child records with the same setting on the import.
|
|
824
819
|
Never propose these fields as the way to split a standalone export's records; that is
|
|
825
820
|
``hooks.preSavePage`` work (or, for a file definition, the definition's record boundary).
|
|
821
|
+
The rules below apply only on a step that receives a record.
|
|
822
|
+
- |-
|
|
823
|
+
Two modes, decided by the SHAPE of the record entering the step. Object record with a child
|
|
824
|
+
array under a field → set ``pathToMany`` to that field. Array record (a ``groupByFields``
|
|
825
|
+
export, a CSV/file group, a script that returns an array) → leave ``pathToMany`` blank; each
|
|
826
|
+
element becomes one record. Live-verified 2026-09-10 on flows, Tools, and APIs.
|
|
826
827
|
- |-
|
|
827
828
|
Blank ``pathToMany`` on an OBJECT record fails every record with code ``oneToMany_error``:
|
|
828
829
|
"Failed to extract child records from oneToMany import data. Record at index 0 was not an
|
|
@@ -5921,10 +5922,10 @@ components:
|
|
|
5921
5922
|
- blob
|
|
5922
5923
|
- csvstream
|
|
5923
5924
|
x-enumDescriptions:
|
|
5924
|
-
file:
|
|
5925
|
+
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)
|
|
5925
5926
|
blob: Transfers the raw response body downstream as a blob without parsing it into records.
|
|
5926
5927
|
csvstream: Streams a large CSV response, parsing it row-by-row instead of loading the whole body into memory.
|
|
5927
|
-
description: Set to `file`
|
|
5928
|
+
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.'
|
|
5928
5929
|
x-celigo-ai-guidance:
|
|
5929
5930
|
- |-
|
|
5930
5931
|
## IMPORTANT: This field should be LEFT UNDEFINED for the vast majority of HTTP exports.
|
|
@@ -5946,18 +5947,24 @@ components:
|
|
|
5946
5947
|
- "Export all Shopify Customers" → undefined (returns JSON customer records)
|
|
5947
5948
|
- "Retrieve orders from custom REST API" → undefined (returns JSON order records)
|
|
5948
5949
|
- |-
|
|
5949
|
-
## WHEN TO SET THIS FIELD TO 'file' (
|
|
5950
|
+
## WHEN TO SET THIS FIELD TO 'file' (the export works with FILES, not a record endpoint):
|
|
5950
5951
|
|
|
5951
|
-
Set this field to 'file'
|
|
5952
|
-
- The endpoint
|
|
5953
|
-
|
|
5954
|
-
|
|
5955
|
-
-
|
|
5952
|
+
Set this field to 'file' in two situations:
|
|
5953
|
+
- The HTTP endpoint is specifically designed to download files — it returns raw binary
|
|
5954
|
+
file content (PDFs, images, ZIP files) or is a file download service (invoices,
|
|
5955
|
+
reports, attachments) whose body is saved as a file rather than parsed as records
|
|
5956
|
+
- The connection is a cloud file provider used in FOLDER mode (Google Drive, Box, Dropbox,
|
|
5957
|
+
Azure Blob Storage, Google Cloud Storage, Celigo Storage): the export reads the files
|
|
5958
|
+
in a folder and the 'file' object's `type` (csv, json, xml, xlsx, filedefinition)
|
|
5959
|
+
parses each one into records — the same file layer as an FTP or S3 export
|
|
5956
5960
|
|
|
5957
5961
|
Examples of when to set type: "file":
|
|
5958
5962
|
- "Download PDF invoices from the API" → type: "file"
|
|
5959
5963
|
- "Retrieve image files from a file server" → type: "file"
|
|
5960
|
-
- "
|
|
5964
|
+
- "Read the CSV files dropped in our Google Drive folder" → type: "file", with file.type "csv"
|
|
5965
|
+
- "Parse EDI X12 850 files from a Google Drive / Celigo Storage folder" → type: "file",
|
|
5966
|
+
with file.type "filedefinition" and a top-level _ediProfileId (EDI fields are
|
|
5967
|
+
accepted on HTTP exports only in file mode)
|
|
5961
5968
|
- |-
|
|
5962
5969
|
## IMPLEMENTATION DETAILS
|
|
5963
5970
|
|
|
@@ -5965,7 +5972,9 @@ components:
|
|
|
5965
5972
|
- The 'file' object property MUST also be configured
|
|
5966
5973
|
- The export appears as a "Transfer" step in the Flow Builder UI
|
|
5967
5974
|
- The system applies file-specific processing to the HTTP response
|
|
5968
|
-
- Downstream steps receive file
|
|
5975
|
+
- Downstream steps receive records when the 'file' object's `type` parses the files
|
|
5976
|
+
(csv, json, xml, xlsx, filedefinition with `file.output: "records"`), or the file
|
|
5977
|
+
content itself when `file.output` is "blobKeys"
|
|
5969
5978
|
|
|
5970
5979
|
When this field is undefined (default for most exports):
|
|
5971
5980
|
- The export appears as a standard "Export" step in the Flow Builder UI
|
|
@@ -5980,6 +5989,9 @@ components:
|
|
|
5980
5989
|
→ YES: Leave this field undefined
|
|
5981
5990
|
3. Does the API endpoint return raw file content (PDFs, images, binary data)?
|
|
5982
5991
|
→ YES: Set this field to "file" (and configure the 'file' property)
|
|
5992
|
+
4. Is the connection a cloud file provider and the export reads a FOLDER of files
|
|
5993
|
+
(CSV, JSON, XML, XLSX, or EDI via a file definition)?
|
|
5994
|
+
→ YES: Set this field to "file" (and configure the 'file' property with the parsing type)
|
|
5983
5995
|
|
|
5984
5996
|
Remember: When in doubt, leave this field undefined. Most HTTP exports are standard data exports.
|
|
5985
5997
|
examples:
|
|
@@ -15517,6 +15529,8 @@ components:
|
|
|
15517
15529
|
- prepareFormData
|
|
15518
15530
|
_scriptId:
|
|
15519
15531
|
type: string
|
|
15532
|
+
format: objectId
|
|
15533
|
+
x-celigo-refModel: scripts
|
|
15520
15534
|
description: |
|
|
15521
15535
|
Reference to a predefined script resource containing the initialization function.
|
|
15522
15536
|
|
|
@@ -15729,6 +15743,8 @@ components:
|
|
|
15729
15743
|
- prepareResourceForSave
|
|
15730
15744
|
_scriptId:
|
|
15731
15745
|
type: string
|
|
15746
|
+
format: objectId
|
|
15747
|
+
x-celigo-refModel: scripts
|
|
15732
15748
|
description: |
|
|
15733
15749
|
Reference to a predefined script resource containing the preSave function.
|
|
15734
15750
|
|
|
@@ -16204,9 +16220,12 @@ components:
|
|
|
16204
16220
|
format: objectId
|
|
16205
16221
|
x-celigo-refModel: ediprofiles
|
|
16206
16222
|
description: |-
|
|
16207
|
-
EDI profile this export uses to parse incoming X12
|
|
16208
|
-
it supplies the envelope qualifiers, delimiters, version, and validation rules.
|
|
16209
|
-
when the export parses or validates EDI files; omit it otherwise.
|
|
16223
|
+
EDI profile this export uses to parse incoming X12 or EDIFACT documents into structured
|
|
16224
|
+
JSON — it supplies the envelope qualifiers, delimiters, version, and validation rules.
|
|
16225
|
+
Set it when the export parses or validates EDI files; omit it otherwise. Accepted on the
|
|
16226
|
+
file-reading exports — FTP, AS2, S3 and HTTP file mode (`http.type: "file"`).
|
|
16227
|
+
x-celigo-ai-guidance:
|
|
16228
|
+
- '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."'
|
|
16210
16229
|
examples:
|
|
16211
16230
|
- 60a2c4e6f321d800129a1a3c
|
|
16212
16231
|
_postParseListenerId:
|
|
@@ -16216,8 +16235,10 @@ components:
|
|
|
16216
16235
|
description: |-
|
|
16217
16236
|
Webhook export invoked once per file after EDI parsing, on both success and failure
|
|
16218
16237
|
(errors are included in the payload when parsing fails). Primarily used to send
|
|
16219
|
-
functional acknowledgements (997/999) to trading partners.
|
|
16220
|
-
|
|
16238
|
+
functional acknowledgements (997/999) to trading partners. Accepted on the file-reading
|
|
16239
|
+
exports that parse EDI — FTP, AS2, S3 and HTTP file mode (`http.type: "file"`).
|
|
16240
|
+
x-celigo-ai-guidance:
|
|
16241
|
+
- '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."'
|
|
16221
16242
|
examples:
|
|
16222
16243
|
- 60a2c4e6f321d800129a1a3c
|
|
16223
16244
|
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
|
|
|
@@ -10588,11 +10592,6 @@ components:
|
|
|
10588
10592
|
`hooks.preSavePage` script, or for a file-definition export make the repeating segment the
|
|
10589
10593
|
record boundary in the definition's rules.
|
|
10590
10594
|
x-celigo-ai-guidance:
|
|
10591
|
-
- |-
|
|
10592
|
-
Two modes, decided by the SHAPE of the record entering the step. Object record with a child
|
|
10593
|
-
array under a field → set ``pathToMany`` to that field. Array record (a ``groupByFields``
|
|
10594
|
-
export, a CSV/file group, a script that returns an array) → leave ``pathToMany`` blank; each
|
|
10595
|
-
element becomes one record. Live-verified 2026-09-10 on flows, Tools, and APIs.
|
|
10596
10595
|
- |-
|
|
10597
10596
|
Only imports and lookups (exports placed as page processors) fan out. On a standalone export
|
|
10598
10597
|
(a flow's page generator) the API saves ``oneToMany`` / ``pathToMany`` and applies neither:
|
|
@@ -10601,6 +10600,12 @@ components:
|
|
|
10601
10600
|
the setting on the export, and as THREE child records with the same setting on the import.
|
|
10602
10601
|
Never propose these fields as the way to split a standalone export's records; that is
|
|
10603
10602
|
``hooks.preSavePage`` work (or, for a file definition, the definition's record boundary).
|
|
10603
|
+
The rules below apply only on a step that receives a record.
|
|
10604
|
+
- |-
|
|
10605
|
+
Two modes, decided by the SHAPE of the record entering the step. Object record with a child
|
|
10606
|
+
array under a field → set ``pathToMany`` to that field. Array record (a ``groupByFields``
|
|
10607
|
+
export, a CSV/file group, a script that returns an array) → leave ``pathToMany`` blank; each
|
|
10608
|
+
element becomes one record. Live-verified 2026-09-10 on flows, Tools, and APIs.
|
|
10604
10609
|
- |-
|
|
10605
10610
|
Blank ``pathToMany`` on an OBJECT record fails every record with code ``oneToMany_error``:
|
|
10606
10611
|
"Failed to extract child records from oneToMany import data. Record at index 0 was not an
|
|
@@ -13852,6 +13857,8 @@ components:
|
|
|
13852
13857
|
- prepareFormData
|
|
13853
13858
|
_scriptId:
|
|
13854
13859
|
type: string
|
|
13860
|
+
format: objectId
|
|
13861
|
+
x-celigo-refModel: scripts
|
|
13855
13862
|
description: |
|
|
13856
13863
|
Reference to a predefined script resource containing the initialization function.
|
|
13857
13864
|
|
|
@@ -13920,6 +13927,8 @@ components:
|
|
|
13920
13927
|
- prepareResourceForSave
|
|
13921
13928
|
_scriptId:
|
|
13922
13929
|
type: string
|
|
13930
|
+
format: objectId
|
|
13931
|
+
x-celigo-refModel: scripts
|
|
13923
13932
|
description: |
|
|
13924
13933
|
Reference to a predefined script resource containing the preSave function.
|
|
13925
13934
|
|
|
@@ -14412,9 +14421,12 @@ components:
|
|
|
14412
14421
|
format: objectId
|
|
14413
14422
|
x-celigo-refModel: ediprofiles
|
|
14414
14423
|
description: |-
|
|
14415
|
-
EDI profile this import uses to generate outbound X12
|
|
14416
|
-
envelope qualifiers, delimiters, version, and validation rules. Set it when the
|
|
14417
|
-
produces EDI output; omit it otherwise.
|
|
14424
|
+
EDI profile this import uses to generate outbound X12 or EDIFACT documents — it supplies
|
|
14425
|
+
the envelope qualifiers, delimiters, version, and validation rules. Set it when the
|
|
14426
|
+
import produces EDI output; omit it otherwise. Accepted on the file-writing imports —
|
|
14427
|
+
FTP, AS2, S3 and HTTP file mode (`http.type: "file"`).
|
|
14428
|
+
x-celigo-ai-guidance:
|
|
14429
|
+
- '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.'
|
|
14418
14430
|
parsers:
|
|
14419
14431
|
type: array
|
|
14420
14432
|
description: |-
|
package/dist/integration.yml
CHANGED
|
@@ -2751,6 +2751,8 @@ components:
|
|
|
2751
2751
|
- prepareFormData
|
|
2752
2752
|
_scriptId:
|
|
2753
2753
|
type: string
|
|
2754
|
+
format: objectId
|
|
2755
|
+
x-celigo-refModel: scripts
|
|
2754
2756
|
description: |
|
|
2755
2757
|
Reference to a predefined script resource containing the initialization function.
|
|
2756
2758
|
|
|
@@ -2819,6 +2821,8 @@ components:
|
|
|
2819
2821
|
- prepareResourceForSave
|
|
2820
2822
|
_scriptId:
|
|
2821
2823
|
type: string
|
|
2824
|
+
format: objectId
|
|
2825
|
+
x-celigo-refModel: scripts
|
|
2822
2826
|
description: |
|
|
2823
2827
|
Reference to a predefined script resource containing the preSave function.
|
|
2824
2828
|
|
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
|
|
|
@@ -19446,11 +19450,6 @@ components:
|
|
|
19446
19450
|
`hooks.preSavePage` script, or for a file-definition export make the repeating segment the
|
|
19447
19451
|
record boundary in the definition's rules.
|
|
19448
19452
|
x-celigo-ai-guidance:
|
|
19449
|
-
- |-
|
|
19450
|
-
Two modes, decided by the SHAPE of the record entering the step. Object record with a child
|
|
19451
|
-
array under a field → set ``pathToMany`` to that field. Array record (a ``groupByFields``
|
|
19452
|
-
export, a CSV/file group, a script that returns an array) → leave ``pathToMany`` blank; each
|
|
19453
|
-
element becomes one record. Live-verified 2026-09-10 on flows, Tools, and APIs.
|
|
19454
19453
|
- |-
|
|
19455
19454
|
Only imports and lookups (exports placed as page processors) fan out. On a standalone export
|
|
19456
19455
|
(a flow's page generator) the API saves ``oneToMany`` / ``pathToMany`` and applies neither:
|
|
@@ -19459,6 +19458,12 @@ components:
|
|
|
19459
19458
|
the setting on the export, and as THREE child records with the same setting on the import.
|
|
19460
19459
|
Never propose these fields as the way to split a standalone export's records; that is
|
|
19461
19460
|
``hooks.preSavePage`` work (or, for a file definition, the definition's record boundary).
|
|
19461
|
+
The rules below apply only on a step that receives a record.
|
|
19462
|
+
- |-
|
|
19463
|
+
Two modes, decided by the SHAPE of the record entering the step. Object record with a child
|
|
19464
|
+
array under a field → set ``pathToMany`` to that field. Array record (a ``groupByFields``
|
|
19465
|
+
export, a CSV/file group, a script that returns an array) → leave ``pathToMany`` blank; each
|
|
19466
|
+
element becomes one record. Live-verified 2026-09-10 on flows, Tools, and APIs.
|
|
19462
19467
|
- |-
|
|
19463
19468
|
Blank ``pathToMany`` on an OBJECT record fails every record with code ``oneToMany_error``:
|
|
19464
19469
|
"Failed to extract child records from oneToMany import data. Record at index 0 was not an
|
|
@@ -20631,6 +20636,8 @@ components:
|
|
|
20631
20636
|
- prepareFormData
|
|
20632
20637
|
_scriptId:
|
|
20633
20638
|
type: string
|
|
20639
|
+
format: objectId
|
|
20640
|
+
x-celigo-refModel: scripts
|
|
20634
20641
|
description: |
|
|
20635
20642
|
Reference to a predefined script resource containing the initialization function.
|
|
20636
20643
|
|
|
@@ -20699,6 +20706,8 @@ components:
|
|
|
20699
20706
|
- prepareResourceForSave
|
|
20700
20707
|
_scriptId:
|
|
20701
20708
|
type: string
|
|
20709
|
+
format: objectId
|
|
20710
|
+
x-celigo-refModel: scripts
|
|
20702
20711
|
description: |
|
|
20703
20712
|
Reference to a predefined script resource containing the preSave function.
|
|
20704
20713
|
|
|
@@ -21191,9 +21200,12 @@ components:
|
|
|
21191
21200
|
format: objectId
|
|
21192
21201
|
x-celigo-refModel: ediprofiles
|
|
21193
21202
|
description: |-
|
|
21194
|
-
EDI profile this import uses to generate outbound X12
|
|
21195
|
-
envelope qualifiers, delimiters, version, and validation rules. Set it when the
|
|
21196
|
-
produces EDI output; omit it otherwise.
|
|
21203
|
+
EDI profile this import uses to generate outbound X12 or EDIFACT documents — it supplies
|
|
21204
|
+
the envelope qualifiers, delimiters, version, and validation rules. Set it when the
|
|
21205
|
+
import produces EDI output; omit it otherwise. Accepted on the file-writing imports —
|
|
21206
|
+
FTP, AS2, S3 and HTTP file mode (`http.type: "file"`).
|
|
21207
|
+
x-celigo-ai-guidance:
|
|
21208
|
+
- '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.'
|
|
21197
21209
|
parsers:
|
|
21198
21210
|
type: array
|
|
21199
21211
|
description: |-
|
|
@@ -26313,10 +26325,10 @@ components:
|
|
|
26313
26325
|
- blob
|
|
26314
26326
|
- csvstream
|
|
26315
26327
|
x-enumDescriptions:
|
|
26316
|
-
file:
|
|
26328
|
+
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)
|
|
26317
26329
|
blob: Transfers the raw response body downstream as a blob without parsing it into records.
|
|
26318
26330
|
csvstream: Streams a large CSV response, parsing it row-by-row instead of loading the whole body into memory.
|
|
26319
|
-
description: Set to `file`
|
|
26331
|
+
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.'
|
|
26320
26332
|
x-celigo-ai-guidance:
|
|
26321
26333
|
- |-
|
|
26322
26334
|
## IMPORTANT: This field should be LEFT UNDEFINED for the vast majority of HTTP exports.
|
|
@@ -26338,18 +26350,24 @@ components:
|
|
|
26338
26350
|
- "Export all Shopify Customers" → undefined (returns JSON customer records)
|
|
26339
26351
|
- "Retrieve orders from custom REST API" → undefined (returns JSON order records)
|
|
26340
26352
|
- |-
|
|
26341
|
-
## WHEN TO SET THIS FIELD TO 'file' (
|
|
26353
|
+
## WHEN TO SET THIS FIELD TO 'file' (the export works with FILES, not a record endpoint):
|
|
26342
26354
|
|
|
26343
|
-
Set this field to 'file'
|
|
26344
|
-
- The endpoint
|
|
26345
|
-
|
|
26346
|
-
|
|
26347
|
-
-
|
|
26355
|
+
Set this field to 'file' in two situations:
|
|
26356
|
+
- The HTTP endpoint is specifically designed to download files — it returns raw binary
|
|
26357
|
+
file content (PDFs, images, ZIP files) or is a file download service (invoices,
|
|
26358
|
+
reports, attachments) whose body is saved as a file rather than parsed as records
|
|
26359
|
+
- The connection is a cloud file provider used in FOLDER mode (Google Drive, Box, Dropbox,
|
|
26360
|
+
Azure Blob Storage, Google Cloud Storage, Celigo Storage): the export reads the files
|
|
26361
|
+
in a folder and the 'file' object's `type` (csv, json, xml, xlsx, filedefinition)
|
|
26362
|
+
parses each one into records — the same file layer as an FTP or S3 export
|
|
26348
26363
|
|
|
26349
26364
|
Examples of when to set type: "file":
|
|
26350
26365
|
- "Download PDF invoices from the API" → type: "file"
|
|
26351
26366
|
- "Retrieve image files from a file server" → type: "file"
|
|
26352
|
-
- "
|
|
26367
|
+
- "Read the CSV files dropped in our Google Drive folder" → type: "file", with file.type "csv"
|
|
26368
|
+
- "Parse EDI X12 850 files from a Google Drive / Celigo Storage folder" → type: "file",
|
|
26369
|
+
with file.type "filedefinition" and a top-level _ediProfileId (EDI fields are
|
|
26370
|
+
accepted on HTTP exports only in file mode)
|
|
26353
26371
|
- |-
|
|
26354
26372
|
## IMPLEMENTATION DETAILS
|
|
26355
26373
|
|
|
@@ -26357,7 +26375,9 @@ components:
|
|
|
26357
26375
|
- The 'file' object property MUST also be configured
|
|
26358
26376
|
- The export appears as a "Transfer" step in the Flow Builder UI
|
|
26359
26377
|
- The system applies file-specific processing to the HTTP response
|
|
26360
|
-
- Downstream steps receive file
|
|
26378
|
+
- Downstream steps receive records when the 'file' object's `type` parses the files
|
|
26379
|
+
(csv, json, xml, xlsx, filedefinition with `file.output: "records"`), or the file
|
|
26380
|
+
content itself when `file.output` is "blobKeys"
|
|
26361
26381
|
|
|
26362
26382
|
When this field is undefined (default for most exports):
|
|
26363
26383
|
- The export appears as a standard "Export" step in the Flow Builder UI
|
|
@@ -26372,6 +26392,9 @@ components:
|
|
|
26372
26392
|
→ YES: Leave this field undefined
|
|
26373
26393
|
3. Does the API endpoint return raw file content (PDFs, images, binary data)?
|
|
26374
26394
|
→ YES: Set this field to "file" (and configure the 'file' property)
|
|
26395
|
+
4. Is the connection a cloud file provider and the export reads a FOLDER of files
|
|
26396
|
+
(CSV, JSON, XML, XLSX, or EDI via a file definition)?
|
|
26397
|
+
→ YES: Set this field to "file" (and configure the 'file' property with the parsing type)
|
|
26375
26398
|
|
|
26376
26399
|
Remember: When in doubt, leave this field undefined. Most HTTP exports are standard data exports.
|
|
26377
26400
|
examples:
|
|
@@ -33626,9 +33649,12 @@ components:
|
|
|
33626
33649
|
format: objectId
|
|
33627
33650
|
x-celigo-refModel: ediprofiles
|
|
33628
33651
|
description: |-
|
|
33629
|
-
EDI profile this export uses to parse incoming X12
|
|
33630
|
-
it supplies the envelope qualifiers, delimiters, version, and validation rules.
|
|
33631
|
-
when the export parses or validates EDI files; omit it otherwise.
|
|
33652
|
+
EDI profile this export uses to parse incoming X12 or EDIFACT documents into structured
|
|
33653
|
+
JSON — it supplies the envelope qualifiers, delimiters, version, and validation rules.
|
|
33654
|
+
Set it when the export parses or validates EDI files; omit it otherwise. Accepted on the
|
|
33655
|
+
file-reading exports — FTP, AS2, S3 and HTTP file mode (`http.type: "file"`).
|
|
33656
|
+
x-celigo-ai-guidance:
|
|
33657
|
+
- '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."'
|
|
33632
33658
|
examples:
|
|
33633
33659
|
- 60a2c4e6f321d800129a1a3c
|
|
33634
33660
|
_postParseListenerId:
|
|
@@ -33638,8 +33664,10 @@ components:
|
|
|
33638
33664
|
description: |-
|
|
33639
33665
|
Webhook export invoked once per file after EDI parsing, on both success and failure
|
|
33640
33666
|
(errors are included in the payload when parsing fails). Primarily used to send
|
|
33641
|
-
functional acknowledgements (997/999) to trading partners.
|
|
33642
|
-
|
|
33667
|
+
functional acknowledgements (997/999) to trading partners. Accepted on the file-reading
|
|
33668
|
+
exports that parse EDI — FTP, AS2, S3 and HTTP file mode (`http.type: "file"`).
|
|
33669
|
+
x-celigo-ai-guidance:
|
|
33670
|
+
- '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."'
|
|
33643
33671
|
examples:
|
|
33644
33672
|
- 60a2c4e6f321d800129a1a3c
|
|
33645
33673
|
externalId:
|
package/package.json
CHANGED
package/schemas.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"provenance": {
|
|
3
3
|
"repo": "celigo/integrator-api-specs",
|
|
4
|
-
"iasCommit": "
|
|
4
|
+
"iasCommit": "9257926",
|
|
5
5
|
"generatedAt": "2026-09-18"
|
|
6
6
|
},
|
|
7
7
|
"roots": {
|
|
@@ -1629,7 +1629,8 @@
|
|
|
1629
1629
|
"object"
|
|
1630
1630
|
],
|
|
1631
1631
|
"p": {
|
|
1632
|
-
"
|
|
1632
|
+
"_apiGroupingId": 88,
|
|
1633
|
+
"_integrationId": 88,
|
|
1633
1634
|
"builder": 162,
|
|
1634
1635
|
"description": 1,
|
|
1635
1636
|
"disabled": 9,
|
|
@@ -2058,7 +2059,7 @@
|
|
|
2058
2059
|
"p": {
|
|
2059
2060
|
"_apiGroupingId": 88,
|
|
2060
2061
|
"_id": 1,
|
|
2061
|
-
"_integrationId":
|
|
2062
|
+
"_integrationId": 88,
|
|
2062
2063
|
"_scriptId": 1,
|
|
2063
2064
|
"_templateId": 1,
|
|
2064
2065
|
"apim": 199,
|