@celigo/api-specs 0.2.137 → 0.2.138

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
@@ -4724,21 +4724,11 @@ components:
4724
4724
  format: objectId
4725
4725
  x-celigo-refModel: connectors
4726
4726
  readOnly: true
4727
- description: |
4728
- Reference to the integration app that defines this resource.
4729
-
4730
- This field is only populated for resources that are part of an integration app.
4731
- It contains the unique identifier (_id) of the integration app (connector)
4732
- that defines the structure, behavior, and templates for this resource.
4733
-
4734
- The integration app is the published template that can be installed
4735
- multiple times across different accounts, with each installation creating
4736
- a separate integration instance (referenced by _integrationId).
4737
-
4738
- This reference enables:
4739
- - Identifying the source integration app for this resource
4740
- - Determining which template version is being used
4741
- - Linking to documentation, support, and marketplace information
4727
+ description: |-
4728
+ Integration App (connector) that defines this resource. Present only on resources an
4729
+ Integration App owns. The app locks parts of these documents, and a PUT that changes a
4730
+ locked field answers 200 but keeps the stored value, so read the document back to confirm
4731
+ a change.
4742
4732
  examples:
4743
4733
  - 5e8d43a1b9e5a80011a35f1b
4744
4734
  x-celigo-ai-guidance:
@@ -3482,21 +3482,11 @@ components:
3482
3482
  format: objectId
3483
3483
  x-celigo-refModel: connectors
3484
3484
  readOnly: true
3485
- description: |
3486
- Reference to the integration app that defines this resource.
3487
-
3488
- This field is only populated for resources that are part of an integration app.
3489
- It contains the unique identifier (_id) of the integration app (connector)
3490
- that defines the structure, behavior, and templates for this resource.
3491
-
3492
- The integration app is the published template that can be installed
3493
- multiple times across different accounts, with each installation creating
3494
- a separate integration instance (referenced by _integrationId).
3495
-
3496
- This reference enables:
3497
- - Identifying the source integration app for this resource
3498
- - Determining which template version is being used
3499
- - Linking to documentation, support, and marketplace information
3485
+ description: |-
3486
+ Integration App (connector) that defines this resource. Present only on resources an
3487
+ Integration App owns. The app locks parts of these documents, and a PUT that changes a
3488
+ locked field answers 200 but keeps the stored value, so read the document back to confirm
3489
+ a change.
3500
3490
  examples:
3501
3491
  - 5e8d43a1b9e5a80011a35f1b
3502
3492
  x-celigo-ai-guidance:
@@ -3836,21 +3836,11 @@ components:
3836
3836
  format: objectId
3837
3837
  x-celigo-refModel: connectors
3838
3838
  readOnly: true
3839
- description: |
3840
- Reference to the integration app that defines this resource.
3841
-
3842
- This field is only populated for resources that are part of an integration app.
3843
- It contains the unique identifier (_id) of the integration app (connector)
3844
- that defines the structure, behavior, and templates for this resource.
3845
-
3846
- The integration app is the published template that can be installed
3847
- multiple times across different accounts, with each installation creating
3848
- a separate integration instance (referenced by _integrationId).
3849
-
3850
- This reference enables:
3851
- - Identifying the source integration app for this resource
3852
- - Determining which template version is being used
3853
- - Linking to documentation, support, and marketplace information
3839
+ description: |-
3840
+ Integration App (connector) that defines this resource. Present only on resources an
3841
+ Integration App owns. The app locks parts of these documents, and a PUT that changes a
3842
+ locked field answers 200 but keeps the stored value, so read the document back to confirm
3843
+ a change.
3854
3844
  examples:
3855
3845
  - 5e8d43a1b9e5a80011a35f1b
3856
3846
  x-celigo-ai-guidance:
package/dist/enduser.yml CHANGED
@@ -1936,21 +1936,11 @@ components:
1936
1936
  format: objectId
1937
1937
  x-celigo-refModel: connectors
1938
1938
  readOnly: true
