@celigo/api-specs 0.2.139 → 0.2.141

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/export.yml CHANGED
@@ -6127,7 +6127,12 @@ components:
6127
6127
  - The connection is a cloud file provider used in FOLDER mode (Google Drive, Box, Dropbox,
6128
6128
  Azure Blob Storage, Google Cloud Storage, Celigo Storage): the export reads the files
6129
6129
  in a folder and the 'file' object's `type` (csv, json, xml, xlsx, filedefinition)
6130
- parses each one into records — the same file layer as an FTP or S3 export
6130
+ parses each one into records — the same file layer as an FTP or S3 export. In folder
6131
+ mode `relativeURI` is a folder path: an API endpoint path there fails the run with
6132
+ "Directory is not found. Please create one and provide the path." To download one
6133
+ file per record through the provider's API instead, leave `http.type` unset, set the
6134
+ export's top-level `type` to `blob` (typically on a lookup) and point `relativeURI`
6135
+ at the file-download endpoint
6131
6136
 
6132
6137
  Examples of when to set type: "file":
6133
6138
  - "Download PDF invoices from the API" → type: "file"
@@ -6262,7 +6267,10 @@ components:
6262
6267
  x-celigo-agent:
6263
6268
  - handlebars
6264
6269
  x-celigo-handlebars-context: pre-mapped
6265
- description: 'Resource path appended to the connection''s `baseURI` to form the complete request URL. Path segments, query parameters, or the entire value can be built with handlebars expressions for endpoints determined at runtime. For lookup exports (`isLookup: true`) with mappings configured, handlebars always render against the original pre-mapped input record, so fields removed or renamed by mappings remain available for URI construction. On `NetSuiteHTTPExport` the base URL is derived from the NetSuite connection and `nsDomainType`, so the path starts at `/services/rest/...` or `/app/site/hosting/restlet.nl`.'
6270
+ description: |-
6271
+ Resource path appended to the connection's `baseURI` to form the complete request URL. Path segments, query parameters, or the entire value can be built with handlebars expressions for endpoints determined at runtime. For lookup exports (`isLookup: true`) with mappings configured, handlebars always render against the original pre-mapped input record, so fields removed or renamed by mappings remain available for URI construction. On `NetSuiteHTTPExport` the base URL is derived from the NetSuite connection and `nsDomainType`, so the path starts at `/services/rest/...` or `/app/site/hosting/restlet.nl`.
6272
+
6273
+ Leave it empty to call the connection's `baseURI` exactly; `/` appends a trailing slash, which is a different URL. An export saved with an empty relative URI and no `http.body` comes back from reads without its `http` block, so a PUT built from such a read loses the stored settings: send the complete `http` block with every PUT.
6266
6274
  x-celigo-ai-guidance:
6267
6275
  - The resource path portion of the API endpoint used for this export.
6268
6276
  - |-
@@ -11121,7 +11129,7 @@ components:
11121
11129
  webstore: Triggered by SuiteCommerce web store transactions.
11122
11130
  userevent: Triggered by user event script executions.
11123
11131
  mapreduce: Triggered by Map/Reduce script operations.
11124
- restlet: Triggered by RESTlet API calls.
11132
+ restlet: Triggered by RESTlet API calls, including the records a NetSuite Distributed import writes.
11125
11133
  webapplication: Triggered by web application interactions.
11126
11134
  restwebservices: Triggered by REST web services API calls.
11127
11135
  disabled:
@@ -11129,7 +11137,9 @@ components:
11129
11137
  description: |-
11130
11138
  When true, the listener's NetSuite deployment is inactive and record saves no longer
11131
11139
  trigger the export. Maintained by the platform as the flow is disabled and re-enabled;
11132
- re-enabling the flow re-registers the deployment.
11140
+ re-enabling the flow re-registers the deployment. A listener is created disabled, and
11141
+ a flow created already enabled leaves it that way until a flow update sets
11142
+ `disabled: false`, which activates it within seconds.
11133
11143
  x-celigo-ai-guidance:
11134
11144
  - |-
11135
11145
  Pause a listener by disabling its flow, not by setting this field. A listener that has
