@celigo/api-specs 0.2.103 → 0.2.105

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/enduser.yml CHANGED
@@ -4726,11 +4726,12 @@ components:
4726
4726
  - `database` — required for every type EXCEPT `oracle` (uses `serviceName`)
4727
4727
  and `bigquery` (uses `bigquery.dataset`).
4728
4728
  - `user` — required for every type EXCEPT `bigquery`, `redshift`, and
4729
- `mssql` with `mssql.authType=azure-service-principal`.
4729
+ `mssql` / `azuresynapse` with `mssql.authType=azure-service-principal`.
4730
4730
  - `password` — required when no SSL cert material is provided AND the
4731
- type is NOT `bigquery`, `redshift`, `snowflake`, or `mssql` with
4732
- `azure-service-principal` auth. When SSL cert material IS provided
4733
- without a password, both `ssl.key` and `ssl.cert` become required.
4731
+ type is NOT `bigquery`, `redshift`, `snowflake`, or `mssql` /
4732
+ `azuresynapse` with `azure-service-principal` auth. When SSL cert
4733
+ material IS provided without a password, both `ssl.key` and `ssl.cert`
4734
+ become required.
4734
4735
  - **Snowflake** — additionally requires `snowflake.warehouse` and
4735
4736
  `snowflake.authType`. When `snowflake.authType=keyPair`, also
4736
4737
  requires the `key` field at the rdbms level (the RSA private key).
@@ -4746,8 +4747,14 @@ components:
4746
4747
  iClient holding the role ARN) plus exactly one of
4747
4748
  `redshift.clusterIdentifier` (provisioned cluster) or
4748
4749
  `redshift.workgroupName` (Redshift Serverless).
4749
- - **MSSQL with `mssql.authType=azure-service-principal`** — requires
4750
- `_iClientId` (service principal credentials live in the iClient).
4750
+ - **MSSQL / Azure Synapse with `mssql.authType=azure-service-principal`**
4751
+ — requires `_iClientId` referencing an `azureserviceprincipal` iClient
4752
+ (the Microsoft Entra tenant id, client id and client secret or
4753
+ certificate live in the iClient); `user` and `password` are not used.
4754
+ `_iClientId` with `basic` auth is rejected. Both types share the
4755
+ `mssql` sub-object; `azuresynapse` is cloud-only, and the SQL Server
4756
+ connection form offers service-principal auth in Cloud mode only — it
4757
+ saves `basic` for an on-premise connection (`_agentId` set).
4751
4758
  - **Oracle** — runs in agent mode only, so requires `_agentId` on the
4752
4759
  parent connection object. Uses `serviceName` instead of `database`.
4753
4760
  Optionally also takes `serverType` and `instanceName`.
@@ -4840,8 +4847,10 @@ components:
4840
4847
  user:
4841
4848
  type: string
4842
4849
  description: |
4843
- Database username for authentication.
4844
- Required for all types except BigQuery (which uses service account auth).
4850
+ Database username for authentication. Required for all types except
4851
+ BigQuery (service account auth), Redshift, and `mssql` / `azuresynapse`
4852
+ with `mssql.authType=azure-service-principal`, where the Entra principal
4853
+ in the iClient signs in and a `user` sent anyway is stored unused.
4845
4854
  examples:
4846
4855
  - integration_user
4847
4856
  password:
@@ -4968,8 +4977,11 @@ components:
4968
4977
  - keyPair
4969
4978
  mssql:
4970
4979
  type: object
4971
- description: |
4972
- Microsoft SQL Server / Azure Synapse-specific configuration.
4980
+ description: |-
4981
+ Microsoft SQL Server / Azure Synapse-specific configuration. Read for
4982
+ both the `mssql` and the `azuresynapse` types — Azure Synapse
4983
+ Analytics shares SQL Server's authentication model and this
4984
+ sub-object.
4973
4985
  properties:
4974
4986
  authType:
4975
4987
  type: string
@@ -4977,14 +4989,30 @@ components:
4977
4989
  - basic
