# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for JFrog Artifactory REST Security API version: 1.0.0 extends: openapi/jfrog-security-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-10-01' generator: build-phrasing.py label: Generated by API Evangelist operations: 13 - target: $.paths['/api/security/users'].get update: x-apievangelist-phrasing: intent: List all Artifactory users effect: read questions: - Who are all the users set up in my Artifactory instance? - Can I pull a full list of Artifactory user accounts from the security API? instructions: - text: List every user in Artifactory security. - text: Show me all Artifactory user accounts. method: generated generated: '2026-10-01' - target: $.paths['/api/security/users/{username}'].get update: x-apievangelist-phrasing: intent: Get an Artifactory user's details effect: read questions: - What groups and admin rights does a given Artifactory user have? - How can I look up one Artifactory user's email and settings? instructions: - text: Show the Artifactory details for user {username}. slots: username: path.username - text: Look up whether {username} is an Artifactory admin. slots: username: path.username method: generated generated: '2026-10-01' - target: $.paths['/api/security/users/{username}'].put update: x-apievangelist-phrasing: intent: Create or replace an Artifactory user effect: write questions: - How do I add a new user to Artifactory with a password and email? - Can I overwrite an existing Artifactory user's whole definition in one call? instructions: - text: Create Artifactory user {username} with email {email} and password {password}. slots: username: path.username email: requestBody.email password: requestBody.password - text: Replace Artifactory user {username}, display name {name}, email {email}, password {password}, in groups {groups}. slots: username: path.username name: requestBody.name email: requestBody.email password: requestBody.password groups: requestBody.groups method: generated generated: '2026-10-01' - target: $.paths['/api/security/users/{username}'].delete update: x-apievangelist-phrasing: intent: Delete an Artifactory user effect: destructive questions: - How do I remove a user account from Artifactory security? - What happens when I delete a user through the Artifactory security endpoint? instructions: - text: Delete Artifactory user {username}. slots: username: path.username - text: Remove {username} from Artifactory security users. slots: username: path.username method: generated generated: '2026-10-01' - target: $.paths['/api/security/groups'].get update: x-apievangelist-phrasing: intent: List all Artifactory groups effect: read questions: - Which user groups exist in my Artifactory instance? - Can I see every security group defined in Artifactory? instructions: - text: List all Artifactory groups. - text: Show me every security group in Artifactory. method: generated generated: '2026-10-01' - target: $.paths['/api/security/groups/{groupName}'].get update: x-apievangelist-phrasing: intent: Get an Artifactory group's details effect: read questions: - What realm and auto-join settings does an Artifactory group have? - How do I see who belongs to a specific Artifactory group? instructions: - text: Show the details of Artifactory group {groupName}. slots: groupName: path.groupName - text: List the members of group {groupName}. slots: groupName: path.groupName method: generated generated: '2026-10-01' - target: $.paths['/api/security/groups/{groupName}'].put update: x-apievangelist-phrasing: intent: Create or replace an Artifactory group effect: write questions: - How do I create a group that new users join automatically? - Can I give an entire group admin privileges when I define it? instructions: - text: Create group {groupName} named {name} with description {description}. slots: groupName: path.groupName name: requestBody.name description: requestBody.description - text: Replace group {groupName} so its members are {userNames}. slots: groupName: path.groupName userNames: requestBody.userNames - text: Set up group {groupName} with realm {realm}. slots: groupName: path.groupName realm: requestBody.realm method: generated generated: '2026-10-01' - target: $.paths['/api/security/groups/{groupName}'].delete update: x-apievangelist-phrasing: intent: Delete an Artifactory group effect: destructive questions: - How do I get rid of a security group I no longer use? - Is there a way to delete an Artifactory group by name? instructions: - text: Delete Artifactory group {groupName}. slots: groupName: path.groupName - text: Remove the {groupName} group from security. slots: groupName: path.groupName method: generated generated: '2026-10-01' - target: $.paths['/api/security/permissions'].get update: x-apievangelist-phrasing: intent: List Artifactory permission targets effect: read questions: - What permission targets are configured in Artifactory? - Can I list the access rules that cover my repositories and builds? instructions: - text: List all Artifactory permission targets. - text: Show every permission target in the security API. method: generated generated: '2026-10-01' - target: $.paths['/api/security/permissions/{permissionTargetName}'].get update: x-apievangelist-phrasing: intent: Get a permission target's configuration effect: read questions: - Which repositories and users does a given permission target cover? - How do I inspect the rules inside one Artifactory permission target? instructions: - text: Show permission target {permissionTargetName}. slots: permissionTargetName: path.permissionTargetName - text: Get the repo and build rules of permission target {permissionTargetName}. slots: permissionTargetName: path.permissionTargetName method: generated generated: '2026-10-01' - target: $.paths['/api/security/permissions/{permissionTargetName}'].put update: x-apievangelist-phrasing: intent: Create or replace a permission target effect: write questions: - How do I grant a group access to certain repositories in Artifactory? - Can I overwrite a permission target's repo and build rules at once? instructions: - text: Create permission target {permissionTargetName} with repo rules {repo}. slots: permissionTargetName: path.permissionTargetName repo: requestBody.repo - text: Replace permission target {permissionTargetName} with build rules {build}. slots: permissionTargetName: path.permissionTargetName build: requestBody.build method: generated generated: '2026-10-01' - target: $.paths['/api/security/permissions/{permissionTargetName}'].delete update: x-apievangelist-phrasing: intent: Delete a permission target effect: destructive questions: - How do I remove an Artifactory permission target? - Will deleting a permission target revoke the access it granted? instructions: - text: Delete permission target {permissionTargetName}. slots: permissionTargetName: path.permissionTargetName - text: Remove the {permissionTargetName} permission target from Artifactory. slots: permissionTargetName: path.permissionTargetName method: generated generated: '2026-10-01' - target: $.paths['/api/security/token'].post update: x-apievangelist-phrasing: intent: Create an Artifactory access token effect: write questions: - How do I generate an access token for a user through the security endpoint? - Can I make a refreshable token that expires after a set time? instructions: - text: Create an access token for {username} that expires in {expires_in} seconds. slots: username: requestBody.username expires_in: requestBody.expires_in - text: Issue a refreshable token for {username} with scope {scope}. slots: username: requestBody.username scope: requestBody.scope method: generated generated: '2026-10-01'