@@ -12752,7 +12762,7 @@ components:
12752
12762
  **When to Use**
12753
12763
  - REQUIRED when dataType = "object" (unless you are copying an entire object from the input record)
12754
12764
  - REQUIRED in buildArrayHelper.mappings when defining complex object array elements
12755
- - NEVER used with simple types (string, number, boolean, date)
12765
+ - NEVER used with simple types (string, number, boolean)
12756
12766
 
12757
12767
  **Behavior**
12758
12768
  - Each mapping in this array becomes a property of the parent object
@@ -13818,7 +13828,7 @@ components:
13818
13828
  **When to Use**
13819
13829
  - REQUIRED when dataType = "object" (unless you are copying an entire object from the input record)
13820
13830
  - REQUIRED in buildArrayHelper.mappings when defining complex object array elements
13821
- - NEVER used with simple types (string, number, boolean, date)
13831
+ - NEVER used with simple types (string, number, boolean)
13822
13832
 
13823
13833
  **Behavior**
13824
13834
  - Each mapping in this array becomes a property of the parent object
@@ -16365,14 +16375,11 @@ components:
16365
16375
 
16366
16376
  **Lookup Exports (isLookup: true)**: Transforms the lookup results returned by the external system.
16367
16377
 
16368
- ## CRITICAL REQUIREMENT FOR LOOKUPS
16378
+ ## LOOKUPS
16369
16379
 
16370
- For NetSuite and most other API-based lookups, this field is **ESSENTIAL**. Raw lookup results often come in nested or complex formats that differ from what the flow requires. You **MUST** use a transform to:
16371
- 1. Flatten nested structures (e.g., `results[0].id` -> `id`)
16372
- 2. Map specific fields to the top level
16373
- 3. Handle empty results gracefully
16380
+ Optional on lookups; use one to flatten nested results (e.g., `results[0].id` -> `id`). A lookup's response mapping reads the transformed records, so its extracts name the transformed fields (`data[0].id`), not the raw response paths.
16374
16381
 
16375
- Note that transformed results are not automatically merged back into source records - merging is handled separately by the 'response mapping' configuration in your flow definition.
16382
+ Transformed results are not merged back into source records automatically; the flow's response mapping does that.
16376
16383
  hooks:
16377
16384
  type: object
16378
16385
  description: |-
package/dist/import.yml CHANGED
@@ -8496,7 +8496,7 @@ components:
8496
8496
  without the array); a mapping reshapes the message instead.
8497
8497
  - |-
8498
8498
  Publishing is not limited to flows. Verified surfaces: a flow step; an API step (the API
8499
- invoked at `POST /apis/{version}/{relativeURI}`); a Tool reached through a `ToolImport`
8499
+ invoked at `POST /apis/{version}{relativeURI}`); a Tool reached through a `ToolImport`
8500
8500
  step in a flow; and `POST /v1/imports/{_id}/invoke` with `{"data": [record, ...]}`. A flow
8501
8501
  or API test run (`/test/run`) publishes nothing — import steps are mocked there.
8502
8502
  properties:
@@ -12929,7 +12929,7 @@ components:
12929
12929
  **When to Use**
12930
12930
  - REQUIRED when dataType = "object" (unless you are copying an entire object from the input record)
12931
12931
  - REQUIRED in buildArrayHelper.mappings when defining complex object array elements
12932
- - NEVER used with simple types (string, number, boolean, date)
12932
+ - NEVER used with simple types (string, number, boolean)
12933
12933
 
12934
12934
  **Behavior**
12935
12935
  - Each mapping in this array becomes a property of the parent object
@@ -13995,7 +13995,7 @@ components:
13995
13995
  **When to Use**
13996
13996
  - REQUIRED when dataType = "object" (unless you are copying an entire object from the input record)
13997
13997
  - REQUIRED in buildArrayHelper.mappings when defining complex object array elements
13998
- - NEVER used with simple types (string, number, boolean, date)
13998
+ - NEVER used with simple types (string, number, boolean)
13999
13999
 
14000
14000
  **Behavior**
14001
14001
  - Each mapping in this array becomes a property of the parent object
@@ -16493,8 +16493,9 @@ components:
16493
16493
  - array
