# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Jira Cloud platform REST Project roles API version: 1.0.0 extends: openapi/jira-project-roles-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 9 - target: $.paths['/rest/api/3/project/{projectIdOrKey}/role'].get update: x-apievangelist-phrasing: intent: List the roles in a project effect: read questions: - What project roles exist in a given project? - Can I get the names and links of every role in my project? instructions: - text: List the project roles for project {projectIdOrKey}. slots: projectIdOrKey: path.projectIdOrKey - text: Show role names and URLs in project {projectIdOrKey}. slots: projectIdOrKey: path.projectIdOrKey method: generated generated: '2026-09-26' - target: $.paths['/rest/api/3/project/{projectIdOrKey}/role/{id}'].get update: x-apievangelist-phrasing: intent: See who holds a role in a project effect: read questions: - Who are the users and groups in the Developers role of my project? - Can I leave inactive users out when listing a project role's members? instructions: - text: Show the actors in role {id} for project {projectIdOrKey}. slots: id: path.id projectIdOrKey: path.projectIdOrKey - text: 'List members of role {id} in project {projectIdOrKey}, excluding inactive users: {excludeInactiveUsers}.' slots: id: path.id projectIdOrKey: path.projectIdOrKey excludeInactiveUsers: query.excludeInactiveUsers method: generated generated: '2026-09-26' - target: $.paths['/rest/api/3/project/{projectIdOrKey}/roledetails'].get update: x-apievangelist-phrasing: intent: Get details of every role for a project effect: read questions: - Which project roles am I a member of in this project? - Can I get role details for a project without roles from other services or Connect add-ons? instructions: - text: Get the role details for project {projectIdOrKey}. slots: projectIdOrKey: path.projectIdOrKey - text: Show only the roles I belong to in project {projectIdOrKey} where current member is {currentMember}. slots: projectIdOrKey: path.projectIdOrKey currentMember: query.currentMember method: generated generated: '2026-09-26' - target: $.paths['/rest/api/3/role'].get update: x-apievangelist-phrasing: intent: List all project roles site-wide effect: read questions: - What project roles are defined across the whole Jira site? - Which default actors does each project role have? instructions: - text: List all project roles on the site with their default actors. - text: Show every project role definition globally. method: generated generated: '2026-09-26' - target: $.paths['/rest/api/3/role'].post update: x-apievangelist-phrasing: intent: Create a new project role effect: write questions: - How do I define a new project role like QA Lead? - Does a newly created project role start with any default actors? instructions: - text: Create a project role named {name}. slots: name: requestBody.name - text: Create project role {name} described as {description}. slots: name: requestBody.name description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/rest/api/3/role/{id}'].get update: x-apievangelist-phrasing: intent: Get a project role and its default actors effect: read questions: - Which default actors are attached to a specific project role? - How do I look up a global project role by its ID? instructions: - text: Get project role {id} with its default actors. slots: id: path.id - text: Show the site-wide definition of role {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/rest/api/3/role/{id}'].put update: x-apievangelist-phrasing: intent: Replace a project role's name and description effect: write questions: - Can I change both the name and description of a role in one request? - Must I send both fields when fully updating a project role? instructions: - text: Set role {id}'s name to {name} and description to {description}. slots: id: path.id name: requestBody.name description: requestBody.description - text: Fully replace project role {id} with name {name} and description {description}. slots: id: path.id name: requestBody.name description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/rest/api/3/role/{id}'].post update: x-apievangelist-phrasing: intent: Change only a project role's name or description effect: write questions: - How do I rename a project role without touching its description? - Can I update just the description of a project role? instructions: - text: Rename project role {id} to {name}, leaving its description alone. slots: id: path.id name: requestBody.name - text: Change only the description of role {id} to {description}. slots: id: path.id description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/rest/api/3/role/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a project role effect: destructive questions: - How do I delete a project role that's still in use? - Can I swap in a replacement role when deleting one? instructions: - text: Delete project role {id}. slots: id: path.id - text: Delete role {id} and replace it with role {swap} wherever it's used. slots: id: path.id swap: query.swap method: generated generated: '2026-09-26'