generated: '2026-07-15' method: generated source: openapi/grafana-api.yml, openapi/grafana-openapi.yml description: Recommended x-agentic-access execution contracts, classified heuristically from the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind audience per deployment. See research/curity/agentic-governance/. summary: operations: 378 by_action_class: acting: 204 connected: 174 by_consequence: write: 156 read: 174 physical: 24 safety-critical: 24 human_in_the_loop_required: 24 operations: - path: /dashboards/db method: post operationId: createUpdateDashboard x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /dashboards/uid/{uid} method: get operationId: getDashboardByUid x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /dashboards/uid/{uid} method: delete operationId: deleteDashboardByUid x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /search method: get operationId: searchDashboards x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources method: get operationId: getDataSources x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources method: post operationId: createDataSource x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/{id} method: get operationId: getDataSourceById x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/{id} method: put operationId: updateDataSource x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/{id} method: delete operationId: deleteDataSourceById x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/uid/{uid} method: get operationId: getDataSourceByUid x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/alert-rules method: get operationId: getAlertRules x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/alert-rules method: post operationId: createAlertRule x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/alert-rules/{uid} method: get operationId: getAlertRule x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/alert-rules/{uid} method: put operationId: updateAlertRule x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/alert-rules/{uid} method: delete operationId: deleteAlertRule x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/contact-points method: get operationId: getContactPoints x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/contact-points method: post operationId: createContactPoint x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /admin/users method: post operationId: adminCreateUser x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /users method: get operationId: searchUsers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users/{id} method: get operationId: getUserById x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users/{id} method: put operationId: updateUser x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /user method: get operationId: getCurrentUser x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /orgs method: get operationId: searchOrgs x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /orgs method: post operationId: createOrg x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /orgs/{orgId} method: get operationId: getOrgById x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /orgs/{orgId} method: put operationId: updateOrg x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /orgs/{orgId} method: delete operationId: deleteOrg x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /orgs/{orgId}/users method: get operationId: getOrgUsers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /orgs/{orgId}/users method: post operationId: addOrgUser x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /folders method: get operationId: getFolders x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /folders method: post operationId: createFolder x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /folders/{uid} method: get operationId: getFolderByUid x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /folders/{uid} method: put operationId: updateFolder x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /folders/{uid} method: delete operationId: deleteFolder x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /annotations method: get operationId: getAnnotations x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /annotations method: post operationId: createAnnotation x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /annotations/{id} method: delete operationId: deleteAnnotation x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /teams/search method: get operationId: searchTeams x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /teams method: post operationId: createTeam x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /teams/{id} method: get operationId: getTeamById x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /teams/{id} method: put operationId: updateTeam x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /teams/{id} method: delete operationId: deleteTeam x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /teams/{id}/members method: get operationId: getTeamMembers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /teams/{id}/members method: post operationId: addTeamMember x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources method: get operationId: getDataSources x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources method: post operationId: addDataSource x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/correlations method: get operationId: getCorrelations x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/id/{name} method: get operationId: getDataSourceIdByName x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/name/{name} method: get operationId: getDataSourceByName x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/name/{name} method: delete operationId: deleteDataSourceByName x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/proxy/uid/{uid}/{datasource_proxy_route} method: get operationId: datasourceProxyGETByUIDcalls x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/proxy/uid/{uid}/{datasource_proxy_route} method: post operationId: datasourceProxyPOSTByUIDcalls x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/proxy/uid/{uid}/{datasource_proxy_route} method: delete operationId: datasourceProxyDELETEByUIDcalls x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/proxy/{id}/{datasource_proxy_route} method: get operationId: datasourceProxyGETcalls x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/proxy/{id}/{datasource_proxy_route} method: post operationId: datasourceProxyPOSTcalls x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/proxy/{id}/{datasource_proxy_route} method: delete operationId: datasourceProxyDELETEcalls x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/uid/{sourceUID}/correlations method: get operationId: getCorrelationsBySourceUID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/uid/{sourceUID}/correlations method: post operationId: createCorrelation x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/uid/{sourceUID}/correlations/{correlationUID} method: get operationId: getCorrelation x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/uid/{sourceUID}/correlations/{correlationUID} method: patch operationId: updateCorrelation x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/uid/{uid} method: get operationId: getDataSourceByUID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/uid/{uid} method: put operationId: updateDataSourceByUID x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/uid/{uid} method: delete operationId: deleteDataSourceByUID x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/uid/{uid}/correlations/{correlationUID} method: delete operationId: deleteCorrelation x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/uid/{uid}/health method: get operationId: checkDatasourceHealthWithUID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/uid/{uid}/resources/{datasource_proxy_route} method: get operationId: callDatasourceResourceWithUID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/{id} method: get operationId: getDataSourceByID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/{id} method: put operationId: updateDataSourceByID x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/{id} method: delete operationId: deleteDataSourceByID x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/{id}/health method: get operationId: checkDatasourceHealthByID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/{id}/resources/{datasource_proxy_route} method: get operationId: callDatasourceResourceByID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /ds/query method: post operationId: queryMetricsWithExpressions x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /folders method: get operationId: getFolders x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /folders method: post operationId: createFolder x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /folders/id/{folder_id} method: get operationId: getFolderByID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /folders/{folder_uid} method: get operationId: getFolderByUID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /folders/{folder_uid} method: put operationId: updateFolder x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /folders/{folder_uid} method: delete operationId: deleteFolder x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /folders/{folder_uid}/counts method: get operationId: getFolderDescendantCounts x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /folders/{folder_uid}/move method: post operationId: moveFolder x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /folders/{folder_uid}/permissions method: get operationId: getFolderPermissionList x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /folders/{folder_uid}/permissions method: post operationId: updateFolderPermissions x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /admin/settings method: get operationId: adminGetSettings x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /admin/stats method: get operationId: adminGetStats x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /annotations method: get operationId: getAnnotations x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /annotations method: post operationId: postAnnotation x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /annotations/graphite method: post operationId: postGraphiteAnnotation x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /annotations/mass-delete method: post operationId: massDeleteAnnotations x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /annotations/tags method: get operationId: getAnnotationTags x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /annotations/{annotation_id} method: get operationId: getAnnotationByID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /annotations/{annotation_id} method: put operationId: updateAnnotation x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /annotations/{annotation_id} method: delete operationId: deleteAnnotationByID x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /annotations/{annotation_id} method: patch operationId: patchAnnotation x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /library-elements method: get operationId: getLibraryElements x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /library-elements method: post operationId: createLibraryElement x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /library-elements/name/{library_element_name} method: get operationId: getLibraryElementByName x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /library-elements/{library_element_uid} method: get operationId: getLibraryElementByUID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /library-elements/{library_element_uid} method: delete operationId: deleteLibraryElementByUID x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /library-elements/{library_element_uid} method: patch operationId: updateLibraryElement x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /library-elements/{library_element_uid}/connections/ method: get operationId: getLibraryElementConnections x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /query-history method: get operationId: searchQueries x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /query-history method: post operationId: createQuery x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /query-history/star/{query_history_uid} method: post operationId: starQuery x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /query-history/star/{query_history_uid} method: delete operationId: unstarQuery x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /query-history/{query_history_uid} method: delete operationId: deleteQuery x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /query-history/{query_history_uid} method: patch operationId: patchQueryComment x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /orgs method: get operationId: searchOrganizations x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /orgs method: post operationId: createOrg x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /orgs/name/{org_name} method: get operationId: getOrgByName x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /orgs/{org_id} method: get operationId: getOrgByID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /orgs/{org_id} method: put operationId: updateOrg x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /orgs/{org_id} method: delete operationId: deleteOrgByID x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /orgs/{org_id}/address method: put operationId: updateOrgAddress x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /orgs/{org_id}/users method: get operationId: getOrgUsers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /orgs/{org_id}/users method: post operationId: addOrgUser x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /orgs/{org_id}/users/search method: get operationId: searchOrgUsers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /orgs/{org_id}/users/{user_id} method: delete operationId: removeOrgUser x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /orgs/{org_id}/users/{user_id} method: patch operationId: updateOrgUser x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org method: get operationId: getCurrentOrg x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /org method: put operationId: updateCurrentOrg x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org/address method: put operationId: updateCurrentOrgAddress x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org/invites method: get operationId: getPendingOrgInvites x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /org/invites method: post operationId: addOrgInvite x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org/invites/{invitation_code}/revoke method: delete operationId: revokeInvite x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /org/preferences method: get operationId: getOrgPreferences x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /org/preferences method: put operationId: updateOrgPreferences x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org/preferences method: patch operationId: patchOrgPreferences x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org/users method: get operationId: getOrgUsersForCurrentOrg x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /org/users method: post operationId: addOrgUserToCurrentOrg x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org/users/lookup method: get operationId: getOrgUsersForCurrentOrgLookup x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /org/users/{user_id} method: delete operationId: removeOrgUserForCurrentOrg x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org/users/{user_id} method: patch operationId: updateOrgUserForCurrentOrg x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /teams method: post operationId: createTeam x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /teams/search method: get operationId: searchTeams x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /teams/{team_id} method: get operationId: getTeamByID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /teams/{team_id} method: put operationId: updateTeam x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /teams/{team_id} method: delete operationId: deleteTeamByID x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /teams/{team_id}/members method: get operationId: getTeamMembers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /teams/{team_id}/members method: put operationId: setTeamMemberships x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /teams/{team_id}/members method: post operationId: addTeamMember x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /teams/{team_id}/members/{user_id} method: put operationId: updateTeamMember x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /teams/{team_id}/members/{user_id} method: delete operationId: removeTeamMember x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /teams/{team_id}/preferences method: get operationId: getTeamPreferences x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /teams/{team_id}/preferences method: put operationId: updateTeamPreferences x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /access-control/assignments/search method: post operationId: searchResult x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /datasources/uid/{uid}/lbac/teams method: get operationId: getTeamLBACRulesApi x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/uid/{uid}/lbac/teams method: put operationId: updateTeamLBACRulesApi x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/{dataSourceUID}/cache method: get operationId: getDataSourceCacheConfig x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /datasources/{dataSourceUID}/cache method: post operationId: setDataSourceCacheConfig x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/{dataSourceUID}/cache/clean method: post operationId: cleanDataSourceCache x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /datasources/{dataSourceUID}/cache/disable method: post operationId: disableDataSourceCache x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /datasources/{dataSourceUID}/cache/enable method: post operationId: enableDataSourceCache x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /access-control/roles method: get operationId: listRoles x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /access-control/roles method: post operationId: createRole x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/roles/{roleUID} method: get operationId: getRole x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /access-control/roles/{roleUID} method: put operationId: updateRole x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/roles/{roleUID} method: delete operationId: deleteRole x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/roles/{roleUID}/assignments method: get operationId: getRoleAssignments x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /access-control/roles/{roleUID}/assignments method: put operationId: setRoleAssignments x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/status method: get operationId: getAccessControlStatus x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /access-control/teams/roles/search method: post operationId: listTeamsRoles x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/teams/{teamId}/roles method: get operationId: listTeamRoles x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /access-control/teams/{teamId}/roles method: put operationId: setTeamRoles x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/teams/{teamId}/roles method: post operationId: addTeamRole x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/teams/{teamId}/roles/{roleUID} method: delete operationId: removeTeamRole x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/users/roles/search method: post operationId: listUsersRoles x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/users/{userId}/roles method: get operationId: listUserRoles x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /access-control/users/{userId}/roles method: put operationId: setUserRoles x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/users/{userId}/roles method: post operationId: addUserRole x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/users/{userId}/roles/{roleUID} method: delete operationId: removeUserRole x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/{resource}/description method: get operationId: getResourceDescription x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /access-control/{resource}/{resourceID} method: get operationId: getResourcePermissions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /access-control/{resource}/{resourceID} method: post operationId: setResourcePermissions x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/{resource}/{resourceID}/builtInRoles/{builtInRole} method: post operationId: setResourcePermissionsForBuiltInRole x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/{resource}/{resourceID}/teams/{teamID} method: post operationId: setResourcePermissionsForTeam x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /access-control/{resource}/{resourceID}/users/{userID} method: post operationId: setResourcePermissionsForUser x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /licensing/check method: get operationId: getStatus x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /licensing/custom-permissions method: get operationId: getCustomPermissionsReport x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /licensing/custom-permissions-csv method: get operationId: getCustomPermissionsCSV x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /licensing/refresh-stats method: get operationId: refreshLicenseStats x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /licensing/token method: get operationId: getLicenseToken x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /licensing/token method: post operationId: postLicenseToken x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /licensing/token method: delete operationId: deleteLicenseToken x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /licensing/token/renew method: post operationId: postRenewLicenseToken x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /reports method: get operationId: getReports x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /reports method: post operationId: createReport x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /reports/dashboards/{uid} method: get operationId: getReportsByDashboardUID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /reports/email method: post operationId: sendReport x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /reports/images/:image method: get operationId: getSettingsImage x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /reports/render/csvs method: get operationId: renderReportCSVs x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /reports/render/pdfs method: get operationId: renderReportPDFs x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /reports/settings method: get operationId: getReportSettings x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /reports/settings method: post operationId: saveReportSettings x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /reports/test-email method: post operationId: sendTestEmail x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /reports/{id} method: get operationId: getReport x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /reports/{id} method: put operationId: updateReport x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /reports/{id} method: delete operationId: deleteReport x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /serviceaccounts method: post operationId: createServiceAccount x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /serviceaccounts/search method: get operationId: searchOrgServiceAccountsWithPaging x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /serviceaccounts/{serviceAccountId} method: get operationId: retrieveServiceAccount x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /serviceaccounts/{serviceAccountId} method: delete operationId: deleteServiceAccount x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /serviceaccounts/{serviceAccountId} method: patch operationId: updateServiceAccount x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /serviceaccounts/{serviceAccountId}/tokens method: get operationId: listTokens x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /serviceaccounts/{serviceAccountId}/tokens method: post operationId: createToken x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /serviceaccounts/{serviceAccountId}/tokens/{tokenId} method: delete operationId: deleteToken x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /admin/ldap-sync-status method: get operationId: getSyncStatus x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /admin/ldap/reload method: post operationId: reloadLDAPCfg x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /admin/ldap/status method: get operationId: getLDAPStatus x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /admin/ldap/sync/{user_id} method: post operationId: postSyncUserWithLDAP x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /admin/ldap/{user_name} method: get operationId: getUserFromLDAP x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /admin/provisioning/access-control/reload method: post operationId: adminProvisioningReloadAccessControl x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /admin/provisioning/dashboards/reload method: post operationId: adminProvisioningReloadDashboards x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /admin/provisioning/datasources/reload method: post operationId: adminProvisioningReloadDatasources x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /admin/provisioning/plugins/reload method: post operationId: adminProvisioningReloadPlugins x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /admin/users method: post operationId: adminCreateUser x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /admin/users/{user_id} method: delete operationId: adminDeleteUser x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /admin/users/{user_id}/auth-tokens method: get operationId: adminGetUserAuthTokens x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /admin/users/{user_id}/disable method: post operationId: adminDisableUser x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /admin/users/{user_id}/enable method: post operationId: adminEnableUser x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /admin/users/{user_id}/logout method: post operationId: adminLogoutUser x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /admin/users/{user_id}/password method: put operationId: adminUpdateUserPassword x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /admin/users/{user_id}/permissions method: put operationId: adminUpdateUserPermissions x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /admin/users/{user_id}/revoke-auth-token method: post operationId: adminRevokeUserAuthToken x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /admin/users/{user_id}/quotas method: get operationId: getUserQuota x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /admin/users/{user_id}/quotas/{quota_target} method: put operationId: updateUserQuota x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /org/quotas method: get operationId: getCurrentOrgQuota x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /orgs/{org_id}/quotas method: get operationId: getOrgQuota x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /orgs/{org_id}/quotas/{quota_target} method: put operationId: updateOrgQuota x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /user/quotas method: get operationId: getUserQuotas x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /anonymous/devices method: get operationId: listDevices x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /anonymous/search method: get operationId: searchDevices x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cloudmigration/migration method: get operationId: getSessionList x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cloudmigration/migration method: post operationId: createSession x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cloudmigration/migration/{uid} method: get operationId: getSession x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cloudmigration/migration/{uid} method: delete operationId: deleteSession x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cloudmigration/migration/{uid}/snapshot method: post operationId: createSnapshot x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cloudmigration/migration/{uid}/snapshot/{snapshotUid} method: get operationId: getSnapshot x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cloudmigration/migration/{uid}/snapshot/{snapshotUid}/cancel method: post operationId: cancelSnapshot x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cloudmigration/migration/{uid}/snapshot/{snapshotUid}/upload method: post operationId: uploadSnapshot x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cloudmigration/migration/{uid}/snapshots method: get operationId: getShapshotList x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cloudmigration/resources/dependencies method: get operationId: getResourceDependencies x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cloudmigration/token method: get operationId: getCloudMigrationToken x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /cloudmigration/token method: post operationId: createCloudMigrationToken x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /cloudmigration/token/{uid} method: delete operationId: deleteCloudMigrationToken x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /convert/api/prom/rules method: get operationId: routeConvertPrometheusCortexGetRules x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /convert/api/prom/rules method: post operationId: routeConvertPrometheusCortexPostRuleGroups x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /convert/api/prom/rules/{NamespaceTitle} method: get operationId: routeConvertPrometheusCortexGetNamespace x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /convert/api/prom/rules/{NamespaceTitle} method: post operationId: routeConvertPrometheusCortexPostRuleGroup x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /convert/api/prom/rules/{NamespaceTitle} method: delete operationId: routeConvertPrometheusCortexDeleteNamespace x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /convert/api/prom/rules/{NamespaceTitle}/{Group} method: get operationId: routeConvertPrometheusCortexGetRuleGroup x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /convert/api/prom/rules/{NamespaceTitle}/{Group} method: delete operationId: routeConvertPrometheusCortexDeleteRuleGroup x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /convert/prometheus/config/v1/rules method: get operationId: routeConvertPrometheusGetRules x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /convert/prometheus/config/v1/rules method: post operationId: routeConvertPrometheusPostRuleGroups x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /convert/prometheus/config/v1/rules/{NamespaceTitle} method: get operationId: routeConvertPrometheusGetNamespace x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /convert/prometheus/config/v1/rules/{NamespaceTitle} method: post operationId: routeConvertPrometheusPostRuleGroup x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /convert/prometheus/config/v1/rules/{NamespaceTitle} method: delete operationId: routeConvertPrometheusDeleteNamespace x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /convert/prometheus/config/v1/rules/{NamespaceTitle}/{Group} method: get operationId: routeConvertPrometheusGetRuleGroup x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /convert/prometheus/config/v1/rules/{NamespaceTitle}/{Group} method: delete operationId: routeConvertPrometheusDeleteRuleGroup x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /dashboard/snapshots method: get operationId: searchDashboardSnapshots x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /dashboards/db method: post operationId: postDashboard x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /dashboards/home method: get operationId: getHomeDashboard x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /dashboards/id/{DashboardID}/permissions method: get operationId: getDashboardPermissionsListByID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /dashboards/id/{DashboardID}/permissions method: post operationId: updateDashboardPermissionsByID x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /dashboards/id/{DashboardID}/versions method: get operationId: getDashboardVersionsByID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /dashboards/id/{DashboardID}/versions/{DashboardVersionID} method: get operationId: getDashboardVersionByID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /dashboards/import method: post operationId: importDashboard x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /dashboards/interpolate method: post operationId: interpolateDashboard x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /dashboards/public-dashboards method: get operationId: listPublicDashboards x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /dashboards/tags method: get operationId: getDashboardTags x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /dashboards/uid/{dashboardUid}/public-dashboards method: get operationId: getPublicDashboard x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /dashboards/uid/{dashboardUid}/public-dashboards method: post operationId: createPublicDashboard x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /dashboards/uid/{dashboardUid}/public-dashboards/{uid} method: delete operationId: deletePublicDashboard x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /dashboards/uid/{dashboardUid}/public-dashboards/{uid} method: patch operationId: updatePublicDashboard x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /dashboards/uid/{uid} method: get operationId: getDashboardByUID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /dashboards/uid/{uid} method: delete operationId: deleteDashboardByUID x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /dashboards/uid/{uid}/permissions method: get operationId: getDashboardPermissionsListByUID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /dashboards/uid/{uid}/permissions method: post operationId: updateDashboardPermissionsByUID x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /dashboards/uid/{uid}/restore method: post operationId: restoreDashboardVersionByUID x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /dashboards/uid/{uid}/versions method: get operationId: getDashboardVersionsByUID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /dashboards/uid/{uid}/versions/{DashboardVersionID} method: get operationId: getDashboardVersionByUID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/dashboards/{accessToken} method: get operationId: viewPublicDashboard x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/dashboards/{accessToken}/annotations method: get operationId: getPublicAnnotations x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/dashboards/{accessToken}/panels/{panelId}/query method: post operationId: queryPublicDashboard x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /snapshots method: post operationId: createDashboardSnapshot x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /snapshots-delete/{deleteKey} method: get operationId: deleteDashboardSnapshotByDeleteKey x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /snapshots/{key} method: get operationId: getDashboardSnapshot x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /snapshots/{key} method: delete operationId: deleteDashboardSnapshot x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /groupsync/groups method: get operationId: getMappedGroups x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /groupsync/groups/{group_id} method: put operationId: updateGroupMappings x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /groupsync/groups/{group_id} method: post operationId: createGroupMappings x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /groupsync/groups/{group_id} method: delete operationId: deleteGroupMappings x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /groupsync/groups/{group_id}/roles method: get operationId: getGroupRoles x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /health method: get operationId: getHealth x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /logout/saml method: get operationId: getSAMLLogout x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /saml/acs method: post operationId: postACS x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /saml/metadata method: get operationId: getMetadata x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /saml/slo method: get operationId: getSLO x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /saml/slo method: post operationId: postSLO x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /playlists method: get operationId: searchPlaylists x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /playlists method: post operationId: createPlaylist x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /playlists/{uid} method: get operationId: getPlaylist x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /playlists/{uid} method: put operationId: updatePlaylist x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /playlists/{uid} method: delete operationId: deletePlaylist x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /playlists/{uid}/items method: get operationId: getPlaylistItems x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /recording-rules method: get operationId: listRecordingRules x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /recording-rules method: put operationId: updateRecordingRule x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /recording-rules method: post operationId: createRecordingRule x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /recording-rules/test method: post operationId: testCreateRecordingRule x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /recording-rules/writer method: get operationId: getRecordingRuleWriteTarget x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /recording-rules/writer method: post operationId: createRecordingRuleWriteTarget x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /recording-rules/writer method: delete operationId: deleteRecordingRuleWriteTarget x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /recording-rules/{recordingRuleID} method: delete operationId: deleteRecordingRule x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /search method: get operationId: search x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /search/sorting method: get operationId: listSortOptions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /signing-keys/keys method: get operationId: retrieveJWKS x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /snapshot/shared-options method: get operationId: getSharingOptions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /teams/{teamId}/groups method: get operationId: getTeamGroupsApi x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /teams/{teamId}/groups method: post operationId: addTeamGroupApi x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /teams/{teamId}/groups method: delete operationId: removeTeamGroupApiQuery x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /teams/{teamId}/groups/search method: get operationId: searchTeamGroups x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /user method: get operationId: getSignedInUser x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /user method: put operationId: updateSignedInUser x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /user/auth-tokens method: get operationId: getUserAuthTokens x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /user/helpflags/clear method: get operationId: clearHelpFlags x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /user/helpflags/{flag_id} method: put operationId: setHelpFlag x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /user/orgs method: get operationId: getSignedInUserOrgList x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /user/password method: put operationId: changeUserPassword x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /user/preferences method: get operationId: getUserPreferences x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /user/preferences method: put operationId: updateUserPreferences x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /user/preferences method: patch operationId: patchUserPreferences x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /user/revoke-auth-token method: post operationId: revokeUserAuthToken x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /user/stars/dashboard/uid/{dashboard_uid} method: post operationId: starDashboardByUID x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /user/stars/dashboard/uid/{dashboard_uid} method: delete operationId: unstarDashboardByUID x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /user/teams method: get operationId: getSignedInUserTeamList x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /user/using/{org_id} method: post operationId: userSetUsingOrg x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /user/email/update method: get operationId: updateUserEmail x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users method: get operationId: searchUsers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users/lookup method: get operationId: getUserByLoginOrEmail x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users/search method: get operationId: searchUsersWithPaging x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users/{user_id} method: get operationId: getUserByID x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users/{user_id} method: put operationId: updateUser x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /users/{user_id}/orgs method: get operationId: getUserOrgList x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users/{user_id}/teams method: get operationId: getUserTeams x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/alert-rules method: get operationId: routeGetAlertRules x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/alert-rules method: post operationId: routePostAlertRule x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/alert-rules/export method: get operationId: routeGetAlertRulesExport x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/alert-rules/{UID} method: get operationId: routeGetAlertRule x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/alert-rules/{UID} method: put operationId: routePutAlertRule x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/alert-rules/{UID} method: delete operationId: routeDeleteAlertRule x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/alert-rules/{UID}/export method: get operationId: routeGetAlertRuleExport x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/contact-points method: get operationId: routeGetContactpoints x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/contact-points method: post operationId: routePostContactpoints x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/contact-points/export method: get operationId: routeGetContactpointsExport x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/contact-points/{UID} method: put operationId: routePutContactpoint x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/contact-points/{UID} method: delete operationId: routeDeleteContactpoints x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/folder/{FolderUID}/rule-groups/{Group} method: get operationId: routeGetAlertRuleGroup x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/folder/{FolderUID}/rule-groups/{Group} method: put operationId: routePutAlertRuleGroup x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/folder/{FolderUID}/rule-groups/{Group} method: delete operationId: routeDeleteAlertRuleGroup x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/folder/{FolderUID}/rule-groups/{Group}/export method: get operationId: routeGetAlertRuleGroupExport x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/mute-timings method: get operationId: routeGetMuteTimings x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/mute-timings method: post operationId: routePostMuteTiming x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/mute-timings/export method: get operationId: routeExportMuteTimings x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/mute-timings/{name} method: get operationId: routeGetMuteTiming x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/mute-timings/{name} method: put operationId: routePutMuteTiming x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/mute-timings/{name} method: delete operationId: routeDeleteMuteTiming x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/mute-timings/{name}/export method: get operationId: routeExportMuteTiming x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/policies method: get operationId: routeGetPolicyTree x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/policies method: put operationId: routePutPolicyTree x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/policies method: delete operationId: routeResetPolicyTree x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/provisioning/policies/export method: get operationId: routeGetPolicyTreeExport x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/templates method: get operationId: routeGetTemplates x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/templates/{name} method: get operationId: routeGetTemplate x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provisioning/templates/{name} method: put operationId: routePutTemplate x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/provisioning/templates/{name} method: delete operationId: routeDeleteTemplate x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/sso-settings method: get operationId: listAllProvidersSettings x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/sso-settings/{key} method: get operationId: getProviderSettings x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/sso-settings/{key} method: put operationId: updateProviderSettings x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/sso-settings/{key} method: delete operationId: removeProviderSettings x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required