16494
16494
  - string
16495
16495
  description: |-
16496
- Sample response payload used to preview response mappings and test downstream steps
16497
- without calling the destination system.
16496
+ Sample destination response kept with the import for authoring its response mapping.
16497
+ Flow test runs and previews don't read it; they substitute `mockResponse`, or a
16498
+ placeholder when none is saved.
16498
16499
  responseTransform:
16499
16500
  x-celigo-agent:
16500
16501
  - transform
@@ -16622,7 +16623,9 @@ components:
16622
16623
  description: |-
16623
16624
  Field mappings that transform incoming records into the destination system's field
16624
16625
  structure — renaming fields, converting types, building nested objects, and applying
16625
- formulas or lookups to derive values.
16626
+ formulas or lookups to derive values. The mapped output builds only the request this
16627
+ import sends: the next step receives the record as it arrived here, plus whatever this
16628
+ step's response mapping merges back.
16626
16629
  x-celigo-ai-guidance:
16627
16630
  - |-
16628
16631
  ## Extract evaluation root
@@ -15,7 +15,7 @@ info:
15
15
  - Contains a collection of **tools** (referencing Tool resources), **APIs** (referencing builder-mode API resources), **prompts** (inline reusable templates), and **resources** (Celigo Storage files served to clients)
16
16
  - Can be enabled or disabled at both the server level and individual tool/API level
17
17
  - Supports MCP annotations on tools for hinting behavior (read-only, idempotent, destructive, etc.)
18
- - Supports tool overrides for customizing connections, exports, imports, and routing per-server
18
+ - Binds the connections each tool's steps run on, per server (`tools[].overrides`); calls fail with "Missing connection overrides" until every lookup step's connection is bound
19
19
  - Exposes prompts via `prompts/list` and `prompts/get` with Handlebars-style argument substitution
20
20
  - Carries **permission sets** ("Capability Sets" in the UI) — named bundles of its tools, APIs, prompts, and resources granted to end users via `pset:<_id>` capability strings on end-user, group, and role resource grants
21
21
  - Carries optional **traffic limits** (`policies[]`) — a server-level rate limit, a per-user rate limit for OAuth end users, and a usage quota — enforced before a tool runs; a rejected call gets HTTP 429 with `Retry-After`
@@ -176,7 +176,7 @@ paths:
176
176
  name: Customer Integration MCP
177
177
  relativeURI: /customers
178
178
  with_tool:
179
- summary: With a tool and Celigo OAuth
179
+ summary: With a tool (its lookup step bound) and Celigo OAuth
180
180
  value:
181
181
  name: Customer Integration MCP
182
182
  relativeURI: /customers
@@ -188,6 +188,10 @@ paths:
188
188
  disabled: false
189
189
  annotations:
190
190
  readOnlyHint: true
191
+ overrides:
192
+ exports:
193
+ - _abstractId: 69d462d5b9c28ea0b7f82530
194
+ _id: 69d462d5b9c28ea0b7f82530
191
195
  oauth:
192
196
  useCeligoOauth: true
193
197
  responses:
@@ -1564,12 +1568,27 @@ components:
1564
1568
  Overrides:
1565
1569
  type: object
1566
1570
  description: |
1567
- Per-server overrides for a tool's internal resources.
1571
+ Per-server bindings for a tool's steps, applied on this server without changing the
1572
+ Tool itself.
1568
1573
 
1569
- When a tool is added to an MCP server, its connections, exports, imports,
1570
- and routers can be customized for this specific server context without
1571
- modifying the underlying tool definition. This enables reusing the same
1572
- tool across multiple MCP servers with different configurations.
1574
+ Each lookup (export) step's connection must be bound here, or each `tools/call` fails
1575
+ with "Missing connection overrides. The following connection IDs must be overridden: …".
1576
+ The export and router fields described below as not applied are stored but don't change
1577
+ a call.
1578
+ x-celigo-ai-guidance:
1579
+ - |-
1580
+ Bind each lookup step with an `exports[]` entry whose `_abstractId` and `_id` are both
1581
+ the step's export id; add `_connectionId` to run that step on another connection. An
1582
+ entry with `_connectionId` but no `_id` returns a 404, and binding only some of the
1583
+ Tool's steps still fails the call with "Missing connection overrides".
1584
+ - |-
1585
+ A `connections[]` pair binds only when `_id` names a different connection than
1586
+ `_abstractId`; it then re-maps the steps that use that connection. An identity pair
1587
+ (`_abstractId` equal to `_id`) on a connection that doesn't require end-user
1588
+ credentials leaves the steps unbound. When a step has both, its `exports[]` entry wins.
1589
+ - |-
1590
+ `connections[]` ids aren't validated on save, and the server caches its configuration,
1591
+ so a saved change can take tens of seconds to reach `tools/call`.
1573
1592
  properties:
