@celigo/api-specs 0.2.219 → 0.2.221

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
@@ -4184,9 +4184,29 @@ components:
4184
4184
  (replace a sublist's lines on update), and the rows Celigo's field-definitions article
4185
4185
  lists by label (Ignore Mandatory Fields, Initialize Values, Persist New Line Insertion
4186
4186
  Order, Print Nlapi Debug Logs, Group Lines By, Use Address Subrecord, Void Transaction).
4187
+ For a NetSuite field it is always the field's script id: the mapping editor shows each
4188
+ destination by its label ("Customer (InternalId)", "Items : Location (InternalId)"),
4189
+ and a label saved here is not a field. The control rows above keep their own ids.
4187
4190
  examples:
4188
4191
  - companyname
4189
4192
  x-celigo-ai-guidance:
4193
+ - |-
4194
+ `Items : Location (InternalId)` saved as a body row's `generate` — the editor's
4195
+ label for `item[*].location.internalid`, not a field id — was accepted by the save,
4196
+ rendered by the mapping preview, and ignored by NetSuite on a sales order import:
4197
+ the import succeeded with the field blank and no error anywhere. A label is never
4198
+ a script id. Resolve ids from the record metadata
4199
+ (`GET /v1/netsuite/metadata/suitescript/connections/{_id}/recordTypes/{recordType}`,
4200
+ `listNetSuiteRecordTypeFields`), whose rows carry each field's `id` and its editor
4201
+ label as `name`; that list is the editor's destination dropdown and is form- and
4202
+ role-dependent, so a standard field hidden on the form is absent from it yet still
4203
+ written by id.
4204
+ - |-
4205
+ A line field is never a body row. `item[*].<field>` is the record metadata's id
4206
+ for a sublist field (the editor shows its label, "Items : Location (InternalId)"),
4207
+ and the form typed as a destination to add a row the editor's picker lacks (see
4208
+ `lists`); the document stores it as the bare field id under `lists[]` with
4209
+ `generate: item`. A body row carrying that form is not a line mapping.
4190
4210
  - |-
4191
4211
  `celigo_recordmode_dynamic` with `hardCodedValue: "true"` is Celigo's documented
4192
4212
  "Use Dynamic Mode" row: the record is created or loaded in NetSuite's dynamic mode,
@@ -4412,8 +4432,9 @@ components:
4412
4432
  generate:
4413
4433
  type: string
4414
4434
  description: |
4415
- The NetSuite sublist ID (e.g., "item" for sales order line items,
4416
- "addressbook" for address sublists).
4435
+ The NetSuite sublist ID as the record metadata lists it (e.g., "item" for sales
4436
+ order line items, "addressbook" for address sublists); the mapping editor shows
4437
+ the sublist by its label ("Items"), which is never the id.
4417
4438
  jsonPath:
4418
4439
  type: string
4419
4440
  description: LEGACY — do not set. Nominally the JSON path to the array of sublist records, but NetSuite DA ignores a top-level jsonPath here.
@@ -4485,7 +4506,30 @@ components:
4485
4506
  `netsuite_da.lookups[].expression`.
4486
4507
  generate:
4487
4508
  type: string
4488
- description: NetSuite sublist field ID to write to.
4509
+ description: |-
4510
+ NetSuite sublist field ID to write to, stored as the bare field id (`location`,
4511
+ `quantity`): the editor's `item[*].` prefix, the `.internalid` suffix (see
4512
+ `internalId`) and the editor's label ("Items : Location (InternalId)") are
4513
+ the editor's forms, not the stored value.
4514
+ x-celigo-ai-guidance:
4515
+ - |-
4516
+ Which line field exists depends on the NetSuite account: a sales order line's
4517
+ location is `location` unless the account's Intercompany Cross-Subsidiary
4518
+ Fulfillment feature is enabled, when NetSuite replaces it with
4519
+ `inventorylocation` — the record metadata then lists
4520
+ `item[*].inventorylocation.internalid` and no `item[*].location.internalid`;
4521
+ without the feature it lists `item[*].location.internalid` and
4522
+ `item[*].location` and no row whose id contains `inventorylocation`. Map the
4523
+ line location to whichever the account has, stored as `generate:
4524
+ inventorylocation` or `generate: location` with `internalId: true` — the
4525
+ metadata id's `.internalid` suffix is the `internalId` flag, not part of the
4526
+ stored id.
4527
+ - |-
4528
+ Put the `item` row before the line's `inventorylocation` row. Observed on a
4529
+ standard-mode sales order import (no `celigo_recordmode_dynamic` row):
4530
+ with `inventorylocation` (`internalId: true`) mapped above `item`, every
4531
+ line failed — the location was validated against a line that had no item
4532
+ yet; moved below the `item` row, the same mapping saved.
4489
4533
  hardCodedValue:
4490
4534
  type: string
4491
4535
  description: Static value for this sublist field.
@@ -4731,7 +4775,8 @@ components:
4731
4775
  as a writable one. The mapper's "Items : Line ID" is `line` (the fulfillment's own line number,
4732
4776
  equal to the order line only on a fresh full transform) and "Items : Line Number" is `linenum`;
4733
4777
  `orderline` and `kitmemberof` are not in its picker — type `item[*].orderline` /
4734
- `item[*].kitmemberof` as the destination.
4778
+ `item[*].kitmemberof` as the destination (the metadata id form of a sublist field; the
4779
+ document stores `orderline` / `kitmemberof` under `lists[]` with `generate: item`).
4735
4780
  - |-
4736
4781
  Kit components on a fulfillment: the item is the only default key that reaches a component
4737
4782
  line, so a component two kit lines share fails with `MULTIPLE_LINES_WITH_SAME_KEYS`. Keying the
@@ -9051,7 +9096,7 @@ components:
9051
9096
  or, on a `blob: true` transfer, the existing file being moved; omit it for an
9052
9097
  unencrypted file. `pgp` requires `pgp.symmetricKeyAlgorithm` and a connection holding
9053
9098
  the recipient's public key (`pgp.publicKey`). Not observed in a run here; per the file
9054
- adaptor's code (IO-213945, the `blob: true` transfer path): with no `compressionFormat`,
9099
+ adaptor's code (the `blob: true` transfer path): with no `compressionFormat`,
9055
9100
  a file over 200 MB fails the record before encryption with `pgp_file_size_exceeded`
9056
9101
  ("The file size exceeds the maximum limit of 200 MB supported for PGP encryption." —
9057
9102
  the adaptor's `errorStore.js` text); with `compressionFormat` set the adaptor skips that
package/dist/tool.yml CHANGED
@@ -16470,9 +16470,29 @@ components:
16470
16470
  (replace a sublist's lines on update), and the rows Celigo's field-definitions article
16471
16471
  lists by label (Ignore Mandatory Fields, Initialize Values, Persist New Line Insertion
16472
16472
  Order, Print Nlapi Debug Logs, Group Lines By, Use Address Subrecord, Void Transaction).
16473
+ For a NetSuite field it is always the field's script id: the mapping editor shows each
16474
+ destination by its label ("Customer (InternalId)", "Items : Location (InternalId)"),
16475
+ and a label saved here is not a field. The control rows above keep their own ids.
16473
16476
  examples:
16474
16477
  - companyname
16475
16478
  x-celigo-ai-guidance:
16479
+ - |-
16480
+ `Items : Location (InternalId)` saved as a body row's `generate` — the editor's
16481
+ label for `item[*].location.internalid`, not a field id — was accepted by the save,
16482
+ rendered by the mapping preview, and ignored by NetSuite on a sales order import:
16483
+ the import succeeded with the field blank and no error anywhere. A label is never
16484
+ a script id. Resolve ids from the record metadata
16485
+ (`GET /v1/netsuite/metadata/suitescript/connections/{_id}/recordTypes/{recordType}`,
16486
+ `listNetSuiteRecordTypeFields`), whose rows carry each field's `id` and its editor
16487
+ label as `name`; that list is the editor's destination dropdown and is form- and
16488
+ role-dependent, so a standard field hidden on the form is absent from it yet still
16489
+ written by id.
16490
+ - |-
16491
+ A line field is never a body row. `item[*].<field>` is the record metadata's id
16492
+ for a sublist field (the editor shows its label, "Items : Location (InternalId)"),
16493
+ and the form typed as a destination to add a row the editor's picker lacks (see
16494
+ `lists`); the document stores it as the bare field id under `lists[]` with
16495
+ `generate: item`. A body row carrying that form is not a line mapping.
16476
16496
  - |-
16477
16497
  `celigo_recordmode_dynamic` with `hardCodedValue: "true"` is Celigo's documented
16478
16498
  "Use Dynamic Mode" row: the record is created or loaded in NetSuite's dynamic mode,
@@ -16698,8 +16718,9 @@ components:
16698
16718
  generate:
16699
16719
  type: string
16700
16720
  description: |
16701
- The NetSuite sublist ID (e.g., "item" for sales order line items,
16702
- "addressbook" for address sublists).
16721
+ The NetSuite sublist ID as the record metadata lists it (e.g., "item" for sales
16722
+ order line items, "addressbook" for address sublists); the mapping editor shows
16723
+ the sublist by its label ("Items"), which is never the id.
16703
16724
  jsonPath:
16704
16725
  type: string
16705
16726
  description: LEGACY — do not set. Nominally the JSON path to the array of sublist records, but NetSuite DA ignores a top-level jsonPath here.
@@ -16771,7 +16792,30 @@ components:
16771
16792
  `netsuite_da.lookups[].expression`.
16772
16793
  generate:
16773
16794
  type: string
16774
- description: NetSuite sublist field ID to write to.
16795
+ description: |-
16796
+ NetSuite sublist field ID to write to, stored as the bare field id (`location`,
16797
+ `quantity`): the editor's `item[*].` prefix, the `.internalid` suffix (see
16798
+ `internalId`) and the editor's label ("Items : Location (InternalId)") are
16799
+ the editor's forms, not the stored value.
16800
+ x-celigo-ai-guidance:
16801
+ - |-
16802
+ Which line field exists depends on the NetSuite account: a sales order line's
16803
+ location is `location` unless the account's Intercompany Cross-Subsidiary
16804
+ Fulfillment feature is enabled, when NetSuite replaces it with
16805
+ `inventorylocation` — the record metadata then lists
16806
+ `item[*].inventorylocation.internalid` and no `item[*].location.internalid`;
16807
+ without the feature it lists `item[*].location.internalid` and
16808
+ `item[*].location` and no row whose id contains `inventorylocation`. Map the
16809
+ line location to whichever the account has, stored as `generate:
16810
+ inventorylocation` or `generate: location` with `internalId: true` — the
16811
+ metadata id's `.internalid` suffix is the `internalId` flag, not part of the
16812
+ stored id.
16813
+ - |-
16814
+ Put the `item` row before the line's `inventorylocation` row. Observed on a
16815
+ standard-mode sales order import (no `celigo_recordmode_dynamic` row):
16816
+ with `inventorylocation` (`internalId: true`) mapped above `item`, every
16817
+ line failed — the location was validated against a line that had no item
16818
+ yet; moved below the `item` row, the same mapping saved.
16775
16819
  hardCodedValue:
16776
16820
  type: string
16777
16821
  description: Static value for this sublist field.
@@ -17017,7 +17061,8 @@ components:
17017
17061
  as a writable one. The mapper's "Items : Line ID" is `line` (the fulfillment's own line number,
17018
17062
  equal to the order line only on a fresh full transform) and "Items : Line Number" is `linenum`;
17019
17063
  `orderline` and `kitmemberof` are not in its picker — type `item[*].orderline` /
17020
- `item[*].kitmemberof` as the destination.
17064
+ `item[*].kitmemberof` as the destination (the metadata id form of a sublist field; the
17065
+ document stores `orderline` / `kitmemberof` under `lists[]` with `generate: item`).
17021
17066
  - |-
17022
17067
  Kit components on a fulfillment: the item is the only default key that reaches a component
17023
17068
  line, so a component two kit lines share fails with `MULTIPLE_LINES_WITH_SAME_KEYS`. Keying the
@@ -21058,7 +21103,7 @@ components:
21058
21103
  or, on a `blob: true` transfer, the existing file being moved; omit it for an
21059
21104
  unencrypted file. `pgp` requires `pgp.symmetricKeyAlgorithm` and a connection holding
21060
21105
  the recipient's public key (`pgp.publicKey`). Not observed in a run here; per the file
21061
- adaptor's code (IO-213945, the `blob: true` transfer path): with no `compressionFormat`,
21106
+ adaptor's code (the `blob: true` transfer path): with no `compressionFormat`,
21062
21107
  a file over 200 MB fails the record before encryption with `pgp_file_size_exceeded`
21063
21108
  ("The file size exceeds the maximum limit of 200 MB supported for PGP encryption." —
21064
21109
  the adaptor's `errorStore.js` text); with `compressionFormat` set the adaptor skips that
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@celigo/api-specs",
3
- "version": "0.2.219",
3
+ "version": "0.2.221",
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,8 +1,8 @@
1
1
  {
2
2
  "provenance": {
3
3
  "repo": "celigo/integrator-api-specs",
4
- "iasCommit": "adbfb1b8",
5
- "generatedAt": "2026-11-02"
4
+ "iasCommit": "c51652db",
5
+ "generatedAt": "2026-11-03"
6
6
  },
7
7
  "roots": {
8
8
  "aiagent": 128,