@celigo/api-specs 0.2.207 → 0.2.209

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/api.yml CHANGED
@@ -11328,9 +11328,21 @@ components:
11328
11328
  - COMPUTE_WH
11329
11329
  schema:
11330
11330
  type: string
11331
- description: |
11332
- Default Snowflake schema. If omitted, queries must fully-qualify table names
11333
- (e.g., DATABASE.SCHEMA.TABLE).
11331
+ description: |-
11332
+ Default schema for the session: unqualified table names in queries resolve here, and
11333
+ optimized bulk load imports create their temporary staging table here even when the
11334
+ destination table is schema-qualified — so the connection's role must be able to
11335
+ create that table in it. When blank, optimized bulk load uses PUBLIC.
11336
+ x-celigo-ai-guidance:
11337
+ - |-
11338
+ When this names a schema the session cannot resolve — Snowflake reports it as not
11339
+ existing or not authorized for the role, and the session is left without a current
11340
+ schema — every optimized bulk load fails at the staging step with code `query_fail`
11341
+ and the message "Failed to run the bulk load query. Err: [TempTableQuery] The
11342
+ provided schema is invalid: <this value>" (the connector's rewrite of Snowflake's
11343
+ "This session does not have a current schema"). Fix: set this to a schema the role
11344
+ can create the staging table in — normally the destination table's own schema — or
11345
+ point the import at a second Snowflake connection with that default schema.
11334
11346
  examples:
11335
11347
  - PUBLIC
11336
11348
  role:
@@ -7161,9 +7161,21 @@ components:
7161
7161
  - COMPUTE_WH
7162
7162
  schema:
7163
7163
  type: string
7164
- description: |
7165
- Default Snowflake schema. If omitted, queries must fully-qualify table names
7166
- (e.g., DATABASE.SCHEMA.TABLE).
7164
+ description: |-
7165
+ Default schema for the session: unqualified table names in queries resolve here, and
7166
+ optimized bulk load imports create their temporary staging table here even when the
7167
+ destination table is schema-qualified — so the connection's role must be able to
7168
+ create that table in it. When blank, optimized bulk load uses PUBLIC.
7169
+ x-celigo-ai-guidance:
7170
+ - |-
7171
+ When this names a schema the session cannot resolve — Snowflake reports it as not
7172
+ existing or not authorized for the role, and the session is left without a current
7173
+ schema — every optimized bulk load fails at the staging step with code `query_fail`
7174
+ and the message "Failed to run the bulk load query. Err: [TempTableQuery] The
7175
+ provided schema is invalid: <this value>" (the connector's rewrite of Snowflake's
7176
+ "This session does not have a current schema"). Fix: set this to a schema the role
7177
+ can create the staging table in — normally the destination table's own schema — or
7178
+ point the import at a second Snowflake connection with that default schema.
7167
7179
  examples:
7168
7180
  - PUBLIC
7169
7181
  role:
package/dist/enduser.yml CHANGED
@@ -5186,9 +5186,21 @@ components:
5186
5186
  - COMPUTE_WH
5187
5187
  schema:
5188
5188
  type: string
5189
- description: |
5190
- Default Snowflake schema. If omitted, queries must fully-qualify table names
5191
- (e.g., DATABASE.SCHEMA.TABLE).
5189
+ description: |-
5190
+ Default schema for the session: unqualified table names in queries resolve here, and
5191
+ optimized bulk load imports create their temporary staging table here even when the
5192
+ destination table is schema-qualified — so the connection's role must be able to
5193
+ create that table in it. When blank, optimized bulk load uses PUBLIC.
5194
+ x-celigo-ai-guidance:
5195
+ - |-
5196
+ When this names a schema the session cannot resolve — Snowflake reports it as not
5197
+ existing or not authorized for the role, and the session is left without a current
5198
+ schema — every optimized bulk load fails at the staging step with code `query_fail`
5199
+ and the message "Failed to run the bulk load query. Err: [TempTableQuery] The
5200
+ provided schema is invalid: <this value>" (the connector's rewrite of Snowflake's
5201
+ "This session does not have a current schema"). Fix: set this to a schema the role
5202
+ can create the staging table in — normally the destination table's own schema — or
5203
+ point the import at a second Snowflake connection with that default schema.
5192
5204
  examples:
5193
5205
  - PUBLIC
5194
5206
  role:
package/dist/export.yml CHANGED
@@ -16424,7 +16424,9 @@ components:
16424
16424
  `POST /v1/exports/preview` reads the `mockOutput` in its request body, not the saved one. For
16425
16425
  an export the preview supports (an HTTP export, for example), a body that carries it (as an
16426
16426
  export read back with GET does) returns that snapshot as a lone `parse` stage without calling
16427
- the source; remove `mockOutput` from the body to preview live records.
16427
+ the source; remove `mockOutput` from the body to preview live records. A body mock with an
16428
+ empty or missing `page_of_records` still skips the source and returns 200 with empty `data`
16429
+ and an empty `parse` stage.
16428
16430
 
16429
16431
  **Limitations**
16430
16432
 
@@ -17989,17 +17991,27 @@ components:
17989
17991
  dataURIs:
17990
17992
  type: array
17991
17993
  description: |-
17992
- URIs for any files produced by the preview (e.g. file-based exports
17993
- writing to cloud storage). Empty for non-file adaptors.
17994
+ Links to the records in the source system. On an export preview, one
17995
+ entry per record in `data`: a link to the record when one is available
17996
+ (for example the export's `dataURITemplate` rendered for that record),
17997
+ otherwise `null`, as on an HTTP export without a template; absent when
17998
+ the preview returned no records and when a `mockOutput` in the request
17999
+ body answered.
17994
18000
  items:
17995
- type: string
18001
+ type:
18002
+ - string
18003
+ - 'null'
17996
18004
  dataRecordTraceKeys:
17997
18005
  type: array
17998
18006
  description: |-
17999
18007
  Trace keys for the records in this preview — one per record,
18000
- correlating stage outputs to their source record.
18008
+ correlating stage outputs to their source record; `null` for a record
18009
+ that has no key. Absent when the preview returned no records and
18010
+ captured no keys, and when a `mockOutput` in the request body answered.
18001
18011
  items:
18002
- type: string
18012
+ type:
18013
+ - string
18014
+ - 'null'
18003
18015
  stages:
18004
18016
  type: array
18005
18017
  description: |-
@@ -18062,12 +18074,11 @@ components:
18062
18074
  type: object
18063
18075
  additionalProperties: true
18064
18076
  traceKeysDuplicate:
18065
- type: array
18077
+ type: boolean
18066
18078
  description: |-
18067
- Trace keys that collided during the preview — a diagnostic for
18068
- trace-key generation; rarely non-empty in practice.
18069
- items:
18070
- type: string
18079
+ When true, two or more records in this preview share a trace key, so
18080
+ the export's `traceKeyTemplate` does not identify records uniquely.
18081
+ Absent whenever `dataRecordTraceKeys` is absent.
18071
18082
  PreviewRequest:
18072
18083
  type: object
18073
18084
  description: Request body for previewing export data
package/dist/flow.yml CHANGED
@@ -8824,17 +8824,27 @@ components:
8824
8824
  dataURIs:
8825
8825
  type: array
8826
8826
  description: |-
8827
- URIs for any files produced by the preview (e.g. file-based exports
8828
- writing to cloud storage). Empty for non-file adaptors.
8827
+ Links to the records in the source system. On an export preview, one
8828
+ entry per record in `data`: a link to the record when one is available
8829
+ (for example the export's `dataURITemplate` rendered for that record),
8830
+ otherwise `null`, as on an HTTP export without a template; absent when
8831
+ the preview returned no records and when a `mockOutput` in the request
8832
+ body answered.
8829
8833
  items:
8830
- type: string
8834
+ type:
8835
+ - string
8836
+ - 'null'
8831
8837
  dataRecordTraceKeys:
8832
8838
  type: array
8833
8839
  description: |-
8834
8840
  Trace keys for the records in this preview — one per record,
8835
- correlating stage outputs to their source record.
8841
+ correlating stage outputs to their source record; `null` for a record
8842
+ that has no key. Absent when the preview returned no records and
8843
+ captured no keys, and when a `mockOutput` in the request body answered.
8836
8844
  items:
8837
- type: string
8845
+ type:
8846
+ - string
8847
+ - 'null'
8838
8848
  stages:
8839
8849
  type: array
8840
8850
  description: |-
@@ -8897,12 +8907,11 @@ components:
8897
8907
  type: object
8898
8908
  additionalProperties: true
8899
8909
  traceKeysDuplicate:
8900
- type: array
8910
+ type: boolean
8901
8911
  description: |-
8902
- Trace keys that collided during the preview — a diagnostic for
8903
- trace-key generation; rarely non-empty in practice.
8904
- items:
8905
- type: string
8912
+ When true, two or more records in this preview share a trace key, so
8913
+ the export's `traceKeyTemplate` does not identify records uniquely.
8914
+ Absent whenever `dataRecordTraceKeys` is absent.
8906
8915
  DependencyEntry:
8907
8916
  type: object
8908
8917
  description: A single resource that depends on the queried resource.
package/dist/import.yml CHANGED
@@ -5681,6 +5681,7 @@ components:
5681
5681
  description: |-
5682
5682
  Target table for the bulk load.
5683
5683
  Must reference an existing table accessible with the connection's credentials; schema-qualified names are supported.
5684
+ On Snowflake, the temporary staging table that precedes the load is created in the connection's default schema (`rdbms.snowflake.schema` on the connection), not in this table's schema.
5684
5685
  x-celigo-ai-guidance:
5685
5686
  - |-
5686
5687
  The name of the target table within the relational database management system
@@ -8899,6 +8900,11 @@ components:
8899
8900
  - Use `"csv"` for flat tabular data, spreadsheet-like records
8900
8901
  - Use `"xml"` for XML-based integrations, SOAP services
8901
8902
  - Use `"xlsx"` for Excel-compatible outputs
8903
+ - |-
8904
+ What writes the file's content differs by type: `csv` and `xlsx` are mapping-driven
8905
+ (the mapped record's fields become the columns); `json` is mapping-driven too unless
8906
+ `json.body` is set; `xml` always needs the `xml.body` template; `filedefinition` takes
8907
+ the file definition's rules. Pick the type first, then author only that type's block.
8902
8908
  encoding:
8903
8909
  type: string
8904
8910
  enum:
@@ -9040,6 +9046,41 @@ components:
9040
9046
  type: object
9041
9047
  description: JSON-specific configuration. Only used when `type` is `"json"`.
9042
9048
  properties:
9049
+ body:
9050
+ type: string
9051
+ x-celigo-agent:
9052
+ - handlebars
9053
+ description: |-
9054
+ Handlebars template for the generated JSON document — the *Build JSON document*
9055
+ editor. Rendered once per file against the records of the page, after the mapping:
9056
+ text before the `{{#each batch_of_records}}` loop is the file's header, the loop
9057
+ body is written once per record, text after it is the footer; under
9058
+ `aggregation.type: all` the loop's output for every page of the run is written
9059
+ between one header and one footer. Omit it to write the mapped records as a JSON
9060
+ array per file.
9061
+ x-celigo-ai-guidance:
9062
+ - |-
9063
+ Leave this out unless the user needs a custom document shape: with no body the
9064
+ platform writes each file as a JSON array of the mapped records. A saved body
9065
+ overrides that — a leftover `{}` body writes literal `{}` files.
9066
+ - |-
9067
+ When a body is needed, wrap the per-record part in `{{#each batch_of_records}} …
9068
+ {{/each}}` and address the record inside it as `record.<field>` (a grouped record
9069
+ as `{{#each rows}} … {{/each}}`); `{{{jsonSerialize record}}}` with
9070
+ `{{#unless @last}},{{/unless}}` between elements is the common form. The JSON
9071
+ generator recognises only that loop: a `{{#each data}}` loop is written whole per
9072
+ page and the pages are joined with commas (`[…],[…]`, invalid JSON under one file
9073
+ per run). At the root there is no `record`: `{{record.<field>}}` or a bare
9074
+ `{{<field>}}` outside the loop renders empty, while `batch_of_records` is in
9075
+ scope (`batch_of_records.0.record.<field>` is the first record when a header needs
9076
+ it). A body with no loop is rendered whole once per page — `{"id": {{record.id}} }`
9077
+ becomes `{"id": }` per page — and under `aggregation.type: all` the pages are
9078
+ joined with commas (`{"id": },{"id": }`), which is invalid JSON even when each
9079
+ page's own text was valid.
9080
+ - |-
9081
+ The template renders against the page whatever `http.batchSize` says, and `http.body`
9082
+ plays no part in the file's content. The field's editor Preview does not run the
9083
+ generator, so judge the body by a run.
9043
9084
  resourcePath:
9044
9085
  type: string
9045
9086
  description: JSONPath expression to locate records within the JSON structure.
@@ -9047,6 +9088,39 @@ components:
9047
9088
  type: object
9048
9089
  description: XML-specific configuration. Only used when `type` is `"xml"`.
9049
9090
  properties:
9091
+ body:
9092
+ type: string
9093
+ x-celigo-agent:
9094
+ - handlebars
9095
+ description: |-
9096
+ Handlebars template for the generated XML document — the *Build XML document*
9097
+ editor. Rendered once per file against the records of the page, after the mapping:
9098
+ text before the record loop is the file's header, the loop body is written once per
9099
+ record, text after it is the footer; under `aggregation.type: all` the loop's
9100
+ output for every page of the run is written between one header and one footer.
9101
+ Must be set when `type` is `"xml"` — there is no mapping-driven XML.
9102
+ x-celigo-ai-guidance:
9103
+ - |-
9104
+ Author it as header + record loop + footer: the XML declaration and root element
9105
+ around `{{#each batch_of_records}} … {{/each}}`, with the record addressed inside
9106
+ the loop as `record.<field>` (a grouped record as `{{#each rows}} … {{/each}}`,
9107
+ nested elements as `{{#each record.<list>}} … {{/each}}`). The XML generator also
9108
+ accepts the legacy `{{#each data}} … {{/each}}`, which binds the record itself as
9109
+ `this` (`{{<field>}}`). At the root there is no `record`: `{{record.<field>}}` or
9110
+ a bare `{{<field>}}` outside the loop renders empty, while `batch_of_records` is in
9111
+ scope (`batch_of_records.0.record.<field>` is the first record when a header needs
9112
+ it). A body with no loop is rendered whole once per page — `<root>{{record.id}}</root>`
9113
+ becomes `<root></root>` per page — and under `aggregation.type: all` the pages are
9114
+ concatenated into one multi-root file (`<root></root><root></root>`); the import
9115
+ form does not let a one-file-per-run XML template without an each block save,
9116
+ while an API save writes that file.
9117
+ - |-
9118
+ The template renders against the page whatever `http.batchSize` says, and on an
9119
+ HTTP file-provider import `http.body` plays no part in the file's content. The
9120
+ field's editor Preview does not run the generator, so judge the body by a run.
9121
+ - |-
9122
+ Saving `type: xml` without this field fails with 422 `missing_required_field`
9123
+ ("required field, file.xml.body is missing.").
9050
9124
  resourcePath:
9051
9125
  type: string
9052
9126
  description: XPath expression to locate records within the XML structure.
@@ -9337,6 +9411,19 @@ components:
9337
9411
  description: Provider-native ID of the storage root the backup relative path resolves against; set when pathMode is relativePath.
9338
9412
  examples:
9339
9413
  - 1qU1hvFarBFMb4-twqKm1rR5o_6j9vs9g
9414
+ if:
9415
+ properties:
9416
+ type:
9417
+ const: xml
9418
+ required:
9419
+ - type
9420
+ then:
9421
+ required:
9422
+ - xml
9423
+ properties:
9424
+ xml:
9425
+ required:
9426
+ - body
9340
9427
  FileSystem:
9341
9428
  type: object
9342
9429
  description: |-
@@ -8103,9 +8103,21 @@ components:
8103
8103
  - COMPUTE_WH
8104
8104
  schema:
8105
8105
  type: string
8106
- description: |
8107
- Default Snowflake schema. If omitted, queries must fully-qualify table names
8108
- (e.g., DATABASE.SCHEMA.TABLE).
8106
+ description: |-
8107
+ Default schema for the session: unqualified table names in queries resolve here, and
8108
+ optimized bulk load imports create their temporary staging table here even when the
8109
+ destination table is schema-qualified — so the connection's role must be able to
8110
+ create that table in it. When blank, optimized bulk load uses PUBLIC.
8111
+ x-celigo-ai-guidance:
8112
+ - |-
8113
+ When this names a schema the session cannot resolve — Snowflake reports it as not
8114
+ existing or not authorized for the role, and the session is left without a current
8115
+ schema — every optimized bulk load fails at the staging step with code `query_fail`
8116
+ and the message "Failed to run the bulk load query. Err: [TempTableQuery] The
8117
+ provided schema is invalid: <this value>" (the connector's rewrite of Snowflake's
8118
+ "This session does not have a current schema"). Fix: set this to a schema the role
8119
+ can create the staging table in — normally the destination table's own schema — or
8120
+ point the import at a second Snowflake connection with that default schema.
8109
8121
  examples:
8110
8122
  - PUBLIC
8111
8123
  role:
package/dist/tool.yml CHANGED
@@ -10658,9 +10658,21 @@ components:
10658
10658
  - COMPUTE_WH
10659
10659
  schema:
10660
10660
  type: string
10661
- description: |
10662
- Default Snowflake schema. If omitted, queries must fully-qualify table names
10663
- (e.g., DATABASE.SCHEMA.TABLE).
10661
+ description: |-
10662
+ Default schema for the session: unqualified table names in queries resolve here, and
10663
+ optimized bulk load imports create their temporary staging table here even when the
10664
+ destination table is schema-qualified — so the connection's role must be able to
10665
+ create that table in it. When blank, optimized bulk load uses PUBLIC.
10666
+ x-celigo-ai-guidance:
10667
+ - |-
10668
+ When this names a schema the session cannot resolve — Snowflake reports it as not
10669
+ existing or not authorized for the role, and the session is left without a current
10670
+ schema — every optimized bulk load fails at the staging step with code `query_fail`
10671
+ and the message "Failed to run the bulk load query. Err: [TempTableQuery] The
10672
+ provided schema is invalid: <this value>" (the connector's rewrite of Snowflake's
10673
+ "This session does not have a current schema"). Fix: set this to a schema the role
10674
+ can create the staging table in — normally the destination table's own schema — or
10675
+ point the import at a second Snowflake connection with that default schema.
10664
10676
  examples:
10665
10677
  - PUBLIC
10666
10678
  role:
@@ -17556,6 +17568,7 @@ components:
17556
17568
  description: |-
17557
17569
  Target table for the bulk load.
17558
17570
  Must reference an existing table accessible with the connection's credentials; schema-qualified names are supported.
17571
+ On Snowflake, the temporary staging table that precedes the load is created in the connection's default schema (`rdbms.snowflake.schema` on the connection), not in this table's schema.
17559
17572
  x-celigo-ai-guidance:
17560
17573
  - |-
17561
17574
  The name of the target table within the relational database management system
@@ -20774,6 +20787,11 @@ components:
20774
20787
  - Use `"csv"` for flat tabular data, spreadsheet-like records
20775
20788
  - Use `"xml"` for XML-based integrations, SOAP services
20776
20789
  - Use `"xlsx"` for Excel-compatible outputs
20790
+ - |-
20791
+ What writes the file's content differs by type: `csv` and `xlsx` are mapping-driven
20792
+ (the mapped record's fields become the columns); `json` is mapping-driven too unless
20793
+ `json.body` is set; `xml` always needs the `xml.body` template; `filedefinition` takes
20794
+ the file definition's rules. Pick the type first, then author only that type's block.
20777
20795
  encoding:
20778
20796
  type: string
20779
20797
  enum:
@@ -20915,6 +20933,41 @@ components:
20915
20933
  type: object
20916
20934
  description: JSON-specific configuration. Only used when `type` is `"json"`.
20917
20935
  properties:
20936
+ body:
20937
+ type: string
20938
+ x-celigo-agent:
20939
+ - handlebars
20940
+ description: |-
20941
+ Handlebars template for the generated JSON document — the *Build JSON document*
20942
+ editor. Rendered once per file against the records of the page, after the mapping:
20943
+ text before the `{{#each batch_of_records}}` loop is the file's header, the loop
20944
+ body is written once per record, text after it is the footer; under
20945
+ `aggregation.type: all` the loop's output for every page of the run is written
20946
+ between one header and one footer. Omit it to write the mapped records as a JSON
20947
+ array per file.
20948
+ x-celigo-ai-guidance:
20949
+ - |-
20950
+ Leave this out unless the user needs a custom document shape: with no body the
20951
+ platform writes each file as a JSON array of the mapped records. A saved body
20952
+ overrides that — a leftover `{}` body writes literal `{}` files.
20953
+ - |-
20954
+ When a body is needed, wrap the per-record part in `{{#each batch_of_records}} …
20955
+ {{/each}}` and address the record inside it as `record.<field>` (a grouped record
20956
+ as `{{#each rows}} … {{/each}}`); `{{{jsonSerialize record}}}` with
20957
+ `{{#unless @last}},{{/unless}}` between elements is the common form. The JSON
20958
+ generator recognises only that loop: a `{{#each data}}` loop is written whole per
20959
+ page and the pages are joined with commas (`[…],[…]`, invalid JSON under one file
20960
+ per run). At the root there is no `record`: `{{record.<field>}}` or a bare
20961
+ `{{<field>}}` outside the loop renders empty, while `batch_of_records` is in
20962
+ scope (`batch_of_records.0.record.<field>` is the first record when a header needs
20963
+ it). A body with no loop is rendered whole once per page — `{"id": {{record.id}} }`
20964
+ becomes `{"id": }` per page — and under `aggregation.type: all` the pages are
20965
+ joined with commas (`{"id": },{"id": }`), which is invalid JSON even when each
20966
+ page's own text was valid.
20967
+ - |-
20968
+ The template renders against the page whatever `http.batchSize` says, and `http.body`
20969
+ plays no part in the file's content. The field's editor Preview does not run the
20970
+ generator, so judge the body by a run.
20918
20971
  resourcePath:
20919
20972
  type: string
20920
20973
  description: JSONPath expression to locate records within the JSON structure.
@@ -20922,6 +20975,39 @@ components:
20922
20975
  type: object
20923
20976
  description: XML-specific configuration. Only used when `type` is `"xml"`.
20924
20977
  properties:
20978
+ body:
20979
+ type: string
20980
+ x-celigo-agent:
20981
+ - handlebars
20982
+ description: |-
20983
+ Handlebars template for the generated XML document — the *Build XML document*
20984
+ editor. Rendered once per file against the records of the page, after the mapping:
20985
+ text before the record loop is the file's header, the loop body is written once per
20986
+ record, text after it is the footer; under `aggregation.type: all` the loop's
20987
+ output for every page of the run is written between one header and one footer.
20988
+ Must be set when `type` is `"xml"` — there is no mapping-driven XML.
20989
+ x-celigo-ai-guidance:
20990
+ - |-
20991
+ Author it as header + record loop + footer: the XML declaration and root element
20992
+ around `{{#each batch_of_records}} … {{/each}}`, with the record addressed inside
20993
+ the loop as `record.<field>` (a grouped record as `{{#each rows}} … {{/each}}`,
20994
+ nested elements as `{{#each record.<list>}} … {{/each}}`). The XML generator also
20995
+ accepts the legacy `{{#each data}} … {{/each}}`, which binds the record itself as
20996
+ `this` (`{{<field>}}`). At the root there is no `record`: `{{record.<field>}}` or
20997
+ a bare `{{<field>}}` outside the loop renders empty, while `batch_of_records` is in
20998
+ scope (`batch_of_records.0.record.<field>` is the first record when a header needs
20999
+ it). A body with no loop is rendered whole once per page — `<root>{{record.id}}</root>`
21000
+ becomes `<root></root>` per page — and under `aggregation.type: all` the pages are
21001
+ concatenated into one multi-root file (`<root></root><root></root>`); the import
21002
+ form does not let a one-file-per-run XML template without an each block save,
21003
+ while an API save writes that file.
21004
+ - |-
21005
+ The template renders against the page whatever `http.batchSize` says, and on an
21006
+ HTTP file-provider import `http.body` plays no part in the file's content. The
21007
+ field's editor Preview does not run the generator, so judge the body by a run.
21008
+ - |-
21009
+ Saving `type: xml` without this field fails with 422 `missing_required_field`
21010
+ ("required field, file.xml.body is missing.").
20925
21011
  resourcePath:
20926
21012
  type: string
20927
21013
  description: XPath expression to locate records within the XML structure.
@@ -21212,6 +21298,19 @@ components:
21212
21298
  description: Provider-native ID of the storage root the backup relative path resolves against; set when pathMode is relativePath.
21213
21299
  examples:
21214
21300
  - 1qU1hvFarBFMb4-twqKm1rR5o_6j9vs9g
21301
+ if:
21302
+ properties:
21303
+ type:
21304
+ const: xml
21305
+ required:
21306
+ - type
21307
+ then:
21308
+ required:
21309
+ - xml
21310
+ properties:
21311
+ xml:
21312
+ required:
21313
+ - body
21215
21314
  FileSystem:
21216
21315
  type: object
21217
21316
  description: |-
@@ -38239,7 +38338,9 @@ components:
38239
38338
  `POST /v1/exports/preview` reads the `mockOutput` in its request body, not the saved one. For
38240
38339
  an export the preview supports (an HTTP export, for example), a body that carries it (as an
38241
38340
  export read back with GET does) returns that snapshot as a lone `parse` stage without calling
38242
- the source; remove `mockOutput` from the body to preview live records.
38341
+ the source; remove `mockOutput` from the body to preview live records. A body mock with an
38342
+ empty or missing `page_of_records` still skips the source and returns 200 with empty `data`
38343
+ and an empty `parse` stage.
38243
38344
 
38244
38345
  **Limitations**
38245
38346
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@celigo/api-specs",
3
- "version": "0.2.207",
3
+ "version": "0.2.209",
4
4
  "private": false,
5
5
  "description": "Public OpenAPI bundles (dist/) and the celigo-cli lint schema pack (schemas.json).",
6
6
  "keywords": [