@celigo/api-specs 0.2.93 → 0.2.94

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.
@@ -4213,9 +4213,10 @@ components:
4213
4213
  syncs:
4214
4214
  type: boolean
4215
4215
  description: |-
4216
- Indicates whether this integration uses Sync resources.
4217
-
4218
- Typically system-managed.
4216
+ When true, the integration is a container for Celigo Sync resources — set it on
4217
+ `POST /v1/integrations` before creating syncs in it (`POST /v1/syncs` into an
4218
+ integration without it fails with `422 integration_not_for_sync`). Fixed at creation:
4219
+ `PUT /v1/integrations/{_id}` ignores the field in both directions.
4219
4220
  aliases:
4220
4221
  type: array
4221
4222
  description: Named aliases that map to specific resources within the integration.
@@ -6421,11 +6421,23 @@ components:
6421
6421
  description: |-
6422
6422
  HTTP connector (pre-built application template) this connection is linked to. Linking
6423
6423
  lets exports and imports on the connection pick endpoints from the connector's catalog and
6424
- drives the `assistant` form in the UI. An id that does not resolve to an accessible
6425
- connector is dropped from the saved document rather than rejected — read the response back
6426
- to confirm the link took.
6424
+ drives the `assistant` form in the UI. The link is resolved server-side on create and on
6425
+ any update that changes `assistant` or a connector id, and the result overwrites
6426
+ `_httpConnectorId`, `_httpConnectorApiId` and `_httpConnectorVersionId`: an id that does
6427
+ not resolve to an accessible connector is dropped rather than rejected, and when the
6428
+ top-level `assistant` names an application with a legacy adaptor (the connector's
6429
+ `legacyId`, e.g. `shopify`) the connector resolved from that slug replaces the id you sent
6430
+ and a sent `_httpConnectorVersionId` is dropped. Read the response back to confirm the
6431
+ link took.
6427
6432
  examples:
6428
6433
  - 5d8f6a2b9c1e4f00112a3b4c
6434
+ x-celigo-ai-guidance:
6435
+ - |-
6436
+ To link an Azure Data Lake Storage Gen2 connection to its connector, send
6437
+ `_httpConnectorId` and `_httpConnectorVersionId` and omit the top-level `assistant`:
6438
+ with `assistant` set (`azuredatalakestoragegen2` or any other slug) the save answers
6439
+ 201/200 and stores neither id. Dropping `assistant` and re-sending both ids on a PUT
6440
+ restores the link.
6429
6441
  _httpConnectorApiId:
6430
6442
  type: string
6431
6443
  format: objectId
package/dist/sync.yml CHANGED
@@ -238,7 +238,8 @@ paths:
238
238
  '422':
239
239
  description: |-
240
240
  Validation failed. `source._connectionId` is missing
241
- (`missing_source_connection`), the destination duplicates another sync
241
+ (`missing_source_connection`), the integration was not created with
242
+ `syncs: true` (`integration_not_for_sync`), the destination duplicates another sync
242
243
  (`duplicate_destination_host`), the destination connector rejected the
243
244
  sync configuration (`invalid_destination_sync_config`), two enabled
244
245
  datasets resolve to the same destination table
@@ -256,6 +257,13 @@ paths:
256
257
  errors:
257
258
  - code: missing_source_connection
258
259
  message: Source connection is missing in the request
260
+ integration_not_for_sync:
261
+ summary: Integration was not created for syncs
262
+ value:
263
+ errors:
264
+ - field: _integrationId
265
+ code: integration_not_for_sync
266
+ message: An integration is suppose to have either flows or syncs but not both.
259
267
  /v1/syncs/{_id}:
260
268
  get:
261
269
  x-internal: false
@@ -892,7 +900,12 @@ paths:
892
900
  is always accepted; on a normal run it is rejected unless the account has partial
893
901
  normal sync enabled.
894
902
 
895
- Preconditions enforced by the platform:
903
+ Preconditions enforced by the platform, in order:
904
+ - The body must be valid (`400 invalid_parameter`).
905
+ - The sync must have a backing replication flow. A draft whose destination has never been
906
+ saved has none and answers `404 sync_flow_not_present` — before the disabled check and
907
+ before any `datasetIds` membership or entitlement check, so a draft never reaches
908
+ `422 invalid_sync`.
896
909
  - The sync must not be disabled (`422 invalid_sync`).
897
910
  - There must not be a job already queued or running for this sync (`409 sync_job_already_queued`).
898
911
 
@@ -944,15 +957,22 @@ paths:
944
957
  flowExecutionGroupId: 6821c01c39db7c2b9cdc0e29
945
958
  '400':
946
959
  description: |-
947
- Bad request. Invalid `runType`, invalid `datasetIds` shape, subset selection on a
960
+ Bad request. A malformed `_syncId`, an invalid `runType`, an invalid `datasetIds`
961
+ shape (empty array, non-array, or non-ObjectId entries), subset selection on a
948
962
  normal run when that is not enabled for the account, or datasets that do not
949
963
  belong to this sync / are disabled.
950
- Error codes: `invalid_parameter`, `invalid_dataset_selection`.
964
+ Error codes: `invalid_ref`, `invalid_parameter`, `invalid_dataset_selection`.
951
965
  content:
952
966
  application/json:
953
967
  schema:
954
968
  $ref: '#/components/schemas/Error'
955
969
  examples:
970
+ malformed_sync_id:
971
+ summary: _syncId is not a valid ObjectId
972
+ value:
973
+ errors:
974
+ - code: invalid_ref
975
+ message: Please provide a valid _syncId.
956
976
  invalid_run_type:
957
977
  summary: Invalid runType parameter
958
978
  value:
@@ -965,8 +985,14 @@ paths:
965
985
  errors:
966
986
  - code: invalid_parameter
967
987
  message: datasetIds is not supported for normal sync runs
988
+ empty_dataset_ids:
989
+ summary: datasetIds is an empty array
990
+ value:
991
+ errors:
992
+ - code: invalid_parameter
993
+ message: datasetIds must contain at least one dataset ID
968
994
  invalid_dataset_ids_shape:
969
- summary: datasetIds is not a non-empty array of ObjectIds
995
+ summary: datasetIds is not an array of ObjectIds
970
996
  value:
971
997
  errors:
972
998
  - code: invalid_parameter
@@ -981,8 +1007,11 @@ paths:
981
1007
  $ref: '#/components/responses/401-unauthorized'
982
1008
  '404':
983
1009
  description: |-
984
- Sync not found.
985
- Error code: `invalid_ref`.
1010
+ Sync not found (`invalid_ref`), or the sync has no backing replication flow because
1011
+ its destination has never been saved (`sync_flow_not_present`). The second check runs
1012
+ before the disabled, membership, and entitlement checks, so a draft sync answers this
1013
+ way whatever the body.
1014
+ Error codes: `invalid_ref`, `sync_flow_not_present`.
986
1015
  content:
987
1016
  application/json:
988
1017
  schema:
@@ -993,7 +1022,13 @@ paths:
993
1022
  value:
994
1023
  errors:
995
1024
  - code: invalid_ref
996
- message: Sync not found.
1025
+ message: 'Sync not found: 6ac4949901f0467e95366000'
1026
+ sync_flow_not_present:
1027
+ summary: Draft sync with no saved destination
1028
+ value:
1029
+ errors:
1030
+ - code: sync_flow_not_present
1031
+ message: The flow is not present in the sync.
997
1032
  '409':
998
1033
  description: |-
999
1034
  A sync job is already queued or running for this sync.
@@ -3952,14 +3987,24 @@ components:
3952
3987
  - |-
3953
3988
  When scaffolding a draft sync before the destination is known, send only
3954
3989
  _integrationId and source._connectionId; the sync is created disabled and the
3955
- destination can be filled in with a later PUT.
3990
+ destination can be filled in with a later PUT. A draft with no saved destination
3991
+ has no backing flow, so POST /v1/syncs/{_syncId}/run answers 404 sync_flow_not_present
3992
+ (ahead of the disabled check) rather than 422 invalid_sync.
3993
+ - |-
3994
+ Create the parent integration with syncs: true in the POST /v1/integrations body. An
3995
+ integration created without it fails the sync create with 422 integration_not_for_sync
3996
+ ("An integration is suppose to have either flows or syncs but not both"), and PUT
3997
+ /v1/integrations/{_id} ignores the syncs field, so the only fix is a new integration.
3956
3998
  properties:
3957
3999
  _integrationId:
3958
4000
  type: string
3959
4001
  format: objectId
3960
4002
  x-celigo-refModel: integrations
3961
4003
  description: |-
3962
- Integration to create the sync in. Required on create; forbidden on update —
4004
+ Integration to create the sync in. It must have been created with `syncs: true`
4005
+ (`POST /v1/integrations`) — an integration without that flag fails the create with
4006
+ `422 integration_not_for_sync`, and the flag cannot be added afterwards because
4007
+ `PUT /v1/integrations/{_id}` ignores it. Required on create; forbidden on update —
3963
4008
  the integration cannot be changed once assigned (`400 sync_integration_id_update`).
3964
4009
  examples:
3965
4010
  - 69f4ffd395ec28be9cb8c12e
package/dist/tool.yml CHANGED
@@ -9570,11 +9570,23 @@ components:
9570
9570
  description: |-
9571
9571
  HTTP connector (pre-built application template) this connection is linked to. Linking
9572
9572
  lets exports and imports on the connection pick endpoints from the connector's catalog and
9573
- drives the `assistant` form in the UI. An id that does not resolve to an accessible
9574
- connector is dropped from the saved document rather than rejected — read the response back
9575
- to confirm the link took.
9573
+ drives the `assistant` form in the UI. The link is resolved server-side on create and on
9574
+ any update that changes `assistant` or a connector id, and the result overwrites
9575
+ `_httpConnectorId`, `_httpConnectorApiId` and `_httpConnectorVersionId`: an id that does
9576
+ not resolve to an accessible connector is dropped rather than rejected, and when the
9577
+ top-level `assistant` names an application with a legacy adaptor (the connector's
9578
+ `legacyId`, e.g. `shopify`) the connector resolved from that slug replaces the id you sent
9579
+ and a sent `_httpConnectorVersionId` is dropped. Read the response back to confirm the
9580
+ link took.
9576
9581
  examples:
9577
9582
  - 5d8f6a2b9c1e4f00112a3b4c
9583
+ x-celigo-ai-guidance:
9584
+ - |-
9585
+ To link an Azure Data Lake Storage Gen2 connection to its connector, send
9586
+ `_httpConnectorId` and `_httpConnectorVersionId` and omit the top-level `assistant`:
9587
+ with `assistant` set (`azuredatalakestoragegen2` or any other slug) the save answers
9588
+ 201/200 and stores neither id. Dropping `assistant` and re-sending both ids on a PUT
9589
+ restores the link.
9578
9590
  _httpConnectorApiId:
9579
9591
  type: string
9580
9592
  format: objectId
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@celigo/api-specs",
3
- "version": "0.2.93",
3
+ "version": "0.2.94",
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": "fcb2d9c1",
4
+ "iasCommit": "29615c6c",
5
5
  "generatedAt": "2026-10-12"
6
6
  },
7
7
  "roots": {