@celigo/api-specs 0.2.199 → 0.2.201

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
@@ -519,6 +519,7 @@ paths:
519
519
  | `/logging/mode` | Logging level for requests handled by this API |
520
520
  | `/logging/debugUntil` | End of a temporary full-debug capture window |
521
521
  | `/traceKeyTemplate` | Handlebars template that computes each request's trace key |
522
+ | `/failOnOfflineConnection` | Turn the offline-connection check on or off (boolean) |
522
523
 
523
524
  All other paths are rejected with `422`. This is the only way to change
524
525
  `logging` -- PUT silently ignores that field.
@@ -5748,6 +5749,12 @@ components:
5748
5749
  step's response is discarded after the call.
5749
5750
 
5750
5751
  `fields` and `lists` are plain arrays — exactly the shape GET returns.
5752
+ Entries sent empty (`null`, `{}`, or every value `null`) are dropped on
5753
+ save. Any other `fields` entry left with neither `extract` nor
5754
+ `generate`, or `lists` entry with neither `generate` nor `fields` —
5755
+ what is left of a wrapped or misspelled value such as
5756
+ `"fields": {"type": [...]}` — fails the save with 422
5757
+ `invalid_field_value`.
5751
5758
 
5752
5759
  Extract paths do NOT read the raw application response — the platform
5753
5760
  wraps every response in a canonical per-record envelope first, and
@@ -5804,10 +5811,10 @@ components:
5804
5811
  runs on top of it in a test run).
5805
5812
  - |-
5806
5813
  Send `fields` and `lists` as bare arrays, exactly as GET returns them.
5807
- Never wrap either in an object (e.g. `"fields": {"type": [...]}`): the
5808
- API does not reject that shape — it returns 200 and silently persists
5809
- `fields: [null]` / `lists: [{"fields": []}]`, erasing the step's
5810
- response mappings.
5814
+ A wrapped value (e.g. `"fields": {"type": [...]}`), an empty object
5815
+ (`"fields": {}`), or an entry holding only unknown keys fails the save
5816
+ with 422 `invalid_field_value`, and the error's `field` names the array
5817
+ (e.g. `pageProcessors[0].responseMapping.fields`).
5811
5818
  - |-
5812
5819
  responseMapping is fully replaced on PUT: omitting it resets the step
5813
5820
  to empty `{"fields": [], "lists": []}`. Always send the complete
@@ -6794,6 +6801,15 @@ components:
6794
6801
  description: When true, the API rejects all incoming requests.
6795
6802
  examples:
6796
6803
  - false
6804
+ failOnOfflineConnection:
6805
+ type: boolean
6806
+ description: |-
6807
+ When true, a call to a builder-mode API is refused before any step runs if a connection
6808
+ the API uses is offline. Set to true on create when omitted. Present on responses only
6809
+ when set: a PUT that omits it removes it, which turns the check off, and
6810
+ `PATCH /v1/apis/{_id}` on `/failOnOfflineConnection` changes it on its own.
6811
+ examples:
6812
+ - true
6797
6813
  timeoutPeriod:
6798
6814
  type: integer
6799
6815
  minimum: 0
@@ -6801,6 +6817,9 @@ components:
6801
6817
  description: |-
6802
6818
  Request-timeout override in seconds (1–120). `0` is a sentinel meaning "use the
6803
6819
  120-second default" — the server rewrites it on write, so a stored value is never 0.
6820
+ A call still running when the timeout passes answers 504 `api_timeout`. With
6821
+ `failOnOfflineConnection` false or absent, a step whose connection is offline holds the
6822
+ call until then.
6804
6823
  examples:
6805
6824
  - 120
6806
6825
  - 30
@@ -7652,7 +7671,14 @@ components:
7652
7671
  - /apis/v1/orders?status=open
7653
7672
  statusCode:
7654
7673
  type: integer