1939
- description: |
1940
- Reference to the integration app that defines this resource.
1941
-
1942
- This field is only populated for resources that are part of an integration app.
1943
- It contains the unique identifier (_id) of the integration app (connector)
1944
- that defines the structure, behavior, and templates for this resource.
1945
-
1946
- The integration app is the published template that can be installed
1947
- multiple times across different accounts, with each installation creating
1948
- a separate integration instance (referenced by _integrationId).
1949
-
1950
- This reference enables:
1951
- - Identifying the source integration app for this resource
1952
- - Determining which template version is being used
1953
- - Linking to documentation, support, and marketplace information
1939
+ description: |-
1940
+ Integration App (connector) that defines this resource. Present only on resources an
1941
+ Integration App owns. The app locks parts of these documents, and a PUT that changes a
1942
+ locked field answers 200 but keeps the stored value, so read the document back to confirm
1943
+ a change.
1954
1944
  examples:
1955
1945
  - 5e8d43a1b9e5a80011a35f1b
1956
1946
  x-celigo-ai-guidance:
package/dist/export.yml CHANGED
@@ -16573,21 +16573,11 @@ components:
16573
16573
  format: objectId
16574
16574
  x-celigo-refModel: connectors
16575
16575
  readOnly: true
16576
- description: |
16577
- Reference to the integration app that defines this resource.
16578
-
16579
- This field is only populated for resources that are part of an integration app.
16580
- It contains the unique identifier (_id) of the integration app (connector)
16581
- that defines the structure, behavior, and templates for this resource.
16582
-
16583
- The integration app is the published template that can be installed
16584
- multiple times across different accounts, with each installation creating
16585
- a separate integration instance (referenced by _integrationId).
16586
-
16587
- This reference enables:
16588
- - Identifying the source integration app for this resource
16589
- - Determining which template version is being used
16590
- - Linking to documentation, support, and marketplace information
16576
+ description: |-
16577
+ Integration App (connector) that defines this resource. Present only on resources an
16578
+ Integration App owns. The app locks parts of these documents, and a PUT that changes a
16579
+ locked field answers 200 but keeps the stored value, so read the document back to confirm
16580
+ a change.
16591
16581
  examples:
16592
16582
  - 5e8d43a1b9e5a80011a35f1b
16593
16583
  x-celigo-ai-guidance:
@@ -516,21 +516,11 @@ components:
516
516
  format: objectId
517
517
  x-celigo-refModel: connectors
518
518
  readOnly: true
519
- description: |
520
- Reference to the integration app that defines this resource.
521
-
522
- This field is only populated for resources that are part of an integration app.
523
- It contains the unique identifier (_id) of the integration app (connector)
524
- that defines the structure, behavior, and templates for this resource.
525
-
526
- The integration app is the published template that can be installed
527
- multiple times across different accounts, with each installation creating
528
- a separate integration instance (referenced by _integrationId).
529
-
530
- This reference enables:
531
- - Identifying the source integration app for this resource
532
- - Determining which template version is being used
533
- - Linking to documentation, support, and marketplace information
519
+ description: |-
520
+ Integration App (connector) that defines this resource. Present only on resources an
521
+ Integration App owns. The app locks parts of these documents, and a PUT that changes a
522
+ locked field answers 200 but keeps the stored value, so read the document back to confirm
523
+ a change.
534
524
  examples:
535
525
  - 5e8d43a1b9e5a80011a35f1b
536
526
  x-celigo-ai-guidance:
package/dist/iclient.yml CHANGED
@@ -4317,21 +4317,11 @@ components:
4317
4317
  format: objectId
4318
4318
  x-celigo-refModel: connectors
4319
4319
  readOnly: true