1574
1593
  connections:
1575
1594
  type: array
@@ -1619,9 +1638,9 @@ components:
1619
1638
  exports:
1620
1639
  type: array
1621
1640
  description: |
1622
- Export (lookup) overrides. Customize export resources used within the tool,
1623
- including connection bindings, scheduling, response mappings, and
1624
- adaptor-specific settings.
1641
+ Export (lookup) step bindings. The binding (`_abstractId`, `_id`, and optionally
1642
+ `_connectionId`) is applied to calls; the settings marked below as not applied are
1643
+ stored but ignored.
1625
1644
  items:
1626
1645
  type: object
1627
1646
  properties:
@@ -1666,25 +1685,27 @@ components:
1666
1685
  simple: Basic export that fetches all matching records on each run.
1667
1686
  blob: Binary large object export for file-based data.
1668
1687
  all: Export that retrieves all records without filtering.
1669
- description: Override the export type
1688
+ description: Export type override. Not applied on an MCP server; stored, but calls ignore it.
1670
1689
  pageSize:
1671
1690
  type: number
1672
- description: Override the page size for pagination
1691
+ description: Page size override. Not applied on an MCP server; stored, but calls ignore it.
1673
1692
  examples:
1674
1693
  - 100
1675
1694
  skipRetries:
1676
1695
  type: boolean
1677
- description: When true, skips retries on failure.
1678
- x-celigo-ai-guidance:
1679
- - Whether to skip retries on failure
1696
+ description: |-
1697
+ When true, skips retries on failure. Not applied on an MCP server; stored, but
1698
+ calls ignore it.
1680
1699
  proceedOnFailure:
1681
1700
  type: boolean
1682
- description: When true, continues processing subsequent records after a failure.
1683
- x-celigo-ai-guidance:
1684
- - Whether to continue processing on failure
1701
+ description: |-
1702
+ When true, continues processing subsequent records after a failure. Not applied
1703
+ on an MCP server; stored, but calls ignore it.
1685
1704
  responseMapping:
1686
1705
  type: object
1687
- description: Override the response field mappings
1706
+ description: |-
1707
+ Response field mappings override. Not applied on an MCP server; stored, but calls
1708
+ ignore it.
1688
1709
  properties:
1689
1710
  fields:
1690
1711
  type: array
@@ -1847,8 +1868,8 @@ components:
1847
1868
  routers:
1848
1869
  type: array
1849
1870
  description: |
1850
- Router overrides. Customize routing behavior for specific branches
1851
- within the tool, including branch filters and routing strategies.
1871
+ Router overrides. On an MCP server `name`, `routeRecordsTo` and branch
1872
+ `inputFilter` are stored but not applied to calls.
1852
1873
  items:
1853
1874
  type: object
1854
1875
  properties:
@@ -1859,7 +1880,7 @@ components:
1859
1880
  - router_001
1860
1881
  name:
1861
1882
  type: string
1862
- description: Override the router name
1883
+ description: Router name override. Not applied on an MCP server; stored, but calls ignore it.
1863
1884
  examples:
1864
1885
  - route_by_region
1865
1886
  routeRecordsTo:
@@ -1870,7 +1891,7 @@ components:
1870
1891
  x-enumDescriptions:
1871
1892
  first_matching_branch: Routes each record to only the first branch whose criteria match.
1872
1893
  all_matching_branches: Routes each record to every branch whose criteria match, creating copies.