7655
- description: HTTP status code the API responded with.
7674
+ description: |-
7675
+ HTTP status code the API responded with. A call refused because
7676
+ `failOnOfflineConnection` is true and a connection the API uses is offline is logged
7677
+ with 500 and one `apiCall` step in `error` status; the caller got
7678
+ `api_connection_offline` ("One or more connections used by this API are offline.
7679
+ Contact the API publisher and try again later."). Neither that response nor the
7680
+ step's log data names the connection: `GET /v1/apis/{_id}/connections` shows which
7681
+ ones read `offline: true`. A call that ran past `timeoutPeriod` is logged with 504.
7656
7682
  examples:
7657
7683
  - 200
7658
7684
  traceKey:
@@ -10915,6 +10941,22 @@ components:
10915
10941
  an `auth.type` `oauth` connection: 422 invalid_field_update "Removing _iClientId is
10916
10942
  not allowed for oauth connections due to security reasons." — switch it to another
10917
10943
  iClient instead.
10944
+ _tokenStoreId:
10945
+ type: string
10946
+ format: objectId
10947
+ readOnly: true
10948
+ description: |-
10949
+ Token store holding the expiring Shopify access token that this connection shares with
10950
+ the other connections of the same app and shop. Set only by the platform, and present
10951
+ only when set; no API route reads the store itself. Sending the field on POST, even as
10952
+ `null`, fails with 422 `token_store_id_not_writable`. On PUT or PATCH only a value
10953
+ different from the stored one fails the same way (any id, on a connection that has
10954
+ none), so sending it back unchanged or omitting it is accepted.
10955
+ x-celigo-ai-guidance:
10956
+ - |-
10957
+ When creating a connection from another connection's GET response, drop
10958
+ `http._tokenStoreId` from the body: a POST that carries it with any value, `null`
10959
+ included, fails with 422 `token_store_id_not_writable`.
10918
10960
  _httpConnectorId:
10919
10961
  type: string
10920
10962
  format: objectId
@@ -6763,6 +6763,22 @@ components:
6763
6763
  an `auth.type` `oauth` connection: 422 invalid_field_update "Removing _iClientId is
6764
6764
  not allowed for oauth connections due to security reasons." — switch it to another
6765
6765
  iClient instead.
6766
+ _tokenStoreId:
6767
+ type: string
6768
+ format: objectId
6769
+ readOnly: true
6770
+ description: |-
6771
+ Token store holding the expiring Shopify access token that this connection shares with
6772
+ the other connections of the same app and shop. Set only by the platform, and present
6773
+ only when set; no API route reads the store itself. Sending the field on POST, even as
6774
+ `null`, fails with 422 `token_store_id_not_writable`. On PUT or PATCH only a value
6775
+ different from the stored one fails the same way (any id, on a connection that has
6776
+ none), so sending it back unchanged or omitting it is accepted.
6777
+ x-celigo-ai-guidance:
6778
+ - |-
6779
+ When creating a connection from another connection's GET response, drop
6780
+ `http._tokenStoreId` from the body: a POST that carries it with any value, `null`
6781
+ included, fails with 422 `token_store_id_not_writable`.
6766
6782
  _httpConnectorId:
6767
6783
  type: string
6768
6784
  format: objectId
package/dist/enduser.yml CHANGED
@@ -4799,6 +4799,22 @@ components:
4799
4799
  an `auth.type` `oauth` connection: 422 invalid_field_update "Removing _iClientId is
4800
4800
  not allowed for oauth connections due to security reasons." — switch it to another
4801
4801
  iClient instead.
4802
+ _tokenStoreId:
4803
+ type: string
4804
+ format: objectId
4805
+ readOnly: true
4806
+ description: |-
4807
+ Token store holding the expiring Shopify access token that this connection shares with
4808
+ the other connections of the same app and shop. Set only by the platform, and present
4809
+ only when set; no API route reads the store itself. Sending the field on POST, even as
4810
+ `null`, fails with 422 `token_store_id_not_writable`. On PUT or PATCH only a value
4811
+ different from the stored one fails the same way (any id, on a connection that has
4812
+ none), so sending it back unchanged or omitting it is accepted.
4813
+ x-celigo-ai-guidance:
4814
+ - |-
4815
+ When creating a connection from another connection's GET response, drop
4816
+ `http._tokenStoreId` from the body: a POST that carries it with any value, `null`
4817
+ included, fails with 422 `token_store_id_not_writable`.
4802
4818
  _httpConnectorId:
4803
4819
  type: string
4804
4820
  format: objectId
package/dist/flow.yml CHANGED
@@ -4369,6 +4369,12 @@ components:
4369
4369
  step's response is discarded after the call.
4370
4370
 
4371
4371
  `fields` and `lists` are plain arrays — exactly the shape GET returns.
4372
+ Entries sent empty (`null`, `{}`, or every value `null`) are dropped on
4373
+ save. Any other `fields` entry left with neither `extract` nor
4374
+ `generate`, or `lists` entry with neither `generate` nor `fields` —
4375
+ what is left of a wrapped or misspelled value such as
4376
+ `"fields": {"type": [...]}` — fails the save with 422
4377
+ `invalid_field_value`.
4372
4378
 
4373
4379
  Extract paths do NOT read the raw application response — the platform
4374
4380
  wraps every response in a canonical per-record envelope first, and
@@ -4425,10 +4431,10 @@ components:
4425
4431
  runs on top of it in a test run).
