Skip to content

Get a workspace property option

GET/api/v2/workspaces/{slug}/work-item-properties/{property_id}/options/{pk}/

Retrieve one option on a workspace-level OPTION property. Use it to resolve a stored option id back to a display name, or to confirm an option still exists before writing it onto a work item.

Reads work in either work item type mode — only writes are mode-gated. See Work item type modes.

Path Parameters

slug:requiredstring

The workspace slug. It appears in your Plane URLs — in https://app.plane.so/my-team/projects/, the slug is my-team.

property_id:requiredstring (uuid)

The workspace-level property the option belongs to. See Workspace work item properties.

pk:requiredstring (uuid)

The option to retrieve.

The option is looked up within the property, so a valid option id under the wrong property_id is a 404 rather than a match. Deleted options are gone from this endpoint too — a soft-deleted option returns 404.

Scopes

workspaces.work_item_properties:read

Errors

StatusCodeCause
401unauthorizedMissing or invalid credentials.
403forbiddenYour role or token scope can't read this workspace's properties.
404resource_not_foundNo such workspace, workspace-level property, or option — or it's outside your tenant.
429rate_limitedThrottled. Honor the Retry-After header before retrying.
Get a property option
bash
curl -X GET \
  "https://api.plane.so/api/v2/workspaces/my-team/work-item-properties/9d0e1f3b-6a72-4c85-9e4d-2b7f1a6c8d54/options/c31a7e04-5f6b-4d29-8a13-7e0c2b9f4a65/" \
  -H "X-Api-Key: $PLANE_API_KEY"
Response200
json
{
  "id": "c31a7e04-5f6b-4d29-8a13-7e0c2b9f4a65",
  "name": "Production",
  "description": "Reported on live customer traffic",
  "is_default": true,
  "sort_order": 10000,
  "external_id": null,
  "external_source": null
}
Response404
json
{
  "type": "https://api.plane.so/errors/resource_not_found",
  "title": "Not Found",
  "status": 404,
  "code": "resource_not_found",
  "detail": "The requested resource was not found."
}

Fetching every option at once

Reading the property returns its options inline, so one property read is cheaper than a fan-out of option reads when you need the whole set. Reach for this endpoint when you hold a single option id and want just that row.