Update dashboard
Update a dashboard by ID.
Authorization rules (ownership is the sole source of truth — a dashboard is
org-wide exactly when owner_principal_id is the org principal):
- Org-wide dashboards are communal: any org member can update all fields, rename
included. Retiring one to a personal dashboard (an
accessibilityrequest away fromorganization) is admin-only, since it takes the dashboard away from the whole org. - Personal (user-owned) dashboards: the owner and org admins can update all fields, name included. Any other caller receives 401 Unauthorized. An admin rename that lands on a (name, owner) pair the OWNER already holds still returns 409 Conflict via the unique constraint, which keys on the dashboard’s owner rather than on who performs the update.
A definition write must carry base_revision (the revision the caller loaded). If the
stored definition has advanced since, the write is rejected with 409
RobotoDashboardRevisionConflictException, carrying the server’s current record so the
caller can resolve without a second round trip. The check runs under the row lock in the
persistence layer, not against the authorization fetch below.
Access control
- Restricted tokens need the API scope
api.everything_else
/v1/metrics/dashboards/id/{dashboard_id}AuthorizationBearer token · headerrequireddashboard_idstringrequiredX-Roboto-Org-IdstringX-Roboto-User-Idstringapplication/jsonaccessibilityDashboardAccessibility | nullShow propertiesHide properties
stringnullbase_revisioninteger | nullShow propertiesHide properties
integernulldashboard_definitionobject | nullShow propertiesHide properties
objectnullnamestring | nullShow propertiesHide properties
stringnullOK
datanullrequiredThrown when the conversation context (messages, system prompt, tool results) exceeds the model's context window limit.
The token estimate and the model's context limit are not carried on the exception, so a caller cannot read usage numbers off it.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown when authentication fails
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown if an operation would exceed a user or org level limit.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown if a user is attempting to perform an action unrecognized by the Roboto platform.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown if there is a conflict between a resource you're creating and another existing resource
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown if a resource is missing or expired.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullAn error the platform reported that this SDK release cannot resolve to a specific exception class.
Reported for an element of a :py:class:~roboto.http.BatchResponse whose error names a code this release
defines no class for, or that arrived without a code, without a message, or as text that is not an
error envelope at all. It carries whatever code and message the platform sent, so a caller handling the
failure still learns what went wrong; when no message could be read, the message is the error's raw text.
The error envelope carries no status code, so http_status_code reports the 500 inherited from
:py:class:RobotoDomainException rather than the status the failure actually had.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown by shimmed out APIs which have not yet been implemented
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown when a service is unavailable, such as when it's under heavy load and can't accept new requests. This is expected to be transient and ought to be retried.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown when the service times out while processing a request. This is exepcted to be transient and ought to be retried.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | nullThrown when the server cannot complete the request because the response payload exceeds a storage or transport capacity limit (e.g., Lambda response size). This is NOT expected to be transient and should NOT be retried.
errorobjectShow propertiesHide properties
error_codenumbermessagestringstack_tracestring | null