4426
4432
  - |-
4427
4433
  Send `fields` and `lists` as bare arrays, exactly as GET returns them.
4428
- Never wrap either in an object (e.g. `"fields": {"type": [...]}`): the
4429
- API does not reject that shape — it returns 200 and silently persists
4430
- `fields: [null]` / `lists: [{"fields": []}]`, erasing the step's
4431
- response mappings.
4434
+ A wrapped value (e.g. `"fields": {"type": [...]}`), an empty object
4435
+ (`"fields": {}`), or an entry holding only unknown keys fails the save
4436
+ with 422 `invalid_field_value`, and the error's `field` names the array
4437
+ (e.g. `pageProcessors[0].responseMapping.fields`).
4432
4438
  - |-
4433
4439
  responseMapping is fully replaced on PUT: omitting it resets the step
4434
4440
  to empty `{"fields": [], "lists": []}`. Always send the complete
package/dist/import.yml CHANGED
@@ -4160,10 +4160,17 @@ components:
4160
4160
  - string
4161
4161
  - 'null'
4162
4162
  description: |
4163
- Path in the source record to extract the value from.
4164
- Use dot notation for nested fields (e.g., "address.city").
4165
- The platform stores `null` here on fields driven by
4166
- `hardCodedValue` instead of an extract path.
4163
+ Path in the source record to extract the value from, in
4164
+ dot notation for nested fields (e.g., "address.city").
4165
+ A bare string is always read as a path, never as a
4166
+ constant — a path that matches no field sets the
4167
+ destination field to an empty string (""), written,
4168
+ not omitted and not the path text, and `discardIfEmpty`
4169
+ is what skips it; constants belong in `hardCodedValue`,
4170
+ and the platform stores `null` here on fields driven by
4171
+ it. A Handlebars template (contains `{{`) reads the
4172
+ record's fields by bare name; `{{record.<field>}}`
4173
+ renders an empty string, not the value.
4167
4174
  examples:
4168
4175
  - address.city
4169
4176
  generate:
@@ -4410,9 +4417,14 @@ components:
4410
4417
  Path from the source record root that produces
4411
4418
  the value for this sublist column. Paths are
4412
4419
  always anchored at the source record root —
4413
- never relative to a pre-iterated row. The
4420
+ never relative to a pre-iterated row — and a
4421
+ bare string is always read as a path, never as a
4422
+ constant: a path that matches no field leaves the
4423
+ column absent from every line (unlike a body
4424
+ field, which is set to ""), never the text
4425
+ itself. Constants belong in `hardCodedValue`; the
4414
4426
  platform stores `null` here on fields driven by
4415
- `hardCodedValue` instead of an extract path.
4427
+ it.
4416
4428
  x-celigo-ai-guidance:
4417
4429
  - |-
4418
4430
  Two extract patterns, often mixed in the same
@@ -435,6 +435,7 @@ paths:
435
435
  name: Error automation via integrator.io APIs
436
436
  docType: Template
437
437
  type: integration
438
+ celigoAgentSupported: false
438
439
  description: Template that automates flow error handling via integrator.io APIs.
439
440
  applications:
440
441
  - integrator.io
@@ -544,6 +545,15 @@ components:
544
545
  on Connector entries, which install through their own route.
545
546
  examples:
546
547
  - integration
548
+ celigoAgentSupported:
549
+ type: boolean
550
+ description: |-
551
+ When true, the template is flagged for installation through the Celigo Agent (Ora)
552
+ guided install. Present on every `docType: Template` entry of
553
+ `POST /v1/published/combined`; absent on Connector entries and from
554
+ `GET /v1/templates/published`.
555
+ examples:
556
+ - false
547
557
  imageURL:
548
558
  type: string
549
559
  description: |-
@@ -7241,6 +7241,22 @@ components:
7241
7241
  an `auth.type` `oauth` connection: 422 invalid_field_update "Removing _iClientId is
7242
7242
  not allowed for oauth connections due to security reasons." — switch it to another
7243
7243
  iClient instead.
7244
+ _tokenStoreId:
7245
+ type: string
7246
+ format: objectId
7247
+ readOnly: true
7248
+ description: |-
7249
+ Token store holding the expiring Shopify access token that this connection shares with
7250
+ the other connections of the same app and shop. Set only by the platform, and present
7251
+ only when set; no API route reads the store itself. Sending the field on POST, even as
7252
+ `null`, fails with 422 `token_store_id_not_writable`. On PUT or PATCH only a value
7253
+ different from the stored one fails the same way (any id, on a connection that has
7254
+ none), so sending it back unchanged or omitting it is accepted.
7255
+ x-celigo-ai-guidance:
7256
+ - |-
7257
+ When creating a connection from another connection's GET response, drop
7258
+ `http._tokenStoreId` from the body: a POST that carries it with any value, `null`
7259
+ included, fails with 422 `token_store_id_not_writable`.
7244
7260
  _httpConnectorId:
7245
7261
  type: string
7246
7262
  format: objectId
package/dist/tool.yml CHANGED
@@ -7027,7 +7027,12 @@ components:
7027
7027
  the same envelope (`{{data.0.name}}`,
7028
7028
  `{{#if data.length}}found{{/if}}`; dot indexes only; a
7029
7029
  string result); there is no `record` object in this
7030
- context, so `{{record.…}}` renders nothing.
7030
+ context, so `{{record.…}}` renders nothing. Entries sent
7031
+ empty (`null`, `{}`) are dropped on save; a `fields` entry
7032
+ left with neither `extract` nor `generate`, or a `lists`
7033
+ entry with neither `generate` nor `fields` (a wrapped or
7034
+ misspelled value), fails the save with 422
7035
+ `invalid_field_value`.
7031
7036
  properties:
7032
7037
  fields:
7033
7038
  type: array
@@ -10229,6 +10234,22 @@ components:
10229
10234
  an `auth.type` `oauth` connection: 422 invalid_field_update "Removing _iClientId is
10230
10235
  not allowed for oauth connections due to security reasons." — switch it to another
10231
10236
  iClient instead.
