Endpoint#
| Property | Value |
|---|
| Type | mutation |
| Method | POST |
| Path | /api/external/v1/update_project_description |
| Handler | OperatelyWeb.Api.Mutations.UpdateProjectDescription |
Authentication#
- Requires a valid API token.
- Requires a write-enabled token.
- Read-only tokens return
403.
| Field | Type | Required | Nullable | Default |
|---|
project_id | id primitive (encoded as string) | Yes | No | - |
description | json primitive (encoded as string) | Yes | No | - |
Outputs#
| Field | Type | Required | Nullable |
|---|
project | project object | Yes | No |
cURL Example#
Copiedcurl --request POST \
--url "https://app.operately.com/api/external/v1/update_project_description" \
--header "Authorization: Bearer ${OPERATELY_API_TOKEN}" \
--header "Content-Type: application/json" \
--data '{"description":"value", "project_id":"value"}'
Response Example#
{
"project": {
"access_levels": "<access_levels>",
"archived_at": "2026-01-01",
"champion": "<person>",
"closed_at": "2026-01-01",
"contributors": [
"<project_contributor>"
],
"description": "value",
"goal": "<goal>",
"goal_id": "value",
"id": "value",
"inserted_at": "2026-01-01",
"is_archived": true,
"is_outdated": true,
"is_pinned": true,
"key_resources": [
"<project_key_resource>"
],
"last_check_in": "<project_check_in>",
"milestones": [
"<milestone>"
],
"milestones_ordering_state": [
"value"
],
"my_role": "value",
"name": "value",
"next_check_in_scheduled_at": "2026-01-01",
"next_milestone": "<milestone>",
"next_update_scheduled_at": "2026-01-01",
"notifications": [
"<notification>"
],
"permissions": "<project_permissions>",
"potential_subscribers": [
"<subscriber>"
],
"privacy": "value",
"retrospective": "<project_retrospective>",
"reviewer": "<person>",
"space": "<space>",
"space_id": "value",
"state": "active",
"status": "value",
"subscription_list": "<subscription_list>",
"success_status": "achieved",
"task_statuses": [
"<task_status>"
],
"tasks_kanban_state": "value",
"timeframe": "<timeframe>",
"updated_at": "2026-01-01"
}
}