@celigo/api-specs 0.2.70 → 0.2.72
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 +86 -11
- package/dist/integration.yml +16 -2
- package/dist/script.yml +84 -16
- package/package.json +1 -1
- package/schemas.json +2 -2
package/dist/api.yml
CHANGED
|
@@ -144,7 +144,9 @@ paths:
|
|
|
144
144
|
description: |-
|
|
145
145
|
Creates a new API. For `script` mode, include `script._scriptId` and `script.function` (the
|
|
146
146
|
server also copies these to the top level in the response). For `builder` mode,
|
|
147
|
-
`builder.request`
|
|
147
|
+
`builder.request` can be added later — an API created without it has no route until
|
|
148
|
+
`relativeURI` and `method` are set — but when it is present it must carry both, or the
|
|
149
|
+
request fails with 422 `invalid_api_builder_request`.
|
|
148
150
|
|
|
149
151
|
Builder-mode APIs are created with `logging: {"mode": "basic"}` when the account license
|
|
150
152
|
has logging enabled -- the request body cannot override this (`logging` is ignored on POST
|
|
@@ -666,7 +668,13 @@ paths:
|
|
|
666
668
|
summary: Update the grouping for one or more APIs
|
|
667
669
|
description: |-
|
|
668
670
|
Assigns or removes an API grouping for the specified API resources. Pass
|
|
669
|
-
`_apiGroupingId: null` to ungroup. Nonexistent API IDs are silently accepted.
|
|
671
|
+
`_apiGroupingId: null` or omit it to ungroup. Nonexistent API IDs are silently accepted.
|
|
672
|
+
|
|
673
|
+
Every API in `_apiIds` must belong to the same integration, and the grouping must be
|
|
674
|
+
one of that integration's `apiGroupings`. Each API is re-saved through full validation,
|
|
675
|
+
so an API that cannot be saved as it stands (for example a builder API whose response
|
|
676
|
+
router is not configured yet) fails the request with 400 `apigrouping_update_error`;
|
|
677
|
+
regroup such an API with a full `PUT /v1/apis/{_id}` instead.
|
|
670
678
|
requestBody:
|
|
671
679
|
required: true
|
|
672
680
|
content:
|
|
@@ -704,7 +712,34 @@ paths:
|
|
|
704
712
|
'204':
|
|
705
713
|
description: API grouping updated successfully (no body returned).
|
|
706
714
|
'400':
|
|
707
|
-
|
|
715
|
+
description: |-
|
|
716
|
+
The request was rejected: the APIs span more than one integration
|
|
717
|
+
(`invalid_request`), or one API could not be re-saved with the new grouping
|
|
718
|
+
(`apigrouping_update_error` — the grouping belongs to another integration, or the
|
|
719
|
+
API fails its own validation).
|
|
720
|
+
content:
|
|
721
|
+
application/json:
|
|
722
|
+
schema:
|
|
723
|
+
$ref: '#/components/schemas/Error'
|
|
724
|
+
examples:
|
|
725
|
+
differentIntegrations:
|
|
726
|
+
summary: APIs belong to different integrations
|
|
727
|
+
value:
|
|
728
|
+
errors:
|
|
729
|
+
- code: invalid_request
|
|
730
|
+
message: Unable to update apis for apigrouping, since apis belongs to different integrations.
|
|
731
|
+
groupingNotInIntegration:
|
|
732
|
+
summary: Grouping belongs to another integration
|
|
733
|
+
value:
|
|
734
|
+
errors:
|
|
735
|
+
- code: apigrouping_update_error
|
|
736
|
+
message: 'Failed to update api grouping for api: Get Customer. Error: API grouping does not belong to Integration: 6a429af50547257e3301246c.'
|
|
737
|
+
apiFailsValidation:
|
|
738
|
+
summary: API cannot be re-saved as it stands
|
|
739
|
+
value:
|
|
740
|
+
errors:
|
|
741
|
+
- code: apigrouping_update_error
|
|
742
|
+
message: 'Failed to update api grouping for api: Get Customer. Error: Response router id must be "apiRouter"..'
|
|
708
743
|
'401':
|
|
709
744
|
$ref: '#/components/responses/401-unauthorized'
|
|
710
745
|
/v1/apis/{_id}/logs:
|
|
@@ -2119,7 +2154,8 @@ paths:
|
|
|
2119
2154
|
combination of `version`, `method`, and `relativeURI` must be unique. Reusing all
|
|
2120
2155
|
three returns a 422 `clone_api_already_exists`. Pass `_integrationId` to create the
|
|
2121
2156
|
clone inside an integration — when omitted, the clone is created standalone rather
|
|
2122
|
-
than inheriting the source API's integration.
|
|
2157
|
+
than inheriting the source API's integration. Add `_apiGroupingId` to file the clone
|
|
2158
|
+
under one of that integration's `apiGroupings`.
|
|
2123
2159
|
|
|
2124
2160
|
Only **builder-type** APIs can be cloned — cloning any other API type returns a 400
|
|
2125
2161
|
`clone_not_supported`.
|
|
@@ -2168,12 +2204,32 @@ paths:
|
|
|
2168
2204
|
standalone — it does not inherit the source API's integration.
|
|
2169
2205
|
examples:
|
|
2170
2206
|
- 6a429af50547257e3301246c
|
|
2207
|
+
_apiGroupingId:
|
|
2208
|
+
type:
|
|
2209
|
+
- string
|
|
2210
|
+
- 'null'
|
|
2211
|
+
format: objectId
|
|
2212
|
+
description: |-
|
|
2213
|
+
Grouping inside the target integration that the clone is filed under; `null`
|
|
2214
|
+
or omitted leaves it ungrouped. Honored only together with `_integrationId` —
|
|
2215
|
+
sent without it, the clone is created standalone and the grouping is dropped
|
|
2216
|
+
silently. A grouping that belongs to a different integration fails the clone
|
|
2217
|
+
with 422 `apigrouping_not_belong` and nothing is created.
|
|
2218
|
+
examples:
|
|
2219
|
+
- 60a1b2c3d4e5f60012345678
|
|
2171
2220
|
examples:
|
|
2172
2221
|
default:
|
|
2173
2222
|
summary: Clone to a new version
|
|
2174
2223
|
value:
|
|
2175
2224
|
version: v2
|
|
2176
2225
|
name: IDP (v2)
|
|
2226
|
+
intoGroup:
|
|
2227
|
+
summary: Clone into an integration's API grouping
|
|
2228
|
+
value:
|
|
2229
|
+
version: v2
|
|
2230
|
+
name: IDP (v2)
|
|
2231
|
+
_integrationId: 6a429af50547257e3301246c
|
|
2232
|
+
_apiGroupingId: 60a1b2c3d4e5f60012345678
|
|
2177
2233
|
responses:
|
|
2178
2234
|
'201':
|
|
2179
2235
|
description: |-
|
|
@@ -2234,8 +2290,9 @@ paths:
|
|
|
2234
2290
|
$ref: '#/components/responses/404-not-found'
|
|
2235
2291
|
'422':
|
|
2236
2292
|
description: |-
|
|
2237
|
-
An API with the same `version`, `method`, and `relativeURI` already exists
|
|
2238
|
-
with a different `version` (or change the method/URI) to create a distinct API
|
|
2293
|
+
An API with the same `version`, `method`, and `relativeURI` already exists — clone
|
|
2294
|
+
with a different `version` (or change the method/URI) to create a distinct API — or
|
|
2295
|
+
`_apiGroupingId` is not one of the target integration's `apiGroupings`.
|
|
2239
2296
|
content:
|
|
2240
2297
|
application/json:
|
|
2241
2298
|
schema:
|
|
@@ -2246,6 +2303,13 @@ paths:
|
|
|
2246
2303
|
errors:
|
|
2247
2304
|
- code: clone_api_already_exists
|
|
2248
2305
|
message: The clone API already exists with the same version, method and relative uri.
|
|
2306
|
+
groupingNotInIntegration:
|
|
2307
|
+
summary: Grouping belongs to a different integration
|
|
2308
|
+
value:
|
|
2309
|
+
errors:
|
|
2310
|
+
- field: _apiGroupingId
|
|
2311
|
+
code: apigrouping_not_belong
|
|
2312
|
+
message: 'Failed to create Api for _id "68ae4264b5f755d2dd3796b4" due to: API grouping does not belong to Integration: 6a429af50547257e3301246c'
|
|
2249
2313
|
/v1/apis/{_id}/clone/validate:
|
|
2250
2314
|
post:
|
|
2251
2315
|
x-internal: false
|
|
@@ -3332,6 +3396,15 @@ components:
|
|
|
3332
3396
|
API. On reads the field is omitted when unset, never `null`.
|
|
3333
3397
|
examples:
|
|
3334
3398
|
- 60a1b2c3d4e5f60012345678
|
|
3399
|
+
x-celigo-ai-guidance:
|
|
3400
|
+
- |-
|
|
3401
|
+
The id must be one of the `apiGroupings` of the integration named by _integrationId
|
|
3402
|
+
in the same write; any other id fails with 422 `apigrouping_not_belong` — including
|
|
3403
|
+
a PUT that changes _integrationId but keeps the previous grouping. When moving an
|
|
3404
|
+
API, send the target integration's grouping or `null` (Unassigned).
|
|
3405
|
+
- |-
|
|
3406
|
+
`PATCH /v1/apis/{_id}` rejects `/_apiGroupingId` (422, not a whitelisted property);
|
|
3407
|
+
regroup with a full PUT or with `PUT /v1/apis/updateApiGrouping`.
|
|
3335
3408
|
description:
|
|
3336
3409
|
type: string
|
|
3337
3410
|
description: Optional description of the API's purpose.
|
|
@@ -3678,11 +3751,13 @@ components:
|
|
|
3678
3751
|
description: |-
|
|
3679
3752
|
Request body for creating or updating an API.
|
|
3680
3753
|
|
|
3681
|
-
For builder-mode APIs, populate the `builder` object
|
|
3682
|
-
|
|
3683
|
-
|
|
3684
|
-
|
|
3685
|
-
|
|
3754
|
+
For builder-mode APIs, populate the `builder` object; the `script` field is
|
|
3755
|
+
ignored. `builder.request` can be omitted on create — the API has no route
|
|
3756
|
+
until `relativeURI` and `method` are set — but when it is present it must
|
|
3757
|
+
carry both, or the write fails with 422 `invalid_api_builder_request`. For
|
|
3758
|
+
script-mode APIs, populate `script` with `_scriptId` and `function`; the
|
|
3759
|
+
`builder` field is ignored. On PUT, send the complete object — omitted
|
|
3760
|
+
fields revert to defaults.
|
|
3686
3761
|
|
|
3687
3762
|
Set `type` explicitly to `builder` or `script`. The server infers `script`
|
|
3688
3763
|
when `type` is omitted, but new APIs must declare it.
|
package/dist/integration.yml
CHANGED
|
@@ -287,7 +287,9 @@ paths:
|
|
|
287
287
|
| `/flowGroupings` | Flow grouping configuration |
|
|
288
288
|
| `/apiGroupings` | API grouping configuration |
|
|
289
289
|
|
|
290
|
-
All other paths are rejected with `422`.
|
|
290
|
+
All other paths are rejected with `422`. A successful patch returns no body, so the
|
|
291
|
+
server-assigned `_id` of a grouping added through `/flowGroupings` or `/apiGroupings`
|
|
292
|
+
is only available from a follow-up `GET`.
|
|
291
293
|
operationId: patchIntegration
|
|
292
294
|
tags:
|
|
293
295
|
- Integrations
|
|
@@ -4088,7 +4090,19 @@ components:
|
|
|
4088
4090
|
|
|
4089
4091
|
Used to group APIs into named sections with their own settings/settingsForm.
|
|
4090
4092
|
Works identically to `flowGroupings` but for API resources. Create groupings here,
|
|
4091
|
-
then assign APIs to them via `PUT /v1/apis/updateApiGrouping`.
|
|
4093
|
+
then assign APIs to them via `PUT /v1/apis/updateApiGrouping`. A grouping that still
|
|
4094
|
+
has member APIs survives being removed from this array — ungroup its APIs first.
|
|
4095
|
+
x-celigo-ai-guidance:
|
|
4096
|
+
- |-
|
|
4097
|
+
`Unassigned` is a reserved name (422 `invalid_apigrouping_name`) and names must be
|
|
4098
|
+
unique within the integration (422 `duplicate_field`).
|
|
4099
|
+
- |-
|
|
4100
|
+
Removing a grouping that still has member APIs returns success but leaves the
|
|
4101
|
+
grouping in place; move those APIs with `PUT /v1/apis/updateApiGrouping` first.
|
|
4102
|
+
- |-
|
|
4103
|
+
`POST` and `PUT` answer with the saved integration, so a new grouping's `_id` is
|
|
4104
|
+
in the response; `PATCH` answers `204` with no body, so after a patch the `_id`
|
|
4105
|
+
comes from a follow-up `GET`.
|
|
4092
4106
|
items:
|
|
4093
4107
|
type: object
|
|
4094
4108
|
additionalProperties: true
|
package/dist/script.yml
CHANGED
|
@@ -361,10 +361,22 @@ paths:
|
|
|
361
361
|
/v1/scripts/{_id}/logs:
|
|
362
362
|
get:
|
|
363
363
|
x-internal: false
|
|
364
|
-
summary: Get
|
|
364
|
+
summary: Get execution logs for a script
|
|
365
365
|
description: |-
|
|
366
|
-
Returns
|
|
367
|
-
|
|
366
|
+
Returns the script's execution log — the entries its `console.*` calls wrote during
|
|
367
|
+
real runs of the flows, APIs and Tools whose steps use the script. `console.log`,
|
|
368
|
+
`console.info`, `console.warn` and `console.error` output is recorded on every real
|
|
369
|
+
run regardless of the parent's logging mode (a flow's log level, an API's request
|
|
370
|
+
logging, a Tool invoke without `x-log-mode`); `console.debug` output is recorded only
|
|
371
|
+
while the script's `debugUntil` is in the future. Entries stay readable after a debug window closes. Test runs
|
|
372
|
+
execute the script but write no entries.
|
|
373
|
+
|
|
374
|
+
The window is read from `time_lte` downward, one time slice at a time, and each
|
|
375
|
+
call returns one slice. A response with an empty `logs` array **and** a
|
|
376
|
+
`nextPageURL` means that slice held nothing while the rest of the window is still
|
|
377
|
+
unread — follow the cursor until a response arrives without one. Only an empty
|
|
378
|
+
`logs` array with no `nextPageURL` means the window holds no entries. To read a
|
|
379
|
+
known run in one call, set `time_lte` a few seconds after the run ended.
|
|
368
380
|
tags:
|
|
369
381
|
- Scripts
|
|
370
382
|
operationId: getScriptLogs
|
|
@@ -377,9 +389,47 @@ paths:
|
|
|
377
389
|
type: string
|
|
378
390
|
format: objectId
|
|
379
391
|
x-celigo-refModel: scripts
|
|
392
|
+
- name: time_lte
|
|
393
|
+
in: query
|
|
394
|
+
required: false
|
|
395
|
+
description: |-
|
|
396
|
+
Upper bound of the time window (inclusive), as epoch milliseconds. Defaults to now if
|
|
397
|
+
omitted. Reading starts here and proceeds backward.
|
|
398
|
+
schema:
|
|
399
|
+
type: integer
|
|
400
|
+
format: int64
|
|
401
|
+
- name: time_gt
|
|
402
|
+
in: query
|
|
403
|
+
required: false
|
|
404
|
+
description: Lower bound of the time window (exclusive), as epoch milliseconds.
|
|
405
|
+
schema:
|
|
406
|
+
type: integer
|
|
407
|
+
format: int64
|
|
408
|
+
- name: _flowId
|
|
409
|
+
in: query
|
|
410
|
+
required: false
|
|
411
|
+
description: |-
|
|
412
|
+
Restricts entries to hooks that ran inside this parent. Despite the name it matches
|
|
413
|
+
the containing flow, API, or Tool alike — pass whichever the hook step lives in.
|
|
414
|
+
schema:
|
|
415
|
+
type: string
|
|
416
|
+
format: objectId
|
|
417
|
+
- name: _resourceId
|
|
418
|
+
in: query
|
|
419
|
+
required: false
|
|
420
|
+
description: Restricts entries to hooks that ran on this export or import step.
|
|
421
|
+
schema:
|
|
422
|
+
type: string
|
|
423
|
+
format: objectId
|
|
424
|
+
- name: functionType
|
|
425
|
+
in: query
|
|
426
|
+
required: false
|
|
427
|
+
description: Restricts entries to one hook type (for example `preMap` or `postResponseMap`).
|
|
428
|
+
schema:
|
|
429
|
+
type: string
|
|
380
430
|
responses:
|
|
381
431
|
'200':
|
|
382
|
-
description:
|
|
432
|
+
description: One slice of the script's execution log.
|
|
383
433
|
content:
|
|
384
434
|
application/json:
|
|
385
435
|
schema:
|
|
@@ -387,18 +437,20 @@ paths:
|
|
|
387
437
|
properties:
|
|
388
438
|
logs:
|
|
389
439
|
type: array
|
|
390
|
-
description:
|
|
440
|
+
description: |-
|
|
441
|
+
Entries from the slice that was read, newest first. Empty when the slice held
|
|
442
|
+
nothing — check `nextPageURL` before treating that as an empty window.
|
|
391
443
|
items:
|
|
392
444
|
type: object
|
|
393
445
|
properties:
|
|
394
446
|
time:
|
|
395
447
|
type: string
|
|
396
|
-
description:
|
|
448
|
+
description: UTC timestamp when the entry was written.
|
|
397
449
|
examples:
|
|
398
450
|
- '2026-05-22 01:24:38.697'
|
|
399
451
|
functionType:
|
|
400
452
|
type: string
|
|
401
|
-
description: Hook type that produced the
|
|
453
|
+
description: Hook type that produced the entry.
|
|
402
454
|
examples:
|
|
403
455
|
- preSavePage
|
|
404
456
|
_resourceId:
|
|
@@ -409,23 +461,33 @@ paths:
|
|
|
409
461
|
- 6843b67b35b64c0bcba2fd69
|
|
410
462
|
logLevel:
|
|
411
463
|
type: string
|
|
412
|
-
description: Severity
|
|
464
|
+
description: Severity of the entry, derived from the `console` method that wrote it.
|
|
413
465
|
enum:
|
|
414
466
|
- INFO
|
|
415
467
|
- WARN
|
|
416
468
|
- ERROR
|
|
469
|
+
- DEBUG
|
|
417
470
|
x-enumDescriptions:
|
|
418
|
-
INFO: Output from `console.log()
|
|
419
|
-
WARN: Output from `console.warn()
|
|
420
|
-
ERROR: Output from `console.error()
|
|
471
|
+
INFO: Output from `console.log()` or `console.info()`
|
|
472
|
+
WARN: Output from `console.warn()`
|
|
473
|
+
ERROR: Output from `console.error()`
|
|
474
|
+
DEBUG: Output from `console.debug()`, recorded only while `debugUntil` is in the future
|
|
421
475
|
message:
|
|
422
476
|
type: string
|
|
423
477
|
description: Log message content.
|
|
424
478
|
examples:
|
|
425
479
|
- test log message from preSavePage
|
|
480
|
+
nextPageURL:
|
|
481
|
+
type: string
|
|
482
|
+
description: |-
|
|
483
|
+
Path of the next slice to read, carrying the same filters with `time_lte` moved
|
|
484
|
+
back to the slice boundary. Present whenever unread window remains — including
|
|
485
|
+
when `logs` is empty. Absent once the window is exhausted.
|
|
486
|
+
examples:
|
|
487
|
+
- /v1/scripts/6843b67b35b64c0bcba2fd69/logs?time_gt=1790869357487&time_lte=1790955400000
|
|
426
488
|
examples:
|
|
427
489
|
withLogs:
|
|
428
|
-
summary:
|
|
490
|
+
summary: Slice with entries
|
|
429
491
|
value:
|
|
430
492
|
logs:
|
|
431
493
|
- time: '2026-05-22 01:24:38.697'
|
|
@@ -438,8 +500,13 @@ paths:
|
|
|
438
500
|
_resourceId: 6843b67b35b64c0bcba2fd69
|
|
439
501
|
logLevel: INFO
|
|
440
502
|
message: test log message from preSavePage
|
|
503
|
+
emptySliceMoreToRead:
|
|
504
|
+
summary: Empty slice, window not exhausted — follow the cursor
|
|
505
|
+
value:
|
|
506
|
+
logs: []
|
|
507
|
+
nextPageURL: /v1/scripts/6843b67b35b64c0bcba2fd69/logs?time_gt=1790869357487&time_lte=1790955400000
|
|
441
508
|
empty:
|
|
442
|
-
summary:
|
|
509
|
+
summary: Window exhausted, no entries
|
|
443
510
|
value:
|
|
444
511
|
logs: []
|
|
445
512
|
'401':
|
|
@@ -451,10 +518,11 @@ paths:
|
|
|
451
518
|
operationId: deleteScriptLogs
|
|
452
519
|
tags:
|
|
453
520
|
- Scripts
|
|
454
|
-
summary: Delete
|
|
521
|
+
summary: Delete execution logs for a script
|
|
455
522
|
description: |-
|
|
456
|
-
Deletes
|
|
457
|
-
|
|
523
|
+
Deletes every entry in the script's execution log — the same action as the script
|
|
524
|
+
page's Clear logs. Synchronous and idempotent; succeeds when the script has no
|
|
525
|
+
entries. The only way, apart from account retention, that entries leave the log.
|
|
458
526
|
parameters:
|
|
459
527
|
- name: _id
|
|
460
528
|
in: path
|
package/package.json
CHANGED