@celigo/api-specs 0.2.171 → 0.2.173

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
@@ -2910,15 +2910,30 @@ components:
2910
2910
  - `"lessthan"`: Value is less than specified value (is less than)
2911
2911
  - `"lessthanequals"`: Value is less than or equal to specified value (is less than or equals)
2912
2912
  - `"startswith"`: String starts with specified prefix (starts with)
2913
+ - `"notstartswith"`: String does not start with specified prefix (does not start with)
2913
2914
  - `"endswith"`: String ends with specified suffix (ends with)
2915
+ - `"notendswith"`: String does not end with specified suffix (does not end with)
2914
2916
  - `"contains"`: String contains specified substring (contains)
2915
2917
  - `"doesnotcontain"`: String does not contain specified substring (does not contain)
2916
2918
  - `"empty"`: Field is missing or empty (is empty)
2917
2919
  - `"notempty"`: Field contains a value (is not empty)
2918
- - `"matches"`: Matches a regular expression (matches)
2919
-
2920
- `isempty`, `isnotempty` and `anyof` are not operators: they are refused with 422
2921
- "Invalid operation: <name>".
2920
+ - `"matches"`: Matches a regular expression, ignoring case (matches)
2921
+
2922
+ Operator names are case-insensitive: `NOTEMPTY` and `endsWith` work and are stored
2923
+ as sent. `isempty`, `isnotempty`, `anyof`, `notcontains`, `doesnotstartwith`,
2924
+ `doesnotendwith`, `notmatches`, `doesnotmatch` and `notequal` are not operators:
2925
+ they are refused with 422 "Invalid operation: <name>", with the name in lowercase,
2926
+ both when the filter is saved and by `POST /v1/processors/filter`. To negate a
2927
+ condition, wrap it in `not`.
2928
+
2929
+ The string comparisons (`equals`, `contains`, `startswith`, `endswith` and their
2930
+ negations) are case-sensitive; wrap the field in `lowercase` to compare without case.
2931
+ `matches` is not: every pattern is compiled with the flags `gi`, so `^paid$` also
2932
+ matches `PAID` and `[a-z]` matches capital letters. An inline flag such as `(?i)`
2933
+ makes the pattern invalid. The filter still saves, but in a run every record fails
2934
+ with `FILTER_EVALUATION_FAILED` ("Invalid regular expression: /(?i)…/gi: Invalid
2935
+ group"), and `POST /v1/processors/filter` refuses the call with 422 (live-verified
2936
+ 2026-10-22).
2922
2937
 
2923
2938
  **Logical Operators**
2924
2939
  - `"and"`: All conditions must be true
@@ -3208,7 +3223,9 @@ components:
3208
3223
  x-celigo-refModel: scripts
3209
3224
  description: |
3210
3225
  Reference to the Script resource that contains the filtering logic. This must be a valid