4978
4990
  - azure-service-principal
4979
4991
  x-enumDescriptions:
4980
- basic: Standard SQL Server authentication with username and password.
4981
- azure-service-principal: Azure Active Directory service principal authentication via iClient.
4992
+ basic: Database user — SQL authentication with `user` and `password`
4993
+ azure-service-principal: Microsoft Entra service principal held in the `azureserviceprincipal` iClient referenced by `_iClientId`; `user` and `password` are not used
4982
4994
  description: |-
4983
- Authentication type for MS SQL Server. Defaults to basic (username/password).
4984
- Use azure-service-principal for Azure AD service principal auth via an iClient.
4995
+ How a Microsoft SQL Server or Azure Synapse connection
4996
+ authenticates. Defaults to `basic` when omitted (the connection
4997
+ form's "Database user"). With `azure-service-principal` the
4998
+ connection signs in as the Entra application registered in the
4999
+ iClient — a client secret, or on SQL Server a certificate — and
5000
+ `_iClientId` must reference it. The SQL Server connection form
5001
+ offers `azure-service-principal` in Cloud mode only and saves
5002
+ `basic` for an on-premise connection (`_agentId` set).
4985
5003
  default: basic
4986
5004
  examples:
4987
5005
  - basic
5006
+ x-celigo-ai-guidance:
5007
+ - |-
5008
+ With azure-service-principal, omit user and password: the API does not reject them —
5009
+ it stores them unused on the connection (live-verified 201 with both present), while
5010
+ the connection form removes them on save. Set them only for basic.
5011
+ - |-
5012
+ A certificate-method azureserviceprincipal iClient is offered by the form on Microsoft
5013
+ SQL Server connections only; the Azure Synapse form's picker lists client-secret
5014
+ iClients. The API accepts either on either type (live-verified 201), so follow the
5015
+ form: bind a certificate iClient to mssql connections only.
4988
5016
  bigquery:
4989
5017
  type: object
4990
5018
  description: |
@@ -5165,10 +5193,13 @@ components:
5165
5193
  x-celigo-refModel: iclients
5166
5194
  description: |-
5167
5195
  Reference to an iClient holding auth credentials, stored inside the
5168
- rdbms object. Required when type is `mssql` and `mssql.authType` is
5169
- `azure-service-principal` (Azure service-principal credentials), and
5170
- when type is `redshift` and `redshift.authType` is `awsIam` (an
5171
- `awsIam`-provider iClient holding the role ARN to assume). For
5196
+ rdbms object. Required when type is `mssql` or `azuresynapse` and
5197
+ `mssql.authType` is `azure-service-principal` (an
5198
+ `azureserviceprincipal` iClient — the Microsoft Entra tenant id,
5199
+ client id and client secret or certificate), and when type is
5200
+ `redshift` and `redshift.authType` is `awsIam` (an `awsIam`-provider
5201
+ iClient holding the role ARN to assume). On `mssql` / `azuresynapse`
5202
+ it is rejected when `mssql.authType` is `basic` or omitted. For
5172
5203
  Redshift the iClient must carry `awsIam.roleArn`, and that role's name
5173
5204
  must start with `celigo-data-warehouse-adaptor-` — the data-warehouse
5174
5205
  service assumes only roles in that family, so a role created for an S3
@@ -5176,6 +5207,18 @@ components:
5176
5207
  examples:
5177
5208
  - 66a1b2c3d4e5f60718293a4b
5178
5209
  x-celigo-ai-guidance:
5210
+ - |-
5211
+ For a mssql or azuresynapse connection with mssql.authType "azure-service-principal",
5212
+ _iClientId is required (otherwise 422 missing_required_field on rdbms._iClientId
5213
+ "Expected field: _iClientId to be present.") and must reference an azureserviceprincipal
5214
+ iClient (otherwise 422 invalid_field on rdbms._iClientId "IClient provider must be
5215
+ azureserviceprincipal for Service Principal authentication."). The same iClient can back
5216
+ Azure Data Lake Storage Gen2, SQL Server and Synapse connections.
5217
+ - |-
5218
+ With mssql.authType "basic" (or omitted) on mssql / azuresynapse, do not set _iClientId:
5219
+ 422 invalid_field on rdbms._iClientId "The _iClientId field should not be set when using
5220
+ basic authentication. Remove _iClientId or switch to azure-service-principal
5221
+ authentication."
5179
5222
  - |-
5180
5223
  For a Redshift connection with redshift.authType "awsIam", the referenced iClient must
5181
5224
  have awsIam.roleArn set (otherwise 422 missing_required_field on rdbms._iClientId
@@ -5195,7 +5238,6 @@ components:
5195
5238
  - mysql
5196
5239
  - postgresql
5197
5240
  - mariadb
5198
- - azuresynapse
5199
5241
  required:
5200
5242
  - type
5201
5243
  then:
@@ -5239,120 +5281,149 @@ components:
5239
5281
  if:
5240
5282
  properties:
5241
5283
  type:
5242
- const: snowflake
5284
+ const: azuresynapse
5243
5285
  required:
5244
5286
  - type
5245
5287
  then:
5246
- required:
5247
- - host
5248
- - database
5249
- - user
5250
- properties:
5251
- snowflake:
5252
- required:
5253
- - authType
5254
- - warehouse
5255
5288
  if:
5256
5289
  properties:
5257
- snowflake:
5290
+ mssql:
5258
5291
  properties:
5259
5292
  authType:
5260
- const: keyPair
5293
+ const: azure-service-principal
5261
5294
  required:
5262
5295
  - authType
5263
5296
  required:
5264
- - snowflake
5297
+ - mssql
5265
5298
  then:
5266
5299
  required:
5267
- - key
5300
+ - host
5301
+ - database
5302
+ - _iClientId
5268
5303
  else:
5269
5304
  required:
5305
+ - host
5306
+ - database
5307
+ - user
5270
5308
  - password
5271
5309
  else:
5272
5310
  if:
5273
5311
  properties:
5274
5312
  type:
5275
- const: oracle
5313
+ const: snowflake
5276
5314
  required:
5277
5315
  - type
5278
5316
  then:
5279
5317
  required:
5280
5318
  - host
5319
+ - database
5281
5320
  - user
5282
- - password
5321
+ properties:
5322
+ snowflake:
5323
+ required:
5324
+ - authType
5325
+ - warehouse
5326
+ if:
5327
+ properties:
5328
+ snowflake:
5329
+ properties:
5330
+ authType:
5331
+ const: keyPair
5332
+ required:
5333
+ - authType
5334
+ required:
5335
+ - snowflake
5336
+ then:
5337
+ required:
5338
+ - key
5339
+ else:
5340
+ required:
5341
+ - password
5283
5342
  else:
5284
5343
  if:
5285
5344
  properties:
5286
5345
  type:
5287
- const: bigquery
5346
+ const: oracle
5288
5347
  required:
5289
5348
  - type
5290
5349
  then:
5291
5350
  required:
5292
- - bigquery
5293
- properties:
5294
- bigquery:
5295
- required:
5296
- - projectId
5297
- - dataset
5298
- - clientEmail
5299
- - privateKey
5351
+ - host
5352
+ - user
5353
+ - password
5300
5354
  else:
5301
5355
  if:
5302
5356
  properties:
5303
5357
  type:
5304
- const: redshift
5358
+ const: bigquery
5305
5359
  required:
5306
5360
  - type
5307
5361
  then:
5308
5362
  required:
5309
- - database
5310
- - user
5311
- - redshift
5363
+ - bigquery
5312
5364
  properties:
5313
- redshift:
5365
+ bigquery:
5314
5366
  required:
5315
- - region
5367
+ - projectId
5368
+ - dataset
5369
+ - clientEmail
5370
+ - privateKey
5371
+ else:
5316
5372
  if:
5317
- required:
5318
- - redshift
5319
5373
  properties:
5320
- redshift:
5321
- required:
5322
- - authType
5323
- properties:
5324
- authType:
5325
- const: awsIam
5374
+ type:
5375
+ const: redshift
5376
+ required:
5377
+ - type
5326
5378
  then:
5327
5379
  required:
5328
- - _iClientId
5329
- properties:
5330
- redshift:
5331
- oneOf:
5332
- - required:
5333
- - clusterIdentifier
5334
- not:
5335
- required:
5336
- - workgroupName
5337
- - required:
5338
- - workgroupName
5339
- not:
5340
- required:
5341
- - clusterIdentifier
5342
- else:
5380
+ - database
5381
+ - user
5382
+ - redshift
5343
5383
  properties:
5344
5384
  redshift:
5345
5385
  required:
5346
- - aws
5347
- - clusterIdentifier
5348
- not:
5386
+ - region
5387
+ if:
5388
+ required:
5389
+ - redshift
5390
+ properties:
5391
+ redshift:
5349
5392
  required:
5350
- - workgroupName
5351
- properties:
5352
- aws:
5393
+ - authType
5394
+ properties:
5395
+ authType:
5396
+ const: awsIam
5397
+ then:
5398
+ required:
5399
+ - _iClientId
5400
+ properties:
5401
+ redshift:
5402
+ oneOf:
5403
+ - required:
5404
+ - clusterIdentifier
5405
+ not:
5406
+ required:
5407
+ - workgroupName
5408
+ - required:
5409
+ - workgroupName
5410
+ not:
5411
+ required:
5412
+ - clusterIdentifier
5413
+ else:
5414
+ properties:
5415
+ redshift:
5416
+ required:
5417
+ - aws
5418
+ - clusterIdentifier
5419
+ not:
5353
5420
  required:
5354
- - accessKeyId
5355
- - secretAccessKey
5421
+ - workgroupName
5422
+ properties:
5423
+ aws:
5424
+ required:
5425
+ - accessKeyId
5426
+ - secretAccessKey
5356
5427
  MongoDB:
5357
5428
  type: object
5358
5429
  description: |-
@@ -156,8 +156,29 @@ paths:
156
156
  examples:
157
157
  - 683b2a0e1c3d5f001a9e8b03
158
158
  responses:
159
- '204':
160
- description: Multipart upload aborted and the pending item removed.
159
+ '200':
160
+ description: |-
161
+ Multipart upload aborted and the pending item removed. Returns the
162
+ removed item's `_id` and `name`; canceling it again answers 404
163
+ `STORAGE_ITEM_NOT_FOUND`.
164
+ content:
165
+ application/json:
166
+ schema:
167
+ type: object
168
+ required:
169
+ - _id
170
+ - name
171
+ properties:
172
+ _id:
173
+ type: string
174
+ format: objectId
175
+ description: ID of the canceled item.
176
+ name:
177
+ type: string
178
+ description: Name of the canceled item.
179
+ example:
180
+ _id: 683b2a0e1c3d5f001a9e8b03
181
+ name: database-export.sql
161
182
  '401':
162
183
  $ref: '#/components/responses/401-unauthorized'
163
184
  '404':
@@ -2415,9 +2436,11 @@ components:
2415
2436
  type: integer
2416
2437
  minimum: 1
2417
2438
  description: |-
2418
- Total number of parts the file will be split into. Required when
2419
- uploadType is multipart; the response returns presigned URLs for as
2420
- many parts as the part budget allows.
2439
+ Required when uploadType is multipart. On a new upload, the total number
2440
+ of parts the file will be split into; the response returns presigned URLs
2441
+ for as many parts as the part budget allows. On a resume (`_id`,
2442
+ `uploadId`, and `issuedPartsCount` set), the number of further part URLs
2443
+ to issue, numbered on from `issuedPartsCount`.
2421
2444
  examples:
2422
2445
  - 50
2423
2446
  uploadId: