@celigo/api-specs 0.2.168 → 0.2.169

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
@@ -5932,6 +5932,14 @@ components:
5932
5932
  Do NOT include the protocol prefix (e.g., use "ftp.example.com", not "sftp://ftp.example.com").
5933
5933
  examples:
5934
5934
  - sftp.example.com
5935
+ x-celigo-ai-guidance:
5936
+ - |-
5937
+ Don't point a connection at this environment's own Celigo file server (its
5938
+ `endpoint.hostname`, with a username ending in `@<identifier>`, the server's own
5939
+ `identifier`): a flow reads those files from Celigo Storage directly, and the save
5940
+ refuses that pairing with 422 `fileserver_loopback_not_supported`. Another
5941
+ environment's file server on the same host, such as a trading partner's, is an
5942
+ ordinary connection.
5935
5943
  port:
5936
5944
  type: number
5937
5945
  description: |
@@ -6055,7 +6063,8 @@ components:
6055
6063
  description: |
6056
6064
  Maximum number of concurrent file transfer operations.
6057
6065
  FTP servers often have low connection limits — keep this value conservative.
6058
- Send no more than the account's licensed maximum (25 standard, 50 with an Environments license).
6066
+ Send no more than the account's licensed maximum, the license's `concurrency` (25 standard,
6067
+ 50 with an Environments license).
6059
6068
  Unlike the rest of the `ftp` object, a `PUT` that omits this field keeps the stored value instead of clearing it.
6060
6069
  minimum: 1
6061
6070
  maximum: 50
@@ -6079,7 +6088,7 @@ components:
6079
6088
  description: |-
6080
6089
  Number of parallel transfer threads for this FTP connection. Must be a
6081
6090
  whole number — decimals are rejected on save. Send no more than the
6082
- account's licensed concurrency maximum. On
6091
+ account's licensed concurrency maximum, the same as for `concurrencyLevel`. On
6083
6092
  save the value is mirrored into `userConcurrencyLevel` (and into
6084
6093
  `userTargetConcurrencyLevel` when auto-recovery of rate-limit errors
6085
6094
  is active with `targetConcurrencyLevel` set); clearing it clears the
@@ -1185,7 +1185,8 @@ paths:
1185
1185
  `POST /v1/connections/{_id}/ping`, with no request body to send. Runs the adaptor's ping
1186
1186
  routine against the connection identified by `_id` to verify its credentials and network
1187
1187
  configuration still work; no data is read, written, or modified. An `http` connection with
1188
- no `http.ping` answers `{code: 200}` without sending any request.
1188
+ no `http.ping` answers `{code: 200}` without sending any request, unless it authorizes with
1189
+ an authorization code and holds no token yet: that one answers `missing_token`.
1189
1190
 
1190
1191
  Inspect the response body, not the HTTP status, to determine the outcome: success and
1191
1192
  adaptor-level failures both return HTTP 200 — success is `{code: 200}`, failures are
@@ -1259,8 +1260,10 @@ paths:
1259
1260
  whichever verb the client supports. Both verbs return HTTP 200 with {code: 200} on
1260
1261
  success and HTTP 200 with {errors: [...]} on adaptor-level failure, so inspect the body,
1261
1262
  not the status code. On an `http` connection, {code: 200} shows reachability only once
1262
- `http.ping` is set: with no ping configured, nothing is sent and the answer is always
1263
- {code: 200}.
1263
+ `http.ping` is set: with no ping configured, nothing is sent and the answer is
1264
+ {code: 200}, or `missing_token` for an authorization-code OAuth connection that holds no
1265
+ token yet. An OAuth connection requests a token only when the target answers 401, so a
1266
+ ping of an endpoint that needs no authentication passes without testing the OAuth setup.
1264
1267
  post:
1265
1268
  x-internal: false
1266
1269
  summary: Ping an existing connection
@@ -1270,8 +1273,11 @@ paths:
1270
1273
  adaptor-specific (HTTP sends the `http.ping` request, RDBMS/JDBC open a driver session,
1271
1274
  MCP issues a tools/list, NetSuite/Salesforce do a token or session validation). An `http`
1272
1275
  connection with no `http.ping` passes with `{code: 200}` without sending any request, so