10237
+ _tokenStoreId:
10238
+ type: string
10239
+ format: objectId
10240
+ readOnly: true
10241
+ description: |-
10242
+ Token store holding the expiring Shopify access token that this connection shares with
10243
+ the other connections of the same app and shop. Set only by the platform, and present
10244
+ only when set; no API route reads the store itself. Sending the field on POST, even as
10245
+ `null`, fails with 422 `token_store_id_not_writable`. On PUT or PATCH only a value
10246
+ different from the stored one fails the same way (any id, on a connection that has
10247
+ none), so sending it back unchanged or omitting it is accepted.
10248
+ x-celigo-ai-guidance:
10249
+ - |-
10250
+ When creating a connection from another connection's GET response, drop
10251
+ `http._tokenStoreId` from the body: a POST that carries it with any value, `null`
10252
+ included, fails with 422 `token_store_id_not_writable`.
10232
10253
  _httpConnectorId:
10233
10254
  type: string
10234
10255
  format: objectId
@@ -16229,10 +16250,17 @@ components:
16229
16250
  - string
16230
16251
  - 'null'
16231
16252
  description: |
16232
- Path in the source record to extract the value from.
16233
- Use dot notation for nested fields (e.g., "address.city").
16234
- The platform stores `null` here on fields driven by
16235
- `hardCodedValue` instead of an extract path.
16253
+ Path in the source record to extract the value from, in
16254
+ dot notation for nested fields (e.g., "address.city").
16255
+ A bare string is always read as a path, never as a
16256
+ constant — a path that matches no field sets the
16257
+ destination field to an empty string (""), written,
16258
+ not omitted and not the path text, and `discardIfEmpty`
16259
+ is what skips it; constants belong in `hardCodedValue`,
16260
+ and the platform stores `null` here on fields driven by
16261
+ it. A Handlebars template (contains `{{`) reads the
16262
+ record's fields by bare name; `{{record.<field>}}`
16263
+ renders an empty string, not the value.
16236
16264
  examples:
16237
16265
  - address.city
16238
16266
  generate:
@@ -16479,9 +16507,14 @@ components:
16479
16507
  Path from the source record root that produces
16480
16508
  the value for this sublist column. Paths are
16481
16509
  always anchored at the source record root —
16482
- never relative to a pre-iterated row. The
16510
+ never relative to a pre-iterated row — and a
16511
+ bare string is always read as a path, never as a
16512
+ constant: a path that matches no field leaves the
16513
+ column absent from every line (unlike a body
16514
+ field, which is set to ""), never the text
16515
+ itself. Constants belong in `hardCodedValue`; the
16483
16516
  platform stores `null` here on fields driven by
16484
- `hardCodedValue` instead of an extract path.
16517
+ it.
16485
16518
  x-celigo-ai-guidance:
16486
16519
  - |-
16487
16520
  Two extract patterns, often mixed in the same
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@celigo/api-specs",
3
- "version": "0.2.199",
3
+ "version": "0.2.201",
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": "3676e0c6",
5
- "generatedAt": "2026-10-27"
4
+ "iasCommit": "2a2728aa",
5
+ "generatedAt": "2026-10-28"
6
6
  },
7
7
  "roots": {
8
8
  "aiagent": 128,
@@ -2243,6 +2243,7 @@
2243
2243
  "disabled": 8,
2244
2244
  "draft": 8,
2245
2245
  "draftExpiresAt": 0,
2246
+ "failOnOfflineConnection": 8,
2246
2247
  "function": 0,
2247
2248
  "lastModified": 0,
2248
2249
  "logging": 152,
@@ -3218,6 +3219,7 @@
3218
3219
  "_httpConnectorId": 0,
3219
3220
  "_httpConnectorVersionId": 0,
3220
3221
  "_iClientId": 0,
3222
+ "_tokenStoreId": 0,
3221
3223
  "auth": 280,
3222
3224
  "baseURI": 179,
3223
3225
  "clientCertificates": 251,