@celigo/api-specs 0.2.172 → 0.2.174

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/account.yml CHANGED
@@ -383,13 +383,12 @@ paths:
383
383
  summary: One stack available
384
384
  value:
385
385
  - _id: 69f536192e7966f4032f2299
386
- name: Production On-Prem Agent
386
+ name: Production extension server
387
387
  type: server
388
388
  server:
389
- hostURI: https://agent.example.com:7020
390
- systemToken: '********'
391
- ipRanges:
392
- - 10.0.0.0/8
389
+ hostURI: https://extensions.example.com:7020
390
+ systemToken: '******'
391
+ ipRanges: []
393
392
  empty:
394
393
  summary: No stacks available
395
394
  value: []
@@ -842,7 +841,7 @@ components:
842
841
  name:
843
842
  type: string
844
843
  examples:
845
- - Production On-Prem Agent
844
+ - Production extension server
846
845
  description: Display name shown in the UI when selecting a stack.
847
846
  type:
848
847
  type: string
@@ -850,31 +849,32 @@ components:
850
849
  - server
851
850
  - lambda
852
851
  x-enumDescriptions:
853
- server: On-premise agent installed on your own infrastructure.
852
+ server: Your own server, which Celigo calls to run hook and wrapper code.
854
853
  lambda: AWS Lambda function managed in your own AWS account.
855
854
  description: Execution environment type that determines which configuration block is present.
856
855
  server:
857
856
  type: object
858
- description: Configuration for the on-premise agent process. Present when `type` is `server`.
857
+ description: Configuration of a server stack. Present when `type` is `server`.
859
858
  properties:
860
859
  systemToken:
861
860
  type: string
862
861
  description: |-
863
- Token the on-premise agent uses to authenticate with the
864
- Celigo platform. Masked in GET responses.
862
+ System token for authenticating with the server stack. Masked in
863
+ GET responses.
865
864
  hostURI:
866
865
  type: string
867
866
  format: uri
868
867
  examples:
869
- - https://agent.example.com:7020
868
+ - https://extensions.example.com:7020
870
869
  description: |-
871
- Base URL where the on-premise agent is reachable.
872
- The platform sends integration traffic to this address.
870
+ Base URI of the server hosting the stack. The platform calls it to
871
+ run hooks and wrappers.
873
872
  ipRanges:
874
873
  type: array
875
874
  description: |-
876
- CIDR ranges allowed to connect to the agent. Requests from
877
- IPs outside these ranges are rejected.
875
+ Deprecated and not enforced: the list is stored and returned as
876
+ sent, but no Celigo service checks it. Restrict who can reach the
877
+ server at the server or its firewall.
878
878
  items:
879
879
  type: string
880
880
  examples:
package/dist/ai-agent.yml CHANGED
@@ -4860,7 +4860,9 @@ components:
4860
4860
  x-celigo-refModel: scripts
4861
4861
  description: |
4862
4862
  Reference to the Script resource that contains the filtering logic. This must be a valid
4863
- ObjectId of a Script resource that exists in the system.
4863
+ ObjectId of a Script resource in this account: any other id fails the save with 422
4864
+ ("Only a script owned by the user or a script shared by the Integration App can be used
4865
+ at filter.script._scriptId.").
4864
4866
 
4865
4867
  The referenced script must contain the function specified in the `function` field
4866
4868
  and must be written to handle filtering specifically. The script receives
@@ -5597,7 +5599,9 @@ components:
5597
5599
  Reference to a predefined script resource containing the transformation logic.
5598
5600
 
5599
5601
  The referenced script should contain the function specified in the
5600
- 'function' property.
5602
+ 'function' property. It must be a script in this account: any other id fails the save
5603
+ with 422 ("Only a script owned by the user or a script shared by the Integration App can
5604
+ be used at transform.script._scriptId.").
5601
5605
  format: objectid
5602
5606
  x-celigo-refModel: scripts
5603
5607
  examples:
@@ -5630,7 +5634,11 @@ components:
5630
5634
  type: string
5631
5635
  format: objectId
5632
5636
  x-celigo-refModel: scripts
5633
- description: Script containing the hook function named in `function`. Send this or `_stackId`, not both.
5637
+ description: |-
5638
+ Script containing the hook function named in `function`. Send this or `_stackId`, not both.
5639
+ Must be a script in this account: any other id fails the save with 422, naming the hook,
5640
+ such as "Only a script owned by the user or a script shared by the Integration App can
5641
+ be used at hooks.preMap._scriptId." on an import's `preMap`.
5634
5642
  _stackId:
5635
5643
  type: string
5636
5644
  format: objectId
package/dist/api.yml CHANGED
@@ -2560,8 +2560,12 @@ components:
2560
2560
  Script:
2561
2561
  type: object
2562
2562
  description: |-
2563
- Script-mode configuration. The referenced function receives the request object
2564
- and must return a response with `statusCode`, `headers`, and `body`.
2563
+ Script-mode configuration. Callers reach the API at `/v1/apis/{_id}/request`, and the
2564
+ referenced function is called with one `options` object: `method`, `headers` (the
2565
+ request's headers, without `Authorization`), `queryString` (the parsed query string),
2566
+ `body`, and `rawBody` (the body as received, a string). On a GET, `body` is absent and
2567
+ `rawBody` is empty. It returns `{statusCode, headers, body}`: `headers` is optional,
2568
+ and `body` may be any JSON value, an array included.
2565
2569
  properties:
2566
2570
  _scriptId:
2567
2571
  type: string
@@ -2581,8 +2585,15 @@ components:
2581
2585
  - function
2582
2586
  x-celigo-ai-guidance:
2583
2587
  - |-
2584
- In script mode, you provide a custom JavaScript function that receives the request
2585
- object and returns the response. This gives you complete control over the API behavior.
2588
+ In script mode, you provide a custom JavaScript function that receives the `options`
2589
+ object (`method`, `headers` without `Authorization`, `queryString`, `body`, `rawBody`)
2590
+ and returns the response. This gives you complete control over the API behavior.
2591
+ - |-
2592
+ The function gets no `pathParams` or `queryParams`: read the query from `queryString`.
2593
+ A return without `statusCode`, or with a `null` or missing `body`, answers the caller
2594
+ 501 ("'StatusCode' returned by the script cannot be undefined." or "'body' returned by
2595
+ the script cannot be undefined or null."), and an error the function throws answers
2596
+ 422 with its message. Any other `statusCode` is sent as returned.
2586
2597
  items:
2587
2598
  type: object
2588
2599
  required:
@@ -5443,11 +5454,13 @@ components:
5443
5454
  after which the flag switches itself off), and concurrency climbs back toward
5444
5455
  `targetConcurrencyLevel`. While true, `targetConcurrencyLevel` is the throughput lever: a
5445
5456
  `concurrencyLevel` sent in a PUT is ignored, and one sent in a PATCH is stored but the
5446
- recovery machinery moves it back toward the target.
5457
+ recovery machinery moves it back toward the target. Recovery never runs on `ftp`
5458
+ connections: FTP errors aren't treated as rate limits.
5447
5459
  x-celigo-ai-guidance:
5448
5460
  - To change throughput while this is true, write `targetConcurrencyLevel`; a `concurrencyLevel` sent in a PUT returns 200 and changes nothing.
5449
5461
  - Turning it on copies `concurrencyLevel` into `targetConcurrencyLevel`; turning it off unsets the target and leaves `concurrencyLevel` at its current value, which may be below the old target if a recovery was in progress. A `targetConcurrencyLevel` written while this is false is unset by the save.
5450
5462
  - These four settings (`concurrencyLevel`, `targetConcurrencyLevel`, `_borrowConcurrencyFromConnectionId`, this flag) accept a credential-free `PATCH /v1/connections/{_id}`. A PUT replaces the whole document, so send each secret back as its masked `******` value (that keeps it) or as a new value, and never drop one to keep it — an omitted password or `http.encrypted` is cleared, and a static token left out (with no `refreshMethod`) fails the PUT with 422.
5463
+ - On an `ftp` connection recovery never runs, and transfer threads are `ftp.multiThreadCount`; while this is true a create sets `ftp.concurrencyLevel` to `ftp.targetConcurrencyLevel`, or to 1 without one.
5451
5464
  enableMicroBatchForOneToMany:
5452
5465
  type: boolean
5453
5466
  default: true
@@ -6065,6 +6078,10 @@ components:
6065
6078
  FTP servers often have low connection limits — keep this value conservative.
6066
6079
  Send no more than the account's licensed maximum, the license's `concurrency` (25 standard,
6067
6080
  50 with an Environments license).
6081
+ While `autoRecoverRateLimitErrors` is true, which a create gets unless it sends `false`, a create
6082
+ ignores the value sent here and sets this field to `targetConcurrencyLevel`, or to 1 when no
6083
+ target is sent. To start higher, send `targetConcurrencyLevel` too, or create with
6084
+ `autoRecoverRateLimitErrors: false`.
6068
6085
  Unlike the rest of the `ftp` object, a `PUT` that omits this field keeps the stored value instead of clearing it.
6069
6086
  minimum: 1
6070
6087
  maximum: 50
@@ -6074,8 +6091,9 @@ components:
6074
6091
  targetConcurrencyLevel:
6075
6092
  type: integer
6076
6093
  description: |
6077
- Target concurrency level for auto-scaling. The system adjusts concurrency
6078
- between 1 and this value based on server response feedback.
6094
+ While `autoRecoverRateLimitErrors` is true, a create sets `concurrencyLevel` to this value, and a
6095
+ create that omits it gets 1 for both. Auto-recovery never runs on FTP connections (FTP errors
6096
+ aren't treated as rate limits), so nothing climbs back to it.
6079
6097
  Kept on a `PUT` that omits it, like `concurrencyLevel`; unset by the save while
6080
6098
  `autoRecoverRateLimitErrors` is false.
6081
6099
  minimum: 1
@@ -6106,9 +6124,9 @@ components:
6106
6124
  type: integer
6107
6125
  readOnly: true
6108
6126
  description: |-
6109
- Server-maintained mirror of `multiThreadCount` used by concurrency
6110
- auto-scaling. Present only when rate-limit auto-recovery applies;
6111
- recomputed on save.
6127
+ Server-maintained mirror of `multiThreadCount`, present while
6128
+ `autoRecoverRateLimitErrors` is true and `targetConcurrencyLevel` is
6129
+ set; recomputed on save.
6112
6130
  if:
6113
6131
  properties:
6114
6132
  type:
@@ -3323,7 +3323,9 @@ components:
3323
3323
  Reference to a predefined script resource containing the transformation logic.
3324
3324
 
3325
3325
  The referenced script should contain the function specified in the
3326
- 'function' property.
3326
+ 'function' property. It must be a script in this account: any other id fails the save
3327
+ with 422 ("Only a script owned by the user or a script shared by the Integration App can
3328
+ be used at transform.script._scriptId.").
3327
3329
  format: objectid
3328
3330
  x-celigo-refModel: scripts
3329
3331
  examples:
@@ -1034,6 +1034,10 @@ paths:
1034
1034
  from cannot start borrowing (422 `connection_borrowed_by_another`). A
1035
1035
  connection can't borrow from itself: naming its own id is rejected with 422 ("… a
1036
1036
  connection cannot borrow concurrency from itself."), here and on `PUT`.
1037
+ Auto-recovery never runs on `ftp` connections (FTP errors aren't treated as rate limits),
1038
+ so on them the recovery machinery never moves `/ftp/concurrencyLevel` toward the target and
1039
+ nothing climbs back to `/ftp/targetConcurrencyLevel`; the target still persists only while
1040
+ `autoRecoverRateLimitErrors` is true.
1037
1041
  Settings-only changes are recorded in the connection's audit log.
1038
1042
  operationId: patchConnection
1039
1043
  tags:
@@ -4301,11 +4305,13 @@ components:
4301
4305
  after which the flag switches itself off), and concurrency climbs back toward
4302
4306
  `targetConcurrencyLevel`. While true, `targetConcurrencyLevel` is the throughput lever: a
4303
4307
  `concurrencyLevel` sent in a PUT is ignored, and one sent in a PATCH is stored but the
4304
- recovery machinery moves it back toward the target.
4308
+ recovery machinery moves it back toward the target. Recovery never runs on `ftp`
4309
+ connections: FTP errors aren't treated as rate limits.
4305
4310
  x-celigo-ai-guidance:
4306
4311
  - To change throughput while this is true, write `targetConcurrencyLevel`; a `concurrencyLevel` sent in a PUT returns 200 and changes nothing.
4307
4312
  - Turning it on copies `concurrencyLevel` into `targetConcurrencyLevel`; turning it off unsets the target and leaves `concurrencyLevel` at its current value, which may be below the old target if a recovery was in progress. A `targetConcurrencyLevel` written while this is false is unset by the save.
4308
4313
  - These four settings (`concurrencyLevel`, `targetConcurrencyLevel`, `_borrowConcurrencyFromConnectionId`, this flag) accept a credential-free `PATCH /v1/connections/{_id}`. A PUT replaces the whole document, so send each secret back as its masked `******` value (that keeps it) or as a new value, and never drop one to keep it — an omitted password or `http.encrypted` is cleared, and a static token left out (with no `refreshMethod`) fails the PUT with 422.
4314
+ - On an `ftp` connection recovery never runs, and transfer threads are `ftp.multiThreadCount`; while this is true a create sets `ftp.concurrencyLevel` to `ftp.targetConcurrencyLevel`, or to 1 without one.
4309
4315
  enableMicroBatchForOneToMany:
4310
4316
  type: boolean
4311
4317
  default: true
@@ -4923,6 +4929,10 @@ components:
4923
4929
  FTP servers often have low connection limits — keep this value conservative.
4924
4930
  Send no more than the account's licensed maximum, the license's `concurrency` (25 standard,
4925
4931
  50 with an Environments license).
4932
+ While `autoRecoverRateLimitErrors` is true, which a create gets unless it sends `false`, a create
4933
+ ignores the value sent here and sets this field to `targetConcurrencyLevel`, or to 1 when no
4934
+ target is sent. To start higher, send `targetConcurrencyLevel` too, or create with
4935
+ `autoRecoverRateLimitErrors: false`.
4926
4936
  Unlike the rest of the `ftp` object, a `PUT` that omits this field keeps the stored value instead of clearing it.
4927
4937
  minimum: 1
4928
4938
  maximum: 50
@@ -4932,8 +4942,9 @@ components:
4932
4942
  targetConcurrencyLevel:
4933
4943
  type: integer
4934
4944
  description: |
4935
- Target concurrency level for auto-scaling. The system adjusts concurrency
4936
- between 1 and this value based on server response feedback.
4945
+ While `autoRecoverRateLimitErrors` is true, a create sets `concurrencyLevel` to this value, and a
4946
+ create that omits it gets 1 for both. Auto-recovery never runs on FTP connections (FTP errors
4947
+ aren't treated as rate limits), so nothing climbs back to it.
4937
4948
  Kept on a `PUT` that omits it, like `concurrencyLevel`; unset by the save while
4938
4949
  `autoRecoverRateLimitErrors` is false.
4939
4950
  minimum: 1
@@ -4964,9 +4975,9 @@ components:
4964
4975
  type: integer
4965
4976
  readOnly: true
4966
4977
  description: |-
4967
- Server-maintained mirror of `multiThreadCount` used by concurrency
4968
- auto-scaling. Present only when rate-limit auto-recovery applies;
4969
- recomputed on save.
4978
+ Server-maintained mirror of `multiThreadCount`, present while
4979
+ `autoRecoverRateLimitErrors` is true and `targetConcurrencyLevel` is
4980
+ set; recomputed on save.
4970
4981
  if:
4971
4982
  properties:
4972
4983
  type:
@@ -9652,6 +9663,7 @@ components:
9652
9663
  drops to 1 and climbs back toward the adaptor block's `targetConcurrencyLevel`, which is the
9653
9664
  throughput lever while this is on. Turning it on copies the current `concurrencyLevel` into
9654
9665
  the target; turning it off unsets the target and leaves `concurrencyLevel` at its current value.
9666
+ Recovery never runs on `ftp` connections: FTP errors aren't treated as rate limits.
9655
9667
  __integrationIds:
9656
9668
  type: array
9657
9669
  maxItems: 100
package/dist/enduser.yml CHANGED
@@ -29,7 +29,11 @@ tags:
29
29
  routes shared with workspace users. The account owner is never an end
30
30
  user: owners already have MCP access without an end-user record, the
31
31
  invite refuses the owner's address (`owner_self_invite_not_allowed`),
32
- and the owner never appears in these lists.
32
+ and the owner never appears in these lists. Workspace administrators
33
+ need no record either: under Celigo OAuth they reach every MCP server in
34
+ the environment, and everything on it. Other workspace users need an
35
+ end-user record with grants. Anyone who also holds an end-user record,
36
+ an administrator included, is judged by that record's grants.
33
37
 
34
38
  ## End user schema
35
39
 
@@ -2358,11 +2362,13 @@ components:
2358
2362
  after which the flag switches itself off), and concurrency climbs back toward
2359
2363
  `targetConcurrencyLevel`. While true, `targetConcurrencyLevel` is the throughput lever: a
2360
2364
  `concurrencyLevel` sent in a PUT is ignored, and one sent in a PATCH is stored but the
2361
- recovery machinery moves it back toward the target.
2365
+ recovery machinery moves it back toward the target. Recovery never runs on `ftp`
2366
+ connections: FTP errors aren't treated as rate limits.
2362
2367
  x-celigo-ai-guidance:
2363
2368
  - To change throughput while this is true, write `targetConcurrencyLevel`; a `concurrencyLevel` sent in a PUT returns 200 and changes nothing.
2364
2369
  - Turning it on copies `concurrencyLevel` into `targetConcurrencyLevel`; turning it off unsets the target and leaves `concurrencyLevel` at its current value, which may be below the old target if a recovery was in progress. A `targetConcurrencyLevel` written while this is false is unset by the save.
2365
2370
  - These four settings (`concurrencyLevel`, `targetConcurrencyLevel`, `_borrowConcurrencyFromConnectionId`, this flag) accept a credential-free `PATCH /v1/connections/{_id}`. A PUT replaces the whole document, so send each secret back as its masked `******` value (that keeps it) or as a new value, and never drop one to keep it — an omitted password or `http.encrypted` is cleared, and a static token left out (with no `refreshMethod`) fails the PUT with 422.
2371
+ - On an `ftp` connection recovery never runs, and transfer threads are `ftp.multiThreadCount`; while this is true a create sets `ftp.concurrencyLevel` to `ftp.targetConcurrencyLevel`, or to 1 without one.
2366
2372
  enableMicroBatchForOneToMany:
2367
2373
  type: boolean
2368
2374
  default: true
@@ -2980,6 +2986,10 @@ components:
2980
2986
  FTP servers often have low connection limits — keep this value conservative.
2981
2987
  Send no more than the account's licensed maximum, the license's `concurrency` (25 standard,
2982
2988
  50 with an Environments license).
2989
+ While `autoRecoverRateLimitErrors` is true, which a create gets unless it sends `false`, a create
2990
+ ignores the value sent here and sets this field to `targetConcurrencyLevel`, or to 1 when no
2991
+ target is sent. To start higher, send `targetConcurrencyLevel` too, or create with
2992
+ `autoRecoverRateLimitErrors: false`.
2983
2993
  Unlike the rest of the `ftp` object, a `PUT` that omits this field keeps the stored value instead of clearing it.
2984
2994
  minimum: 1
2985
2995
  maximum: 50
@@ -2989,8 +2999,9 @@ components:
2989
2999
  targetConcurrencyLevel:
2990
3000
  type: integer
2991
3001
  description: |
2992
- Target concurrency level for auto-scaling. The system adjusts concurrency
2993
- between 1 and this value based on server response feedback.
3002
+ While `autoRecoverRateLimitErrors` is true, a create sets `concurrencyLevel` to this value, and a
3003
+ create that omits it gets 1 for both. Auto-recovery never runs on FTP connections (FTP errors
3004
+ aren't treated as rate limits), so nothing climbs back to it.
2994
3005
  Kept on a `PUT` that omits it, like `concurrencyLevel`; unset by the save while
2995
3006
  `autoRecoverRateLimitErrors` is false.
2996
3007
  minimum: 1
@@ -3021,9 +3032,9 @@ components:
3021
3032
  type: integer
3022
3033
  readOnly: true
3023
3034
  description: |-
3024
- Server-maintained mirror of `multiThreadCount` used by concurrency
3025
- auto-scaling. Present only when rate-limit auto-recovery applies;
3026
- recomputed on save.
3035
+ Server-maintained mirror of `multiThreadCount`, present while
3036
+ `autoRecoverRateLimitErrors` is true and `targetConcurrencyLevel` is
3037
+ set; recomputed on save.
3027
3038
  if:
3028
3039
  properties:
3029
3040
  type:
package/dist/export.yml CHANGED
@@ -3223,7 +3223,9 @@ components:
3223
3223
  x-celigo-refModel: scripts
3224
3224
  description: |
3225
3225
  Reference to the Script resource that contains the filtering logic. This must be a valid
3226
- ObjectId of a Script resource that exists in the system.
3226
+ ObjectId of a Script resource in this account: any other id fails the save with 422
3227
+ ("Only a script owned by the user or a script shared by the Integration App can be used
3228
+ at filter.script._scriptId.").
3227
3229
 
3228
3230
  The referenced script must contain the function specified in the `function` field
3229
3231
  and must be written to handle filtering specifically. The script receives
@@ -15346,7 +15348,9 @@ components:
15346
15348
  Reference to a predefined script resource containing the transformation logic.
15347
15349
 
15348
15350
  The referenced script should contain the function specified in the
15349
- 'function' property.
15351
+ 'function' property. It must be a script in this account: any other id fails the save
15352
+ with 422 ("Only a script owned by the user or a script shared by the Integration App can
15353
+ be used at transform.script._scriptId.").
15350
15354
  format: objectid
15351
15355
  x-celigo-refModel: scripts
15352
15356
  examples:
@@ -16865,7 +16869,10 @@ components:
16865
16869
  type: string
16866
16870
  format: objectId
16867
16871
  x-celigo-refModel: scripts
16868
- description: Script containing the hook function named in `function`.
16872
+ description: |-
16873
+ Script containing the hook function named in `function`. Must be a script in this
16874
+ account: any other id fails the save with 422 ("Only a script owned by the user or
16875
+ a script shared by the Integration App can be used at hooks.preSavePage._scriptId.").
16869
16876
  examples:
16870
16877
  - 60a2c4e6f321d800129a1a3c
16871
16878
  - 5f8e7d2c1b54e6003a9c7e12
@@ -16976,7 +16983,10 @@ components:
16976
16983
  type: string
16977
16984
  format: objectId
16978
16985
  x-celigo-refModel: connectors
16979
- description: Connector this export was created from, set when the export is part of an installed integration app.
16986
+ description: |-
16987
+ Connector this export was created from, set when the export is part of an installed
16988
+ integration app. The app's install sets it: a create that sends it is refused with 403
16989
+ ("Cannot create an Integration App resource").
16980
16990
  unencrypted:
16981
16991
  type: object
16982
16992
  description: Custom configuration values stored without encryption and returned in API responses.
@@ -17656,6 +17666,18 @@ components:
17656
17666
  example:
17657
17667
  5f7c579b6411271af4e7cefa: 64a1234567890abcdef12345
17658
17668
  5f7c579b6411271af4e7cefb: 64a1234567890abcdef12346
17669
+ _stackId:
17670
+ type: string
17671
+ format: objectId
17672
+ x-celigo-refModel: stacks
17673
+ description: |-
17674
+ Stack that every stack reference in the cloned resources (hooks and wrapper
17675
+ connections running on a stack) points at. Required when the clone preview reports
17676
+ `stackRequired: true`: without it the clone fails with 400 `stack_not_found`. The
17677
+ stack must belong to the target environment or be shared with it (404
17678
+ `stack_not_found` for an unknown id, 400 `invalid_stack` otherwise).
17679
+ examples:
17680
+ - 5f8d43a1b9e5a80011a35f2c
17659
17681
  additionalProperties: true
17660
17682
  CloneResponse:
17661
17683
  description: Response body for a clone operation. Some clone endpoints return the cloned resource, while others may return a list of related created resources.
package/dist/flow.yml CHANGED
@@ -440,8 +440,10 @@ paths:
440
440
  PATCH is safer than PUT for toggling `disabled` or arming debug logging because it won't
441
441
  accidentally reset other fields. To arm debug logging, `replace` `/logging/debugUntil` with
442
442
  a future ISO timestamp (up to the plan's cap, `logging.maxDebugDuration` minutes on the license
443
- from `GET /v1/licenses`); to
444
- disarm, set it to a past timestamp or null.
443
+ from `GET /v1/licenses`). To disarm it, `remove` `/logging/debugUntil`. A `replace` with a
444
+ past timestamp is refused with 422 ("Debug logging end time must be in the future.") and
445
+ leaves the window open, so to end a window early with `replace` alone, set a time a few
446
+ seconds ahead.
445
447
  operationId: patchFlow
446
448
  tags:
447
449
  - Flows
@@ -475,6 +477,11 @@ paths:
475
477
  - op: replace
476
478
  path: /logging/debugUntil
477
479
  value: '2026-05-02T16:00:00.000Z'
480
+ disable_debug:
481
+ summary: Turn debug logging off before the window ends
482
+ value:
483
+ - op: remove
484
+ path: /logging/debugUntil
478
485
  update_schedule:
479
486
  summary: Change Celigo 6-field schedule cron
480
487
  value:
@@ -1996,7 +2003,7 @@ paths:
1996
2003
  value:
1997
2004
  errors:
1998
2005
  - code: inactive_flow
1999
- message: The flow is currently disabled and cannot process retries.
2006
+ message: The flow is inactive. Please enable the flow before retrying.
2000
2007
  missing_last_error_at:
2001
2008
  summary: selectAll without lastErrorAt
2002
2009
  value:
@@ -3523,7 +3530,22 @@ paths:
3523
3530
  '401':
3524
3531
  $ref: '#/components/responses/401-unauthorized'
3525
3532
  '404':
3526
- $ref: '#/components/responses/404-not-found'
3533
+ description: |-
3534
+ Flow not found ("The flow <_id> does not belong to the user <userId>."). The
3535
+ same answer comes back for a flow that exists and has page generators but no page
3536
+ processor or router yet, even when `_exportId` names one of its page generators: give it
3537
+ a step after the export before test-running it. (An `_exportId` that isn't one of the
3538
+ flow's page generators is the 400.)
3539
+ content:
3540
+ application/json:
3541
+ schema:
3542
+ $ref: '#/components/schemas/Error'
3543
+ examples:
3544
+ not_found:
3545
+ summary: Unknown flow id, or a flow with no page processor or router
3546
+ value:
3547
+ errors:
3548
+ - message: The flow 5f8d43a1b9e5a80011a35f2c does not belong to the user 60a2c4e6f321d800129a1a3c.
3527
3549
  '422':
3528
3550
  $ref: '#/components/responses/422-unprocessable-entity'
3529
3551
  /v1/flows/{_id}/test/run/{runId}/{_stepId}:
@@ -4577,7 +4599,22 @@ components:
4577
4599
  properties:
4578
4600
  postResponseMap:
4579
4601
  type: object
4580
- description: Hook that runs after the step's response mapping completes.
4602
+ description: |-
4603
+ Hook that runs after the step's response mapping completes. The function receives
4604
+ `options.postResponseMapData` (the records, with response mapping applied) and
4605
+ `options.responseData` (the step's per-record results, in the same order) and returns
4606
+ `postResponseMapData`, same length. A record an import step failed is in neither array
4607
+ unless `proceedOnFailure` is true. Then it is included, without the fields response
4608
+ mapping would have added, and its `responseData` entry has `statusCode` 422 and
4609
+ `errors` as an object keyed by index (`"0"`, `"1"`, ...) rather than an array. A
4610
+ successful entry has no `errors`.
4611
+ x-celigo-ai-guidance:
4612
+ - |-
4613
+ Verified live 2026-10-22 in flow runs of an HTTP import, three records with one
4614
+ answered 404: with `proceedOnFailure` unset, both arrays held the two written
4615
+ records; with `proceedOnFailure: true` they held all three, and a hook that called
4616
+ `.map` on each entry's `errors` threw on the failed one, failing the page. Read
4617
+ errors with `Object.values(entry.errors || {})`.
4581
4618
  properties:
4582
4619
  function:
4583
4620
  type: string
@@ -6170,6 +6207,18 @@ components:
6170
6207
  example:
6171
6208
  5f7c579b6411271af4e7cefa: 64a1234567890abcdef12345
6172
6209
  5f7c579b6411271af4e7cefb: 64a1234567890abcdef12346
6210
+ _stackId:
6211
+ type: string
6212
+ format: objectId
6213
+ x-celigo-refModel: stacks
6214
+ description: |-
6215
+ Stack that every stack reference in the cloned resources (hooks and wrapper
6216
+ connections running on a stack) points at. Required when the clone preview reports
6217
+ `stackRequired: true`: without it the clone fails with 400 `stack_not_found`. The
6218
+ stack must belong to the target environment or be shared with it (404
6219
+ `stack_not_found` for an unknown id, 400 `invalid_stack` otherwise).
6220
+ examples:
6221
+ - 5f8d43a1b9e5a80011a35f2c
6173
6222
  additionalProperties: true
6174
6223
  CloneResponse:
6175
6224
  description: Response body for a clone operation. Some clone endpoints return the cloned resource, while others may return a list of related created resources.
@@ -6227,12 +6276,18 @@ components:
6227
6276
  additionalProperties: true
6228
6277
  stackRequired:
6229
6278
  type: boolean
6230
- description: Whether the clone requires a stack (connector-level) environment to proceed.
6279
+ description: |-
6280
+ `true` when the resource or one of its dependencies references a stack (a hook or
6281
+ wrapper connection that runs on a stack). Send `_stackId` in the clone request: without
6282
+ it the clone fails with 400 `stack_not_found`.
6231
6283
  _stackId:
6232
6284
  type:
6233
6285
  - string
6234
6286
  - 'null'
6235
- description: The stack id associated with the resource, or null if no stack is involved.
6287
+ description: |-
6288
+ The first stack the resource or a dependency references, or null. Pass it, or another
6289
+ stack in the target environment, as `_stackId` in the clone request; the clone points
6290
+ every stack reference at that one stack.
6236
6291
  examples:
6237
6292
  - 5f8d43a1b9e5a80011a35f2c
6238
6293
  FlowDescendantsResponse:
@@ -6668,7 +6723,12 @@ components:
6668
6723
  - '500'
6669
6724
  message:
6670
6725
  type: string
6671
- description: Human-readable message. Frequently a JSON string that the adaptor received as a response body.
6726
+ description: |-
6727
+ Human-readable message. Frequently a JSON string that the adaptor received as a response body.
6728
+ Stored cut to 500 characters: a longer message keeps its first 497 characters followed by
6729
+ `...`. A template parse error (`handlebars_template_parse_error`) repeats the whole template
6730
+ before its parse detail, so in a long template the detail is cut off; invoking the import
6731
+ (`POST /v1/imports/{_id}/invoke`) with the record returns the full message.
6672
6732
  examples:
6673
6733
  - '{"error":"Internal Server Error"}'
6674
6734
  oIndex:
@@ -1613,7 +1613,9 @@ components:
1613
1613
  x-celigo-refModel: scripts
1614
1614
  description: |
1615
1615
  Reference to the Script resource that contains the filtering logic. This must be a valid
1616
- ObjectId of a Script resource that exists in the system.
1616
+ ObjectId of a Script resource in this account: any other id fails the save with 422
1617
+ ("Only a script owned by the user or a script shared by the Integration App can be used
1618
+ at filter.script._scriptId.").
1617
1619
 
1618
1620
  The referenced script must contain the function specified in the `function` field
1619
1621
  and must be written to handle filtering specifically. The script receives
@@ -1059,7 +1059,9 @@ components:
1059
1059
  x-celigo-refModel: scripts
1060
1060
  description: |
1061
1061
  Reference to the Script resource that contains the filtering logic. This must be a valid
1062
- ObjectId of a Script resource that exists in the system.
1062
+ ObjectId of a Script resource in this account: any other id fails the save with 422
1063
+ ("Only a script owned by the user or a script shared by the Integration App can be used
1064
+ at filter.script._scriptId.").
1063
1065
 
1064
1066
  The referenced script must contain the function specified in the `function` field
1065
1067
  and must be written to handle filtering specifically. The script receives