1273
- the ping proves nothing about it until a ping is configured. The request body is optional
1274
- and ignored.
1276
+ the ping proves nothing about it until a ping is configured; one that authorizes with an
1277
+ authorization code and holds no token yet answers `missing_token` instead. An OAuth
1278
+ connection requests a token only when the target answers 401, so a ping of an endpoint
1279
+ that needs no authentication passes without testing the OAuth setup. The request body
1280
+ is optional and ignored.
1275
1281
 
1276
1282
  Inspect the response body, not the HTTP status, to determine the outcome: success and
1277
1283
  adaptor-level failures both return HTTP 200 — success is `{code: 200}`, failures are
@@ -1383,8 +1389,10 @@ paths:
1383
1389
  - Return connection status and any error details
1384
1390
 
1385
1391
  Exception: an `http` connection with no `http.ping` answers {code: 200} without sending
1386
- any request, so it proves nothing until a ping (ideally one that needs the connection's
1387
- credentials) is configured.
1392
+ any request (or `missing_token`, for an authorization-code OAuth connection that holds no
1393
+ token yet), so it proves nothing until a ping is configured — one that needs the
1394
+ connection's credentials, since an OAuth connection requests a token only when the target
1395
+ answers 401.
1388
1396
  /v1/connections/{_id}/proxy:
1389
1397
  post:
1390
1398
  x-internal: false
@@ -2942,6 +2950,8 @@ paths:
2942
2950
  `/v1/connections/{_id}/oauth2` is an alias that answers identically. The URL's
2943
2951
  `state` token is one-time and expires quickly, so request a fresh one if the flow is
2944
2952
  interrupted, then poll `GET /v1/connections/{_id}` until `needsAuthorization` is `false`.
2953
+ On a connection that uses PKCE (an iClient with `oauth2.pkceCodeChallengeMethod`), each call
2954
+ issues a new `code_challenge`, so send the user to the most recent URL only.
2945
2955
 
2946
2956
  The URL's `redirect_uri` is the account's Celigo callback
2947
2957
  (`https://integrator.io/connection/oauth2callback` on North America), which the provider's
@@ -4780,6 +4790,14 @@ components:
4780
4790
  Do NOT include the protocol prefix (e.g., use "ftp.example.com", not "sftp://ftp.example.com").
4781
4791
  examples:
4782
4792
  - sftp.example.com
4793
+ x-celigo-ai-guidance:
4794
+ - |-
4795
+ Don't point a connection at this environment's own Celigo file server (its
4796
+ `endpoint.hostname`, with a username ending in `@<identifier>`, the server's own
4797
+ `identifier`): a flow reads those files from Celigo Storage directly, and the save
4798
+ refuses that pairing with 422 `fileserver_loopback_not_supported`. Another
4799
+ environment's file server on the same host, such as a trading partner's, is an
4800
+ ordinary connection.
4783
4801
  port:
4784
4802
  type: number
4785
4803
  description: |
@@ -4903,7 +4921,8 @@ components:
4903
4921
  description: |
4904
4922
  Maximum number of concurrent file transfer operations.
4905
4923
  FTP servers often have low connection limits — keep this value conservative.
4906
- Send no more than the account's licensed maximum (25 standard, 50 with an Environments license).
4924
+ Send no more than the account's licensed maximum, the license's `concurrency` (25 standard,
4925
+ 50 with an Environments license).
4907
4926
  Unlike the rest of the `ftp` object, a `PUT` that omits this field keeps the stored value instead of clearing it.
4908
4927
  minimum: 1
4909
4928
  maximum: 50
@@ -4927,7 +4946,7 @@ components:
4927
4946
  description: |-
4928
4947
  Number of parallel transfer threads for this FTP connection. Must be a
4929
4948
  whole number — decimals are rejected on save. Send no more than the
4930
- account's licensed concurrency maximum. On
4949
+ account's licensed concurrency maximum, the same as for `concurrencyLevel`. On
4931
4950
  save the value is mirrored into `userConcurrencyLevel` (and into
4932
4951
  `userTargetConcurrencyLevel` when auto-recovery of rate-limit errors
4933
4952
  is active with `targetConcurrencyLevel` set); clearing it clears the
package/dist/enduser.yml CHANGED
@@ -2847,6 +2847,14 @@ components:
2847
2847
  Do NOT include the protocol prefix (e.g., use "ftp.example.com", not "sftp://ftp.example.com").
