generated: '2026-07-15' method: generated source: openapi/genius-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: 30 by_action_class: connected: 25 acting: 5 by_consequence: read: 25 write: 5 human_in_the_loop_required: 0 operations: - path: /account method: get operationId: getAccount x-agentic-access: action-class: connected consequence: read subject: optional scope: - me token: max-ttl: 3600 audit: none - path: /search method: get operationId: search x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /songs/{id} method: get operationId: getSong x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /songs/{id}/comments method: get operationId: getSongComments x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /songs/{id}/activity method: get operationId: getSongActivity x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /songs/{id}/contributors method: get operationId: getSongContributors x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /artists/{id} method: get operationId: getArtist x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /artists/{id}/songs method: get operationId: getArtistSongs x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /artists/{id}/albums method: get operationId: getArtistAlbums x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /artists/{id}/activity method: get operationId: getArtistActivity x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /artists/{id}/followers method: get operationId: getArtistFollowers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /artists/{id}/leaderboard method: get operationId: getArtistLeaderboard x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /albums/{id} method: get operationId: getAlbum x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /albums/{id}/tracks method: get operationId: getAlbumTracks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /albums/{id}/comments method: get operationId: getAlbumComments x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /albums/{id}/cover_arts method: get operationId: getAlbumCoverArts x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /albums/{id}/leaderboard method: get operationId: getAlbumLeaderboard x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /annotations/{id} method: get operationId: getAnnotation x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /annotations/{id} method: delete operationId: deleteAnnotation x-agentic-access: action-class: acting consequence: write subject: required scope: - manage_annotation audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /annotations method: post operationId: createAnnotation x-agentic-access: action-class: acting consequence: write subject: required scope: - create_annotation audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /annotations/{id}/edits method: get operationId: getAnnotationEdits x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /annotations/{id}/comments method: get operationId: getAnnotationComments x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /annotations/{id}/vote method: put operationId: upvoteAnnotation x-agentic-access: action-class: acting consequence: write subject: required scope: - vote audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /annotations/{id}/vote method: delete operationId: removeAnnotationVote x-agentic-access: action-class: acting consequence: write subject: required scope: - vote audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /annotations/{id}/downvote method: put operationId: downvoteAnnotation x-agentic-access: action-class: acting consequence: write subject: required scope: - vote audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /referents method: get operationId: listReferents x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /referents/{ids} method: get operationId: getReferents x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /web_pages/lookup method: get operationId: lookupWebPage x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users/{id} method: get operationId: getUser x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /users/{id}/contributions method: get operationId: getUserContributions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none