@celigo/api-specs 0.2.45 → 0.2.47

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
@@ -12683,6 +12683,13 @@ components:
12683
12683
  There are two main parsing strategies available:
12684
12684
  - **Automatic parsing**: Simple but produces more complex output
12685
12685
  - **Custom parsing**: More control over the resulting JSON structure
12686
+ x-celigo-ai-guidance:
12687
+ - |-
12688
+ With V0_json false, an empty element (`<FirstName></FirstName>`, `<FirstName/>`) parses to
12689
+ an empty object `{}` under every setting here, not an empty string. A Handlebars template
12690
+ that outputs the field renders `[object Object]`; guard it with
12691
+ `{{#if (eq (typeOf FirstName) "string")}}{{FirstName}}{{/if}}` — a bare `{{#if FirstName}}`
12692
+ does not skip it because `{}` is truthy.
12686
12693
  properties:
12687
12694
  V0_json:
12688
12695
  type: boolean
@@ -12704,22 +12711,29 @@ components:
12704
12711
  listNodes:
12705
12712
  type: array
12706
12713
  description: |
12707
- Specifies which XML nodes should be treated as arrays (lists) in the output JSON.
12708
-
12709
- It's not always possible to automatically determine if an XML node should be a single value
12710
- or an array. Use this field to explicitly identify nodes that should be treated as arrays,
12711
- even if they appear only once in the XML.
12712
-
12713
- Each entry should be a simplified XPath expression pointing to the node that should be
12714
- treated as an array.
12715
-
12716
- Only relevant when V0_json is set to false (Custom parsing).
12714
+ Paths of elements that always parse as arrays. An element that can repeat parses as an
12715
+ object when it occurs once and as an array when it occurs more than once, so list every
12716
+ repeating element here to give each record the same shape regardless of item count.
12717
+ Each entry is the element's full path from the record element selected by the resource
12718
+ path (from the document root when there is no resource path), with an optional leading
12719
+ slash. Only relevant when V0_json is set to false (Custom parsing).
12717
12720
  items:
12718
12721
  type: string
12719
12722
  examples:
12720
12723
  - - /product-lineitems/product-lineitem
12721
12724
  - /shipping-lineitems/shipping-lineitem
12722
12725
  - /shipments/shipment
12726
+ x-celigo-ai-guidance:
12727
+ - |-
12728
+ Add every element that can repeat. Left out, a one-item record parses it as an object:
12729
+ a Handlebars `{{#each}}` over it iterates the object's fields (each field reference
12730
+ renders empty) and mappings or filters written against an array find nothing.
12731
+ - |-
12732
+ Write the full path from the record element: `Items/LineItemInfo` for records at
12733
+ resource path `/Orders/Order`. A bare descendant name (`LineItemInfo`) or a
12734
+ document-rooted path (`/Orders/Order/Items/LineItemInfo`) matches nothing while a
12735
+ resource path is set; without a resource path the path must start at the document
12736
+ root. `//Element` descendant paths never match.
12723
12737
  includeNodes:
12724
12738
  type: array
12725
12739
  description: |
@@ -725,7 +725,9 @@ paths:
725
725
  '400':
726
726
  description: |-
727
727
  Revision is not in a diffable state. Error code `invalid_revision_state`. Occurs on
728
- snapshot revisions (no source to diff against), `canceled` revisions (diff dropped), and
728
+ snapshot revisions (no source to diff against), `canceled` revisions (diff dropped),
729
+ `failed` revisions (read their cause from
730
+ `GET /v1/integrations/{_id}/revisions/{_revisionId}/errors` instead), and
729
731
  `inprogress` revisions whose install steps haven't materialized yet.
730
732
  content:
731
733
  application/json:
@@ -741,6 +743,79 @@ paths:
741
743
  $ref: '#/components/responses/401-unauthorized'
742
744
  '404':
743
745
  $ref: '#/components/responses/404-not-found'