2848
2848
  examples:
2849
2849
  - sftp.example.com
2850
+ x-celigo-ai-guidance:
2851
+ - |-
2852
+ Don't point a connection at this environment's own Celigo file server (its
2853
+ `endpoint.hostname`, with a username ending in `@<identifier>`, the server's own
2854
+ `identifier`): a flow reads those files from Celigo Storage directly, and the save
2855
+ refuses that pairing with 422 `fileserver_loopback_not_supported`. Another
2856
+ environment's file server on the same host, such as a trading partner's, is an
2857
+ ordinary connection.
2850
2858
  port:
2851
2859
  type: number
2852
2860
  description: |
@@ -2970,7 +2978,8 @@ components:
2970
2978
  description: |
2971
2979
  Maximum number of concurrent file transfer operations.
2972
2980
  FTP servers often have low connection limits — keep this value conservative.
2973
- Send no more than the account's licensed maximum (25 standard, 50 with an Environments license).
2981
+ Send no more than the account's licensed maximum, the license's `concurrency` (25 standard,
2982
+ 50 with an Environments license).
2974
2983
  Unlike the rest of the `ftp` object, a `PUT` that omits this field keeps the stored value instead of clearing it.
2975
2984
  minimum: 1
2976
2985
  maximum: 50
@@ -2994,7 +3003,7 @@ components:
2994
3003
  description: |-
2995
3004
  Number of parallel transfer threads for this FTP connection. Must be a
2996
3005
  whole number — decimals are rejected on save. Send no more than the
2997
- account's licensed concurrency maximum. On
3006
+ account's licensed concurrency maximum, the same as for `concurrencyLevel`. On
2998
3007
  save the value is mirrored into `userConcurrencyLevel` (and into
2999
3008
  `userTargetConcurrencyLevel` when auto-recovery of rate-limit errors
3000
3009
  is active with `targetConcurrencyLevel` set); clearing it clears the
@@ -43,8 +43,9 @@ paths:
43
43
  `startTime` must be within the last 30 days and the span to `endTime` must not exceed 3 days.
44
44
  If `endTime` is omitted, the server defaults it to the current time. Poll
45
45
  `GET /v1/eventreports/{_id}` until `status` is `completed`, then download the CSV via
46
- `GET /v1/eventreports/{_id}/signedURL`. The create response includes `_requestedByUserId`;
47
- subsequent GET responses replace this with the `requestedByUser` object (name + email).
46
+ `GET /v1/eventreports/{_id}/signedURL`; generation can take several minutes. The create
47
+ response includes `_requestedByUserId`; subsequent GET responses replace this with the
48
+ `requestedByUser` object (name + email).
48
49
  requestBody:
49
50
  required: true
50
51
  content:
@@ -94,7 +95,42 @@ paths:
94
95
  '401':
95
96
  $ref: '#/components/responses/401-unauthorized'
96
97
  '422':
97
- $ref: '#/components/responses/422-unprocessable-entity'
98
+ description: |-
99
+ The window is out of bounds -- `startTime` more than 30 days back, `endTime` before
100
+ `startTime`, or a span over 3 days -- or `_flowIds` is empty. No report is created.
101
+ content:
102
+ application/json:
103
+ schema:
104
+ $ref: '#/components/schemas/Error'
105
+ examples:
106
+ span_over_three_days:
107
+ summary: Window longer than 3 days
108
+ value:
109
+ errors:
110
+ - field: endTime
111
+ code: invalid_range
112
+ message: For event report, the time gap between start and end time can't exceed 3 days.
113
+ start_over_thirty_days:
114
+ summary: Start more than 30 days back
115
+ value:
116
+ errors:
117
+ - field: startTime
118
+ code: invalid_starttime
119
+ message: The start time for the event report can't go beyond 30 days.
120
+ end_before_start:
121
+ summary: endTime before startTime
122
+ value:
123
+ errors:
124
+ - field: startTime
125
+ code: invalid_range
126
+ message: The end time can't be before than start time.
127
+ no_flows:
128
+ summary: Empty _flowIds
129
+ value:
130
+ errors:
131
+ - field: type
132
+ code: invalid_flowevents
133
+ message: Please select the flows for which the flow event report needs to be generated.
98
134
  get:
99
135
  x-internal: false
100
136
  operationId: listEventReports
