Skip to main content
POST /api/v1/cloud/environments/{environment_id}/work/{work_id} Updates the string-only metadata map on a work item. This endpoint uses merge-patch semantics: string values upsert keys and null values delete keys.

Path parameters

ParameterTypeDescription
environment_idstringEnvironment ID with the env_ prefix
work_idstringWork item ID with the work_ prefix

Headers

HeaderRequiredDescription
AuthorizationYesBearer $QODER_PAT
Content-TypeYesapplication/json

Request body

FieldTypeRequiredDescription
metadataobjectNoMerge patch for work metadata. String values upsert keys; null deletes keys. Omit to return the current item unchanged

Example request

curl -X POST "https://api.qoder.com/api/v1/cloud/environments/env_019e64e01a137caf953ac2ac7b42ec5c/work/work_019f3be4fd2475d9a784bf2c739e1194" \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{
    "metadata": {
      "worker": "byoc-worker-01",
      "obsolete_key": null
    }
  }'

Example response

HTTP 200 OK
{
  "id": "work_019f3be4fd2475d9a784bf2c739e1194",
  "type": "work",
  "environment_id": "env_019e64e01a137caf953ac2ac7b42ec5c",
  "data": {
    "type": "session",
    "id": "sess_019f3be3fa66750bb9a1fbcde85b5fe1"
  },
  "state": "active",
  "created_at": "2026-07-01T08:15:01Z",
  "acknowledged_at": "2026-07-01T08:15:04Z",
  "started_at": "2026-07-01T08:15:06Z",
  "latest_heartbeat_at": "2026-07-01T08:16:06.120394Z",
  "stop_requested_at": null,
  "stopped_at": null,
  "metadata": {
    "job": "daily-report",
    "worker": "byoc-worker-01"
  }
}

Response fields

Returns the updated Work item object.

Errors

HTTPTypeTrigger
400invalid_request_errorRequest body is not valid JSON
400invalid_request_errorA metadata value is neither string nor null
400invalid_request_errorThe Environment is not self_hosted
401authentication_errorPAT invalid or expired
403permission_errorNot authorized for this operation
404not_found_errorEnvironment or work item not found
See Errors for the full error envelope.

Cloud environment setup

Choose the container, network, and dependencies your agent runs in.