746
+ /v1/integrations/{_id}/revisions/{_revisionId}/errors:
747
+ get:
748
+ x-internal: false
749
+ operationId: listIntegrationRevisionErrors
750
+ tags:
751
+ - Integrations
752
+ summary: List a failed revision's errors
753
+ description: |-
754
+ Returns the error records recorded while a `pull` or `revert` revision was being applied — the
755
+ same list the Revisions tab shows for a `failed` revision. Read this, not the diff, to learn why
756
+ a revision failed: `GET /v1/integrations/{_id}/revisions/{_revisionId}/diff` rejects `failed`
757
+ revisions with `invalid_revision_state`. Only `failed` revisions have error records; every
758
+ other state is rejected with the same `invalid_revision_state` code.
759
+
760
+ Each record names the resource the apply step rejected. Ids inside a message use the revision's
761
+ change-set keys: a `LifeCycleError` of the form `<type> - <id> references a deleted resource:
762
+ <type> - <id>.deleted` reports that the merged document still points at an entry the same change
763
+ set marks `.deleted`. The suffix is that marker, not the resource's state in the account — the
764
+ resource may still exist there.
765
+ parameters:
766
+ - name: _id
767
+ in: path
768
+ required: true
769
+ description: Integration id.
770
+ schema:
771
+ type: string
772
+ format: objectId
773
+ x-celigo-refModel: integrations
774
+ examples:
775
+ - 6842261335b64c0bcb308e4f
776
+ - name: _revisionId
777
+ in: path
778
+ required: true
779
+ description: Revision id. Must be a revision in `failed` state.
780
+ schema:
781
+ type: string
782
+ format: objectId
783
+ examples:
784
+ - 6a28d2af6d42eb08f8e863e7
785
+ responses:
786
+ '200':
787
+ description: Error records for the failed revision.
788
+ content:
789
+ application/json:
790
+ schema:
791
+ $ref: '#/components/schemas/RevisionErrorsResponse'
792
+ examples:
793
+ deleted_reference:
794
+ summary: Pull rejected because the merged integration references a removed lookup cache
795
+ value:
796
+ - _id: 6aaceb3c8b19ac878dd7cd41
797
+ code: LifeCycleError
798
+ message: integration - 6a90467b117405485e64787e references a deleted resource:lookupcache - 6aa912fd3ec91536bee07e41.deleted.
799
+ createdAt: '2026-09-18T07:41:37.675Z'
800
+ '400':
801
+ description: |-
802
+ Revision is not in `failed` state, so it has no error records. Error code
803
+ `invalid_revision_state` — returned for `completed`, `canceled`, and `inprogress` revisions
804
+ of every type, including snapshots.
805
+ content:
806
+ application/json:
807
+ schema:
808
+ $ref: '#/components/schemas/Error'
809
+ examples:
810
+ invalid_revision_state:
811
+ value:
812
+ errors:
813
+ - message: Failed to perform operation. Revision is in an invalid state
814
+ code: invalid_revision_state
815
+ '401':
816
+ $ref: '#/components/responses/401-unauthorized'
817
+ '404':
818
+ $ref: '#/components/responses/404-not-found'
744
819
  /v1/integrations/{_id}/errors:
745
820
  get:
746
821
  x-internal: false
@@ -4515,7 +4590,7 @@ components:
4515
4590
  x-enumDescriptions:
4516
4591
  inprogress: The revision is currently being prepared and can be diffed, applied, or canceled.
4517
4592
  completed: The revision has been finalized and applied successfully.
4518
- failed: The revision encountered an error during processing.
4593
+ failed: The apply step rejected the revision; the recorded errors are returned by `GET /v1/integrations/{_id}/revisions/{_revisionId}/errors`.
4519
4594
  canceled: The revision was aborted before being applied.
4520
4595
  description:
4521
4596
  type: string
@@ -4541,6 +4616,14 @@ components:
4541
4616
  `revert` revisions.
4542
4617
  examples:
4543
4618
  - 7d9e2b4a1c3f5068ab82d4e0fc16937255ab8c40
4619
+ errorFileKey:
4620
+ type: string
4621
+ readOnly: true
4622
+ description: |-
4623
+ Storage key of the error file written when the apply step fails. Present only on `failed`
4624
+ revisions; the file's records are read through `GET /v1/integrations/{_id}/revisions/{_revisionId}/errors`.
4625
+ examples:
4626
+ - a574f7e1294645f68e141ac6ab4eed92
4544
4627
  _revertToRevisionId:
4545
4628
  type: string
4546
4629
  format: objectId
@@ -4615,6 +4698,43 @@ components:
4615
4698
  before/after blocks. Treated as an opaque envelope here; specific field layout is not guaranteed
4616
4699
  stable across platform versions.
4617
4700
  additionalProperties: true
4701
+ RevisionError:
4702
+ type: object
4703
+ description: One error recorded while a revision was being applied.
4704
+ required:
4705
+ - code
4706
+ - message
4707
+ properties:
4708
+ _id:
4709
+ type: string
4710
+ format: objectId
4711
+ description: Error record id; the Revisions tab uses it to open the record's detail view.
4712
+ examples:
4713
+ - 6aaceb3c8b19ac878dd7cd41
4714
+ code:
4715
+ type: string
4716
+ description: Error class assigned by the apply step, such as `LifeCycleError` for change-set consistency failures.
4717
+ examples:
4718
+ - LifeCycleError
4719
+ message:
4720
+ type: string
4721
+ description: |-
4722
+ Human-readable cause. Resource references inside it use the change set's own ids, so a
4723
+ `<id>.deleted` suffix identifies an entry of the revision, not the state of the resource in
4724
+ the account.
4725
+ examples:
4726
+ - integration - 6a90467b117405485e64787e references a deleted resource:lookupcache - 6aa912fd3ec91536bee07e41.deleted.
4727
+ createdAt:
4728
+ type: string
4729
+ format: date-time
4730
+ description: When the error was recorded.
4731
+ examples:
4732
+ - '2026-09-18T07:41:37.675Z'
4733
+ RevisionErrorsResponse:
4734
+ type: array
4735
+ description: Error records for one revision, oldest first.
4736
+ items:
4737
+ $ref: '#/components/schemas/RevisionError'
4618
4738
  IntegrationErrorsResponse:
4619
4739
  type: array
4620
4740
  description: |-
@@ -195,9 +195,14 @@ paths:
195
195
  items:
196
196
  type: string
197
197
  description: |-
198
- Element names that should always be arrays in the
199
- output, even when containing a single item. Only
200
- active when `V0_json` is `false`.
198
+ Paths of elements that always parse as arrays. An
199
+ element that occurs once otherwise parses as an
200
+ object, and as an array only when it repeats. Each
201
+ entry is the element's full path from the record
202
+ element selected by `resourcePath` (from the
203
+ document root when `resourcePath` is unset), with
204
+ an optional leading slash; `//` descendant paths do
205
+ not match. Only active when `V0_json` is `false`.
201
206
  includeNodes:
202
207
  type: array
203
208
  items:
package/dist/tool.yml CHANGED
@@ -35639,6 +35639,13 @@ components:
35639
35639
  There are two main parsing strategies available:
35640
35640
  - **Automatic parsing**: Simple but produces more complex output
35641
35641
  - **Custom parsing**: More control over the resulting JSON structure
35642
+ x-celigo-ai-guidance:
35643
+ - |-
35644
+ With V0_json false, an empty element (`<FirstName></FirstName>`, `<FirstName/>`) parses to
35645
+ an empty object `{}` under every setting here, not an empty string. A Handlebars template
35646
+ that outputs the field renders `[object Object]`; guard it with
35647
+ `{{#if (eq (typeOf FirstName) "string")}}{{FirstName}}{{/if}}` — a bare `{{#if FirstName}}`
35648
+ does not skip it because `{}` is truthy.
35642
35649
  properties:
35643
35650
  V0_json:
35644
35651
  type: boolean
@@ -35660,22 +35667,29 @@ components:
35660
35667
  listNodes:
35661
35668
  type: array
35662
35669
  description: |
35663
- Specifies which XML nodes should be treated as arrays (lists) in the output JSON.
35664
-
35665
- It's not always possible to automatically determine if an XML node should be a single value
35666
- or an array. Use this field to explicitly identify nodes that should be treated as arrays,
35667
- even if they appear only once in the XML.
35668
-
35669
- Each entry should be a simplified XPath expression pointing to the node that should be
35670
- treated as an array.
35671
-
35672
- Only relevant when V0_json is set to false (Custom parsing).
35670
+ Paths of elements that always parse as arrays. An element that can repeat parses as an
35671
+ object when it occurs once and as an array when it occurs more than once, so list every
35672
+ repeating element here to give each record the same shape regardless of item count.
35673
+ Each entry is the element's full path from the record element selected by the resource
35674
+ path (from the document root when there is no resource path), with an optional leading
35675
+ slash. Only relevant when V0_json is set to false (Custom parsing).
35673
35676
  items:
35674
35677
  type: string
35675
35678
  examples:
35676
35679
  - - /product-lineitems/product-lineitem
35677
35680
  - /shipping-lineitems/shipping-lineitem
35678
35681
  - /shipments/shipment
35682
+ x-celigo-ai-guidance:
35683
+ - |-
35684
+ Add every element that can repeat. Left out, a one-item record parses it as an object:
35685
+ a Handlebars `{{#each}}` over it iterates the object's fields (each field reference
35686
+ renders empty) and mappings or filters written against an array find nothing.
35687
+ - |-
35688
+ Write the full path from the record element: `Items/LineItemInfo` for records at
35689
+ resource path `/Orders/Order`. A bare descendant name (`LineItemInfo`) or a
35690
+ document-rooted path (`/Orders/Order/Items/LineItemInfo`) matches nothing while a
35691
+ resource path is set; without a resource path the path must start at the document
35692
+ root. `//Element` descendant paths never match.
35679
35693
  includeNodes:
35680
35694
  type: array
35681
35695
  description: |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@celigo/api-specs",
3
- "version": "0.2.45",
3
+ "version": "0.2.47",
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": "fc7b08d",
5
- "generatedAt": "2026-09-22"
4
+ "iasCommit": "f237220",
5
+ "generatedAt": "2026-09-23"
6
6
  },
7
7
  "roots": {
8
8
  "aiagent": 133,