3211
- ObjectId of a Script resource that exists in the system.
3226
+ ObjectId of a Script resource in this account: any other id fails the save with 422
3227
+ ("Only a script owned by the user or a script shared by the Integration App can be used
3228
+ at filter.script._scriptId.").
3212
3229
 
3213
3230
  The referenced script must contain the function specified in the `function` field
3214
3231
  and must be written to handle filtering specifically. The script receives
@@ -12551,7 +12568,11 @@ components:
12551
12568
 
12552
12569
  **Simple Types (direct value mapping)**
12553
12570
  - `string`: Text values, converts other types to string representation
12554
- - `number`: Numeric values, attempts conversion from strings
12571
+ - `number`: Numeric values. Converts a numeric string (`"24"` → `24`,
12572
+ `"007"` → `7`) and leaves the field out for an empty string; a value
12573
+ holding letters or a thousands separator (`"1,250.00"`) fails the
12574
+ record with `non_parsable_string` (`<generate>: String contains alpha
12575
+ characters`)
12555
12576
  - `boolean`: True/false values, converts truthy/falsy values
12556
12577
 
12557
12578
  Dates are represented as strings — use `string` for date fields and
@@ -12594,8 +12615,14 @@ components:
12594
12615
  - |-
12595
12616
  Missing `dataType` is rejected at save with validation error
12596
12617
  `[mandatory_destination_datatype] Destination datatype is a
12597
- required field.` When in doubt, use `"string"` — it accepts
12598
- any source value and the runtime will coerce it.
12618
+ required field.`
12619
+ - |-
12620
+ Give each row the type the destination field expects; `"string"` is
12621
+ not a safe default. It accepts any source value, but sends a numeric
12622
+ source as text (`"24"`), which a destination that checks JSON types
12623
+ refuses. Map numeric destination fields as `number`, which fails a
12624
+ record (`non_parsable_string`) only when the value holds letters or a
12625
+ thousands separator.
12599
12626
  enum:
12600
12627
  - string
12601
12628
  - number
@@ -12607,7 +12634,7 @@ components:
12607
12634
  - objectarray
12608
12635
  x-enumDescriptions:
12609
12636
  string: Text values; converts other types to their string representation.
12610
- number: Numeric values; attempts conversion from strings.
12637
+ number: Numeric values; converts numeric strings, and fails the record (`non_parsable_string`) on letters or a thousands separator.
12611
12638
  boolean: True/false values; converts truthy/falsy values.
12612
12639
  object: Nested object built from child `mappings`, or copied whole with `extract` (not both).
12613
12640
  stringarray: Array of string values.
@@ -13635,7 +13662,11 @@ components:
13635
13662
 
13636
13663
  **Simple Types (direct value mapping)**
13637
13664
  - `string`: Text values, converts other types to string representation
13638
- - `number`: Numeric values, attempts conversion from strings
13665
+ - `number`: Numeric values. Converts a numeric string (`"24"` → `24`,
13666
+ `"007"` → `7`) and leaves the field out for an empty string; a value
13667
+ holding letters or a thousands separator (`"1,250.00"`) fails the
13668
+ record with `non_parsable_string` (`<generate>: String contains alpha
13669
+ characters`)
13639
13670
  - `boolean`: True/false values, converts truthy/falsy values
13640
13671
 
13641
13672
  Dates are represented as strings — use `string` for date fields and
@@ -13678,8 +13709,14 @@ components:
13678
13709
  - |-
13679
13710
  Missing `dataType` is rejected at save with validation error
13680
13711
  `[mandatory_destination_datatype] Destination datatype is a
13681
- required field.` When in doubt, use `"string"` — it accepts
13682
- any source value and the runtime will coerce it.
13712
+ required field.`
13713
+ - |-
13714
+ Give each row the type the destination field expects; `"string"` is
13715
+ not a safe default. It accepts any source value, but sends a numeric
13716
+ source as text (`"24"`), which a destination that checks JSON types
13717
+ refuses. Map numeric destination fields as `number`, which fails a
13718
+ record (`non_parsable_string`) only when the value holds letters or a
13719
+ thousands separator.
13683
13720
  enum:
13684
13721
  - string
13685
13722
  - number
@@ -13691,7 +13728,7 @@ components:
13691
13728
  - objectarray
13692
13729
  x-enumDescriptions:
13693
13730
  string: Text values; converts other types to their string representation.
13694
- number: Numeric values; attempts conversion from strings.
13731
+ number: Numeric values; converts numeric strings, and fails the record (`non_parsable_string`) on letters or a thousands separator.
13695
13732
  boolean: True/false values; converts truthy/falsy values.
13696
13733
  object: Nested object built from child `mappings`, or copied whole with `extract` (not both).
13697
13734
  stringarray: Array of string values.
@@ -14833,7 +14870,7 @@ components:
14833
14870
 
14834
14871
  This value is used as a fallback when:
14835
14872
  1. The source value doesn't match any key in the map
14836
- 2. allowFailures is set to true
14873
+ 2. allowFailures is true or omitted
14837
14874
 
14838
14875
  Setting an appropriate default helps prevent flow failures due to unexpected
14839
14876
  values and provides predictable behavior for edge cases.
@@ -14843,8 +14880,10 @@ components:
14843
14880
  - Original value indicators: "{Original Value}", "No mapping found"
14844
14881
  - Neutral values: "Other", "N/A", "Miscellaneous"
14845
14882
 
14846
- If allowFailures is false, a record whose value is unmapped fails and the default
14847
- is ignored.
14883
+ A save refuses a default together with an explicit `allowFailures: false`
14884
+ (422 `Lookups with default set can not have allowFailures explicitly set to
14885
+ false.`): a lookup either fails a miss (`allowFailures: false`, no default) or
14886
+ falls back to its default.
14848
14887
  examples:
14849
14888
  - Unknown
14850
14889
  - Other
@@ -14852,7 +14891,8 @@ components:
14852
14891
  - Unmapped Value
14853
14892
  - '{Original Value}'
14854
14893
  x-celigo-ai-guidance:
14855
- - 'Omit this field entirely when no fallback value is intended: a miss the lookup lets through then leaves the mapped field out, and with `allowFailures: false` a miss fails the record whatever the default. An empty string is a value, not "no default" — the save accepts `default: ""`, and an allowed miss writes `""`.'
14894
+ - 'Omit this field entirely when no fallback value is intended: a miss the lookup lets through then leaves the mapped field out, and `allowFailures: false` (which a save refuses alongside a default) fails it. An empty string is a value, not "no default" — the save accepts `default: ""`, and an allowed miss writes `""`.'
14895
+ - A default sends every unmapped value with no error, so add the missing key to the map when the destination needs the real value; keys match the extracted value exactly (case, spacing and suffixes count), and a save replaces the whole map.
14856
14896
  allowFailures:
14857
14897
  type:
14858
14898
  - boolean
@@ -15308,7 +15348,9 @@ components:
15308
15348
  Reference to a predefined script resource containing the transformation logic.
15309
15349
 
15310
15350
  The referenced script should contain the function specified in the
15311
- 'function' property.
15351
+ 'function' property. It must be a script in this account: any other id fails the save
15352
+ with 422 ("Only a script owned by the user or a script shared by the Integration App can
15353
+ be used at transform.script._scriptId.").
15312
15354
  format: objectid
15313
15355
  x-celigo-refModel: scripts
15314
15356
  examples:
@@ -15378,8 +15420,8 @@ components:
15378
15420
  id:
15379
15421
  type: string
15380
15422
  description: |
15381
- Unique identifier for this field within the form.
15382
- This value typically matches the key in the fieldMap object.
15423
+ Unique identifier for this field within the form: layout containers and conditions
15424
+ refer to the field by it. Use the same string as the field's fieldMap key and its `name`.
15383
15425
  examples:
15384
15426
  - url
15385
15427
  - mode
@@ -15390,8 +15432,9 @@ components:
15390
15432
  name:
15391
15433
  type: string
15392
15434
  description: |
15393
- Name of the field, used as the property name when generating the settings object
15394
- from the submitted form data.
15435
+ Key the field's value is saved under: one top-level key of the resource's `settings`,
15436
+ which the form also reads the value back from when it opens. Nested objects inside
15437
+ `settings` are written to it directly, not through a form field's `name`.
15395
15438
  examples:
15396
15439
  - url
15397
15440
  - mode
@@ -15466,11 +15509,19 @@ components:
15466
15509
  required:
15467
15510
  type: boolean
15468
15511
  description: |
15469
- When true, the field must have a value before the form can be submitted.
15512
+ When true, the field must have a value before the form can be submitted. Only the form
15513
+ enforces it: an API write of `settings` is stored without the value.
15470
15514
  default: false
15471
15515
  examples:
15472
15516
  - true
15473
15517
  - false
15518
+ defaultValue:
15519
+ description: |
15520
+ Value the form shows while the resource's `settings` holds no value under the field's
15521
+ `name`.
15522
+ examples:
15523
+ - us
15524
+ - true
15474
15525
  multiline:
15475
15526
  type: boolean
15476
15527
  description: |
@@ -15533,15 +15584,187 @@ components:
15533
15584
  keyName:
15534
15585
  type: string
15535
15586
  description: |
15536
- For keyvalue fields, specifies the placeholder and field name for the key input.
15587
+ For keyvalue and staticMap fields, names the first column: each saved row holds that
15588
+ column's value under this key. A keyvalue field without it uses `key`.
15537
15589
  examples:
15538
15590
  - theKey
15591
+ - source
15539
15592
  valueName:
15540
15593
  type: string
15541
15594
  description: |
15542
- For keyvalue fields, specifies the placeholder and field name for the value input.
15595
+ For keyvalue and staticMap fields, names the second column: each saved row holds that
15596
+ column's value under this key. A keyvalue field without it uses `value`.
15543
15597
  examples:
15544
15598
  - theValue
15599
+ - target
15600
+ keyLabel:
15601
+ type: string
15602
+ description: |
15603
+ For staticMap fields, heading of the first column.
15604
+ examples:
15605
+ - Source status
15606
+ valueLabel:
15607
+ type: string
15608
+ description: |
15609
+ For staticMap fields, heading of the second column.
15610
+ examples:
15611
+ - Destination status
15612
+ keyOptions:
15613
+ type: array
15614
+ description: |
15615
+ For staticMap fields, suggestions offered in the first column's cells. A cell still
15616
+ accepts a typed value.
15617
+ items:
15618
+ type: object
15619
+ properties:
15620
+ label:
15621
+ type: string
15622
+ description: |
15623
+ Display text for the suggestion.
15624
+ value:
15625
+ type: string
15626
+ description: |
15627
+ Value saved when the suggestion is chosen.
15628
+ examples:
15629
+ - - label: Pending
15630
+ value: pending
15631
+ - label: Shipped
15632
+ value: shipped
15633
+ valueOptions:
15634
+ type: array
15635
+ description: |
15636
+ For staticMap fields, suggestions offered in the second column's cells. A cell still
15637
+ accepts a typed value.
15638
+ items:
15639
+ type: object
15640
+ properties:
15641
+ label:
15642
+ type: string
15643
+ description: |
15644
+ Display text for the suggestion.
15645
+ value:
15646
+ type: string
15647
+ description: |
15648
+ Value saved when the suggestion is chosen.
15649
+ examples:
15650
+ - - label: Open
15651
+ value: open
15652
+ - label: Closed
15653
+ value: closed
15654
+ keyResource:
15655
+ type: object
15656
+ description: |
15657
+ For staticMap fields, fills the first column's suggestions from an export the form
15658
+ carries inline in `virtual`, run the way an exportSelect's `resource` is. With
15659
+ `keyResource` or `valueResource` set, the form requires both columns in every row
15660
+ unless `keyValueRequired` is false.
15661
+ properties:
15662
+ virtual:
15663
+ type: object
15664
+ description: |
15665
+ Export document to run, inline, shaped like an exportSelect's `resource.virtual`.
15666
+ additionalProperties: true
15667
+ valueResource:
15668
+ type: object
15669
+ description: |
15670
+ For staticMap fields, fills the second column's suggestions from an export the form
15671
+ carries inline in `virtual`, run the way an exportSelect's `resource` is.
15672
+ properties:
15673
+ virtual:
15674
+ type: object
15675
+ description: |
15676
+ Export document to run, inline, shaped like an exportSelect's `resource.virtual`.
15677
+ additionalProperties: true
15678
+ keyValueRequired:
15679
+ type: boolean
15680
+ description: |
15681
+ For staticMap fields with `keyResource` or `valueResource`, when false, saves rows
15682
+ that fill only one column; by default the form drops them.
15683
+ default: true
15684
+ examples:
15685
+ - false
15686
+ resource:
15687
+ type: object
15688
+ description: |
15689
+ For exportSelect fields, the export whose records become the options. When the form
15690
+ opens, the UI previews the export in `virtual` (with `test.limit` 100 unless the export
15691
+ sets its own) and lists the preview's `data`: each record needs a `label` and a `value`
15692
+ (a string or number serves as both), so shape them with the export's `transform`. A
15693
+ saved export can't be referenced, and an HTTP export that finds no records leaves the
15694
+ field showing an error instead of options.
15695
+ properties:
15696
+ virtual:
15697
+ type: object
15698
+ description: |
15699
+ Export document to run, inline: `adaptorType`, its adaptor block, and an optional
15700
+ `transform`. `_connectionId` defaults to the connection of the export or import the
15701
+ form belongs to; set it on any other resource's form.
15702
+ additionalProperties: true
15703
+ examples:
15704
+ - virtual:
15705
+ adaptorType: HTTPExport
15706
+ http:
15707
+ relativeURI: /v1/warehouses
15708
+ method: GET
15709
+ formType: http
15710
+ response:
15711
+ resourcePath: warehouses
15712
+ transform:
15713
+ type: expression
15714
+ expression:
15715
+ version: '2'
15716
+ rulesTwoDotZero:
15717
+ mode: create
15718
+ mappings:
15719
+ - generate: label
15720
+ extract: $.name
15721
+ dataType: string
15722
+ status: Active
15723
+ - generate: value
15724
+ extract: $.code
15725
+ dataType: string
15726
+ status: Active
15727
+ multiselect:
15728
+ type: boolean
15729
+ description: |
15730
+ For exportSelect fields, when true, the user can choose several options and the value
15731
+ is saved as an array.
15732
+ default: false
15733
+ examples:
15734
+ - true
15735
+ supportHandlebars:
15736
+ type: boolean
15737
+ description: |
15738
+ For exportSelect fields, when true, renders the `resource.virtual` export as a Handlebars
15739
+ template before each preview (all but its `transform`, `hooks`, and `filter`). On an
15740
+ integration, flow group, flow, export, or import form, the form's current values are
15741
+ under that form's scope name (`integration`, `flowGrouping`, `flow`, `export`, or
15742
+ `import`), beside the saved settings of the scopes above it, with no `settings.`
15743
+ prefix; on a connection or iClient form the template has no context. The options then
15744
+ load through `refreshOptionsOnChangesTo` or `typeAheadSearch`, or when the user
15745
+ refreshes the field.
15746
+ default: false
15747
+ examples:
15748
+ - true
15749
+ refreshOptionsOnChangesTo:
15750
+ type: array
15751
+ items:
15752
+ type: string
15753
+ description: |
15754
+ For exportSelect fields with `supportHandlebars`, ids of the fields whose values the
15755
+ templated export uses: the options load once one of them has a value and reload whenever
15756
+ one changes.
15757
+ examples:
15758
+ - - region
15759
+ typeAheadSearch:
15760
+ type: boolean
15761
+ description: |
15762
+ For exportSelect fields, when true, re-runs the templated export as the user types, with
15763
+ the typed text as this field's own value; an empty box clears the options, and typed
15764
+ text is accepted as the value.
15765
+ default: false
15766
+ examples:
15767
+ - true
15545
15768
  showDelete:
15546
15769
  type: boolean
15547
15770
  description: |
@@ -15642,7 +15865,9 @@ components:
15642
15865
  field:
15643
15866
  type: string
15644
15867
  description: |
15645
- The ID of another field whose value controls the visibility of this field.
15868
+ The ID of another field whose value controls the visibility of this field. The
15869
+ save doesn't check it: a rule naming an ID that isn't in the form counts as met,
15870
+ so the field stays visible.
15646
15871
  examples:
15647
15872
  - mode
15648
15873
  is:
@@ -15678,7 +15903,7 @@ components:
15678
15903
  - tabWithoutSave
15679
15904
  - verticalTabWithoutSave
15680
15905
  x-enumDescriptions:
15681
- column: Arranges form fields in a single vertical column layout.
15906
+ column: Places the containers side by side, one column each.
15682
15907
  collapse: Groups fields into collapsible/expandable sections.
15683
15908
  box: Wraps field groups in bordered boxes with headings.
15684
15909
  indent: Indents field groups to show hierarchy.
@@ -15687,6 +15912,15 @@ components:
15687
15912
  examples:
15688
15913
  - column
15689
15914
  - collapse
15915
+ fields:
15916
+ type: array
15917
+ items:
15918
+ type: string
15919
+ description: |
15920
+ Field IDs shown above the containers, without a heading.
15921
+ examples:
15922
+ - - region
15923
+ - vatNumber
15690
15924
  containers:
15691
15925
  type: array
15692
15926
  description: |
@@ -15726,7 +15960,8 @@ components:
15726
15960
  type: string
15727
15961
  description: |
15728
15962
  Array of field IDs that should be displayed in this container.
15729
- Each ID must correspond to a key in the fieldMap object.
15963
+ Each ID must correspond to a key in the fieldMap object: the save doesn't check it,
15964
+ and an ID that doesn't renders nothing. A field the layout doesn't list isn't shown.
15730
15965
  examples:
15731
15966
  - - A
15732
15967
  - url
@@ -15803,6 +16038,9 @@ components:
15803
16038
 
15804
16039
  The function must return a valid form object that the UI can render.
15805
16040
  Throwing an exception will signal an error to the user.
16041
+
16042
+ The UI runs the function each time it opens the form and renders the returned form instead of
16043
+ `form`, then fills in the values from `settings`; a thrown error's message replaces the form.
15806
16044
  properties:
15807
16045
  function:
15808
16046
  type: string
@@ -15826,8 +16064,10 @@ components:
15826
16064
  Reference to a predefined script resource containing the initialization function.
15827
16065
 
15828
16066
  The referenced script should contain the function specified in the
15829
- 'function' property. This script must be accessible within the user's account
15830
- and have appropriate permissions.
16067
+ 'function' property. On an integration, a flow group, a flow, an export, an import, or a
16068
+ connection, an id that isn't a script in the same account (or, on an Integration App's
16069
+ resources, one the app shares) is refused with 422 `invalid_ref`. An iClient save
16070
+ stores the id without that check.
15831
16071
  examples:
15832
16072
  - 60a2c4e6f321d800129a1a3c
15833
16073
  - 5f8d43a1b9e5a80011a35f2c
@@ -16238,8 +16478,11 @@ components:
16238
16478
  (CSV/XML/JSON) into records. Most modes take their matching configuration object (e.g. a
16239
16479
  `webhook` object when `type` is `webhook`); an HTTP or SQL `delta` export saves without a
16240
16480
  `delta` object because its request carries `{{lastExportDateTime}}`, though
16241
- `delta.startDate` sets its first window. Use `blob` only to transfer raw files without
16242
- parsing their contents.
16481
+ `delta.startDate` sets its first window. It still needs `type: delta`: on an export
16482
+ with no `type`, `{{lastExportDateTime}}` and `{{currentExportDateTime}}` render
16483
+ empty on every run, so a request that carries them goes out with blank values each time
16484
+ (live-verified 2026-10-22). Use `blob` only to transfer raw files without parsing their
16485
+ contents.
16243
16486
  x-celigo-ai-guidance:
16244
16487
  - |-
16245
16488
  ## HOW TO PICK THE TYPE VALUE
@@ -16626,7 +16869,10 @@ components:
16626
16869
  type: string
16627
16870
  format: objectId
16628
16871
  x-celigo-refModel: scripts
16629
- description: Script containing the hook function named in `function`.
16872
+ description: |-
16873
+ Script containing the hook function named in `function`. Must be a script in this
16874
+ account: any other id fails the save with 422 ("Only a script owned by the user or
16875
+ a script shared by the Integration App can be used at hooks.preSavePage._scriptId.").
16630
16876
  examples:
16631
16877
  - 60a2c4e6f321d800129a1a3c
16632
16878
  - 5f8e7d2c1b54e6003a9c7e12
@@ -16737,7 +16983,10 @@ components:
16737
16983
  type: string
16738
16984
  format: objectId
16739
16985
  x-celigo-refModel: connectors
16740
- description: Connector this export was created from, set when the export is part of an installed integration app.
16986
+ description: |-
16987
+ Connector this export was created from, set when the export is part of an installed
16988
+ integration app. The app's install sets it: a create that sends it is refused with 403
16989
+ ("Cannot create an Integration App resource").
16741
16990
  unencrypted:
16742
16991
  type: object
16743
16992
  description: Custom configuration values stored without encryption and returned in API responses.