1873
- description: Override the routing strategy
1894
+ description: Routing strategy override. Not applied on an MCP server; stored, but calls ignore it.
1874
1895
  routeRecordsUsing:
1875
1896
  type: string
1876
1897
  enum:
@@ -1917,7 +1938,9 @@ components:
1917
1938
  - Records routed to the North America region
1918
1939
  inputFilter:
1919
1940
  type: object
1920
- description: Override the branch filter criteria
1941
+ description: |-
1942
+ Branch filter override. Not applied on an MCP server; stored, but calls
1943
+ ignore it.
1921
1944
  properties:
1922
1945
  version:
1923
1946
  type: string
@@ -4040,7 +4063,11 @@ components:
4040
4063
  $ref: '#/components/schemas/AIDescription'
4041
4064
  offline:
4042
4065
  type: boolean
4043
- description: When true, the connection has been taken offline and is skipped during flow execution.
4066
+ description: |-
4067
+ When true, the connection has been taken offline and is skipped during flow execution.
4068
+ The platform tests the connection after a create or `PUT` and updates this shortly
4069
+ afterwards (the audit log records a `system` change; `lastModified` doesn't move), so
4070
+ read it again a few seconds after the write.
4044
4071
  readOnly: true
4045
4072
  needsAuthorization:
4046
4073
  type: boolean
package/dist/tool.yml CHANGED
@@ -1224,8 +1224,9 @@ paths:
1224
1224
  $ref: '#/components/responses/404-not-found'
1225
1225
  '422':
1226
1226
  description: |-
1227
- The Tool ran but a step failed. Includes `invocationId` when logging is active, so
1228
- the failed run can be opened in the run history.
1227
+ A step failed, or the Tool was refused before any step ran because its branches
1228
+ don't all merge back (`tool_dangling_branch`). Either way the response includes
1229
+ `invocationId` when logging is active, so the run can be opened in the run history.
1229
1230
  content:
1230
1231
  application/json:
1231
1232
  schema:
@@ -2398,6 +2399,11 @@ paths:
2398
2399
  `GET /v1/tools/{_id}/test/run/{runId}/{_stepId}` to inspect stage-by-stage
2399
2400
  results. The run id for follow-up calls is the `flowJob._id` value.
2400
2401
 
2402
+ A test run is not free of outside calls: lookups call their sources live. Imports never
2403
+ send; each returns its saved `mockResponse`, or a placeholder response when none is saved
2404
+ (see `mockResponse` on imports). A second test run started while one is still running is
2405
+ refused with `test_run_not_allowed`.
2406
+
2401
2407
  Test runs are a separate, short-lived history from normal runs — capture
2402
2408
  any follow-up step or log details soon after the run completes.
2403
2409
  operationId: testRunTool
@@ -2520,7 +2526,14 @@ paths:
2520
2526
  status: completed
2521
2527
  numError: 1
2522
2528
  '400':
2523
- $ref: '#/components/responses/400-bad-request'
2529
+ description: |-
2530
+ The run was refused before any step ran. A Tool with no steps fails with
2531
+ `tool_empty_router`, and one whose branches don't all merge back with
2532
+ `tool_dangling_branch`; re-running the same document fails the same way.
2533
+ content:
2534
+ application/json:
2535
+ schema:
2536
+ $ref: '#/components/schemas/Error'
2524
2537
  '401':
2525
2538
  $ref: '#/components/responses/401-unauthorized'
2526
2539
  '404':
@@ -3894,7 +3907,7 @@ components:
3894
3907
  **When to Use**
3895
3908
  - REQUIRED when dataType = "object" (unless you are copying an entire object from the input record)
3896
3909
  - REQUIRED in buildArrayHelper.mappings when defining complex object array elements
3897
- - NEVER used with simple types (string, number, boolean, date)
3910
+ - NEVER used with simple types (string, number, boolean)
3898
3911
 
3899
3912
  **Behavior**
3900
3913
  - Each mapping in this array becomes a property of the parent object
@@ -4960,7 +4973,7 @@ components:
4960
4973
  **When to Use**
4961
4974
  - REQUIRED when dataType = "object" (unless you are copying an entire object from the input record)
4962
4975
  - REQUIRED in buildArrayHelper.mappings when defining complex object array elements
4963
- - NEVER used with simple types (string, number, boolean, date)
4976
+ - NEVER used with simple types (string, number, boolean)
4964
4977
 
4965
4978
  **Behavior**
4966
4979
  - Each mapping in this array becomes a property of the parent object
@@ -7433,7 +7446,11 @@ components:
7433
7446
  $ref: '#/components/schemas/AIDescription'
7434
7447
  offline:
7435
7448
  type: boolean
7436
- description: When true, the connection has been taken offline and is skipped during flow execution.
7449
+ description: |-
7450
+ When true, the connection has been taken offline and is skipped during flow execution.
7451
+ The platform tests the connection after a create or `PUT` and updates this shortly
7452
+ afterwards (the audit log records a `system` change; `lastModified` doesn't move), so
7453
+ read it again a few seconds after the write.
7437
7454
  readOnly: true
7438
7455
  needsAuthorization:
7439
7456
  type: boolean
@@ -19863,7 +19880,7 @@ components:
19863
19880
  without the array); a mapping reshapes the message instead.
19864
19881
  - |-
19865
19882
  Publishing is not limited to flows. Verified surfaces: a flow step; an API step (the API
19866
- invoked at `POST /apis/{version}/{relativeURI}`); a Tool reached through a `ToolImport`
19883
+ invoked at `POST /apis/{version}{relativeURI}`); a Tool reached through a `ToolImport`
19867
19884
  step in a flow; and `POST /v1/imports/{_id}/invoke` with `{"data": [record, ...]}`. A flow
