Groundfloor Docs

Coderunners API

Create, upload, deploy, run, and promote standalone coderunners — the deploy path (D-061).

Base path: /v1/workspaces/{workspace_id}/coderunners

Coderunner is the deploy path for functions, jobs, schedules, and services. No App is required. See Developers for gf deploy and MCP.

See also: Customer Portal — Coderunner · Coderunner overview

Auth

All routes: Authorization: Bearer <JWT>. Forwarded to Coderunner with x-client-key (workspace id) and x-userid.

Mint a short-lived CR JWT:

POST /v1/workspaces/{workspace_id}/coderunner/dev-token

Permission: read

List / create

MethodPathPermissionNotes
GET/v1/workspaces/{workspace_id}/coderunnersreadQuery: environment_id, app_id
POSTsamewriteBody: title, runtime, workload_type, optional environment_id, app_id, schedule, slug

workload_type: function | job | schedule | service.

Get / update / delete / status

MethodPathPermission
GET…/coderunners/{id}read
PATCH…/coderunners/{id}write
DELETE…/coderunners/{id}delete
GET…/coderunners/{id}/statusread

Versions and upload

MethodPathPurposePermission
POST…/{id}/uploadMultipart ZIP → new versionwrite
GET…/{id}/versionsList versionsread
GET…/{id}/versions/{version_id}Get versionread
GET…/{id}/versions/{version_id}/downloadDownload packageread
DELETE…/{id}/versions/{version_id}Delete versionwrite
POST…/{id}/definitionEnsure upstream definitionwrite

Deploy and run

POST /v1/workspaces/{workspace_id}/coderunners/{id}/deploy

Body (optional): version_id, cpu, memory, envVariable, replicas, schedule, suspended.

POST /v1/workspaces/{workspace_id}/coderunners/{id}/run

Body (optional): payload, deployment_id, deployment_url, version_id.

MethodPathPermission
GET…/{id}/deploymentread
GET…/{id}/deployments/{deployment_id}read
DELETE…/{id}/deployments/{deployment_id}write
GET…/{id}/logs/{job_id}read

Permission for deploy/run: write

Git source

MethodPathPermission
GET / PUT / PATCH / DELETE…/{id}/git-sourceread / write
POST…/{id}/git-source/deploywrite (202)

PUT body: repo_url, ref, optional subdir, secret_key (workspace secret for private repos). Webhook: POST /v1/webhooks/git/{source_id}.

Domains

Custom domains for App-bound services:

MethodPathPermission
GET / POST…/{id}/domainsread / write
DELETE / POST…/{id}/domains/{domain} / …/verifywrite

Standalone services use the deployment upstream URL.

Compare and promote

GET /v1/workspaces/{workspace_id}/coderunners/compare?source_environment_id=&target_environment_id=
POST /v1/workspaces/{workspace_id}/coderunners/promote

Promote pairs[]: source_coderunner_id, optional target_coderunner_id / version_id, optional dry_run.

Runners and executions

MethodPathPurposePermission
GET/v1/workspaces/{workspace_id}/runnersList deploymentsread
GET…/runners/{runner_id}Get runnerread
POST…/runners/{runner_id}/restartRestartwrite
GET/v1/workspaces/{workspace_id}/executionsList executionsread