List services
Includes archived services. Legacy requests without limit/cursor return the complete list.
Kept in memory for this page. Requests go through this documentation site to the live Openstead API and can change your workspace. Use a read-only key to explore read operations.
Includes archived services. Legacy requests without limit/cursor return the complete list.
Workspace-scoped rnv_ API key. Read scope allows GET; write scope is additionally constrained by current membership, role, email verification, expiry and workspace MFA policy.
In: header
Path Parameters
Workspace UUID; it must match the bearer key scope.
uuidQuery Parameters
Page size. Supplying limit or cursor enables pagination for legacy unbounded lists.
1 <= value <= 200100Opaque nextCursor returned by the previous page. Reuse with the same endpoint and query; do not parse or construct it.
Header Parameters
Optional correlation identifier; invalid values are replaced. The accepted/generated value is returned in X-Request-ID and error body requestId. This is not an idempotency key.
^[A-Za-z0-9][A-Za-z0-9._-]*$length <= 64Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://api.openstead.tech/api/v1/workspaces/497f6eca-6276-4993-bfeb-53cbbbba6f08/services" \ -H "Authorization: Bearer <OPENSTEAD_API_KEY>"{ "page": { "hasMore": true, "limit": 1, "nextCursor": "string" }, "services": [ { "archived": true, "configuration": { "autoDeploy": "off", "backupEnabled": true, "backupRetentionDays": 7, "branch": "main", "buildCommand": "", "buildMethod": "railpack", "cacheProfile": "none", "databaseName": "", "databaseUser": "", "databaseVersion": "16", "description": "", "dockerContext": ".", "dockerfilePath": "Dockerfile", "evictionPolicy": "allkeys-lru", "healthCheckPath": "", "ignorePaths": [], "image": "", "includePaths": [], "ipAllowList": [], "maintenance": false, "maintenancePage": "", "maxConcurrency": 1, "maxReplicas": 3, "maxRetries": 3, "minReplicas": 1, "notifications": "workspace", "plan": "free", "platformDomainEnabled": true, "port": 8000, "preDeployCommand": "", "previewExpiryHours": 72, "previewMode": "off", "privateNetworking": true, "publishDirectory": "dist", "region": "auto", "registryId": "", "replicas": 1, "repository": "", "rootDirectory": "", "runtime": "auto", "scaling": "manual", "schedule": "0 * * * *", "sourceType": "repository", "startCommand": "", "targetCpu": 70, "targetMemory": 80, "timeoutSeconds": 3600, "timezone": "UTC" }, "createdAt": "2019-08-24T14:15:22Z", "deletedAt": "2019-08-24T14:15:22Z", "deletionRequestedAt": "2019-08-24T14:15:22Z", "deploymentId": "a73c85a1-d857-491e-a6b2-51dce05de7a2", "deploymentUpdatedAt": "2019-08-24T14:15:22Z", "displayStatus": "string", "environmentGroupIds": [ "92fbde13-991c-42dc-b79d-8aae32b12bd2" ], "environmentId": "19f5cc2e-7657-437a-9268-83cd3d563563", "estimatedMonthly": { "ngn": 0, "priced": true, "usd": 0 }, "healthCheckedAt": "2019-08-24T14:15:22Z", "healthStatus": "ready", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "internalHost": "string", "kind": "static", "lifecycleStatus": "string", "liveDeploymentId": "4f10cf15-3de3-4eba-b208-7afcb8afd71d", "name": "string", "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8", "runtimeDetail": "string", "status": "string", "updatedAt": "2019-08-24T14:15:22Z", "url": "string" } ]}Delete an empty project DELETE
Admin or owner required. Move/delete services and scoped environment groups first. confirm must exactly match the project name.
Create a service POST
Creation saves configuration by default. deploy:true also queues real execution if enabled and authorized. Project placement requires an environment belonging to that project. Protected environments require admin access. API keys cannot grant paid-compute or automatic-payment consent.