Deployments, previews and rollbacks
Deploy and redeploy Services, follow a Deployment, request previews, roll back and run schedules.
A Deployment is one attempt to build and release a Service. Every deploy request queues a new Deployment; nothing is merged with a request already waiting. Previews are Deployments of a branch that expire, and a rollback puts an earlier build back.
Every request goes to https://cloudgate.octabyte.app/backend on the Hosted instance, or to your console address followed by /backend when you self-host. Send a Personal key in x-api-key and the Organization in x-organization-id; Authentication shows how to make the key, and Errors explains every refusal. The examples setCLOUDGATE_KEY and CLOUDGATE_ORG_ID in the shell first. To do the same in the console, read Deployments in the user guide.
Deployments
List the Organization's Deployments
GET/deployments
The organization's deployment feed — the read that exists for no single owner, because no route enumerates an Environment's services for a client to fan out over.
Who can call it: Owner, Admin or Member. Needs deployment: read, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
limit | query | integer | 1 to 100. Default 20. |
cursor | query | string | Not empty. |
status | query | string | One of pending, running, done, error, cancelled, held. |
projectId | query | string | Not empty. |
Responses
200OK- The result, as JSON.
- Refusals
400Validation failed;detailsnames each field;401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches. The error body.
curl https://cloudgate.octabyte.app/backend/deployments \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"List Deployments for an Application
GET/applications/{applicationId}/deployments
An application's deployments.
Who can call it: Owner, Admin or Member. Needs deployment: read, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
applicationIdrequired | path | string | The Application's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl https://cloudgate.octabyte.app/backend/applications/j9ct9tCzxUD9FjoxV2gtc/deployments \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Deploy an Application
POST/applications/{applicationId}/deployments
Triggers a deployment of an application — deployments are triggered per service.
Who can call it: Owner, Admin or Member. Needs deployment: create, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
applicationIdrequired | path | string | The Application's id. |
Request body
| Field | Type | Notes |
|---|---|---|
title | string | Not empty. |
description | string |
Responses
201Created- The result, as JSON.
- Refusals
400Validation failed;detailsnames each field;401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl -X POST https://cloudgate.octabyte.app/backend/applications/j9ct9tCzxUD9FjoxV2gtc/deployments \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID" \
-H "content-type: application/json" \
-d '{
"title": "example",
"description": "Storefront for Northwind Labs"
}'Redeploy an Application
POST/applications/{applicationId}/redeploy
Builds again from the source the Application already has. It lives here rather than on the applications controller for the same reason deployments does — it writes a deployment record and enqueues a job, and both of those belong to one service.
Who can call it: Owner, Admin or Member. Needs deployment: create, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
applicationIdrequired | path | string | The Application's id. |
Request body
| Field | Type | Notes |
|---|---|---|
title | string | Not empty. |
description | string |
Responses
201Created- The result, as JSON.
- Refusals
400Validation failed;detailsnames each field;401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl -X POST https://cloudgate.octabyte.app/backend/applications/j9ct9tCzxUD9FjoxV2gtc/redeploy \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID" \
-H "content-type: application/json" \
-d '{
"title": "example",
"description": "Storefront for Northwind Labs"
}'Cancel a Deployment
POST/deployments/{deploymentId}/cancel
Cancels a deployment.
Who can call it: Owner, Admin or Member. Needs deployment: cancel, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
deploymentIdrequired | path | string | The Deployment's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl -X POST https://cloudgate.octabyte.app/backend/deployments/Wvn8FY3seANNJKRKzcS8C/cancel \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Stop a Cloud run
POST/deployments/{deploymentId}/stop-run
Stop the run: ends a running Cloud run, its apply included.
Who can call it: Owner, Admin or Member. Needs deployment: cancel, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
deploymentIdrequired | path | string | The Deployment's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl -X POST https://cloudgate.octabyte.app/backend/deployments/Wvn8FY3seANNJKRKzcS8C/stop-run \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Build a held push now
POST/deployments/{deploymentId}/build-now
"Build now with saved settings": releases a build a push held for a plan into the queue at once. 200, like cancel: it updates the Deployment named in its path and inserts nothing.
Who can call it: Owner, Admin or Member. Needs deployment: create, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
deploymentIdrequired | path | string | The Deployment's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl -X POST https://cloudgate.octabyte.app/backend/deployments/Wvn8FY3seANNJKRKzcS8C/build-now \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"List Deployments for a Compose stack
GET/compose/{composeId}/deployments
A compose stack's deployments.
Who can call it: Owner, Admin or Member. Needs deployment: read, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
composeIdrequired | path | string | The Compose stack's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl https://cloudgate.octabyte.app/backend/compose/4Eo3MNRPQbdBs6dZEDtLs/deployments \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Deploy a Compose stack
POST/compose/{composeId}/deployments
Who can call it: Owner, Admin or Member. Needs deployment: create, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
composeIdrequired | path | string | The Compose stack's id. |
Request body
| Field | Type | Notes |
|---|---|---|
title | string | Not empty. |
description | string |
Responses
201Created- The result, as JSON.
- Refusals
400Validation failed;detailsnames each field;401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl -X POST https://cloudgate.octabyte.app/backend/compose/4Eo3MNRPQbdBs6dZEDtLs/deployments \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID" \
-H "content-type: application/json" \
-d '{
"title": "example",
"description": "Storefront for Northwind Labs"
}'List Deployments for a schedule
GET/schedules/{scheduleId}/deployments
Who can call it: Owner, Admin or Member. Needs deployment: read, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
scheduleIdrequired | path | string | The schedule's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl https://cloudgate.octabyte.app/backend/schedules/KZgsRefva9B2gpXrY58oU/deployments \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"List Deployments for a volume backup
GET/volume-backups/{volumeBackupId}/deployments
A volume backup's run history.
Who can call it: Owner, Admin or Member. Needs deployment: read, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
volumeBackupIdrequired | path | string | The volume backup's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl https://cloudgate.octabyte.app/backend/volume-backups/DkBVnhDCBhHPsCHtsXH8k/deployments \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Get a Deployment
GET/deployments/{deploymentId}
One Deployment's status and times: pending, running, done, error (failed), cancelled or held, and when it was recorded, started and finished. The Cloudgate CLI asks it while following the Deployment log, whose stream never closes by itself.
Who can call it: Owner, Admin or Member. Needs deployment: read, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
deploymentIdrequired | path | string | The Deployment's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
| Field | Type | Notes |
|---|---|---|
deploymentIdalways | string | |
statusalways | string | One of pending, running, done, error, cancelled, held. |
createdAtalways | string | |
startedAtalways | string or null | |
finishedAtalways | string or null |
curl https://cloudgate.octabyte.app/backend/deployments/Wvn8FY3seANNJKRKzcS8C \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Read a Deployment log
GET/deployments/{deploymentId}/logs
The tail of a deployment's log file.
Who can call it: Owner, Admin or Member. Needs deployment: read, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
deploymentIdrequired | path | string | The Deployment's id. |
tail | query | integer | 1 to 10000. Default 100. |
Responses
200OK- The deployment's log file, most recent
taillines last. - Refusals
400Validation failed;detailsnames each field;401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl https://cloudgate.octabyte.app/backend/deployments/Wvn8FY3seANNJKRKzcS8C/logs \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Preview deployments
List preview deployments for an Application
GET/applications/{applicationId}/preview-deployments
An application's preview deployments.
Who can call it: Owner, Admin or Member. Needs deployment: read, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
applicationIdrequired | path | string | The Application's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl https://cloudgate.octabyte.app/backend/applications/j9ct9tCzxUD9FjoxV2gtc/preview-deployments \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Request a preview
POST/applications/{applicationId}/preview-deployments
Asks for a Requested preview of a branch. 201 with the preview, its printed link and the queued Deployment's id.
Who can call it: Owner, Admin or Member. Needs deployment: create, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
applicationIdrequired | path | string | The Application's id. |
Request body
| Field | Type | Notes |
|---|---|---|
branchrequired | string | 1 to 255 characters. Matches ^(?!-)(?!.*\.\.)[^\s\x00-\x1f\x7f~^:?*[\\]+$. |
ttlMinutes | integer | At least 1. |
Responses
201Created- The result, as JSON.
- Refusals
400Validation failed;detailsnames each field;401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl -X POST https://cloudgate.octabyte.app/backend/applications/j9ct9tCzxUD9FjoxV2gtc/preview-deployments \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID" \
-H "content-type: application/json" \
-d '{
"branch": "main"
}'Extend a preview deployment
POST/preview-deployments/{previewDeploymentId}/extend
Moves a Requested preview's expiry to now plus the TTL.
Who can call it: Owner, Admin or Member. Needs deployment: create, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
previewDeploymentIdrequired | path | string | The preview deployment's id. |
Request body
| Field | Type | Notes |
|---|---|---|
ttlMinutes | integer | At least 1. |
Responses
200OK- The result, as JSON.
- Refusals
400Validation failed;detailsnames each field;401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl -X POST https://cloudgate.octabyte.app/backend/preview-deployments/CCUrFwSypmsMVXBphPohH/extend \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID" \
-H "content-type: application/json" \
-d '{
"ttlMinutes": 1
}'Get a preview deployment
GET/preview-deployments/{previewDeploymentId}
One preview deployment.
Who can call it: Owner, Admin or Member. Needs deployment: read, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
previewDeploymentIdrequired | path | string | The preview deployment's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl https://cloudgate.octabyte.app/backend/preview-deployments/CCUrFwSypmsMVXBphPohH \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Delete a preview deployment
DELETE/preview-deployments/{previewDeploymentId}
Tears a pull-request preview down without waiting for its PR to close, or expires a Requested preview now and answers at once: the expiry sweep tears it down within the minute.
Who can call it: Owner, Admin or Member. Needs deployment: cancel, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
previewDeploymentIdrequired | path | string | The preview deployment's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl -X DELETE https://cloudgate.octabyte.app/backend/preview-deployments/CCUrFwSypmsMVXBphPohH \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Redeploy a preview deployment
POST/preview-deployments/{previewDeploymentId}/redeploy
Re-enqueues the preview's build, and answers the queued Deployment.
Who can call it: Owner, Admin or Member. Needs deployment: create, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
previewDeploymentIdrequired | path | string | The preview deployment's id. |
Request body
| Field | Type | Notes |
|---|---|---|
title | string | |
description | string |
Responses
201Created- The result, as JSON.
- Refusals
400Validation failed;detailsnames each field;401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl -X POST https://cloudgate.octabyte.app/backend/preview-deployments/CCUrFwSypmsMVXBphPohH/redeploy \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID" \
-H "content-type: application/json" \
-d '{
"title": "example",
"description": "Storefront for Northwind Labs"
}'Rollbacks
List rollback snapshots for an Application
GET/applications/{applicationId}/rollbacks
Rollback snapshots are listed per application, like deployments.
Who can call it: Owner, Admin or Member. Needs deployment: read, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
applicationIdrequired | path | string | The Application's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl https://cloudgate.octabyte.app/backend/applications/j9ct9tCzxUD9FjoxV2gtc/rollbacks \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Roll back to a snapshot
POST/rollbacks/{rollbackId}/rollback
Rolls the application back onto this snapshot. The service answers which (deploymentId).
Who can call it: Owner, Admin or Member. Needs deployment: create, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
rollbackIdrequired | path | string | The rollback's id. |
Responses
202Accepted- The Rollback is under way.
deploymentIdis the queued Deployment of a static site on AWS, whose log shows it; null on a Server, where Swarm converges the service onto the snapshot's image. - Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
| Field | Type | Notes |
|---|---|---|
deploymentIdalways | string or null |
curl -X POST https://cloudgate.octabyte.app/backend/rollbacks/vftW7UyFnqJd4HiCMS7Xv/rollback \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Delete a rollback snapshot
DELETE/rollbacks/{rollbackId}
Deletes a snapshot: its preserved image, then its row.
Who can call it: Owner, Admin or Member. Needs deployment: create, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
rollbackIdrequired | path | string | The rollback's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl -X DELETE https://cloudgate.octabyte.app/backend/rollbacks/vftW7UyFnqJd4HiCMS7Xv \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Schedules
List schedules
GET/schedules
Who can call it: Owner, Admin or Member. Needs schedule: read, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
scheduleTyperequired | query | string | One of application, compose, server, cloudgate-server. |
serviceId | query | string |
Responses
200OK- The result, as JSON.
- Refusals
400Validation failed;detailsnames each field;401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches. The error body.
curl "https://cloudgate.octabyte.app/backend/schedules?scheduleType=example" \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Create a schedule
POST/schedules
Who can call it: Owner, Admin or Member. Needs schedule: create, which a custom role can also grant.
Request body
| Field | Type | Notes |
|---|---|---|
namerequired | string | Not empty. |
description | string | |
cronExpressionrequired | string | Not empty. |
scheduleType | string | One of application, compose, server, cloudgate-server. Default "application". |
serviceId | string | |
serviceName | string | |
shellType | string | One of bash, sh. Default "bash". |
command | string | |
script | string | |
enabled | boolean | |
timezone | string |
Responses
201Created- The result, as JSON.
- Refusals
400Validation failed;detailsnames each field;401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches. The error body.
curl -X POST https://cloudgate.octabyte.app/backend/schedules \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID" \
-H "content-type: application/json" \
-d '{
"name": "storefront",
"cronExpression": "0 3 * * *"
}'Get a schedule
GET/schedules/{id}
Who can call it: Owner, Admin or Member. Needs schedule: read, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
idrequired | path | string | The schedule's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl https://cloudgate.octabyte.app/backend/schedules/RAU6yAYUXFRdXdPLyLoPC \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Update a schedule
PATCH/schedules/{id}
Who can call it: Owner, Admin or Member. Needs schedule: update, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
idrequired | path | string | The schedule's id. |
Request body
| Field | Type | Notes |
|---|---|---|
name | string | Not empty. |
description | string or null | |
cronExpression | string | Not empty. |
serviceName | string or null | |
shellType | string | One of bash, sh. |
command | string | |
script | string or null | |
enabled | boolean | |
timezone | string or null |
Responses
200OK- The result, as JSON.
- Refusals
400Validation failed;detailsnames each field;401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl -X PATCH https://cloudgate.octabyte.app/backend/schedules/RAU6yAYUXFRdXdPLyLoPC \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID" \
-H "content-type: application/json" \
-d '{
"name": "storefront",
"description": "Storefront for Northwind Labs",
"cronExpression": "0 3 * * *"
}'Delete a schedule
DELETE/schedules/{id}
Who can call it: Owner, Admin or Member. Needs schedule: delete, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
idrequired | path | string | The schedule's id. |
Responses
200OK- The result, as JSON.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl -X DELETE https://cloudgate.octabyte.app/backend/schedules/RAU6yAYUXFRdXdPLyLoPC \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Run a schedule now
POST/schedules/{id}/run
Who can call it: Owner, Admin or Member. Needs schedule: create, which a custom role can also grant.
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
idrequired | path | string | The schedule's id. |
Responses
204No content- Done. The answer has no body.
- Refusals
401No key, or the key is not valid;403Your role does not allow it, or you were not granted what it touches;404Nothing with that id in this Organization. The error body.
curl -X POST https://cloudgate.octabyte.app/backend/schedules/RAU6yAYUXFRdXdPLyLoPC/run \
-H "x-api-key: $CLOUDGATE_KEY" \
-H "x-organization-id: $CLOUDGATE_ORG_ID"Something missing or wrong on this page? Email support@octabyte.io, or start a free trial and try it in the console.