@@ -227,6 +263,10 @@ paths:
227
263
  The URL is valid for approximately 15 minutes. Only works when the report `status` is
228
264
  `completed` -- requesting it in any other status returns 400. If the URL has expired,
229
265
  call this endpoint again to get a fresh one.
266
+
267
+ The file is served with `Content-Encoding: gzip`, so download it with a client that decodes
268
+ it (`curl --compressed`) or gunzip it afterwards. Its columns start `traceKey`, `time`,
269
+ `type`, `timeTaken`, `_flowJobId`.
230
270
  parameters:
231
271
  - name: _id
232
272
  in: path
@@ -670,19 +710,6 @@ components:
670
710
  errors:
671
711
  - code: invalid_request
672
712
  message: The request body failed validation.
673
- 422-unprocessable-entity:
674
- description: |
675
- Unprocessable entity. The request was well-formed but was unable to be followed due to semantic errors.
676
- content:
677
- application/json:
678
- schema:
679
- $ref: '#/components/schemas/Error'
680
- examples:
681
- default:
682
- value:
683
- errors:
684
- - code: unprocessable_entity
685
- message: The request could not be processed due to a semantic error.
686
713
  404-not-found:
687
714
  description: |
688
715
  Not found. The requested resource does not exist or is not visible to the caller.
@@ -4679,6 +4679,14 @@ components:
4679
4679
  Do NOT include the protocol prefix (e.g., use "ftp.example.com", not "sftp://ftp.example.com").
4680
4680
  examples:
4681
4681
  - sftp.example.com
4682
+ x-celigo-ai-guidance:
4683
+ - |-
4684
+ Don't point a connection at this environment's own Celigo file server (its
4685
+ `endpoint.hostname`, with a username ending in `@<identifier>`, the server's own
4686
+ `identifier`): a flow reads those files from Celigo Storage directly, and the save
4687
+ refuses that pairing with 422 `fileserver_loopback_not_supported`. Another
4688
+ environment's file server on the same host, such as a trading partner's, is an
4689
+ ordinary connection.
4682
4690
  port:
4683
4691
  type: number
4684
4692
  description: |
@@ -4802,7 +4810,8 @@ components:
4802
4810
  description: |
4803
4811
  Maximum number of concurrent file transfer operations.
4804
4812
  FTP servers often have low connection limits — keep this value conservative.
4805
- Send no more than the account's licensed maximum (25 standard, 50 with an Environments license).
4813
+ Send no more than the account's licensed maximum, the license's `concurrency` (25 standard,
4814
+ 50 with an Environments license).
4806
4815
  Unlike the rest of the `ftp` object, a `PUT` that omits this field keeps the stored value instead of clearing it.
4807
4816
  minimum: 1
4808
4817
  maximum: 50
@@ -4826,7 +4835,7 @@ components:
4826
4835
  description: |-
4827
4836
  Number of parallel transfer threads for this FTP connection. Must be a
4828
4837
  whole number — decimals are rejected on save. Send no more than the
4829
- account's licensed concurrency maximum. On
4838
+ account's licensed concurrency maximum, the same as for `concurrencyLevel`. On
4830
4839
  save the value is mirrored into `userConcurrencyLevel` (and into
4831
4840
  `userTargetConcurrencyLevel` when auto-recovery of rate-limit errors
4832
4841
  is active with `targetConcurrencyLevel` set); clearing it clears the
package/dist/state.yml CHANGED
@@ -35,6 +35,10 @@ tags:
35
35
  Values must be non-empty JSON objects or arrays. Bare primitives,
36
36
  `null`, and empty containers (`{}`, `[]`) are rejected.
37
37
 
38
+ Each export, import or integration holds at most 10 keys, and the
39
+ global scope at most 100. A new key past the limit is refused with 422
40
+ `limit_reached`; replacing an existing key still works.
41
+
38
42
  Prefer resource-scoped state over global state when the data belongs
39
43
  to a specific export, import, or integration. State keys are upserted —
40
44
  PUT creates if absent, replaces if present. There is no PATCH; send the
@@ -243,15 +247,25 @@ paths:
243
247
  '422':
244
248
  description: |-
245
249
  The request body is empty, or is an empty container (`{}` or
246
- `[]`).
250
+ `[]`), or the key is new and the account already holds 100 global
251
+ keys.
247
252
  content:
248
253
  application/json:
249
254
  schema:
250
255
  $ref: '#/components/schemas/Error'
251
- example:
252
- errors:
253
- - code: missing_request_body
254
- message: Please send state as request body in the PUT request.
256
+ examples:
257
+ missing_request_body:
258
+ summary: Empty body or empty container
259
+ value:
260
+ errors:
261
+ - code: missing_request_body
262
+ message: Please send state as request body in the PUT request.
263
+ limit_reached:
264
+ summary: The account already holds 100 global keys
265
+ value:
266
+ errors:
267
+ - code: limit_reached
268
+ message: 'Cannot save state, allowed number of states already reached for user : 60f1a2b3c4d5e6f7a8b9c0d1'
255
269
  delete:
256
270
  x-internal: false
257
271
  operationId: deleteGlobalStateKey
@@ -710,15 +724,24 @@ paths:
710
724
  '422':
711
725
  description: |-
712
726
  The request body is empty, or is an empty container (`{}` or
713
- `[]`).
727
+ `[]`), or the key is new and the resource already holds 10 keys.
714
728
  content:
715
729
  application/json:
716
730
  schema:
717
731
  $ref: '#/components/schemas/Error'
718
- example:
719
- errors:
720
- - code: missing_request_body
721
- message: Please send state as request body in the PUT request.
732
+ examples:
733
+ missing_request_body:
734
+ summary: Empty body or empty container
735
+ value:
736
+ errors:
737
+ - code: missing_request_body
738
+ message: Please send state as request body in the PUT request.
739
+ limit_reached:
740
+ summary: The resource already holds 10 keys
741
+ value:
742
+ errors:
743
+ - code: limit_reached
744
+ message: 'Cannot save state, allowed number of states already reached for export : 66a1f2c3b4d5e6f7a8b9c0d1'
722
745
  delete:
723
746
  x-internal: false
724
747
  operationId: deleteResourceStateKey
package/dist/tool.yml CHANGED
@@ -8187,6 +8187,14 @@ components:
8187
8187
  Do NOT include the protocol prefix (e.g., use "ftp.example.com", not "sftp://ftp.example.com").
8188
8188
  examples:
8189
8189
  - sftp.example.com
8190
+ x-celigo-ai-guidance:
8191
+ - |-
8192
+ Don't point a connection at this environment's own Celigo file server (its
8193
+ `endpoint.hostname`, with a username ending in `@<identifier>`, the server's own
8194
+ `identifier`): a flow reads those files from Celigo Storage directly, and the save
8195
+ refuses that pairing with 422 `fileserver_loopback_not_supported`. Another
8196
+ environment's file server on the same host, such as a trading partner's, is an
8197
+ ordinary connection.
8190
8198
  port:
8191
8199
  type: number
8192
8200
  description: |
@@ -8310,7 +8318,8 @@ components:
8310
8318
  description: |
8311
8319
  Maximum number of concurrent file transfer operations.
8312
8320
  FTP servers often have low connection limits — keep this value conservative.
8313
- Send no more than the account's licensed maximum (25 standard, 50 with an Environments license).
8321
+ Send no more than the account's licensed maximum, the license's `concurrency` (25 standard,
8322
+ 50 with an Environments license).
8314
8323
  Unlike the rest of the `ftp` object, a `PUT` that omits this field keeps the stored value instead of clearing it.
8315
8324
  minimum: 1
8316
8325
  maximum: 50
@@ -8334,7 +8343,7 @@ components:
8334
8343
  description: |-
8335
8344
  Number of parallel transfer threads for this FTP connection. Must be a
8336
8345
  whole number — decimals are rejected on save. Send no more than the
8337
- account's licensed concurrency maximum. On
8346
+ account's licensed concurrency maximum, the same as for `concurrencyLevel`. On
8338
8347
  save the value is mirrored into `userConcurrencyLevel` (and into
8339
8348
  `userTargetConcurrencyLevel` when auto-recovery of rate-limit errors
8340
8349
  is active with `targetConcurrencyLevel` set); clearing it clears the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@celigo/api-specs",
3
- "version": "0.2.168",
3
+ "version": "0.2.169",
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": "80cddc9b",
4
+ "iasCommit": "750b2035",
5
5
  "generatedAt": "2026-10-22"
6
6
  },
7
7
  "roots": {