19868
19885
  or API test run (`/test/run`) publishes nothing — import steps are mocked there.
19869
19886
  properties:
@@ -25353,8 +25370,9 @@ components:
25353
25370
  - array
25354
25371
  - string
25355
25372
  description: |-
25356
- Sample response payload used to preview response mappings and test downstream steps
25357
- without calling the destination system.
25373
+ Sample destination response kept with the import for authoring its response mapping.
25374
+ Flow test runs and previews don't read it; they substitute `mockResponse`, or a
25375
+ placeholder when none is saved.
25358
25376
  responseTransform:
25359
25377
  x-celigo-agent:
25360
25378
  - transform
@@ -25482,7 +25500,9 @@ components:
25482
25500
  description: |-
25483
25501
  Field mappings that transform incoming records into the destination system's field
25484
25502
  structure — renaming fields, converting types, building nested objects, and applying
25485
- formulas or lookups to derive values.
25503
+ formulas or lookups to derive values. The mapped output builds only the request this
25504
+ import sends: the next step receives the record as it arrived here, plus whatever this
25505
+ step's response mapping merges back.
25486
25506
  x-celigo-ai-guidance:
25487
25507
  - |-
25488
25508
  ## Extract evaluation root
@@ -30510,7 +30530,12 @@ components:
30510
30530
  - The connection is a cloud file provider used in FOLDER mode (Google Drive, Box, Dropbox,
30511
30531
  Azure Blob Storage, Google Cloud Storage, Celigo Storage): the export reads the files
30512
30532
  in a folder and the 'file' object's `type` (csv, json, xml, xlsx, filedefinition)
30513
- parses each one into records — the same file layer as an FTP or S3 export
30533
+ parses each one into records — the same file layer as an FTP or S3 export. In folder
30534
+ mode `relativeURI` is a folder path: an API endpoint path there fails the run with
30535
+ "Directory is not found. Please create one and provide the path." To download one
30536
+ file per record through the provider's API instead, leave `http.type` unset, set the
30537
+ export's top-level `type` to `blob` (typically on a lookup) and point `relativeURI`
30538
+ at the file-download endpoint
30514
30539
 
30515
30540
  Examples of when to set type: "file":
30516
30541
  - "Download PDF invoices from the API" → type: "file"
@@ -30645,7 +30670,10 @@ components:
30645
30670
  x-celigo-agent:
30646
30671
  - handlebars
30647
30672
  x-celigo-handlebars-context: pre-mapped
30648
- description: 'Resource path appended to the connection''s `baseURI` to form the complete request URL. Path segments, query parameters, or the entire value can be built with handlebars expressions for endpoints determined at runtime. For lookup exports (`isLookup: true`) with mappings configured, handlebars always render against the original pre-mapped input record, so fields removed or renamed by mappings remain available for URI construction. On `NetSuiteHTTPExport` the base URL is derived from the NetSuite connection and `nsDomainType`, so the path starts at `/services/rest/...` or `/app/site/hosting/restlet.nl`.'
30673
+ description: |-
30674
+ Resource path appended to the connection's `baseURI` to form the complete request URL. Path segments, query parameters, or the entire value can be built with handlebars expressions for endpoints determined at runtime. For lookup exports (`isLookup: true`) with mappings configured, handlebars always render against the original pre-mapped input record, so fields removed or renamed by mappings remain available for URI construction. On `NetSuiteHTTPExport` the base URL is derived from the NetSuite connection and `nsDomainType`, so the path starts at `/services/rest/...` or `/app/site/hosting/restlet.nl`.
30675
+
30676
+ Leave it empty to call the connection's `baseURI` exactly; `/` appends a trailing slash, which is a different URL. An export saved with an empty relative URI and no `http.body` comes back from reads without its `http` block, so a PUT built from such a read loses the stored settings: send the complete `http` block with every PUT.
30649
30677
  x-celigo-ai-guidance:
30650
30678
  - The resource path portion of the API endpoint used for this export.
30651
30679
  - |-
@@ -35504,7 +35532,7 @@ components:
35504
35532
  webstore: Triggered by SuiteCommerce web store transactions.
35505
35533
  userevent: Triggered by user event script executions.
35506
35534
  mapreduce: Triggered by Map/Reduce script operations.
35507
- restlet: Triggered by RESTlet API calls.
35535
+ restlet: Triggered by RESTlet API calls, including the records a NetSuite Distributed import writes.
35508
35536
  webapplication: Triggered by web application interactions.
35509
35537
  restwebservices: Triggered by REST web services API calls.
35510
35538
  disabled:
@@ -35512,7 +35540,9 @@ components:
35512
35540
  description: |-
35513
35541
  When true, the listener's NetSuite deployment is inactive and record saves no longer
35514
35542
  trigger the export. Maintained by the platform as the flow is disabled and re-enabled;
35515
- re-enabling the flow re-registers the deployment.
35543
+ re-enabling the flow re-registers the deployment. A listener is created disabled, and
35544
+ a flow created already enabled leaves it that way until a flow update sets
35545
+ `disabled: false`, which activates it within seconds.
35516
35546
  x-celigo-ai-guidance:
35517
35547
  - |-
35518
35548
  Pause a listener by disabling its flow, not by setting this field. A listener that has
@@ -37346,14 +37376,11 @@ components:
37346
37376
 
37347
37377
  **Lookup Exports (isLookup: true)**: Transforms the lookup results returned by the external system.
37348
37378
 
37349
- ## CRITICAL REQUIREMENT FOR LOOKUPS
37379
+ ## LOOKUPS
37350
37380
 
37351
- For NetSuite and most other API-based lookups, this field is **ESSENTIAL**. Raw lookup results often come in nested or complex formats that differ from what the flow requires. You **MUST** use a transform to:
37352
- 1. Flatten nested structures (e.g., `results[0].id` -> `id`)
37353
- 2. Map specific fields to the top level
37354
- 3. Handle empty results gracefully
37381
+ Optional on lookups; use one to flatten nested results (e.g., `results[0].id` -> `id`). A lookup's response mapping reads the transformed records, so its extracts name the transformed fields (`data[0].id`), not the raw response paths.
37355
37382
 
37356
- Note that transformed results are not automatically merged back into source records - merging is handled separately by the 'response mapping' configuration in your flow definition.
37383
+ Transformed results are not merged back into source records automatically; the flow's response mapping does that.
37357
37384
  hooks:
37358
37385
  type: object
37359
37386
  description: |-
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@celigo/api-specs",
3
- "version": "0.2.139",
3
+ "version": "0.2.141",
4
4
  "private": false,
5
5
  "description": "Public OpenAPI bundles (dist/) and the celigo-cli lint schema pack (schemas.json).",
6
6
  "keywords": [