update_dashboard_details¶
- DashboardsApi.update_dashboard_details(dashboard_id, role_id, update_dashboard_request, content_type=None, _request_timeout=None, _request_auth=None, _content_type=None, _headers=None, _host_index=0)¶
Update dashboard details
Updates dashboard metadata and widgets. Caller needs dashboards.manage on role_id and at least editor AccessType on the dashboard. Widgets is required. On success returns Message “Successfully updated dashboard metadata” with DashboardId and CustomUrlPath ({CurrentSlug}-{CustomId}, for example SalesOverview-3c4d5e6f). Renaming updates CurrentSlug/CustomUrlPath. QuickSight widget Configuration must use QuicksightDashboardId.Value. This Lambda maps InvalidInputException to HTTP 422, UnauthorizedUserException (resource ACL) to HTTP 401, RequestValidationError to HTTP 400, and unhandled/GenericFailure to HTTP 500.
- Parameters:
dashboard_id (str) – DashboardId UUID or {CurrentSlug}-{CustomId} CustomUrlPath value. (required)
role_id (str) – Amorphic role ID used to authorize the request. Must belong to the user and hold dashboards.manage. (required)
update_dashboard_request (UpdateDashboardRequest) – (required)
content_type (str) – Must be application/json.
_request_timeout (int, tuple(int, int), optional) – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.
_request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.
_content_type (str, Optional) – force content-type for the request.
_headers (dict, optional) – set to override the headers for a single request; this effectively ignores the headers in the spec for a single request.
_host_index (int, optional) – set to override the host_index for a single request; this effectively ignores the host_index in the spec for a single request.
- Return type:
- Returns:
Returns the result object.
Request and Response Examples¶
HTTP: PUT /dashboards/{dashboard_id}
Parameter examples¶
Name |
In |
Example |
|---|---|---|
|
header |
|
|
path |
|
|
header |
|
Request¶
Request / response example
{
"DashboardName": "Sales Overview v2",
"DashboardDescription": "Updated monthly sales KPIs",
"Keywords": [
"sales"
],
"Widgets": [
{
"RefId": "qs-widget-1",
"Version": "1",
"WidgetServiceCategory": "quicksight",
"Configuration": {
"QuicksightDashboardId": {
"Value": "11111111-2222-3333-4444-555555555555"
}
}
}
]
}
Success (HTTP 200)¶
Dashboard updated successfully.
Request / response example
{
"Message": "Successfully updated dashboard metadata",
"DashboardId": "b1e6c2a0-9f4d-4c7a-8f2e-1a2b3c4d5e6f",
"CustomUrlPath": "SalesOverview-3c4d5e6f"
}
Errors¶
Documented error codes: AUTH-1012, AUTH-1001, AUTH-1030, IPV-1002, DASH-1006, DASH-1007, DB-1002.
HTTP 400
RequestValidationError (Pydantic) for body/header constraints. Body is {“Message”: “<CODE> - <text>”} (IPV-*).
HTTP 401
Insufficient resource AccessType (need editor or higher). Body is {“Message”: “AUTH-1012 - …”}.
HTTP 422
InvalidInputException. Codes include AUTH-1001, AUTH-1030 (missing dashboards.manage), IPV-1002, DASH-1006/1007.
missingQuicksightId
{
"Message": "DASH-1007 - Quicksight Dashboard ID is a mandatory field for the QuickSight widget"
}
HTTP 500
Backend/generic failure (for example DB-1002 update failures). Body is {“Message”: “<CODE> - <text>”}.