Bitbucket · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Bitbucket Repositories API
31 actions
31 updates
phrasing
extends
openapi/bitbucket-repositories-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Bitbucket's API. It is a proposal applied on top of the contract, not a document Bitbucket publishes.
What the actions change
x-apievangelist-phrasing
Targets 31 · first 16 shown; the file carries all of them
$.info
$.paths['/repositories'].get
$.paths['/repositories/{workspace}'].get
$.paths['/repositories/{workspace}/{repo_slug}'].get
$.paths['/repositories/{workspace}/{repo_slug}'].put
$.paths['/repositories/{workspace}/{repo_slug}'].post
$.paths['/repositories/{workspace}/{repo_slug}'].delete
$.paths['/repositories/{workspace}/{repo_slug}/filehistory/{commit}/{path}'].get
$.paths['/repositories/{workspace}/{repo_slug}/forks'].get
$.paths['/repositories/{workspace}/{repo_slug}/forks'].post
$.paths['/repositories/{workspace}/{repo_slug}/hooks'].get
$.paths['/repositories/{workspace}/{repo_slug}/hooks'].post
$.paths['/repositories/{workspace}/{repo_slug}/hooks/{uid}'].get
$.paths['/repositories/{workspace}/{repo_slug}/hooks/{uid}'].put
$.paths['/repositories/{workspace}/{repo_slug}/hooks/{uid}'].delete
$.paths['/repositories/{workspace}/{repo_slug}/override-settings'].get
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Bitbucket Repositories API
version: 1.0.0
extends: openapi/bitbucket-repositories-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: 30
- target: $.paths['/repositories'].get
update:
x-apievangelist-phrasing:
intent: List all public repositories (deprecated)
effect: read
questions:
- Can I browse every public repository on Bitbucket, not just one workspace's?
- Is there a global public-repository listing I can page through by creation date?
instructions:
- text: List public repositories across all of Bitbucket created after {after}.
slots:
after: query.after
- text: Search all public repositories site-wide with the older global endpoint using filter {q}.
slots:
q: query.q
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}'].get
update:
x-apievangelist-phrasing:
intent: List repositories in a workspace
effect: read
questions:
- What repositories does a workspace own?
- Can I list only the repos in a workspace where I am an admin?
instructions:
- text: List all repositories in workspace {workspace}.
slots:
workspace: path.workspace
- text: Show repos in {workspace} where my role is {role}, sorted by {sort}.
slots:
workspace: path.workspace
role: query.role
sort: query.sort
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}'].get
update:
x-apievangelist-phrasing:
intent: Get a repository
effect: read
questions:
- What is a repository's main branch, language and privacy setting?
- How do I fetch the details of a single repo?
instructions:
- text: Get repository {workspace}/{repo_slug}.
slots:
workspace: path.workspace
repo_slug: path.repo_slug
- text: Show me the settings and metadata of repo {repo_slug} in workspace {workspace}.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}'].put
update:
x-apievangelist-phrasing:
intent: Update a repository's settings
effect: write
questions:
- Can I rename a repository or change its description through the API?
- How do I make an existing repo private or change its fork policy?
instructions:
- text: Update the description of {workspace}/{repo_slug} to {description}.
slots:
workspace: path.workspace
repo_slug: path.repo_slug
description: requestBody.description
- text: Set repo {repo_slug} in workspace {workspace} to private {is_private} with fork policy {fork_policy}.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
is_private: requestBody.is_private
fork_policy: requestBody.fork_policy
- text: Move existing repository {repo_slug} in {workspace} into project {project}.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
project: requestBody.project
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}'].post
update:
x-apievangelist-phrasing:
intent: Create a repository
effect: write
questions:
- How do I create a new git repository in a workspace?
- Can I put a new repo straight into a project and make it private when I create it?
instructions:
- text: Create a new repository {repo_slug} in workspace {workspace}.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
- text: Create private repo {repo_slug} in {workspace} under project {project} with is_private {is_private}.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
project: requestBody.project
is_private: requestBody.is_private
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a repository
effect: destructive
questions:
- How do I permanently delete a repository? Do its forks survive?
- Can I leave a redirect to a new location when I delete a repo?
instructions:
- text: Delete repository {workspace}/{repo_slug}.
slots:
workspace: path.workspace
repo_slug: path.repo_slug
- text: Delete repo {repo_slug} in workspace {workspace} and redirect visitors to {redirect_to}.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
redirect_to: query.redirect_to
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/filehistory/{commit}/{path}'].get
update:
x-apievangelist-phrasing:
intent: List commits that changed a file
effect: read
questions:
- Which commits modified a specific file, newest first?
- Can I follow a file's history across renames?
instructions:
- text: List the commits that changed {path} as of {commit} in {workspace}/{repo_slug}.
slots:
path: path.path
commit: path.commit
workspace: path.workspace
repo_slug: path.repo_slug
- text: Show the history of file {path} from revision {commit} in repo {repo_slug}, workspace {workspace}, following renames {renames}.
slots:
path: path.path
commit: path.commit
repo_slug: path.repo_slug
workspace: path.workspace
renames: query.renames
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/forks'].get
update:
x-apievangelist-phrasing:
intent: List forks of a repository
effect: read
questions:
- Who has forked a repository?
- How many forks does a repo have, and where do they live?
instructions:
- text: List the forks of {workspace}/{repo_slug}.
slots:
workspace: path.workspace
repo_slug: path.repo_slug
- text: Show every fork of repo {repo_slug} in workspace {workspace}.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/forks'].post
update:
x-apievangelist-phrasing:
intent: Fork a repository
effect: write
questions:
- How do I fork a repository into my own workspace?
- Can I give a fork a different name from the original repo?
instructions:
- text: Fork {workspace}/{repo_slug}.
slots:
workspace: path.workspace
repo_slug: path.repo_slug
- text: Fork repo {repo_slug} from workspace {workspace} under the new name {name}.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
name: requestBody.name
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/hooks'].get
update:
x-apievangelist-phrasing:
intent: List a repository's webhooks
effect: read
questions:
- What webhooks are installed on a repository?
- Which URLs does this repo send event notifications to?
instructions:
- text: List the webhooks on {workspace}/{repo_slug}.
slots:
workspace: path.workspace
repo_slug: path.repo_slug
- text: Show every webhook subscription installed on repo {repo_slug} in workspace {workspace}.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/hooks'].post
update:
x-apievangelist-phrasing:
intent: Create a webhook on a repository
effect: write
questions:
- How do I get a callback whenever someone pushes to a repository?
- Can I subscribe a URL to pull request events on one repo?
instructions:
- text: Create a webhook on {workspace}/{repo_slug}.
slots:
workspace: path.workspace
repo_slug: path.repo_slug
- text: Add a push-event webhook to repo {repo_slug} in workspace {workspace}.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/hooks/{uid}'].get
update:
x-apievangelist-phrasing:
intent: Get a repository webhook
effect: read
questions:
- Which events and URL is a specific repo webhook configured with?
- Is a given webhook on this repository still active?
instructions:
- text: Get webhook {uid} on {workspace}/{repo_slug}.
slots:
uid: path.uid
workspace: path.workspace
repo_slug: path.repo_slug
- text: Show the configuration of repo webhook {uid} in repo {repo_slug}, workspace {workspace}.
slots:
uid: path.uid
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/hooks/{uid}'].put
update:
x-apievangelist-phrasing:
intent: Update a repository webhook
effect: write
questions:
- Can I change the URL or events of a webhook already on a repo?
- How do I pause a repository webhook without deleting it?
instructions:
- text: Update webhook {uid} on {workspace}/{repo_slug}.
slots:
uid: path.uid
workspace: path.workspace
repo_slug: path.repo_slug
- text: Deactivate repo webhook {uid} on repo {repo_slug}, workspace {workspace}.
slots:
uid: path.uid
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/hooks/{uid}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a repository webhook
effect: destructive
questions:
- How do I remove a webhook from a repository for good?
- Can I delete a repo webhook that points to a retired endpoint?
instructions:
- text: Delete webhook {uid} from {workspace}/{repo_slug}.
slots:
uid: path.uid
workspace: path.workspace
repo_slug: path.repo_slug
- text: Remove repo webhook {uid} on repo {repo_slug}, workspace {workspace}.
slots:
uid: path.uid
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/override-settings'].get
update:
x-apievangelist-phrasing:
intent: Get which repo settings override the project
effect: read
questions:
- Does a repository inherit its settings from its project or override them?
- Which settings on this repo are customized instead of inherited?
instructions:
- text: Show the settings inheritance state for {workspace}/{repo_slug}.
slots:
workspace: path.workspace
repo_slug: path.repo_slug
- text: Tell me which settings repo {repo_slug} in workspace {workspace} overrides from its project.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/override-settings'].put
update:
x-apievangelist-phrasing:
intent: Set which repo settings override the project
effect: write
questions:
- How do I make a repository stop inheriting a setting from its project?
- Can I switch a repo back to using its project's settings?
instructions:
- text: Set the settings inheritance state for {workspace}/{repo_slug}.
slots:
workspace: path.workspace
repo_slug: path.repo_slug
- text: Make repo {repo_slug} in workspace {workspace} inherit its project settings again.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/permissions-config/groups'].get
update:
x-apievangelist-phrasing:
intent: List group permissions on a repository
effect: read
questions:
- Which groups have explicit access to a repository?
- What permission level does each group hold on this repo?
instructions:
- text: List explicit group permissions on {workspace}/{repo_slug}.
slots:
workspace: path.workspace
repo_slug: path.repo_slug
- text: Show which groups can access repo {repo_slug} in workspace {workspace}.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/permissions-config/groups/{group_slug}'].get
update:
x-apievangelist-phrasing:
intent: Get one group's permission on a repository
effect: read
questions:
- What access does a particular group have to a repository?
- Does a given group have write or admin on this repo?
instructions:
- text: Get group {group_slug}'s permission on {workspace}/{repo_slug}.
slots:
group_slug: path.group_slug
workspace: path.workspace
repo_slug: path.repo_slug
- text: Show the access level of group {group_slug} for repo {repo_slug}, workspace {workspace}.
slots:
group_slug: path.group_slug
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/permissions-config/groups/{group_slug}'].put
update:
x-apievangelist-phrasing:
intent: Grant or change a group's repo permission
effect: write
questions:
- How do I give a team group write access to a repository?
- Can I downgrade a group's access on a repo to read only?
instructions:
- text: Give group {group_slug} {permission} access to {workspace}/{repo_slug}.
slots:
group_slug: path.group_slug
permission: requestBody.permission
workspace: path.workspace
repo_slug: path.repo_slug
- text: Set group {group_slug}'s permission on repo {repo_slug}, workspace {workspace}, to {permission}.
slots:
group_slug: path.group_slug
repo_slug: path.repo_slug
workspace: path.workspace
permission: requestBody.permission
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/permissions-config/groups/{group_slug}'].delete
update:
x-apievangelist-phrasing:
intent: Remove a group's access to a repository
effect: destructive
questions:
- How do I revoke a group's explicit access to a repository?
- Can I take a team group off a repo entirely?
instructions:
- text: Remove group {group_slug}'s permission on {workspace}/{repo_slug}.
slots:
group_slug: path.group_slug
workspace: path.workspace
repo_slug: path.repo_slug
- text: Revoke group {group_slug}'s explicit access to repo {repo_slug} in workspace {workspace}.
slots:
group_slug: path.group_slug
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/permissions-config/users'].get
update:
x-apievangelist-phrasing:
intent: List user permissions on a repository
effect: read
questions:
- Which individual users have explicit access to a repository?
- What permission does each person hold on this repo?
instructions:
- text: List explicit user permissions on {workspace}/{repo_slug}.
slots:
workspace: path.workspace
repo_slug: path.repo_slug
- text: Show which individual users can access repo {repo_slug} in workspace {workspace}.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/permissions-config/users/{selected_user_id}'].get
update:
x-apievangelist-phrasing:
intent: Get one user's permission on a repository
effect: read
questions:
- What access does a specific person have to a repository?
- Does a given user hold admin on this repo explicitly?
instructions:
- text: Get user {selected_user_id}'s permission on {workspace}/{repo_slug}.
slots:
selected_user_id: path.selected_user_id
workspace: path.workspace
repo_slug: path.repo_slug
- text: Show the access level of user {selected_user_id} for repo {repo_slug}, workspace {workspace}.
slots:
selected_user_id: path.selected_user_id
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/permissions-config/users/{selected_user_id}'].put
update:
x-apievangelist-phrasing:
intent: Grant or change a user's repo permission
effect: write
questions:
- How do I give a workspace member admin rights on one repository?
- Can I grant explicit repo access to the workspace owner?
instructions:
- text: Give user {selected_user_id} {permission} access to {workspace}/{repo_slug}.
slots:
selected_user_id: path.selected_user_id
permission: requestBody.permission
workspace: path.workspace
repo_slug: path.repo_slug
- text: Set user {selected_user_id}'s permission on repo {repo_slug}, workspace {workspace}, to {permission}.
slots:
selected_user_id: path.selected_user_id
repo_slug: path.repo_slug
workspace: path.workspace
permission: requestBody.permission
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/permissions-config/users/{selected_user_id}'].delete
update:
x-apievangelist-phrasing:
intent: Remove a user's access to a repository
effect: destructive
questions:
- How do I revoke one person's explicit access to a repository?
- Can I remove a departing contractor from a single repo?
instructions:
- text: Remove user {selected_user_id}'s permission on {workspace}/{repo_slug}.
slots:
selected_user_id: path.selected_user_id
workspace: path.workspace
repo_slug: path.repo_slug
- text: Revoke user {selected_user_id}'s explicit access to repo {repo_slug} in workspace {workspace}.
slots:
selected_user_id: path.selected_user_id
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/src'].get
update:
x-apievangelist-phrasing:
intent: Browse the root of the main branch
effect: read
questions:
- What files sit at the top level of a repository's main branch?
- Can I get the root directory listing as metadata instead of raw content?
instructions:
- text: List the root directory of the main branch in {workspace}/{repo_slug}.
slots:
workspace: path.workspace
repo_slug: path.repo_slug
- text: Show top-level files on the default branch of repo {repo_slug}, workspace {workspace}, in format {format}.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
format: query.format
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/src'].post
update:
x-apievangelist-phrasing:
intent: Commit files by uploading them
effect: write
questions:
- Can I commit a file to a repository without cloning it?
- How do I upload a change to a specific branch with my own commit message?
instructions:
- text: Commit an uploaded file to {workspace}/{repo_slug} with message {message}.
slots:
workspace: path.workspace
repo_slug: path.repo_slug
message: query.message
- text: Upload files to branch {branch} of repo {repo_slug} in {workspace} as a commit by {author} with message {message}.
slots:
branch: query.branch
repo_slug: path.repo_slug
workspace: path.workspace
author: query.author
message: query.message
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/src/{commit}/{path}'].get
update:
x-apievangelist-phrasing:
intent: Read a file or directory at a revision
effect: read
questions:
- How do I read the contents of a file as it was at a specific commit?
- Can I list a directory recursively up to a certain depth?
instructions:
- text: Get {path} at revision {commit} in {workspace}/{repo_slug}.
slots:
path: path.path
commit: path.commit
workspace: path.workspace
repo_slug: path.repo_slug
- text: List directory {path} at {commit} in repo {repo_slug}, workspace {workspace}, to depth {max_depth}.
slots:
path: path.path
commit: path.commit
repo_slug: path.repo_slug
workspace: path.workspace
max_depth: query.max_depth
method: generated
generated: '2026-10-01'
- target: $.paths['/repositories/{workspace}/{repo_slug}/watchers'].get
update:
x-apievangelist-phrasing:
intent: List a repository's watchers
effect: read
questions:
- Who is watching a repository for updates?
- How many people follow this repo?
instructions:
- text: List the watchers of {workspace}/{repo_slug}.
slots:
workspace: path.workspace
repo_slug: path.repo_slug
- text: Show who watches repo {repo_slug} in workspace {workspace}.
slots:
repo_slug: path.repo_slug
workspace: path.workspace
method: generated
generated: '2026-10-01'
- target: $.paths['/user/permissions/repositories'].get
update:
x-apievangelist-phrasing:
intent: List my repo permissions everywhere (deprecated)
effect: read
questions:
- Which repositories can I access across all my workspaces, and at what level?
- Is there an older, non-workspace endpoint for my repository permissions?
instructions:
- text: List my explicit repository permissions across all workspaces.
- text: Show my repository access everywhere using the deprecated global endpoint, filtered by {q}.
slots:
q: query.q
method: generated
generated: '2026-10-01'
- target: $.paths['/user/workspaces/{workspace}/permissions/repositories'].get
update:
x-apievangelist-phrasing:
intent: List my repo permissions in one workspace
effect: read
questions:
- What is my effective permission on each repository in a workspace?
- Which repos in a given workspace can I write to?
instructions:
- text: List my repository permissions in workspace {workspace}.
slots:
workspace: path.workspace
- text: Show the repos in {workspace} where my access matches {q}.
slots:
workspace: path.workspace
q: query.q
method: generated
generated: '2026-10-01'