@celigo/api-specs 0.2.125 → 0.2.126

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/import.yml CHANGED
@@ -2951,6 +2951,12 @@ components:
2951
2951
  regardless of server OS — paths are case-sensitive on UNIX/Linux servers. Supports
2952
2952
  handlebars templates.
2953
2953
  x-celigo-ai-guidance:
2954
+ - |-
2955
+ A handlebars template here is rendered against the same context as `fileName`
2956
+ (`fileMeta` is not a root key). An expression that renders empty fails the record
2957
+ with `missing_s3_key` "Can not process upload file without
2958
+ computedObject.fileLocation." — labeled source `internal` although the template is
2959
+ the cause.
2954
2960
  - |-
2955
2961
  The path to the directory on the FTP server where files will be accessed,
2956
2962
  stored, or managed.
@@ -3007,13 +3013,28 @@ components:
3007
3013
  description: |-
3008
3014
  Name of the file written to the server, including its extension; do not include directory
3009
3015
  separators — the location comes from directoryPath. Supports handlebars placeholders such
3010
- as items-{{timestamp}}.csv to generate a unique name per run.
3016
+ as items-{{timestamp}}.csv to generate a unique name per run. The template is rendered
3017
+ against the incoming record: a file-transfer import from an FTP source kept the source
3018
+ file's name with `{{record.fileMeta.fileName}}` set on `file.fileName` and this field left
3019
+ unset — other source providers expose the name under their own `fileMeta` field.
3011
3020
  x-celigo-ai-guidance:
3012
3021
  - |-
3013
3022
  When the user does not specify a file naming convention,
3014
3023
  default to a timestamped filename such as "items-{{timestamp}}.csv" so each run
3015
3024
  produces a unique file and avoids overwriting previous files.
3016
3025
  Use a fixed filename only when the user explicitly requests overwriting or a fixed name.
3026
+ - |-
3027
+ `fileMeta` is not a root key of this template's context (it is one only on
3028
+ file-provider export and lookup steps): `{{fileMeta.fileName}}` renders empty and the
3029
+ upload fails with `missing_s3_key` "Can not process upload file without
3030
+ computedObject.fileName." — an error the platform labels source `internal` although the
3031
+ template is the cause. The run-time-proven way to keep the source file's name on a
3032
+ `blob: true` import is `{{record.fileMeta.fileName}}` on `file.fileName` with this field
3033
+ omitted (the production runs of one FTP blob import set exactly that); the same template
3034
+ on this field has not been run. The field's editor preview (data version 1, its default)
3035
+ exposes the record as `data` —
3036
+ the `{blobKey, fileMeta}` record on a blob import, the page's record array otherwise —
3037
+ so `record.` previews empty there; judge by a run.
3017
3038
  - |-
3018
3039
  The name of the file to be accessed, transferred,
3019
3040
  or manipulated via FTP (File Transfer Protocol).
@@ -8522,7 +8543,10 @@ components:
8522
8543
  description: |-
8523
8544
  **REQUIRED for file-based imports.**
8524
8545
 
8525
- The name of the file to be created/written. Supports Handlebars expressions for dynamic naming.
8546
+ The name of the file to be created/written. Supports Handlebars expressions for dynamic naming,
8547
+ rendered against the incoming record — a file-transfer import keeps the source file's name from
8548
+ the record's `fileMeta`, whose field names are the exporting provider's
8549
+ (`{{record.fileMeta.fileName}}` from an FTP source, `fileMeta.name` from Google Drive).
8526
8550
 
8527
8551
  **Default behavior**
8528
8552
  - When the user does not specify a file naming convention, **always default to timestamped filenames** using `{{timestamp}}` (e.g., `"items-{{timestamp}}.csv"`). This ensures each run produces a unique file and avoids overwriting previous exports.
@@ -8540,7 +8564,20 @@ components:
8540
8564
 
8541
8565
  **Important**
8542
8566
  - For S3 imports, this should typically match the `s3.fileKey` value
8543
- - For FTP imports, this should typically match the `ftp.fileName` value
8567
+ - For FTP imports, this should typically match the `ftp.fileName` value; the one blob file-transfer run on record set only this field and left `ftp.fileName` unset
8568
+ x-celigo-ai-guidance:
8569
+ - |-
8570
+ `fileMeta` is not a root key of this template's context (it is one only on
8571
+ file-provider export and lookup steps): `{{fileMeta.fileName}}` renders empty and the
8572
+ file has no name; on an FTP import the record then fails with `missing_s3_key` "Can not
8573
+ process upload file without computedObject.fileName.", labeled source `internal`
8574
+ although the template is the cause. The incoming record carries the source file's
8575
+ metadata — on an FTP blob import `{{record.fileMeta.fileName}}` keeps the source file's
8576
+ name at run time (the only spelling proven by a run). The field's editor preview
8577
+ (data version 1, its default) exposes the record as `data` — the `{blobKey, fileMeta}`
8578
+ record on a `blob: true` import, the page's record array otherwise — so `record.`
8579
+ previews empty there; judge by a run. The metadata field names are the exporting
8580
+ provider's — read them off the incoming sample record.
8544
8581
  examples:
8545
8582
  - customers-{{timestamp}}.json
8546
8583
  - orders-export.csv
@@ -16021,6 +16058,14 @@ components:
16021
16058
  On AiAgentImport, GuardrailImport and ToolImport the save fails with 422 `not_supported`
16022
16059
  ("Field "blobKeyPath" is not supported for this import type."); route file content
16023
16060
  through a blob-capable import (HTTP, FTP, S3) instead.
16061
+ - |-
16062
+ Optional on a `blob: true` file-provider import: when omitted the platform reads the
16063
+ record's root `blobKey` — the field a blob export emits on its `{blobKey, fileMeta}`
16064
+ record — so a file-transfer flow needs no `blobKeyPath`. Observed on an FTP import
16065
+ (production runs writing files with no `blobKeyPath`) and on a Google Drive folder
16066
+ upload (`http.type: file`, the marketplace file-transfer template's shape); other
16067
+ file providers were not probed. Set it only when a response mapping placed the key
16068
+ elsewhere; on those two providers its absence is not a cause of upload failures.
16024
16069
  - |-
16025
16070
  The value at this path must be a blobKey produced by an upstream blob
16026
16071
  export or blob lookup and carried onto the record via that step's
@@ -16049,7 +16094,8 @@ components:
16049
16094
  - ToolImport
16050
16095
  description: |-
16051
16096
  When true, this import transfers raw file content (blobs) to the destination rather than
16052
- structured records, reading each file through `blobKeyPath`. Not accepted on
16097
+ structured records, reading each file through `blobKeyPath` (optional on FTP and Google
16098
+ Drive file-provider imports, which fall back to the record's root `blobKey`). Not accepted on
16053
16099
  `AiAgentImport`, `GuardrailImport`, or `ToolImport` — those adaptors process records only
16054
16100
  and reject the flag with 422 `not_supported`.
16055
16101
  x-celigo-ai-guidance:
package/dist/tool.yml CHANGED
@@ -14532,6 +14532,12 @@ components:
14532
14532
  regardless of server OS — paths are case-sensitive on UNIX/Linux servers. Supports
14533
14533
  handlebars templates.
14534
14534
  x-celigo-ai-guidance:
14535
+ - |-
14536
+ A handlebars template here is rendered against the same context as `fileName`
14537
+ (`fileMeta` is not a root key). An expression that renders empty fails the record
14538
+ with `missing_s3_key` "Can not process upload file without
14539
+ computedObject.fileLocation." — labeled source `internal` although the template is
14540
+ the cause.
14535
14541
  - |-
14536
14542
  The path to the directory on the FTP server where files will be accessed,
14537
14543
  stored, or managed.
@@ -14588,13 +14594,28 @@ components:
14588
14594
  description: |-
14589
14595
  Name of the file written to the server, including its extension; do not include directory
14590
14596
  separators — the location comes from directoryPath. Supports handlebars placeholders such
14591
- as items-{{timestamp}}.csv to generate a unique name per run.
14597
+ as items-{{timestamp}}.csv to generate a unique name per run. The template is rendered
14598
+ against the incoming record: a file-transfer import from an FTP source kept the source
14599
+ file's name with `{{record.fileMeta.fileName}}` set on `file.fileName` and this field left
14600
+ unset — other source providers expose the name under their own `fileMeta` field.
14592
14601
  x-celigo-ai-guidance:
14593
14602
  - |-
14594
14603
  When the user does not specify a file naming convention,
14595
14604
  default to a timestamped filename such as "items-{{timestamp}}.csv" so each run
14596
14605
  produces a unique file and avoids overwriting previous files.
14597
14606
  Use a fixed filename only when the user explicitly requests overwriting or a fixed name.
14607
+ - |-
14608
+ `fileMeta` is not a root key of this template's context (it is one only on
14609
+ file-provider export and lookup steps): `{{fileMeta.fileName}}` renders empty and the
14610
+ upload fails with `missing_s3_key` "Can not process upload file without
14611
+ computedObject.fileName." — an error the platform labels source `internal` although the
14612
+ template is the cause. The run-time-proven way to keep the source file's name on a
14613
+ `blob: true` import is `{{record.fileMeta.fileName}}` on `file.fileName` with this field
14614
+ omitted (the production runs of one FTP blob import set exactly that); the same template
14615
+ on this field has not been run. The field's editor preview (data version 1, its default)
14616
+ exposes the record as `data` —
14617
+ the `{blobKey, fileMeta}` record on a blob import, the page's record array otherwise —
14618
+ so `record.` previews empty there; judge by a run.
14598
14619
  - |-
14599
14620
  The name of the file to be accessed, transferred,
14600
14621
  or manipulated via FTP (File Transfer Protocol).
@@ -19834,7 +19855,10 @@ components:
19834
19855
  description: |-
19835
19856
  **REQUIRED for file-based imports.**
19836
19857
 
19837
- The name of the file to be created/written. Supports Handlebars expressions for dynamic naming.
19858
+ The name of the file to be created/written. Supports Handlebars expressions for dynamic naming,
19859
+ rendered against the incoming record — a file-transfer import keeps the source file's name from
19860
+ the record's `fileMeta`, whose field names are the exporting provider's
19861
+ (`{{record.fileMeta.fileName}}` from an FTP source, `fileMeta.name` from Google Drive).
19838
19862
 
19839
19863
  **Default behavior**
19840
19864
  - When the user does not specify a file naming convention, **always default to timestamped filenames** using `{{timestamp}}` (e.g., `"items-{{timestamp}}.csv"`). This ensures each run produces a unique file and avoids overwriting previous exports.
@@ -19852,7 +19876,20 @@ components:
19852
19876
 
19853
19877
  **Important**
19854
19878
  - For S3 imports, this should typically match the `s3.fileKey` value
19855
- - For FTP imports, this should typically match the `ftp.fileName` value
19879
+ - For FTP imports, this should typically match the `ftp.fileName` value; the one blob file-transfer run on record set only this field and left `ftp.fileName` unset
19880
+ x-celigo-ai-guidance:
19881
+ - |-
19882
+ `fileMeta` is not a root key of this template's context (it is one only on
19883
+ file-provider export and lookup steps): `{{fileMeta.fileName}}` renders empty and the
19884
+ file has no name; on an FTP import the record then fails with `missing_s3_key` "Can not
19885
+ process upload file without computedObject.fileName.", labeled source `internal`
19886
+ although the template is the cause. The incoming record carries the source file's
19887
+ metadata — on an FTP blob import `{{record.fileMeta.fileName}}` keeps the source file's
19888
+ name at run time (the only spelling proven by a run). The field's editor preview
19889
+ (data version 1, its default) exposes the record as `data` — the `{blobKey, fileMeta}`
19890
+ record on a `blob: true` import, the page's record array otherwise — so `record.`
19891
+ previews empty there; judge by a run. The metadata field names are the exporting
19892
+ provider's — read them off the incoming sample record.
19856
19893
  examples:
19857
19894
  - customers-{{timestamp}}.json
19858
19895
  - orders-export.csv
@@ -24890,6 +24927,14 @@ components:
24890
24927
  On AiAgentImport, GuardrailImport and ToolImport the save fails with 422 `not_supported`
24891
24928
  ("Field "blobKeyPath" is not supported for this import type."); route file content
24892
24929
  through a blob-capable import (HTTP, FTP, S3) instead.
24930
+ - |-
24931
+ Optional on a `blob: true` file-provider import: when omitted the platform reads the
24932
+ record's root `blobKey` — the field a blob export emits on its `{blobKey, fileMeta}`
24933
+ record — so a file-transfer flow needs no `blobKeyPath`. Observed on an FTP import
24934
+ (production runs writing files with no `blobKeyPath`) and on a Google Drive folder
24935
+ upload (`http.type: file`, the marketplace file-transfer template's shape); other
24936
+ file providers were not probed. Set it only when a response mapping placed the key
24937
+ elsewhere; on those two providers its absence is not a cause of upload failures.
24893
24938
  - |-
24894
24939
  The value at this path must be a blobKey produced by an upstream blob
24895
24940
  export or blob lookup and carried onto the record via that step's
@@ -24918,7 +24963,8 @@ components:
24918
24963
  - ToolImport
24919
24964
  description: |-
24920
24965
  When true, this import transfers raw file content (blobs) to the destination rather than
24921
- structured records, reading each file through `blobKeyPath`. Not accepted on
24966
+ structured records, reading each file through `blobKeyPath` (optional on FTP and Google
24967
+ Drive file-provider imports, which fall back to the record's root `blobKey`). Not accepted on
24922
24968
  `AiAgentImport`, `GuardrailImport`, or `ToolImport` — those adaptors process records only
24923
24969
  and reject the flag with 422 `not_supported`.
24924
24970
  x-celigo-ai-guidance:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@celigo/api-specs",
3
- "version": "0.2.125",
3
+ "version": "0.2.126",
4
4
  "private": false,
5
5
  "description": "Public OpenAPI bundles (dist/) and the celigo-cli lint schema pack (schemas.json).",
6
6
  "keywords": [
package/schemas.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "provenance": {
3
3
  "repo": "celigo/integrator-api-specs",
4
- "iasCommit": "5aa2524f",
4
+ "iasCommit": "0d0dde72",
5
5
  "generatedAt": "2026-10-20"
6
6
  },
7
7
  "roots": {