4320
- description: |
4321
- Reference to the integration app that defines this resource.
4322
-
4323
- This field is only populated for resources that are part of an integration app.
4324
- It contains the unique identifier (_id) of the integration app (connector)
4325
- that defines the structure, behavior, and templates for this resource.
4326
-
4327
- The integration app is the published template that can be installed
4328
- multiple times across different accounts, with each installation creating
4329
- a separate integration instance (referenced by _integrationId).
4330
-
4331
- This reference enables:
4332
- - Identifying the source integration app for this resource
4333
- - Determining which template version is being used
4334
- - Linking to documentation, support, and marketplace information
4320
+ description: |-
4321
+ Integration App (connector) that defines this resource. Present only on resources an
4322
+ Integration App owns. The app locks parts of these documents, and a PUT that changes a
4323
+ locked field answers 200 but keeps the stored value, so read the document back to confirm
4324
+ a change.
4335
4325
  examples:
4336
4326
  - 5e8d43a1b9e5a80011a35f1b
4337
4327
  x-celigo-ai-guidance:
package/dist/import.yml CHANGED
@@ -16774,21 +16774,11 @@ components:
16774
16774
  format: objectId
16775
16775
  x-celigo-refModel: connectors
16776
16776
  readOnly: true
16777
- description: |
16778
- Reference to the integration app that defines this resource.
16779
-
16780
- This field is only populated for resources that are part of an integration app.
16781
- It contains the unique identifier (_id) of the integration app (connector)
16782
- that defines the structure, behavior, and templates for this resource.
16783
-
16784
- The integration app is the published template that can be installed
16785
- multiple times across different accounts, with each installation creating
16786
- a separate integration instance (referenced by _integrationId).
16787
-
16788
- This reference enables:
16789
- - Identifying the source integration app for this resource
16790
- - Determining which template version is being used
16791
- - Linking to documentation, support, and marketplace information
16777
+ description: |-
16778
+ Integration App (connector) that defines this resource. Present only on resources an
16779
+ Integration App owns. The app locks parts of these documents, and a PUT that changes a
16780
+ locked field answers 200 but keeps the stored value, so read the document back to confirm
16781
+ a change.
16792
16782
  examples:
16793
16783
  - 5e8d43a1b9e5a80011a35f1b
16794
16784
  x-celigo-ai-guidance:
@@ -29,9 +29,10 @@ tags:
29
29
  `install`, `installSteps`) also appear on a standard integration created by the
30
30
  UI's clone-and-install, so they do not by themselves mean Integration App.
31
31
 
32
- Integrations support **Integration Lifecycle Management (ILM)**: clone an integration
33
- across environments, then use revisions (snapshot, pull, revert) to promote changes
34
- between them. Lifecycle operations carry every resource the integration contains.
32
+ Integrations support **Integration Lifecycle Management (ILM)**: revisions (snapshot,
33
+ pull, revert) promote changes between an integration and its lifecycle-linked clones,
34
+ and carry every resource the integration contains. Only the UI's clone-and-install
35
+ links a clone; `POST /v1/integrations/{_id}/clone` makes a standalone copy.
35
36
 
36
37
  ## Integration schema
37
38
 
@@ -339,7 +340,8 @@ paths:
339
340
  - Integrations
340
341
  description: |-
341
342
  Deletes an integration. The integration is soft-deleted and retained in the
342
- recycle bin for 30 days before permanent removal.
343
+ recycle bin for 30 days before permanent removal. Delete the APIs and Tools it
344
+ contains, and remove its aliases that point at lookup caches, first.
343
345
  parameters:
344
346
  - name: _id
345
347
  in: path
@@ -359,14 +361,28 @@ paths:
359
361
  '404':
360
362
  $ref: '#/components/responses/404-not-found'
361
363
  '422':
362
- $ref: '#/components/responses/422-dependency-conflict'
364
+ description: |-
365
+ The integration still contains resources that must be deleted first, APIs and Tools
366
+ among them (`dependencies_not_deleted`, one entry per blocking resource), or one of its
367
+ `aliases[]` still points at a lookup cache.
368
+ content:
369
+ application/json:
370
+ schema:
371
+ $ref: '#/components/schemas/Error'
372
+ examples:
373
+ lookup_cache_alias:
374
+ value:
375
+ errors:
376
+ - message: integration 6842261335b64c0bcb308e4f owns alias "customeridcache" pointing to lookupcache 68680d7111d1437fbcbce534. Alias must be deleted before this resource can be deleted.
363
377
  /v1/integrations/{_id}/clone:
364
378
  post:
365
379
  x-internal: false
366
380
  summary: Clone an integration
367
381
  description: |
368
- Creates a copy of an existing integration. When the source has registered
369
- connections, remap each one via `connectionMap`; mapped connections are reused, not cloned.
382
+ Creates a standalone copy of an existing integration: the copy records its source in
383
+ `_sourceId` but isn't lifecycle-linked to it, so a pull between the two finds no changes.
384
+ When the source has registered connections, remap each one via `connectionMap`; mapped
385
+ connections are reused, not cloned.
370
386
  operationId: cloneIntegration
371
387
  tags:
372
388
  - Integrations
@@ -416,6 +432,28 @@ paths:
416
432
  $ref: '#/components/responses/401-unauthorized'
417
433
  '404':
418
434
  $ref: '#/components/responses/404-not-found'
435
+ '422':
436
+ description: |-
437
+ A `connectionMap` key is missing or isn't one of the source's registered connections, or a
438
+ value isn't a connection in the target environment (`invalid_connectionId`). Nothing is
439
+ created.
440
+ content:
441
+ application/json:
442
+ schema:
443
+ $ref: '#/components/schemas/Error'
444
+ examples:
445
+ missing_key:
446
+ summary: A registered connection is missing from connectionMap
447
+ value:
448
+ errors:
449
+ - code: invalid_connectionId
450
+ message: 'The _connectionId provided for the key ''6553ebdeda62bb22e7fa81ff'': '''' is invalid.'
451
+ unknown_key:
452
+ summary: A key that isn't one of the source's registered connections
453
+ value:
454
+ errors:
455
+ - code: invalid_connectionId
456
+ message: The key '64a1234567890abcdef12399' in connectionMap doesn't match with any of the _id's of the connection documents.
419
457
  /v1/integrations/{_id}/clone/preview:
420
458
  get:
421
459
  x-internal: false
@@ -678,7 +716,7 @@ paths:
678
716
  operationId: getIntegrationRevisionDiff
679
717
  tags:
680
718
  - Integrations
681
- summary: Diff a pending revision
719
+ summary: Diff a pull or revert revision
682
720
  description: |-
683
721
  Returns the before/after diff for a pull or revert revision. The diff is materialized on `pull`
684
722
  and `revert` revisions and is retained on their `completed` state -- available for both
@@ -710,7 +748,7 @@ paths:
710
748
  - 6a28d2af6d42eb08f8e863e7
711
749
  responses:
712
750
  '200':
713
- description: Diff envelope for the pending revision.
751
+ description: Diff envelope for the revision.
714
752
  content:
715
753
  application/json:
716
754
  schema:
@@ -1815,8 +1853,12 @@ paths:
1815
1853
  cache does not already have one: `alias` is a slug of the cache name
1816
1854
  (lowercased, whitespace and special characters stripped, `_2`/`_3`/…
1817
1855
  appended on collision) and `_lookupCacheId` points at the cache. Scripts
1818
- and hooks use the alias as a stable handle for the cache, and
1819
- deregistering the cache is blocked until the alias is removed.
1856
+ and hooks use the alias as a stable handle for the cache, and the
1857
+ `{{getLookupCacheData}}` Handlebars helper reads the cache only through
1858
+ it: the alias is matched case-sensitively, and a cache `_id` in its place
1859
+ fails with `alias "…" not found in integration/flow aliases.`.
1860
+ Deregistering or deleting the cache, and deleting the integration, are
1861
+ blocked until the alias is removed.
1820
1862
  parameters:
1821
1863
  - name: _id
1822
1864
  in: path
@@ -1932,7 +1974,10 @@ paths:
1932
1974
  of the cache name (lowercased, whitespace and special characters stripped,
1933
1975
  `_2`/`_3`/… appended on collision) and `_lookupCacheId` points at the
1934
1976
  cache. Scripts and hooks use the alias as a stable handle for the cache,
1935
- and deregistering the cache is blocked until the alias is removed.
1977
+ and the `{{getLookupCacheData}}` Handlebars helper reads the cache only
1978
+ through it (matched case-sensitively; a cache `_id` is not accepted).
1979
+ Deregistering or deleting the cache, and deleting the integration, are
1980
+ blocked until the alias is removed.
1936
1981
  parameters:
1937
1982
  - name: _id
1938
1983
  in: path
@@ -3524,7 +3569,12 @@ components:
3524
3569
  examples:
3525
3570
  - install
3526
3571
  settings:
3527
- description: Integration App settings object for this integration.
3572
+ description: |-
3573
+ Integration App settings object for this integration. An Integration App can also keep
3574
+ its settings fields here, each with its current value: `settings.general` and
3575
+ `settings.sections[]` (tabs, then nested `sections[]`, then `fields[]`; a flow entry's own
3576
+ fields sit in its `settings[]`). When `settings.supportsMultiStore` is true, each
3577
+ `settings.sections[]` entry is a store and its own `sections[]` are the tabs.
3528
3578
  allOf:
3529
3579
  - description: |-
3530
3580
  Integration App settings object for this integration.
@@ -4212,12 +4262,12 @@ components:
4212
4262
  _sourceId:
4213
4263
  type: string
4214
4264
  format: objectId
4265
+ x-celigo-refModel: integrations
4215
4266
  examples:
4216
4267
  - 6842261335b64c0bcb308e4f
4217
4268
  description: |-
4218
- System-assigned source identifier for the integration.
4219
-
4220
- Typically system-managed; omit in normal create/update payloads.
4269
+ Integration this one was cloned from. Set on every clone, standalone copies included, so
4270
+ it doesn't by itself mean the two are lifecycle-linked. Omit in create and update payloads.
4221
4271
  sampleIntegration:
4222
4272
  type: boolean
4223
4273
  description: |-
@@ -4521,8 +4571,11 @@ components:
4521
4571
  Keys are source connection _ids on the original integration; values
4522
4572
  are target connection _ids in the destination environment.
4523
4573
  Required when the source integration has registered connections — omitting it or
4524
- sending an empty map fails with 400 `invalid_connectionMap`. Map a connection to
4525
- itself to reuse it in the clone; omit the map when the source has none.
4574
+ sending an empty map fails with 400 `invalid_connectionMap`. Every registered
4575
+ connection must be a key, mapped to a connection in the target environment: a missing or
4576
+ unknown key, or a value that isn't a connection there, fails with 422
4577
+ `invalid_connectionId`. Map a connection to itself to reuse it in the clone; omit the map
4578
+ when the source has none.
4526
4579
  additionalProperties:
4527
4580
  type: string
4528
4581
  example:
@@ -4760,13 +4813,13 @@ components:
4760
4813
  RevisionDiffResponse:
4761
4814
  type: object
4762
4815
  description: |-
4763
- Structured before/after diff for a revision. Only available while the revision is in a `pending`
4764
- state (e.g. a queued `pull` or `revert`). Completed snapshot revisions are read-only and return
4765
- HTTP 400 `invalid_revision_state` — the diff is computed during the apply window, not retained.
4816
+ Structured before/after diff for a `pull` or `revert` revision, available on an `inprogress`
4817
+ one once its install steps have materialized and kept once it is `completed`. Snapshot,
4818
+ `canceled` and `failed` revisions have none and return HTTP 400 `invalid_revision_state`.
4766
4819
 
4767
- Shape is the platform's internal diff document — a map of resource type → per-resource
4768
- before/after blocks. Treated as an opaque envelope here; specific field layout is not guaranteed
4769
- stable across platform versions.
4820
+ A `{before, after}` envelope: each side maps resource type to resource id to that resource's
4821
+ snapshot. Treated as an opaque envelope here; specific field layout is not guaranteed stable
4822
+ across platform versions.
4770
4823
  additionalProperties: true
4771
4824
  RevisionError:
4772
4825
  type: object
@@ -5457,19 +5510,5 @@ components:
5457
5510
  errors:
5458
5511
  - code: not_found
5459
5512
  message: The requested resource was not found.
5460
- 422-dependency-conflict:
5461
- description: |-
5462
- The resource has dependents that must be deleted first. Each entry
5463
- in the `errors` array names one blocking resource.
5464
- content:
5465
- application/json:
5466
- schema:
5467
- $ref: '#/components/schemas/Error'
5468
- examples:
5469
- default:
5470
- value:
5471
- errors:
5472
- - code: dependencies_not_deleted
5473
- message: export 6902d88c10b42b2eaac9b2a1 must be deleted before you can delete connection 6398ddf316be761fb16a6523
5474
5513
  x-enable-proxy: true
5475
5514
  x-internal: false
@@ -10,7 +10,9 @@ info:
10
10
  and cross-reference resolution.
11
11
 
12
12
  Each lookup cache:
13
- - Belongs to a specific integration
13
+ - Is account-level: an integration uses it once registered there
14
+ (`PUT /v1/integrations/{_id}/lookupcaches/register`), which also adds an alias to the
15
+ integration's `aliases[]`
14
16
  - Has a maximum size of 50 MB per cache
15
17
  - Is subject to a per-environment aggregate limit of 1 GB
16
18
  - Can optionally include its data when used in templates and cloning
@@ -119,8 +121,8 @@ paths:
119
121
  x-internal: false
120
122
  summary: Create a lookup cache
121
123
  description: |-
122
- Creates a new empty lookup cache. Only `name` is required. Populate
123
- it afterwards via `POST /v1/lookupcaches/{_id}/data`.
124
+ Creates a new empty lookup cache. Populate it afterwards via
125
+ `POST /v1/lookupcaches/{_id}/data`.
124
126
  operationId: createLookupCache
125
127
  tags:
126
128
  - Lookup Caches
@@ -354,6 +356,19 @@ paths:
354
356
  $ref: '#/components/responses/401-unauthorized'
355
357
  '404':
356
358
  $ref: '#/components/responses/404-not-found'
359
+ '422':
360
+ description: |-
361
+ An integration's `aliases[]` still points at the cache. Registering a cache adds such an
362
+ alias, so remove it from that integration's `aliases`, then delete again.
363
+ content:
364
+ application/json:
365
+ schema:
366
+ $ref: '#/components/schemas/Error'
367
+ examples:
368
+ alias_referenced:
369
+ value:
370
+ errors:
371
+ - message: lookupcache 69c2eb25365fb658aa39c642 is referenced by an alias on integration 6842261335b64c0bcb308e4f. Alias must be deleted before resource can be deleted.
357
372
  /v1/lookupcaches/{_id}/clone/preview:
358
373
  get:
359
374
  x-internal: false
@@ -418,8 +433,9 @@ paths:
418
433
  read-then-write per key. Values may be null, numbers, booleans,
419
434
  strings, or objects — arrays at the top level are rejected (wrap them in an
420
435
  object). One invalid entry fails the entire batch and nothing in it is written:
421
- a bad value returns `400 invalid_value`, and an empty, missing, or over-length
422
- key returns `400 cache_dynamodb_invalid_key`.
436
+ a bad value returns `400 invalid_value`, an empty, missing, or over-length
437
+ key returns `400 cache_dynamodb_invalid_key`, and a key that appears twice in
438
+ the batch returns 400 "Duplicate keys found in the request".
423
439
 
424
440
  The service rejects batches larger than ~1000 entries or ~5 MB of JSON.
425
441
  Callers uploading more than that should split their payload; the Celigo CLI
@@ -238,8 +238,8 @@ paths:
238
238
  description: |-
239
239
  No template matched the id. Most commonly: the id belongs to a
240
240
  Connector (Integration App) rather than a Template — Connectors are
241
- installed via `/v1/integrations/<id>/install`, not through this
242
- preview endpoint.
241
+ installed via `POST /v1/connectors/{_id}/install`, available only to
242
+ Celigo Partners, not through this preview endpoint.
243
243
  content:
244
244
  application/json:
245
245
  schema:
@@ -3761,21 +3761,11 @@ components:
3761
3761
  format: objectId
3762
3762
  x-celigo-refModel: connectors
3763
3763
  readOnly: true
3764
- description: |
3765
- Reference to the integration app that defines this resource.
3766
-
3767
- This field is only populated for resources that are part of an integration app.
3768
- It contains the unique identifier (_id) of the integration app (connector)
3769
- that defines the structure, behavior, and templates for this resource.
3770
-
3771
- The integration app is the published template that can be installed
3772
- multiple times across different accounts, with each installation creating
3773
- a separate integration instance (referenced by _integrationId).
3774
-
3775
- This reference enables:
3776
- - Identifying the source integration app for this resource
3777
- - Determining which template version is being used
3778
- - Linking to documentation, support, and marketplace information
3764
+ description: |-
3765
+ Integration App (connector) that defines this resource. Present only on resources an
3766
+ Integration App owns. The app locks parts of these documents, and a PUT that changes a
3767
+ locked field answers 200 but keeps the stored value, so read the document back to confirm
3768
+ a change.
3779
3769
  examples:
3780
3770
  - 5e8d43a1b9e5a80011a35f1b
3781
3771
  x-celigo-ai-guidance:
@@ -416,7 +416,10 @@ paths:
416
416
  description: |-
417
417
  Permanently purges a resource from the recycle bin. This action
418
418
  cannot be undone — the resource data is irrecoverably removed.
419
- Resources are auto-purged after 30 days.
419
+ Resources are auto-purged after 30 days. A purge removes only the
420
+ named resource: purge the bin entries that still reference it first
421
+ (a deleted flow references its integration and the exports and imports
422
+ it used).
420
423
  parameters:
421
424
  - $ref: '#/components/parameters/ResourceType'
422
425
  - name: _id
@@ -449,6 +452,17 @@ paths:
449
452
  message: Recycle Bin operations are not supported for the given model at this time
450
453
  '404':
451
454
  $ref: '#/components/responses/404-not-found'
455
+ '422':
456
+ description: |-
457
+ Another recycle-bin entry still references the resource. Purge that
458
+ entry first, then retry.
459
+ content:
460
+ application/json:
461
+ schema:
462
+ $ref: '#/components/schemas/Error'
463
+ example:
464
+ errors:
465
+ - message: 'this document is referenced by Flow : 60a2c4e6f321d800129a1a3c'
452
466
  /v1/recycleBinTTL/{resourceType}/{_id}/doCascadeRestore:
453
467
  post:
454
468
  x-internal: false
package/dist/template.yml CHANGED
@@ -329,6 +329,11 @@ paths:
329
329
  whose `type` is `mcpserver` is rejected before anything is created —
330
330
  install it with `POST /v1/mcpservers/template/{_templateId}` instead.
331
331
  Check `type` on the `GET /v1/templates/{_id}/preview` response first.
332
+
333
+ This one-shot install doesn't run a template's own install steps. A
334
+ template whose preview `Integration` object lists `installSteps` is
335
+ refused with nothing created; install it from the integrator.io
336
+ marketplace, whose installer runs those steps.
332
337
  parameters:
333
338
  - name: _id
334
339
  in: path
@@ -371,19 +376,36 @@ paths:
371
376
  61f92026dd053843b5d72350: 64a1234567890abcdef12345
372
377
  61f92026dd053843b5d72351: 64a1234567890abcdef12346
373
378
  responses:
374
- '200':
375
- description: Template installed successfully.
379
+ '201':
380
+ description: Template installed. Returns one entry per resource the install created.
376
381
  content:
377
382
  application/json:
378
383
  schema:
379
- type: object
380
- description: The created integration and related resources.
381
- additionalProperties: true
384
+ type: array
385
+ description: The resources the install created, the new integration among them.
386
+ items:
387
+ type: object
388
+ properties:
389
+ model:
390
+ type: string
391
+ description: Resource type of the created document (`Integration`, `Flow`, `Export`, `Import`, ...).
392
+ _id:
393
+ type: string
394
+ format: objectId
395
+ description: Id of the created document.
396
+ additionalProperties: true
382
397
  examples:
383
398
  installed:
384
- summary: Integration created from the template
399
+ summary: Integration, flow, export and import created from the template
385
400
  value:
386
- _integrationId: 6405b9d73496e05ff253d587
401
+ - model: Integration
402
+ _id: 6405b9d73496e05ff253d587
403
+ - model: Flow
404
+ _id: 6405b9d83496e05ff253d58c
405
+ - model: Export
406
+ _id: 6405b9d83496e05ff253d590
407
+ - model: Import
408
+ _id: 6405b9d83496e05ff253d594
387
409
  '400':
388
410
  description: |-
389
411
  Missing or empty `connectionMap`, or the template is an MCP server
@@ -424,7 +446,8 @@ paths:
424
446
  '422':
425
447
  description: |-
426
448
  Connection IDs in `connectionMap` do not match the template's
427
- expected connection IDs.
449
+ expected connection IDs, or the template has its own install steps
450
+ (a `template_zip` step this install doesn't run). Nothing is created.
428
451
  content:
429
452
  application/json:
430
453
  schema:
@@ -435,6 +458,11 @@ paths:
435
458
  errors:
436
459
  - code: invalid_connectionId
437
460
  message: Invalid connection ID in connectionMap.
461
+ templateInstallSteps:
462
+ summary: Template with its own install steps
463
+ value:
464
+ errors:
465
+ - message: 'Failed to create Integration due to: Install step is invalid: invalid templateZip.'
438
466
  /v1/integrations/template/preview:
439
467
  get:
440
468
  x-internal: false
package/dist/tool.yml CHANGED
@@ -7146,21 +7146,11 @@ components:
7146
7146
  format: objectId
7147
7147
  x-celigo-refModel: connectors
7148
7148
  readOnly: true
7149
- description: |
7150
- Reference to the integration app that defines this resource.
7151
-
7152
- This field is only populated for resources that are part of an integration app.
7153
- It contains the unique identifier (_id) of the integration app (connector)
7154
- that defines the structure, behavior, and templates for this resource.
7155
-
7156
- The integration app is the published template that can be installed
7157
- multiple times across different accounts, with each installation creating
7158
- a separate integration instance (referenced by _integrationId).
7159
-
7160
- This reference enables:
7161
- - Identifying the source integration app for this resource
7162
- - Determining which template version is being used
7163
- - Linking to documentation, support, and marketplace information
7149
+ description: |-
7150
+ Integration App (connector) that defines this resource. Present only on resources an
7151
+ Integration App owns. The app locks parts of these documents, and a PUT that changes a
7152
+ locked field answers 200 but keeps the stored value, so read the document back to confirm
7153
+ a change.
7164
7154
  examples:
7165
7155
  - 5e8d43a1b9e5a80011a35f1b
7166
7156
  x-celigo-ai-guidance:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@celigo/api-specs",
3
- "version": "0.2.137",
3
+ "version": "0.2.138",
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,7 +1,7 @@
1
1
  {
2
2
  "provenance": {
3
3
  "repo": "celigo/integrator-api-specs",
4
- "iasCommit": "37458f51",
4
+ "iasCommit": "8f5ee6ba",
5
5
  "generatedAt": "2026-10-21"
6
6
  },
7
7
  "roots": {