diff --git a/.changeset/blue-lions-greet.md b/.changeset/blue-lions-greet.md
new file mode 100644
index 0000000000..c4f4d2a337
--- /dev/null
+++ b/.changeset/blue-lions-greet.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-user-settings': patch
+---
+
+Handle errors that may occur when the user logs out
diff --git a/.changeset/brave-peaches-brush.md b/.changeset/brave-peaches-brush.md
new file mode 100644
index 0000000000..f0661ba818
--- /dev/null
+++ b/.changeset/brave-peaches-brush.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-scaffolder': patch
+---
+
+Making the description of the GitLab repoUrl owner field more clearer by focusing it refers to the GitLab namespace.
diff --git a/.changeset/breezy-pots-worry.md b/.changeset/breezy-pots-worry.md
new file mode 100644
index 0000000000..48d5ae6c80
--- /dev/null
+++ b/.changeset/breezy-pots-worry.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-org': patch
+---
+
+consistently show parent and child relations in group profile card
diff --git a/.changeset/calm-moose-fetch.md b/.changeset/calm-moose-fetch.md
new file mode 100644
index 0000000000..96a364c801
--- /dev/null
+++ b/.changeset/calm-moose-fetch.md
@@ -0,0 +1,6 @@
+---
+'@backstage/plugin-catalog-react': minor
+'@backstage/plugin-catalog': patch
+---
+
+Implemented the visual parts of `EntityKindPicker` so that it can be shown alongside the other filters on the left side of your catalog pages.
diff --git a/.changeset/calm-pianos-burn.md b/.changeset/calm-pianos-burn.md
new file mode 100644
index 0000000000..6a44d42cfe
--- /dev/null
+++ b/.changeset/calm-pianos-burn.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-catalog-react': patch
+---
+
+Added two new `EntityRefLinks` props, the first being `getTitle` that allows for customization of the title used for each link. The second one is `fetchEntities`, which triggers a fetching of all entities so that the full entity definition is available in the `getTitle` callback.
diff --git a/.changeset/clean-camels-sneeze.md b/.changeset/clean-camels-sneeze.md
new file mode 100644
index 0000000000..0fccb52e0b
--- /dev/null
+++ b/.changeset/clean-camels-sneeze.md
@@ -0,0 +1,12 @@
+---
+'@backstage/create-app': patch
+---
+
+Newly created Backstage repositories now use the stable version 6 of
+`react-router`, just like the main repo does. Please let us know if you find any
+issues with this.
+
+Migrating to the stable version of `react-router` is optional for the time
+being. But if you want to do the same for your existing repository, please
+follow [this
+guide](https://backstage.io/docs/tutorials/react-router-stable-migration).
diff --git a/.changeset/clever-ties-burn.md b/.changeset/clever-ties-burn.md
new file mode 100644
index 0000000000..cdd861e069
--- /dev/null
+++ b/.changeset/clever-ties-burn.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-user-settings': patch
+---
+
+Prevent `.set()` to execute a request to the StorageClient if the user is `guest`
diff --git a/.changeset/cuddly-bikes-tease.md b/.changeset/cuddly-bikes-tease.md
new file mode 100644
index 0000000000..d3fc8bd1bb
--- /dev/null
+++ b/.changeset/cuddly-bikes-tease.md
@@ -0,0 +1,5 @@
+---
+'@backstage/core-app-api': patch
+---
+
+Fixed a bug where gathered index routes would fail to bind routable extensions. This would typically show up when placing a routable extension in the entity page overview tab.
diff --git a/.changeset/curly-rats-itch.md b/.changeset/curly-rats-itch.md
new file mode 100644
index 0000000000..b6fba9dc1e
--- /dev/null
+++ b/.changeset/curly-rats-itch.md
@@ -0,0 +1,5 @@
+---
+'@backstage/cli': patch
+---
+
+Tweak the Jest Caching loader to only operate when in `watch` mode
diff --git a/.changeset/curvy-kiwis-fold.md b/.changeset/curvy-kiwis-fold.md
new file mode 100644
index 0000000000..8d94f38343
--- /dev/null
+++ b/.changeset/curvy-kiwis-fold.md
@@ -0,0 +1,5 @@
+---
+'@backstage/create-app': patch
+---
+
+Update versions of packages used in the create-app template, to match those in the main repo
diff --git a/.changeset/curvy-lemons-change.md b/.changeset/curvy-lemons-change.md
new file mode 100644
index 0000000000..29e31a7b60
--- /dev/null
+++ b/.changeset/curvy-lemons-change.md
@@ -0,0 +1,5 @@
+---
+'@backstage/backend-test-utils': patch
+---
+
+Fixed handling of root scoped services in `startTestBackend`.
diff --git a/.changeset/dry-shirts-attack.md b/.changeset/dry-shirts-attack.md
new file mode 100644
index 0000000000..ba6c7379f5
--- /dev/null
+++ b/.changeset/dry-shirts-attack.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-scaffolder': patch
+---
+
+Support custom layouts in dry run editor
diff --git a/.changeset/dull-rocks-warn.md b/.changeset/dull-rocks-warn.md
new file mode 100644
index 0000000000..0ccf4f20cb
--- /dev/null
+++ b/.changeset/dull-rocks-warn.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-scaffolder-backend': minor
+---
+
+Added a new property called `additionalTemplateGlobals` which allows you to add global functions to the scaffolder nunjucks templates.
diff --git a/.changeset/eleven-apples-accept.md b/.changeset/eleven-apples-accept.md
new file mode 100644
index 0000000000..f46bf4fe0c
--- /dev/null
+++ b/.changeset/eleven-apples-accept.md
@@ -0,0 +1,5 @@
+---
+'@backstage/core-components': patch
+---
+
+Deep-import LightAsync component to improve module-import speed
diff --git a/.changeset/fair-tools-melt.md b/.changeset/fair-tools-melt.md
new file mode 100644
index 0000000000..e63e4d5181
--- /dev/null
+++ b/.changeset/fair-tools-melt.md
@@ -0,0 +1,5 @@
+---
+'@backstage/backend-app-api': patch
+---
+
+Added possibility to configure index plugin of the HTTP router service.
diff --git a/.changeset/fifty-berries-learn.md b/.changeset/fifty-berries-learn.md
new file mode 100644
index 0000000000..647246a482
--- /dev/null
+++ b/.changeset/fifty-berries-learn.md
@@ -0,0 +1,37 @@
+---
+'@backstage/plugin-catalog': minor
+---
+
+Added new column `Label` to `CatalogTable.columns`, this new column allows you make use of labels from metadata.
+For example: category and visibility are type of labels associated with API entity illustrated below.
+
+YAML code snippet for API entity
+
+```yaml
+apiVersion: backstage.io/v1alpha1
+kind: API
+metadata:
+ name: sample-api
+ description: API for sample
+ links:
+ - url: http://localhost:8080/swagger-ui.html
+ title: Swagger UI
+ tags:
+ - http
+ labels:
+ category: legacy
+ visibility: protected
+```
+
+Consumers can customise columns to include label column and show in api-docs list
+
+```typescript
+const columns = [
+ CatalogTable.columns.createNameColumn({ defaultKind: 'API' }),
+ CatalogTable.columns.createLabelColumn('category', { title: 'Category' }),
+ CatalogTable.columns.createLabelColumn('visibility', {
+ title: 'Visibility',
+ defaultValue: 'public',
+ }),
+];
+```
diff --git a/.changeset/grumpy-pans-knock.md b/.changeset/grumpy-pans-knock.md
new file mode 100644
index 0000000000..74e81e7bec
--- /dev/null
+++ b/.changeset/grumpy-pans-knock.md
@@ -0,0 +1,14 @@
+---
+'@techdocs/cli': patch
+'@backstage/plugin-techdocs-node': patch
+---
+
+fixing techdocs-cli Docker client creation
+
+Docker client does not need to be created when --no-docker
+option is provided.
+
+If you had DOCKER_CERT_PATH environment variable defined
+the Docker client was looking for certificates
+and breaking techdocs-cli generate command even with --no-docker
+option.
diff --git a/.changeset/hot-geese-vanish.md b/.changeset/hot-geese-vanish.md
new file mode 100644
index 0000000000..b392c875c7
--- /dev/null
+++ b/.changeset/hot-geese-vanish.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-auth-backend': minor
+---
+
+Google OAuth refresh tokens will now be revoked on logout by calling Google's API
diff --git a/.changeset/itchy-schools-run.md b/.changeset/itchy-schools-run.md
new file mode 100644
index 0000000000..6e46cabb15
--- /dev/null
+++ b/.changeset/itchy-schools-run.md
@@ -0,0 +1,5 @@
+---
+'@backstage/backend-plugin-api': patch
+---
+
+Allow interfaces to be used for inferred option types.
diff --git a/.changeset/large-dingos-juggle.md b/.changeset/large-dingos-juggle.md
new file mode 100644
index 0000000000..8566a0f305
--- /dev/null
+++ b/.changeset/large-dingos-juggle.md
@@ -0,0 +1,5 @@
+---
+'@backstage/backend-defaults': patch
+---
+
+Added root logger service to the set of default services.
diff --git a/.changeset/loud-dots-sit.md b/.changeset/loud-dots-sit.md
new file mode 100644
index 0000000000..fa6175358e
--- /dev/null
+++ b/.changeset/loud-dots-sit.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-user-settings': patch
+---
+
+Update installation instructions
diff --git a/.changeset/lovely-peaches-fold.md b/.changeset/lovely-peaches-fold.md
new file mode 100644
index 0000000000..dcff35f4d7
--- /dev/null
+++ b/.changeset/lovely-peaches-fold.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-tech-insights': patch
+---
+
+making available the search for the last FACTS executed
diff --git a/.changeset/lucky-cows-boil.md b/.changeset/lucky-cows-boil.md
new file mode 100644
index 0000000000..a598b3da95
--- /dev/null
+++ b/.changeset/lucky-cows-boil.md
@@ -0,0 +1,11 @@
+---
+'@backstage/plugin-bitbucket-cloud-common': minor
+---
+
+Update Bitbucket Cloud models to latest OAS version.
+
+The latest specification contained some BREAKING CHANGES
+due to removed fields.
+
+All of these fields are not used at other plugins, though.
+Therefore, this change has no impact on other modules here.
diff --git a/.changeset/mean-spiders-design.md b/.changeset/mean-spiders-design.md
new file mode 100644
index 0000000000..3704c9fca9
--- /dev/null
+++ b/.changeset/mean-spiders-design.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-search-backend': minor
+---
+
+Be less restrictive with unknown keys on query endpoint
diff --git a/.changeset/mighty-lions-march.md b/.changeset/mighty-lions-march.md
new file mode 100644
index 0000000000..2f0b63d238
--- /dev/null
+++ b/.changeset/mighty-lions-march.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-vault-backend': patch
+---
+
+VaultBuilder.tsx renamed to VaultBuilder in order for module to be correctly loaded.
diff --git a/.changeset/odd-pandas-suffer.md b/.changeset/odd-pandas-suffer.md
new file mode 100644
index 0000000000..ce562a9a89
--- /dev/null
+++ b/.changeset/odd-pandas-suffer.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-github-issues': patch
+---
+
+Updated the `luxon` dependency to 3.x
diff --git a/.changeset/odd-singers-taste.md b/.changeset/odd-singers-taste.md
new file mode 100644
index 0000000000..524de42255
--- /dev/null
+++ b/.changeset/odd-singers-taste.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-scaffolder': minor
+---
+
+Add support for link to TechDocs and other links defined in template entity specification metadata on TemplateCard
diff --git a/.changeset/old-cobras-suffer.md b/.changeset/old-cobras-suffer.md
new file mode 100644
index 0000000000..2891c29133
--- /dev/null
+++ b/.changeset/old-cobras-suffer.md
@@ -0,0 +1,6 @@
+---
+'@backstage/test-utils': patch
+'@backstage/plugin-cicd-statistics': patch
+---
+
+Align on the version of `@material-ui/icons` used, to `^4.9.1` like other packages in the main repo
diff --git a/.changeset/old-needles-brake.md b/.changeset/old-needles-brake.md
new file mode 100644
index 0000000000..eea2bf6539
--- /dev/null
+++ b/.changeset/old-needles-brake.md
@@ -0,0 +1,6 @@
+---
+'@backstage/plugin-github-issues': patch
+'@backstage/plugin-github-pull-requests-board': patch
+---
+
+Properly filter on relations instead of the spec, when finding by owner
diff --git a/.changeset/plenty-kids-fetch.md b/.changeset/plenty-kids-fetch.md
new file mode 100644
index 0000000000..6a31b4db20
--- /dev/null
+++ b/.changeset/plenty-kids-fetch.md
@@ -0,0 +1,5 @@
+---
+'@backstage/catalog-client': patch
+---
+
+Renamed argument in `validateEntity` from `location` to `locationRef`
diff --git a/.changeset/plenty-laws-end.md b/.changeset/plenty-laws-end.md
new file mode 100644
index 0000000000..e026ca3fca
--- /dev/null
+++ b/.changeset/plenty-laws-end.md
@@ -0,0 +1,5 @@
+---
+'@backstage/backend-common': patch
+---
+
+Fixed an issue where `getClient()` for a `pluginId` would return different clients and not share them
diff --git a/.changeset/poor-clouds-ring.md b/.changeset/poor-clouds-ring.md
new file mode 100644
index 0000000000..62ba3928a7
--- /dev/null
+++ b/.changeset/poor-clouds-ring.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-catalog-backend': patch
+---
+
+Fixed a bug where entities provided without a location key would always replace existing entities, rather than updating them.
diff --git a/.changeset/pre.json b/.changeset/pre.json
index 46123733ca..c5f8b30596 100644
--- a/.changeset/pre.json
+++ b/.changeset/pre.json
@@ -175,5 +175,84 @@
"@backstage/plugin-vault-backend": "0.2.2",
"@backstage/plugin-xcmetrics": "0.2.29"
},
- "changesets": []
+ "changesets": [
+ "blue-lions-greet",
+ "brave-peaches-brush",
+ "breezy-pots-worry",
+ "bright-rules-shout",
+ "calm-moose-fetch",
+ "calm-pianos-burn",
+ "clean-camels-sneeze",
+ "clever-ties-burn",
+ "cuddly-bikes-tease",
+ "curly-rats-itch",
+ "curvy-kiwis-fold",
+ "curvy-lemons-change",
+ "dry-shirts-attack",
+ "dull-rocks-warn",
+ "eleven-apples-accept",
+ "fair-tools-melt",
+ "fifty-berries-learn",
+ "grumpy-pans-knock",
+ "hot-geese-vanish",
+ "itchy-schools-run",
+ "kind-penguins-report",
+ "large-dingos-juggle",
+ "lazy-beds-pull",
+ "lazy-fireants-check",
+ "little-roses-rule",
+ "loud-dots-sit",
+ "lovely-peaches-fold",
+ "lucky-cows-boil",
+ "mean-spiders-design",
+ "mighty-lions-march",
+ "odd-pandas-suffer",
+ "odd-singers-taste",
+ "old-cobras-suffer",
+ "old-needles-brake",
+ "perfect-moose-drum",
+ "plenty-kids-fetch",
+ "plenty-laws-end",
+ "poor-clouds-ring",
+ "pretty-buttons-develop",
+ "quiet-dancers-jog",
+ "quiet-hats-kick",
+ "quiet-ligers-draw",
+ "rare-hotels-cough",
+ "red-dots-sleep",
+ "red-pants-rush",
+ "renovate-5da63a4",
+ "renovate-a02d90b",
+ "rich-carrots-reflect",
+ "rude-bulldogs-sleep",
+ "search-bobcats-love",
+ "search-cars-hide",
+ "search-clouds-begin",
+ "search-cycles-sniff",
+ "search-dull-planes-prove",
+ "search-rats-grin",
+ "selfish-turkeys-exist",
+ "shaggy-books-smell",
+ "silent-bees-repeat",
+ "silly-rules-join",
+ "sixty-items-nail",
+ "slow-mirrors-eat",
+ "smooth-tables-pull",
+ "soft-falcons-love",
+ "stupid-dragons-complain",
+ "sweet-insects-camp",
+ "swift-phones-cheat",
+ "tall-baboons-deliver",
+ "tender-drinks-drive",
+ "tender-parrots-peel",
+ "thick-kings-destroy",
+ "tiny-mails-bathe",
+ "tough-hairs-sparkle",
+ "twelve-melons-notice",
+ "warm-days-watch",
+ "wild-weeks-live",
+ "wise-ligers-scream",
+ "yellow-lemons-march",
+ "young-bugs-remember"
+ ]
}
diff --git a/.changeset/pretty-buttons-develop.md b/.changeset/pretty-buttons-develop.md
new file mode 100644
index 0000000000..7c686df250
--- /dev/null
+++ b/.changeset/pretty-buttons-develop.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-auth-backend': patch
+---
+
+Auth0 provider now supports optional `connection` and `connectionScope` parameters to configure social identity providers.
diff --git a/.changeset/quiet-dancers-jog.md b/.changeset/quiet-dancers-jog.md
new file mode 100644
index 0000000000..2cca69103a
--- /dev/null
+++ b/.changeset/quiet-dancers-jog.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-gcalendar': patch
+---
+
+Fixed loader showing when user not signed in
diff --git a/.changeset/quiet-hats-kick.md b/.changeset/quiet-hats-kick.md
new file mode 100644
index 0000000000..a0bbab4cb1
--- /dev/null
+++ b/.changeset/quiet-hats-kick.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-jenkins-backend': patch
+---
+
+Fixed a bug where `extraRequestHeaders` configuration was ignored.
diff --git a/.changeset/quiet-ligers-draw.md b/.changeset/quiet-ligers-draw.md
new file mode 100644
index 0000000000..30f5845a54
--- /dev/null
+++ b/.changeset/quiet-ligers-draw.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-app-backend': patch
+---
+
+Added alpha plugin implementation for the new backend system. Available at `@backstage/plugin-app-backend/alpha`.
diff --git a/.changeset/rare-hotels-cough.md b/.changeset/rare-hotels-cough.md
new file mode 100644
index 0000000000..1a2395cf56
--- /dev/null
+++ b/.changeset/rare-hotels-cough.md
@@ -0,0 +1,5 @@
+---
+'@backstage/backend-plugin-api': patch
+---
+
+Added documentation for `createBackendModule`, with guidelines for choosing a module ID.
diff --git a/.changeset/red-dots-sleep.md b/.changeset/red-dots-sleep.md
new file mode 100644
index 0000000000..0accac9734
--- /dev/null
+++ b/.changeset/red-dots-sleep.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-scaffolder-backend': patch
+---
+
+Switching off duplicated timestamp in case of logging via task logger in a custom action
diff --git a/.changeset/red-pants-rush.md b/.changeset/red-pants-rush.md
new file mode 100644
index 0000000000..d2d7a52237
--- /dev/null
+++ b/.changeset/red-pants-rush.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-scaffolder-backend': minor
+---
+
+Add `allowAutoMerge` option for `publish:github` action
diff --git a/.changeset/renovate-5da63a4.md b/.changeset/renovate-5da63a4.md
new file mode 100644
index 0000000000..6d27c9e99f
--- /dev/null
+++ b/.changeset/renovate-5da63a4.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-api-docs': patch
+---
+
+Updated dependency `@asyncapi/react-component` to `1.0.0-next.43`.
diff --git a/.changeset/search-bobcats-love.md b/.changeset/search-bobcats-love.md
new file mode 100644
index 0000000000..f562961c1b
--- /dev/null
+++ b/.changeset/search-bobcats-love.md
@@ -0,0 +1,28 @@
+---
+'@backstage/plugin-search-react': minor
+---
+
+The search query state now has an optional `pageLimit` property that determines how many results will be requested per page, it defaults to 25.
+
+Examples:
+_Basic_
+
+```jsx
+
Add a GEORDI_OUTPUT_DIR setting
\",\n \"type\": \"rendered\"\n }\n },\n \"hash\": \"f7591a13eda445d9a9167f98eb870319f4b6c2d8\",\n \"repository\": {\n \"name\": \"geordi\",\n \"type\": \"repository\",\n \"full_name\": \"bitbucket/geordi\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/bitbucket/geordi\"\n },\n \"avatar\": {\n \"href\": \"https://bytebucket.org/ravatar/%7B85d08b4e-571d-44e9-a507-fa476535aa98%7D?ts=1730260\"\n }\n },\n \"uuid\": \"{85d08b4e-571d-44e9-a507-fa476535aa98}\"\n },\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/commit/f7591a13eda445d9a9167f98eb870319f4b6c2d8\"\n },\n \"comments\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/commit/f7591a13eda445d9a9167f98eb870319f4b6c2d8/comments\"\n },\n \"patch\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/patch/f7591a13eda445d9a9167f98eb870319f4b6c2d8\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/bitbucket/geordi/commits/f7591a13eda445d9a9167f98eb870319f4b6c2d8\"\n },\n \"diff\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/diff/f7591a13eda445d9a9167f98eb870319f4b6c2d8\"\n },\n \"approve\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/commit/f7591a13eda445d9a9167f98eb870319f4b6c2d8/approve\"\n },\n \"statuses\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/commit/f7591a13eda445d9a9167f98eb870319f4b6c2d8/statuses\"\n }\n },\n \"author\": {\n \"raw\": \"Brodie Rao \",\n \"type\": \"author\",\n \"user\": {\n \"display_name\": \"Brodie Rao\",\n \"uuid\": \"{9484702e-c663-4afd-aefb-c93a8cd31c28}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/users/%7B9484702e-c663-4afd-aefb-c93a8cd31c28%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B9484702e-c663-4afd-aefb-c93a8cd31c28%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/557058:3aae1e05-702a-41e5-81c8-f36f29afb6ca/613070db-28b0-421f-8dba-ae8a87e2a5c7/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"brodie\",\n \"account_id\": \"557058:3aae1e05-702a-41e5-81c8-f36f29afb6ca\"\n }\n },\n \"summary\": {\n \"raw\": \"Add a GEORDI_OUTPUT_DIR setting\",\n \"markup\": \"markdown\",\n \"html\": \"Add a GEORDI_OUTPUT_DIR setting
\",\n \"type\": \"rendered\"\n },\n \"participants\": [],\n \"parents\": [\n {\n \"type\": \"commit\",\n \"hash\": \"f06941fec4ef6bcb0c2456927a0cf258fa4f899b\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/commit/f06941fec4ef6bcb0c2456927a0cf258fa4f899b\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/bitbucket/geordi/commits/f06941fec4ef6bcb0c2456927a0cf258fa4f899b\"\n }\n }\n }\n ],\n \"date\": \"2012-07-16T19:37:54+00:00\",\n \"message\": \"Add a GEORDI_OUTPUT_DIR setting\",\n \"type\": \"commit\"\n}\n```", + "summary": "Get a commit", "responses": { "200": { "description": "The commit object", @@ -1696,8 +1789,6 @@ } } }, - "tags": ["Commits"], - "summary": "Get a commit", "security": [ { "oauth2": ["repository"] @@ -1708,8 +1799,7 @@ { "api_key": [] } - ], - "description": "Returns the specified commit.\n\nExample:\n\n```\n$ curl https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/commit/f7591a1\n{\n \"rendered\": {\n \"message\": {\n \"raw\": \"Add a GEORDI_OUTPUT_DIR setting\",\n \"markup\": \"markdown\",\n \"html\": \"Add a GEORDI_OUTPUT_DIR setting
\",\n \"type\": \"rendered\"\n }\n },\n \"hash\": \"f7591a13eda445d9a9167f98eb870319f4b6c2d8\",\n \"repository\": {\n \"name\": \"geordi\",\n \"type\": \"repository\",\n \"full_name\": \"bitbucket/geordi\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/bitbucket/geordi\"\n },\n \"avatar\": {\n \"href\": \"https://bytebucket.org/ravatar/%7B85d08b4e-571d-44e9-a507-fa476535aa98%7D?ts=1730260\"\n }\n },\n \"uuid\": \"{85d08b4e-571d-44e9-a507-fa476535aa98}\"\n },\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/commit/f7591a13eda445d9a9167f98eb870319f4b6c2d8\"\n },\n \"comments\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/commit/f7591a13eda445d9a9167f98eb870319f4b6c2d8/comments\"\n },\n \"patch\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/patch/f7591a13eda445d9a9167f98eb870319f4b6c2d8\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/bitbucket/geordi/commits/f7591a13eda445d9a9167f98eb870319f4b6c2d8\"\n },\n \"diff\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/diff/f7591a13eda445d9a9167f98eb870319f4b6c2d8\"\n },\n \"approve\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/commit/f7591a13eda445d9a9167f98eb870319f4b6c2d8/approve\"\n },\n \"statuses\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/commit/f7591a13eda445d9a9167f98eb870319f4b6c2d8/statuses\"\n }\n },\n \"author\": {\n \"raw\": \"Brodie Rao \",\n \"type\": \"author\",\n \"user\": {\n \"display_name\": \"Brodie Rao\",\n \"uuid\": \"{9484702e-c663-4afd-aefb-c93a8cd31c28}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/users/%7B9484702e-c663-4afd-aefb-c93a8cd31c28%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B9484702e-c663-4afd-aefb-c93a8cd31c28%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/557058:3aae1e05-702a-41e5-81c8-f36f29afb6ca/613070db-28b0-421f-8dba-ae8a87e2a5c7/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"brodie\",\n \"account_id\": \"557058:3aae1e05-702a-41e5-81c8-f36f29afb6ca\"\n }\n },\n \"summary\": {\n \"raw\": \"Add a GEORDI_OUTPUT_DIR setting\",\n \"markup\": \"markdown\",\n \"html\": \"Add a GEORDI_OUTPUT_DIR setting
\",\n \"type\": \"rendered\"\n },\n \"participants\": [],\n \"parents\": [\n {\n \"type\": \"commit\",\n \"hash\": \"f06941fec4ef6bcb0c2456927a0cf258fa4f899b\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/bitbucket/geordi/commit/f06941fec4ef6bcb0c2456927a0cf258fa4f899b\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/bitbucket/geordi/commits/f06941fec4ef6bcb0c2456927a0cf258fa4f899b\"\n }\n }\n }\n ],\n \"date\": \"2012-07-16T19:37:54+00:00\",\n \"message\": \"Add a GEORDI_OUTPUT_DIR setting\",\n \"type\": \"commit\"\n}\n```" + ] }, "parameters": [ { @@ -1743,6 +1833,9 @@ }, "/repositories/{workspace}/{repo_slug}/commit/{commit}/approve": { "delete": { + "tags": ["Commits"], + "description": "Redact the authenticated user's approval of the specified commit.\n\nThis operation is only available to users that have explicit access to\nthe repository. In contrast, just the fact that a repository is\npublicly accessible to users does not give them the ability to approve\ncommits.", + "summary": "Unapprove a commit", "responses": { "204": { "description": "An empty response indicating the authenticated user's approval has been withdrawn." @@ -1758,8 +1851,6 @@ } } }, - "tags": ["Commits"], - "summary": "Unapprove a commit", "security": [ { "oauth2": ["repository:write"] @@ -1770,10 +1861,12 @@ { "api_key": [] } - ], - "description": "Redact the authenticated user's approval of the specified commit.\n\nThis operation is only available to users that have explicit access to\nthe repository. In contrast, just the fact that a repository is\npublicly accessible to users does not give them the ability to approve\ncommits." + ] }, "post": { + "tags": ["Commits"], + "description": "Approve the specified commit as the authenticated user.\n\nThis operation is only available to users that have explicit access to\nthe repository. In contrast, just the fact that a repository is\npublicly accessible to users does not give them the ability to approve\ncommits.", + "summary": "Approve a commit", "responses": { "200": { "description": "The `participant` object recording that the authenticated user approved the commit.", @@ -1796,8 +1889,6 @@ } } }, - "tags": ["Commits"], - "summary": "Approve a commit", "security": [ { "oauth2": ["repository:write"] @@ -1808,8 +1899,7 @@ { "api_key": [] } - ], - "description": "Approve the specified commit as the authenticated user.\n\nThis operation is only available to users that have explicit access to\nthe repository. In contrast, just the fact that a repository is\npublicly accessible to users does not give them the ability to approve\ncommits." + ] }, "parameters": [ { @@ -1843,6 +1933,9 @@ }, "/repositories/{workspace}/{repo_slug}/commit/{commit}/comments": { "get": { + "tags": ["Commits"], + "description": "Returns the commit's comments.\n\nThis includes both global and inline comments.\n\nThe default sorting is oldest to newest and can be overridden with\nthe `sort` query parameter.", + "summary": "List a commit's comments", "responses": { "200": { "description": "A paginated list of commit comments.", @@ -1875,8 +1968,6 @@ } } ], - "tags": ["Commits"], - "summary": "List a commit's comments", "security": [ { "oauth2": ["repository"] @@ -1887,10 +1978,12 @@ { "api_key": [] } - ], - "description": "Returns the commit's comments.\n\nThis includes both global and inline comments.\n\nThe default sorting is oldest to newest and can be overridden with\nthe `sort` query parameter." + ] }, "post": { + "tags": ["Commits"], + "description": "Creates new comment on the specified commit.\n\nTo post a reply to an existing comment, include the `parent.id` field:\n\n```\n$ curl https://api.bitbucket.org/2.0/repositories/atlassian/prlinks/commit/db9ba1e031d07a02603eae0e559a7adc010257fc/comments/ \\\n -X POST -u evzijst \\\n -H 'Content-Type: application/json' \\\n -d '{\"content\": {\"raw\": \"One more thing!\"},\n \"parent\": {\"id\": 5728901}}'\n```", + "summary": "Create comment for a commit", "responses": { "201": { "description": "The newly created comment.", @@ -1921,8 +2014,6 @@ "description": "The specified comment.", "required": true }, - "tags": ["Commits"], - "summary": "Create comment for a commit", "security": [ { "oauth2": ["repository"] @@ -1933,8 +2024,7 @@ { "api_key": [] } - ], - "description": "Creates new comment on the specified commit.\n\nTo post a reply to an existing comment, include the `parent.id` field:\n\n```\n$ curl https://api.bitbucket.org/2.0/repositories/atlassian/prlinks/commit/db9ba1e031d07a02603eae0e559a7adc010257fc/comments/ \\\n -X POST -u evzijst \\\n -H 'Content-Type: application/json' \\\n -d '{\"content\": {\"raw\": \"One more thing!\"},\n \"parent\": {\"id\": 5728901}}'\n```" + ] }, "parameters": [ { @@ -1968,6 +2058,9 @@ }, "/repositories/{workspace}/{repo_slug}/commit/{commit}/comments/{comment_id}": { "get": { + "tags": ["Commits"], + "description": "Returns the specified commit comment.", + "summary": "Get a commit comment", "responses": { "200": { "description": "The commit comment.", @@ -1980,8 +2073,6 @@ } } }, - "tags": ["Commits"], - "summary": "Get a commit comment", "security": [ { "oauth2": ["repository"] @@ -1992,8 +2083,7 @@ { "api_key": [] } - ], - "description": "Returns the specified commit comment." + ] }, "parameters": [ { @@ -2041,48 +2131,51 @@ "description": "An empty response." } }, + "operationId": "updateCommitHostedPropertyValue", + "summary": "Update a commit application property", + "description": "Update an [application property](/cloud/bitbucket/application-properties/) value stored against a commit.", "parameters": [ { "required": true, - "description": "The repository container; either the workspace slug or the UUID in curly braces.", "in": "path", "name": "workspace", + "description": "The repository container; either the workspace slug or the UUID in curly braces.", "schema": { "type": "string" } }, { "required": true, - "description": "The repository.", "in": "path", "name": "repo_slug", + "description": "The repository.", "schema": { "type": "string" } }, { "required": true, - "description": "The commit.", "in": "path", "name": "commit", + "description": "The commit.", "schema": { "type": "string" } }, { "required": true, - "description": "The key of the Connect app.", "in": "path", "name": "app_key", + "description": "The key of the Connect app.", "schema": { "type": "string" } }, { "required": true, - "description": "The name of the property.", "in": "path", "name": "property_name", + "description": "The name of the property.", "schema": { "type": "string" } @@ -2091,10 +2184,7 @@ "requestBody": { "$ref": "#/components/requestBodies/application_property" }, - "tags": ["properties"], - "description": "Update an [application property](/cloud/bitbucket/application-properties/) value stored against a commit.", - "summary": "Update a commit application property", - "operationId": "updateCommitHostedPropertyValue" + "tags": ["properties"] }, "delete": { "responses": { @@ -2102,57 +2192,57 @@ "description": "An empty response." } }, + "operationId": "deleteCommitHostedPropertyValue", + "summary": "Delete a commit application property", + "description": "Delete an [application property](/cloud/bitbucket/application-properties/) value stored against a commit.", "parameters": [ { "required": true, - "description": "The repository container; either the workspace slug or the UUID in curly braces.", "in": "path", "name": "workspace", + "description": "The repository container; either the workspace slug or the UUID in curly braces.", "schema": { "type": "string" } }, { "required": true, - "description": "The repository.", "in": "path", "name": "repo_slug", + "description": "The repository.", "schema": { "type": "string" } }, { "required": true, - "description": "The commit.", "in": "path", "name": "commit", + "description": "The commit.", "schema": { "type": "string" } }, { "required": true, - "description": "The key of the Connect app.", "in": "path", "name": "app_key", + "description": "The key of the Connect app.", "schema": { "type": "string" } }, { "required": true, - "description": "The name of the property.", "in": "path", "name": "property_name", + "description": "The name of the property.", "schema": { "type": "string" } } ], - "tags": ["properties"], - "description": "Delete an [application property](/cloud/bitbucket/application-properties/) value stored against a commit.", - "summary": "Delete a commit application property", - "operationId": "deleteCommitHostedPropertyValue" + "tags": ["properties"] }, "get": { "responses": { @@ -2167,61 +2257,116 @@ } } }, + "operationId": "getCommitHostedPropertyValue", + "summary": "Get a commit application property", + "description": "Retrieve an [application property](/cloud/bitbucket/application-properties/) value stored against a commit.", "parameters": [ { "required": true, - "description": "The repository container; either the workspace slug or the UUID in curly braces.", "in": "path", "name": "workspace", + "description": "The repository container; either the workspace slug or the UUID in curly braces.", "schema": { "type": "string" } }, { "required": true, - "description": "The repository.", "in": "path", "name": "repo_slug", + "description": "The repository.", "schema": { "type": "string" } }, { "required": true, - "description": "The commit.", "in": "path", "name": "commit", + "description": "The commit.", "schema": { "type": "string" } }, { "required": true, - "description": "The key of the Connect app.", "in": "path", "name": "app_key", + "description": "The key of the Connect app.", "schema": { "type": "string" } }, { "required": true, - "description": "The name of the property.", "in": "path", "name": "property_name", + "description": "The name of the property.", "schema": { "type": "string" } } ], - "tags": ["properties"], - "description": "Retrieve an [application property](/cloud/bitbucket/application-properties/) value stored against a commit.", - "summary": "Get a commit application property", - "operationId": "getCommitHostedPropertyValue" + "tags": ["properties"] } }, "/repositories/{workspace}/{repo_slug}/commit/{commit}/pullrequests": { "get": { + "tags": ["Pullrequests"], + "summary": "List pull requests that contain a commit", + "description": "Returns a paginated list of all pull requests as part of which this commit was reviewed. Pull Request Commit Links app must be installed first before using this API; installation automatically occurs when 'Go to pull request' is clicked from the web interface for a commit's details.", + "operationId": "getPullrequestsForCommit", + "parameters": [ + { + "name": "workspace", + "in": "path", + "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "in": "path", + "description": "The repository; either the UUID in curly braces, or the slug", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "commit", + "in": "path", + "description": "The SHA1 of the commit", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Which page to retrieve", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "default": 1 + } + }, + { + "name": "pagelen", + "in": "query", + "description": "How many pull requests to retrieve per page", + "required": false, + "schema": { + "type": "integer", + "format": "int32", + "default": 30 + } + } + ], "responses": { "200": { "description": "The paginated list of pull requests.", @@ -2253,66 +2398,44 @@ } } } - }, - "parameters": [ - { - "required": true, - "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces", - "in": "path", - "name": "workspace", - "schema": { - "type": "string" - } - }, - { - "required": true, - "description": "The repository; either the UUID in curly braces, or the slug", - "in": "path", - "name": "repo_slug", - "schema": { - "type": "string" - } - }, - { - "required": true, - "description": "The SHA1 of the commit", - "in": "path", - "name": "commit", - "schema": { - "type": "string" - } - }, - { - "description": "Which page to retrieve", - "required": false, - "in": "query", - "name": "page", - "schema": { - "type": "integer", - "format": "int32", - "default": 1 - } - }, - { - "description": "How many pull requests to retrieve per page", - "required": false, - "in": "query", - "name": "pagelen", - "schema": { - "type": "integer", - "format": "int32", - "default": 30 - } - } - ], - "tags": ["Pullrequests"], - "summary": "List pull requests that contain a commit", - "operationId": "getPullrequestsForCommit", - "description": "Returns a paginated list of all pull requests as part of which this commit was reviewed. Pull Request Commit Links app must be installed first before using this API; installation automatically occurs when 'Go to pull request' is clicked from the web interface for a commit's details." + } } }, "/repositories/{workspace}/{repo_slug}/commit/{commit}/reports": { "get": { + "tags": ["Reports", "Commits"], + "description": "Returns a paginated list of Reports linked to this commit.", + "summary": "List reports", + "operationId": "getReportsForCommit", + "parameters": [ + { + "name": "workspace", + "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "commit", + "description": "The commit for which to retrieve reports.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], "responses": { "200": { "description": "OK", @@ -2324,44 +2447,64 @@ } } } - }, + } + } + }, + "/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}": { + "put": { + "tags": ["Reports", "Commits"], + "description": "Creates or updates a report for the specified commit.\nTo upload a report, make sure to generate an ID that is unique across all reports for that commit. If you want to use an existing id from your own system, we recommend prefixing it with your system's name to avoid collisions, for example, mySystem-001.\n\n### Sample cURL request:\n```\ncurl --request PUT 'https://api.bitbucket.org/2.0/repositories/Removed assignee, changed kind and priority.
\",\n \"type\": \"rendered\"\n },\n \"type\": \"issue_change\",\n \"id\": 2\n }\n ],\n \"page\": 1\n}\n```\n\nChanges support [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) that\ncan be used to search for specific changes. For instance, to see\nwhen an issue transitioned to \"resolved\":\n\n```\n$ curl -s https://api.bitbucket.org/2.0/repositories/site/master/issues/1/changes \\\n -G --data-urlencode='q=changes.state.new = \"resolved\"'\n```\n\nThis resource is only available on repositories that have the issue\ntracker enabled.\n\nN.B.\n\nThe `changes.assignee` and `changes.assignee_account_id` fields are not\na `user` object. Instead, they contain the raw `username` and\n`account_id` of the user. This is to protect the integrity of the audit\nlog even after a user account gets deleted.\n\nThe `changes.assignee` field is deprecated will disappear in the\nfuture. Use `changes.assignee_account_id` instead.", + "summary": "List changes on an issue", "responses": { "200": { "description": "Returns all the issue changes that were made on the specified issue.", @@ -6591,8 +6785,6 @@ } } ], - "tags": ["Issue tracker"], - "summary": "List changes on an issue", "security": [ { "oauth2": ["issue"] @@ -6603,10 +6795,12 @@ { "api_key": [] } - ], - "description": "Returns the list of all changes that have been made to the specified\nissue. Changes are returned in chronological order with the oldest\nchange first.\n\nEach time an issue is edited in the UI or through the API, an immutable\nchange record is created under the `/issues/123/changes` endpoint. It\nalso has a comment associated with the change.\n\nNote that this operation is changing significantly, due to privacy changes.\nSee the [announcement](https://developer.atlassian.com/cloud/bitbucket/bitbucket-api-changes-gdpr/#changes-to-the-issue-changes-api)\nfor details.\n\n```\n$ curl -s https://api.bitbucket.org/2.0/repositories/evzijst/dogslow/issues/1/changes - | jq .\n\n{\n \"pagelen\": 20,\n \"values\": [\n {\n \"changes\": {\n \"priority\": {\n \"new\": \"trivial\",\n \"old\": \"major\"\n },\n \"assignee\": {\n \"new\": \"\",\n \"old\": \"evzijst\"\n },\n \"assignee_account_id\": {\n \"new\": \"\",\n \"old\": \"557058:c0b72ad0-1cb5-4018-9cdc-0cde8492c443\"\n },\n \"kind\": {\n \"new\": \"enhancement\",\n \"old\": \"bug\"\n }\n },\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/evzijst/dogslow/issues/1/changes/2\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/evzijst/dogslow/issues/1#comment-2\"\n }\n },\n \"issue\": {\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/evzijst/dogslow/issues/1\"\n }\n },\n \"type\": \"issue\",\n \"id\": 1,\n \"repository\": {\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/evzijst/dogslow\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/evzijst/dogslow\"\n },\n \"avatar\": {\n \"href\": \"https://bitbucket.org/evzijst/dogslow/avatar/32/\"\n }\n },\n \"type\": \"repository\",\n \"name\": \"dogslow\",\n \"full_name\": \"evzijst/dogslow\",\n \"uuid\": \"{988b17c6-1a47-4e70-84ee-854d5f012bf6}\"\n },\n \"title\": \"Updated title\"\n },\n \"created_on\": \"2018-03-03T00:35:28.353630+00:00\",\n \"user\": {\n \"username\": \"evzijst\",\n \"nickname\": \"evzijst\",\n \"display_name\": \"evzijst\",\n \"type\": \"user\",\n \"uuid\": \"{aaa7972b-38af-4fb1-802d-6e3854c95778}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/users/evzijst\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/evzijst/\"\n },\n \"avatar\": {\n \"href\": \"https://bitbucket.org/account/evzijst/avatar/32/\"\n }\n }\n },\n \"message\": {\n \"raw\": \"Removed assignee, changed kind and priority.\",\n \"markup\": \"markdown\",\n \"html\": \"Removed assignee, changed kind and priority.
\",\n \"type\": \"rendered\"\n },\n \"type\": \"issue_change\",\n \"id\": 2\n }\n ],\n \"page\": 1\n}\n```\n\nChanges support [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) that\ncan be used to search for specific changes. For instance, to see\nwhen an issue transitioned to \"resolved\":\n\n```\n$ curl -s https://api.bitbucket.org/2.0/repositories/site/master/issues/1/changes \\\n -G --data-urlencode='q=changes.state.new = \"resolved\"'\n```\n\nThis resource is only available on repositories that have the issue\ntracker enabled.\n\nN.B.\n\nThe `changes.assignee` and `changes.assignee_account_id` fields are not\na `user` object. Instead, they contain the raw `username` and\n`account_id` of the user. This is to protect the integrity of the audit\nlog even after a user account gets deleted.\n\nThe `changes.assignee` field is deprecated will disappear in the\nfuture. Use `changes.assignee_account_id` instead." + ] }, "post": { + "tags": ["Issue tracker"], + "description": "Makes a change to the specified issue.\n\nFor example, to change an issue's state and assignee, create a new\nchange object that modifies these fields:\n\n```\ncurl https://api.bitbucket.org/2.0/site/master/issues/1234/changes \\\n -s -u evzijst -X POST -H \"Content-Type: application/json\" \\\n -d '{\n \"changes\": {\n \"assignee_account_id\": {\n \"new\": \"557058:c0b72ad0-1cb5-4018-9cdc-0cde8492c443\"\n },\n \"state\": {\n \"new\": 'resolved\"\n }\n }\n \"message\": {\n \"raw\": \"This is now resolved.\"\n }\n }'\n```\n\nThe above example also includes a custom comment to go alongside the\nchange. This comment will also be visible on the issue page in the UI.\n\nThe fields of the `changes` object are strings, not objects. This\nallows for immutable change log records, even after user accounts,\nmilestones, or other objects recorded in a change entry, get renamed or\ndeleted.\n\nThe `assignee_account_id` field stores the account id. When POSTing a\nnew change and changing the assignee, the client should therefore use\nthe user's account_id in the `changes.assignee_account_id.new` field.\n\nThis call requires authentication. Private repositories or private\nissue trackers require the caller to authenticate with an account that\nhas appropriate authorization.", + "summary": "Modify the state of an issue", "responses": { "201": { "description": "The newly created issue change.", @@ -6668,8 +6862,6 @@ "description": "The new issue state change. The only required elements are `changes.[].new`. All other elements can be omitted from the body.", "required": true }, - "tags": ["Issue tracker"], - "summary": "Modify the state of an issue", "security": [ { "oauth2": ["issue:write"] @@ -6680,8 +6872,7 @@ { "api_key": [] } - ], - "description": "Makes a change to the specified issue.\n\nFor example, to change an issue's state and assignee, create a new\nchange object that modifies these fields:\n\n```\ncurl https://api.bitbucket.org/2.0/site/master/issues/1234/changes \\\n -s -u evzijst -X POST -H \"Content-Type: application/json\" \\\n -d '{\n \"changes\": {\n \"assignee_account_id\": {\n \"new\": \"557058:c0b72ad0-1cb5-4018-9cdc-0cde8492c443\"\n },\n \"state\": {\n \"new\": 'resolved\"\n }\n }\n \"message\": {\n \"raw\": \"This is now resolved.\"\n }\n }'\n```\n\nThe above example also includes a custom comment to go alongside the\nchange. This comment will also be visible on the issue page in the UI.\n\nThe fields of the `changes` object are strings, not objects. This\nallows for immutable change log records, even after user accounts,\nmilestones, or other objects recorded in a change entry, get renamed or\ndeleted.\n\nThe `assignee_account_id` field stores the account id. When POSTing a\nnew change and changing the assignee, the client should therefore use\nthe user's account_id in the `changes.assignee_account_id.new` field.\n\nThis call requires authentication. Private repositories or private\nissue trackers require the caller to authenticate with an account that\nhas appropriate authorization." + ] }, "parameters": [ { @@ -6715,6 +6906,9 @@ }, "/repositories/{workspace}/{repo_slug}/issues/{issue_id}/changes/{change_id}": { "get": { + "tags": ["Issue tracker"], + "description": "Returns the specified issue change object.\n\nThis resource is only available on repositories that have the issue\ntracker enabled.", + "summary": "Get issue change object", "responses": { "200": { "description": "The specified issue change object.", @@ -6737,8 +6931,6 @@ } } }, - "tags": ["Issue tracker"], - "summary": "Get issue change object", "security": [ { "oauth2": ["issue"] @@ -6749,8 +6941,7 @@ { "api_key": [] } - ], - "description": "Returns the specified issue change object.\n\nThis resource is only available on repositories that have the issue\ntracker enabled." + ] }, "parameters": [ { @@ -6793,6 +6984,9 @@ }, "/repositories/{workspace}/{repo_slug}/issues/{issue_id}/comments": { "get": { + "tags": ["Issue tracker"], + "description": "Returns a paginated list of all comments that were made on the\nspecified issue.\n\nThe default sorting is oldest to newest and can be overridden with\nthe `sort` query parameter.\n\nThis endpoint also supports filtering and sorting of the results. See\n[filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for more details.", + "summary": "List comments on an issue", "responses": { "200": { "description": "A paginated list of issue comments.", @@ -6816,8 +7010,6 @@ } } ], - "tags": ["Issue tracker"], - "summary": "List comments on an issue", "security": [ { "oauth2": ["issue"] @@ -6828,10 +7020,12 @@ { "api_key": [] } - ], - "description": "Returns a paginated list of all comments that were made on the\nspecified issue.\n\nThe default sorting is oldest to newest and can be overridden with\nthe `sort` query parameter.\n\nThis endpoint also supports filtering and sorting of the results. See\n[filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for more details." + ] }, "post": { + "tags": ["Issue tracker"], + "description": "Creates a new issue comment.\n\n```\n$ curl https://api.bitbucket.org/2.0/repositories/atlassian/prlinks/issues/42/comments/ \\\n -X POST -u evzijst \\\n -H 'Content-Type: application/json' \\\n -d '{\"content\": {\"raw\": \"Lorem ipsum.\"}}'\n```", + "summary": "Create a comment on an issue", "responses": { "201": { "description": "The newly created comment.", @@ -6866,8 +7060,6 @@ "description": "The new issue comment object.", "required": true }, - "tags": ["Issue tracker"], - "summary": "Create a comment on an issue", "security": [ { "oauth2": ["issue:write"] @@ -6878,8 +7070,7 @@ { "api_key": [] } - ], - "description": "Creates a new issue comment.\n\n```\n$ curl https://api.bitbucket.org/2.0/repositories/atlassian/prlinks/issues/42/comments/ \\\n -X POST -u evzijst \\\n -H 'Content-Type: application/json' \\\n -d '{\"content\": {\"raw\": \"Lorem ipsum.\"}}'\n```" + ] }, "parameters": [ { @@ -6913,16 +7104,14 @@ }, "/repositories/{workspace}/{repo_slug}/issues/{issue_id}/comments/{comment_id}": { "delete": { + "tags": ["Issue tracker"], + "description": "Deletes the specified comment.", + "summary": "Delete a comment on an issue", "responses": { "204": { "description": "Indicates successful deletion." } }, - "requestBody": { - "$ref": "#/components/requestBodies/issue_comment" - }, - "tags": ["Issue tracker"], - "summary": "Delete a comment on an issue", "security": [ { "oauth2": ["issue:write"] @@ -6933,10 +7122,12 @@ { "api_key": [] } - ], - "description": "Deletes the specified comment." + ] }, "get": { + "tags": ["Issue tracker"], + "description": "Returns the specified issue comment object.", + "summary": "Get a comment on an issue", "responses": { "200": { "description": "The issue comment.", @@ -6949,8 +7140,6 @@ } } }, - "tags": ["Issue tracker"], - "summary": "Get a comment on an issue", "security": [ { "oauth2": ["issue"] @@ -6961,10 +7150,12 @@ { "api_key": [] } - ], - "description": "Returns the specified issue comment object." + ] }, "put": { + "tags": ["Issue tracker"], + "description": "Updates the content of the specified issue comment. Note that only\nthe `content.raw` field can be modified.\n\n```\n$ curl https://api.bitbucket.org/2.0/repositories/atlassian/prlinks/issues/42/comments/5728901 \\\n -X PUT -u evzijst \\\n -H 'Content-Type: application/json' \\\n -d '{\"content\": {\"raw\": \"Lorem ipsum.\"}'\n```", + "summary": "Update a comment on an issue", "responses": { "200": { "description": "The updated issue comment.", @@ -6988,10 +7179,16 @@ } }, "requestBody": { - "$ref": "#/components/requestBodies/issue_comment" + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/issue_comment" + } + } + }, + "description": "The updated comment.", + "required": true }, - "tags": ["Issue tracker"], - "summary": "Update a comment on an issue", "security": [ { "oauth2": ["issue:write"] @@ -7002,8 +7199,7 @@ { "api_key": [] } - ], - "description": "Updates the content of the specified issue comment. Note that only\nthe `content.raw` field can be modified.\n\n```\n$ curl https://api.bitbucket.org/2.0/repositories/atlassian/prlinks/issues/42/comments/5728901 \\\n -X PUT -u evzijst \\\n -H 'Content-Type: application/json' \\\n -d '{\"content\": {\"raw\": \"Lorem ipsum.\"}'\n```" + ] }, "parameters": [ { @@ -7046,6 +7242,9 @@ }, "/repositories/{workspace}/{repo_slug}/issues/{issue_id}/vote": { "delete": { + "tags": ["Issue tracker"], + "description": "Retract your vote.", + "summary": "Remove vote for an issue", "responses": { "default": { "description": "Unexpected error.", @@ -7058,8 +7257,6 @@ } } }, - "tags": ["Issue tracker"], - "summary": "Remove vote for an issue", "security": [ { "oauth2": ["account:write", "issue:write"] @@ -7070,10 +7267,12 @@ { "api_key": [] } - ], - "description": "Retract your vote." + ] }, "get": { + "tags": ["Issue tracker"], + "description": "Check whether the authenticated user has voted for this issue.\nA 204 status code indicates that the user has voted, while a 404\nimplies they haven't.", + "summary": "Check if current user voted for an issue", "responses": { "204": { "description": "If the authenticated user has not voted for this issue.", @@ -7106,8 +7305,6 @@ } } }, - "tags": ["Issue tracker"], - "summary": "Check if current user voted for an issue", "security": [ { "oauth2": ["account", "issue"] @@ -7118,10 +7315,12 @@ { "api_key": [] } - ], - "description": "Check whether the authenticated user has voted for this issue.\nA 204 status code indicates that the user has voted, while a 404\nimplies they haven't." + ] }, "put": { + "tags": ["Issue tracker"], + "description": "Vote for this issue.\n\nTo cast your vote, do an empty PUT. The 204 status code indicates that\nthe operation was successful.", + "summary": "Vote for an issue", "responses": { "204": { "description": "Indicating the authenticated user has cast their vote successfully.", @@ -7154,8 +7353,6 @@ } } }, - "tags": ["Issue tracker"], - "summary": "Vote for an issue", "security": [ { "oauth2": ["account:write", "issue"] @@ -7166,8 +7363,7 @@ { "api_key": [] } - ], - "description": "Vote for this issue.\n\nTo cast your vote, do an empty PUT. The 204 status code indicates that\nthe operation was successful." + ] }, "parameters": [ { @@ -7201,6 +7397,9 @@ }, "/repositories/{workspace}/{repo_slug}/issues/{issue_id}/watch": { "delete": { + "tags": ["Issue tracker"], + "description": "Stop watching this issue.", + "summary": "Stop watching an issue", "responses": { "204": { "description": "Indicates that the authenticated user successfully stopped watching this issue.", @@ -7233,8 +7432,6 @@ } } }, - "tags": ["Issue tracker"], - "summary": "Stop watching an issue", "security": [ { "oauth2": ["account:write", "issue:write"] @@ -7245,10 +7442,12 @@ { "api_key": [] } - ], - "description": "Stop watching this issue." + ] }, "get": { + "tags": ["Issue tracker"], + "description": "Indicated whether or not the authenticated user is watching this\nissue.", + "summary": "Check if current user is watching a issue", "responses": { "204": { "description": "If the authenticated user is watching this issue.", @@ -7281,8 +7480,6 @@ } } }, - "tags": ["Issue tracker"], - "summary": "Check if current user is watching a issue", "security": [ { "oauth2": ["account", "issue"] @@ -7293,10 +7490,12 @@ { "api_key": [] } - ], - "description": "Indicated whether or not the authenticated user is watching this\nissue." + ] }, "put": { + "tags": ["Issue tracker"], + "description": "Start watching this issue.\n\nTo start watching this issue, do an empty PUT. The 204 status code\nindicates that the operation was successful.", + "summary": "Watch an issue", "responses": { "204": { "description": "Indicates that the authenticated user successfully started watching this issue.", @@ -7329,8 +7528,6 @@ } } }, - "tags": ["Issue tracker"], - "summary": "Watch an issue", "security": [ { "oauth2": ["account:write", "issue"] @@ -7341,8 +7538,7 @@ { "api_key": [] } - ], - "description": "Start watching this issue.\n\nTo start watching this issue, do an empty PUT. The 204 status code\nindicates that the operation was successful." + ] }, "parameters": [ { @@ -7376,6 +7572,9 @@ }, "/repositories/{workspace}/{repo_slug}/merge-base/{revspec}": { "get": { + "tags": ["Commits"], + "description": "Returns the best common ancestor between two commits, specified in a revspec\nof 2 commits (e.g. 3a8b42..9ff173).\n\nIf more than one best common ancestor exists, only one will be returned. It is\nunspecified which will be returned.", + "summary": "Get the common ancestor between two commits", "responses": { "200": { "description": "The merge base of the provided spec.", @@ -7418,8 +7617,6 @@ } } }, - "tags": ["Commits"], - "summary": "Get the common ancestor between two commits", "security": [ { "oauth2": ["repository"] @@ -7430,8 +7627,7 @@ { "api_key": [] } - ], - "description": "Returns the best common ancestor between two commits, specified in a revspec\nof 2 commits (e.g. 3a8b42..9ff173).\n\nIf more than one best common ancestor exists, only one will be returned. It is\nunspecified which will be returned." + ] }, "parameters": [ { @@ -7465,6 +7661,9 @@ }, "/repositories/{workspace}/{repo_slug}/milestones": { "get": { + "tags": ["Issue tracker"], + "description": "Returns the milestones that have been defined in the issue tracker.\n\nThis resource is only available on repositories that have the issue\ntracker enabled.", + "summary": "List milestones", "responses": { "200": { "description": "The milestones that have been defined in the issue tracker.", @@ -7487,8 +7686,6 @@ } } }, - "tags": ["Issue tracker"], - "summary": "List milestones", "security": [ { "oauth2": ["issue"] @@ -7499,8 +7696,7 @@ { "api_key": [] } - ], - "description": "Returns the milestones that have been defined in the issue tracker.\n\nThis resource is only available on repositories that have the issue\ntracker enabled." + ] }, "parameters": [ { @@ -7525,6 +7721,9 @@ }, "/repositories/{workspace}/{repo_slug}/milestones/{milestone_id}": { "get": { + "tags": ["Issue tracker"], + "description": "Returns the specified issue tracker milestone object.", + "summary": "Get a milestone", "responses": { "200": { "description": "The specified milestone object.", @@ -7547,8 +7746,6 @@ } } }, - "tags": ["Issue tracker"], - "summary": "Get a milestone", "security": [ { "oauth2": ["issue"] @@ -7559,8 +7756,7 @@ { "api_key": [] } - ], - "description": "Returns the specified issue tracker milestone object." + ] }, "parameters": [ { @@ -7594,6 +7790,9 @@ }, "/repositories/{workspace}/{repo_slug}/patch/{spec}": { "get": { + "tags": ["Commits"], + "description": "Produces a raw patch for a single commit (diffed against its first\nparent), or a patch-series for a revspec of 2 commits (e.g.\n`3a8b42..9ff173` where the first commit represents the source and the\nsecond commit the destination).\n\nIn case of the latter (diffing a revspec), a patch series is returned\nfor the commits on the source branch (`3a8b42` and its ancestors in\nour example).\n\nWhile similar to diffs, patches:\n\n* Have a commit header (username, commit message, etc)\n* Do not support the `path=foo/bar.py` query parameter\n\nThe raw patch is returned as-is, in whatever encoding the files in the\nrepository use. It is not decoded into unicode. As such, the\ncontent-type is `text/plain`.", + "summary": "Get a patch for two commits", "responses": { "200": { "description": "The raw patches" @@ -7609,8 +7808,6 @@ } } }, - "tags": ["Commits"], - "summary": "Get a patch for two commits", "security": [ { "oauth2": ["repository"] @@ -7621,8 +7818,7 @@ { "api_key": [] } - ], - "description": "Produces a raw patch for a single commit (diffed against its first\nparent), or a patch-series for a revspec of 2 commits (e.g.\n`3a8b42..9ff173` where the first commit represents the source and the\nsecond commit the destination).\n\nIn case of the latter (diffing a revspec), a patch series is returned\nfor the commits on the source branch (`3a8b42` and its ancestors in\nour example).\n\nWhile similar to diffs, patches:\n\n* Have a commit header (username, commit message, etc)\n* Do not support the `path=foo/bar.py` query parameter\n\nThe raw patch is returned as-is, in whatever encoding the files in the\nrepository use. It is not decoded into unicode. As such, the\ncontent-type is `text/plain`." + ] }, "parameters": [ { @@ -7656,6 +7852,9 @@ }, "/repositories/{workspace}/{repo_slug}/permissions-config/groups": { "get": { + "tags": ["Repositories"], + "description": "Returns a paginated list of explicit group permissions for the given repository.\nThis endpoint does not support BBQL features.\n\nExample:\n\n```\n$ curl https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups\n\nHTTP/1.1 200\nLocation: https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups\n\n{\n \"pagelen\": 10,\n \"values\": [\n {\n \"type\": \"repository_group_permission\",\n \"group\": {\n \"type\": \"group\",\n \"name\": \"Administrators\",\n \"slug\": \"administrators\"\n },\n \"permission\": \"admin\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/\n geordi/permissions-config/groups/administrators\"\n }\n }\n },\n {\n \"type\": \"repository_group_permission\",\n \"group\": {\n \"type\": \"group\",\n \"name\": \"Developers\",\n \"slug\": \"developers\"\n },\n \"permission\": \"read\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/\n geordi/permissions-config/groups/developers\"\n }\n }\n }\n ],\n \"page\": 1,\n \"size\": 2\n}\n```", + "summary": "List explicit group permissions for a repository", "responses": { "200": { "description": "Paginated of explicit group permissions on the repository.", @@ -7698,8 +7897,6 @@ } } }, - "tags": ["Repositories"], - "summary": "List explicit group permissions for a repository", "security": [ { "oauth2": ["repository:admin"] @@ -7710,8 +7907,7 @@ { "api_key": [] } - ], - "description": "Returns a paginated list of explicit group permissions for the given repository.\nThis endpoint does not support BBQL features.\n\nExample:\n\n```\n$ curl https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups\n\nHTTP/1.1 200\nLocation: https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups\n\n{\n \"pagelen\": 10,\n \"values\": [\n {\n \"type\": \"repository_group_permission\",\n \"group\": {\n \"type\": \"group\",\n \"name\": \"Administrators\",\n \"slug\": \"administrators\"\n },\n \"permission\": \"admin\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/\n geordi/permissions-config/groups/administrators\"\n }\n }\n },\n {\n \"type\": \"repository_group_permission\",\n \"group\": {\n \"type\": \"group\",\n \"name\": \"Developers\",\n \"slug\": \"developers\"\n },\n \"permission\": \"read\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/\n geordi/permissions-config/groups/developers\"\n }\n }\n }\n ],\n \"page\": 1,\n \"size\": 2\n}\n```" + ] }, "parameters": [ { @@ -7736,6 +7932,9 @@ }, "/repositories/{workspace}/{repo_slug}/permissions-config/groups/{group_slug}": { "delete": { + "tags": ["Repositories"], + "description": "Deletes the repository group permission between the requested repository and group, if one exists.\n\nOnly users with admin permission for the repository may access this resource.\n\nExample:\n\n$ curl -X DELETE https://api.bitbucket.org/2.0/repositories/atlassian_tutorial\n/geordi/permissions-config/groups/developers\n\n\nHTTP/1.1 204", + "summary": "Delete an explicit group permission for a repository", "responses": { "204": { "description": "Group permission deleted" @@ -7771,8 +7970,6 @@ } } }, - "tags": ["Repositories"], - "summary": "Delete an explicit group permission for a repository", "security": [ { "oauth2": ["repository:admin"] @@ -7783,10 +7980,12 @@ { "api_key": [] } - ], - "description": "Deletes the repository group permission between the requested repository and group, if one exists.\n\nOnly users with admin permission for the repository may access this resource.\n\nExample:\n\n$ curl -X DELETE https://api.bitbucket.org/2.0/repositories/atlassian_tutorial\n/geordi/permissions-config/groups/developers\n\n\nHTTP/1.1 204" + ] }, "get": { + "tags": ["Repositories"], + "description": "Returns the group permission for a given group slug and repository\n\nOnly users with admin permission for the repository may access this resource.\n\nPermissions can be:\n\n* `admin`\n* `write`\n* `read`\n* `none`\n\nExample:\n\n```\n$ curl https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups/developers\n\nHTTP/1.1 200\nLocation:\nhttps://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups/developers\n\n{\n \"type\": \"repository_group_permission\",\n \"group\": {\n \"type\": \"group\",\n \"name\": \"Developers\",\n \"slug\": \"developers\"\n },\n \"repository\": {\n \"type\": \"repository\",\n \"name\": \"geordi\",\n \"full_name\": \"atlassian_tutorial/geordi\",\n \"uuid\": \"{85d08b4e-571d-44e9-a507-fa476535aa98}\"\n },\n \"permission\": \"read\",\n \"links\": {\n \"self\": {\n \"href\":\n \"https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups/developers\"\n }\n }\n}\n```", + "summary": "Get an explicit group permission for a repository", "responses": { "200": { "description": "Group permission for group slug and repository", @@ -7829,8 +8028,6 @@ } } }, - "tags": ["Repositories"], - "summary": "Get an explicit group permission for a repository", "security": [ { "oauth2": ["repository:admin"] @@ -7841,10 +8038,12 @@ { "api_key": [] } - ], - "description": "Returns the group permission for a given group slug and repository\n\nOnly users with admin permission for the repository may access this resource.\n\nPermissions can be:\n\n* `admin`\n* `write`\n* `read`\n* `none`\n\nExample:\n\n```\n$ curl https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups/developers\n\nHTTP/1.1 200\nLocation:\nhttps://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups/developers\n\n{\n \"type\": \"repository_group_permission\",\n \"group\": {\n \"type\": \"group\",\n \"name\": \"Developers\",\n \"slug\": \"developers\"\n },\n \"repository\": {\n \"type\": \"repository\",\n \"name\": \"geordi\",\n \"full_name\": \"atlassian_tutorial/geordi\",\n \"uuid\": \"{85d08b4e-571d-44e9-a507-fa476535aa98}\"\n },\n \"permission\": \"read\",\n \"links\": {\n \"self\": {\n \"href\":\n \"https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups/developers\"\n }\n }\n}\n```" + ] }, "put": { + "tags": ["Repositories"], + "description": "Updates the group permission if it exists.\n\nOnly users with admin permission for the repository may access this resource.\n\nThe only authentication method supported for this endpoint is via app passwords.\n\nPermissions can be:\n\n* `admin`\n* `write`\n* `read`\n\nExample:\n```\n$ curl -X PUT -H \"Content-Type: application/json\"\nhttps://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups/developers\n-d\n'{\n \"permission\": \"write\"\n}'\n\nHTTP/1.1 200\nLocation:\nhttps://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups/developers\n\n{\n \"type\": \"repository_group_permission\",\n \"group\": {\n \"type\": \"group\",\n \"name\": \"Developers\",\n \"slug\": \"developers\"\n },\n \"repository\": {\n \"type\": \"repository\",\n \"name\": \"geordi\",\n \"full_name\": \"atlassian_tutorial/geordi\",\n \"uuid\": \"{85d08b4e-571d-44e9-a507-fa476535aa98}\"\n },\n \"permission\": \"write\",\n \"links\": {\n \"self\": {\n \"href\":\n \"https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups/developers\"\n }\n }\n}\n```", + "summary": "Update an explicit group permission for a repository", "responses": { "200": { "description": "Group permission updated", @@ -7897,8 +8096,6 @@ } } }, - "tags": ["Repositories"], - "summary": "Update an explicit group permission for a repository", "security": [ { "oauth2": ["repository:admin"] @@ -7909,8 +8106,7 @@ { "api_key": [] } - ], - "description": "Updates the group permission if it exists.\n\nOnly users with admin permission for the repository may access this resource.\n\nThe only authentication method supported for this endpoint is via app passwords.\n\nPermissions can be:\n\n* `admin`\n* `write`\n* `read`\n\nExample:\n```\n$ curl -X PUT -H \"Content-Type: application/json\"\nhttps://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups/developers\n-d\n'{\n \"permission\": \"write\"\n}'\n\nHTTP/1.1 200\nLocation:\nhttps://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups/developers\n\n{\n \"type\": \"repository_group_permission\",\n \"group\": {\n \"type\": \"group\",\n \"name\": \"Developers\",\n \"slug\": \"developers\"\n },\n \"repository\": {\n \"type\": \"repository\",\n \"name\": \"geordi\",\n \"full_name\": \"atlassian_tutorial/geordi\",\n \"uuid\": \"{85d08b4e-571d-44e9-a507-fa476535aa98}\"\n },\n \"permission\": \"write\",\n \"links\": {\n \"self\": {\n \"href\":\n \"https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/groups/developers\"\n }\n }\n}\n```" + ] }, "parameters": [ { @@ -7944,6 +8140,9 @@ }, "/repositories/{workspace}/{repo_slug}/permissions-config/users": { "get": { + "tags": ["Repositories"], + "description": "Returns a paginated list of explicit user permissions for the given repository.\n\nExample:\n\n```\n$ curl https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/users\n\n{\n \"pagelen\": 10,\n \"values\": [\n {\n \"type\": \"repository_user_permission\",\n \"user\": {\n \"type\": \"user\",\n \"display_name\": \"Colin Cameron\",\n \"uuid\": \"{d301aafa-d676-4ee0-88be-962be7417567}\",\n \"account_id\": \"557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a\"\n },\n \"permission\": \"admin\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/\n permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a\"\n }\n }\n },\n {\n \"type\": \"repository_user_permission\",\n \"user\": {\n \"type\": \"user\",\n \"display_name\": \"Sean Conaty\",\n \"uuid\": \"{504c3b62-8120-4f0c-a7bc-87800b9d6f70}\",\n \"account_id\": \"557058:ba8948b2-49da-43a9-9e8b-e7249b8e324c\"\n },\n \"permission\": \"write\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0//repositories/atlassian_tutorial/geordi/\n permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324c\"\n }\n }\n }\n ],\n \"page\": 1,\n \"size\": 2\n}\n```", + "summary": "List explicit user permissions for a repository", "responses": { "200": { "description": "Paginated of explicit user permissions on the repository.", @@ -7986,8 +8185,6 @@ } } }, - "tags": ["Repositories"], - "summary": "List explicit user permissions for a repository", "security": [ { "oauth2": ["repository:admin"] @@ -7998,8 +8195,7 @@ { "api_key": [] } - ], - "description": "Returns a paginated list of explicit user permissions for the given repository.\n\nExample:\n\n```\n$ curl https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/permissions-config/users\n\n{\n \"pagelen\": 10,\n \"values\": [\n {\n \"type\": \"repository_user_permission\",\n \"user\": {\n \"type\": \"user\",\n \"display_name\": \"Colin Cameron\",\n \"uuid\": \"{d301aafa-d676-4ee0-88be-962be7417567}\",\n \"account_id\": \"557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a\"\n },\n \"permission\": \"admin\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/\n permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a\"\n }\n }\n },\n {\n \"type\": \"repository_user_permission\",\n \"user\": {\n \"type\": \"user\",\n \"display_name\": \"Sean Conaty\",\n \"uuid\": \"{504c3b62-8120-4f0c-a7bc-87800b9d6f70}\",\n \"account_id\": \"557058:ba8948b2-49da-43a9-9e8b-e7249b8e324c\"\n },\n \"permission\": \"write\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0//repositories/atlassian_tutorial/geordi/\n permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324c\"\n }\n }\n }\n ],\n \"page\": 1,\n \"size\": 2\n}\n```" + ] }, "parameters": [ { @@ -8024,6 +8220,9 @@ }, "/repositories/{workspace}/{repo_slug}/permissions-config/users/{selected_user_id}": { "delete": { + "tags": ["Repositories"], + "description": "Deletes the repository user permission between the requested repository and user, if one exists.\n\nOnly users with admin permission for the repository may access this resource.\n\nThe only authentication method for this endpoint is via app passwords.\n\n```\n$ curl -X DELETE https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/\npermissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a\n\n\nHTTP/1.1 204\n```", + "summary": "Delete an explicit user permission for a repository", "responses": { "204": { "description": "The repository user permission was deleted and no content returned." @@ -8059,8 +8258,6 @@ } } }, - "tags": ["Repositories"], - "summary": "Delete an explicit user permission for a repository", "security": [ { "oauth2": ["repository:admin"] @@ -8071,10 +8268,12 @@ { "api_key": [] } - ], - "description": "Deletes the repository user permission between the requested repository and user, if one exists.\n\nOnly users with admin permission for the repository may access this resource.\n\nThe only authentication method for this endpoint is via app passwords.\n\n```\n$ curl -X DELETE https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/\npermissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a\n\n\nHTTP/1.1 204\n```" + ] }, "get": { + "tags": ["Repositories"], + "description": "Returns the explicit user permission for a given user and repository.\n\nOnly users with admin permission for the repository may access this resource.\n\nPermissions can be:\n\n* `admin`\n* `write`\n* `read`\n* `none`\n\nExample:\n\n```\n$ curl 'https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/\n permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a'\n\nHTTP/1.1 200\nLocation: 'https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/\n permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a'\n\n{\n \"type\": \"repository_user_permission\",\n \"user\": {\n \"type\": \"user\",\n \"display_name\": \"Colin Cameron\",\n \"uuid\": \"{d301aafa-d676-4ee0-88be-962be7417567}\",\n \"account_id\": \"557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a\"\n },\n \"repository\": {\n \"type\": \"repository\",\n \"name\": \"geordi\",\n \"full_name\": \"atlassian_tutorial/geordi\",\n \"uuid\": \"{85d08b4e-571d-44e9-a507-fa476535aa98}\"\n },\n \"permission\": \"admin\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/\n permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a\"\n }\n }\n}\n```", + "summary": "Get an explicit user permission for a repository", "responses": { "200": { "description": "Explicit user permission for user and repository", @@ -8117,8 +8316,6 @@ } } }, - "tags": ["Repositories"], - "summary": "Get an explicit user permission for a repository", "security": [ { "oauth2": ["repository:admin"] @@ -8129,10 +8326,12 @@ { "api_key": [] } - ], - "description": "Returns the explicit user permission for a given user and repository.\n\nOnly users with admin permission for the repository may access this resource.\n\nPermissions can be:\n\n* `admin`\n* `write`\n* `read`\n* `none`\n\nExample:\n\n```\n$ curl 'https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/\n permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a'\n\nHTTP/1.1 200\nLocation: 'https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/\n permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a'\n\n{\n \"type\": \"repository_user_permission\",\n \"user\": {\n \"type\": \"user\",\n \"display_name\": \"Colin Cameron\",\n \"uuid\": \"{d301aafa-d676-4ee0-88be-962be7417567}\",\n \"account_id\": \"557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a\"\n },\n \"repository\": {\n \"type\": \"repository\",\n \"name\": \"geordi\",\n \"full_name\": \"atlassian_tutorial/geordi\",\n \"uuid\": \"{85d08b4e-571d-44e9-a507-fa476535aa98}\"\n },\n \"permission\": \"admin\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/\n permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a\"\n }\n }\n}\n```" + ] }, "put": { + "tags": ["Repositories"], + "description": "Updates the explicit user permission for a given user and repository. The selected user must be a member of\nthe workspace, and cannot be the workspace owner.\nOnly users with admin permission for the repository may access this resource.\n\nThe only authentication method for this endpoint is via app passwords.\n\nPermissions can be:\n\n* `admin`\n* `write`\n* `read`\n\nExample:\n\n```\n$ curl -X PUT -H \"Content-Type: application/json\" 'https://api.bitbucket.org/2.0/repositories/\natlassian_tutorial/geordi/permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a'\n-d '{\n \"permission\": \"write\"\n}'\n\nHTTP/1.1 200\nLocation: 'https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/\npermissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a'\n\n\n{\n \"type\": \"repository_user_permission\",\n \"user\": {\n \"type\": \"user\",\n \"display_name\": \"Colin Cameron\",\n \"uuid\": \"{d301aafa-d676-4ee0-88be-962be7417567}\",\n \"account_id\": \"557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a\"\n },\n \"repository\": {\n \"type\": \"repository\",\n \"name\": \"geordi\",\n \"full_name\": \"atlassian_tutorial/geordi\",\n \"uuid\": \"{85d08b4e-571d-44e9-a507-fa476535aa98}\"\n },\n \"permission\": \"write\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/\n permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a\"\n }\n }\n}\n```", + "summary": "Update an explicit user permission for a repository", "responses": { "200": { "description": "Explicit user permission updated", @@ -8185,8 +8384,6 @@ } } }, - "tags": ["Repositories"], - "summary": "Update an explicit user permission for a repository", "security": [ { "oauth2": ["repository:admin"] @@ -8197,8 +8394,7 @@ { "api_key": [] } - ], - "description": "Updates the explicit user permission for a given user and repository. The selected user must be a member of\nthe workspace, and cannot be the workspace owner.\nOnly users with admin permission for the repository may access this resource.\n\nThe only authentication method for this endpoint is via app passwords.\n\nPermissions can be:\n\n* `admin`\n* `write`\n* `read`\n\nExample:\n\n```\n$ curl -X PUT -H \"Content-Type: application/json\" 'https://api.bitbucket.org/2.0/repositories/\natlassian_tutorial/geordi/permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a'\n-d '{\n \"permission\": \"write\"\n}'\n\nHTTP/1.1 200\nLocation: 'https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/\npermissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a'\n\n\n{\n \"type\": \"repository_user_permission\",\n \"user\": {\n \"type\": \"user\",\n \"display_name\": \"Colin Cameron\",\n \"uuid\": \"{d301aafa-d676-4ee0-88be-962be7417567}\",\n \"account_id\": \"557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a\"\n },\n \"repository\": {\n \"type\": \"repository\",\n \"name\": \"geordi\",\n \"full_name\": \"atlassian_tutorial/geordi\",\n \"uuid\": \"{85d08b4e-571d-44e9-a507-fa476535aa98}\"\n },\n \"permission\": \"write\",\n \"links\": {\n \"self\": {\n \"href\": \"https://api.bitbucket.org/2.0/repositories/atlassian_tutorial/geordi/\n permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a\"\n }\n }\n}\n```" + ] }, "parameters": [ { @@ -8232,6 +8428,30 @@ }, "/repositories/{workspace}/{repo_slug}/pipelines-config/caches/": { "get": { + "tags": ["Pipelines"], + "summary": "List caches", + "description": "Retrieve the repository pipelines caches.", + "operationId": "getRepositoryPipelineCaches", + "parameters": [ + { + "name": "workspace", + "description": "The account.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], "responses": { "200": { "description": "The list of caches for the given repository.", @@ -8253,35 +8473,44 @@ } } } - }, - "description": "Retrieve the repository pipelines caches.", + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines-config/caches/{cache_uuid}": { + "delete": { + "tags": ["Pipelines"], + "summary": "Delete a cache", + "description": "Delete a repository cache.", + "operationId": "deleteRepositoryPipelineCache", "parameters": [ { + "name": "workspace", "description": "The account.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "cache_uuid", + "description": "The UUID of the cache to delete.", + "required": true, "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "List caches", - "operationId": "getRepositoryPipelineCaches" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines-config/caches/{cache_uuid}": { - "delete": { "responses": { "204": { "description": "The cache was deleted." @@ -8296,44 +8525,44 @@ } } } - }, - "description": "Delete a repository cache.", + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines-config/caches/{cache_uuid}/content-uri": { + "get": { + "tags": ["Pipelines"], + "summary": "Get cache content URI", + "description": "Retrieve the URI of the content of the specified cache.", + "operationId": "getRepositoryPipelineCacheContentURI", "parameters": [ { + "name": "workspace", "description": "The account.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { - "description": "The UUID of the cache to delete.", - "required": true, "name": "cache_uuid", + "description": "The UUID of the cache.", + "required": true, "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Delete a cache", - "operationId": "deleteRepositoryPipelineCache" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines-config/caches/{cache_uuid}/content-uri": { - "get": { "responses": { "200": { "description": "The cache content uri.", @@ -8355,46 +8584,87 @@ } } } - }, - "description": "Retrieve the URI of the content of the specified cache.", + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines/": { + "get": { + "tags": ["Pipelines"], + "summary": "List pipelines", + "description": "Find pipelines", + "operationId": "getPipelinesForRepository", "parameters": [ { - "description": "The account.", - "required": true, "name": "workspace", + "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", + "required": true, "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The UUID of the cache.", - "required": true, - "name": "cache_uuid", "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Get cache content URI", - "operationId": "getRepositoryPipelineCacheContentURI" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines/": { + "responses": { + "200": { + "description": "The matching pipelines.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/paginated_pipelines" + } + } + } + } + } + }, "post": { + "tags": ["Pipelines"], + "summary": "Run a pipeline", + "description": "Endpoint to create and initiate a pipeline.\nThere are a couple of different options to initiate a pipeline, where the payload of the request will determine which type of pipeline will be instantiated.\n# Trigger a Pipeline for a branch\nOne way to trigger pipelines is by specifying the branch for which you want to trigger a pipeline.\nThe specified branch will be used to determine which pipeline definition from the `bitbucket-pipelines.yml` file will be applied to initiate the pipeline. The pipeline will then do a clone of the repository and checkout the latest revision of the specified branch.\n\n### Example\n\n```\n$ curl -X POST -is -u username:password \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/jeroendr/meat-demo2/pipelines/ \\\n -d '\n {\n \"target\": {\n \"ref_type\": \"branch\",\n \"type\": \"pipeline_ref_target\",\n \"ref_name\": \"master\"\n }\n }'\n```\n# Trigger a Pipeline for a commit on a branch or tag\nYou can initiate a pipeline for a specific commit and in the context of a specified reference (e.g. a branch, tag or bookmark).\nThe specified reference will be used to determine which pipeline definition from the bitbucket-pipelines.yml file will be applied to initiate the pipeline. The pipeline will clone the repository and then do a checkout the specified reference.\n\nThe following reference types are supported:\n\n* `branch`\n* `named_branch`\n* `bookmark`\n * `tag`\n\n### Example\n\n```\n$ curl -X POST -is -u username:password \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/jeroendr/meat-demo2/pipelines/ \\\n -d '\n {\n \"target\": {\n \"commit\": {\n \"type\": \"commit\",\n \"hash\": \"ce5b7431602f7cbba007062eeb55225c6e18e956\"\n },\n \"ref_type\": \"branch\",\n \"type\": \"pipeline_ref_target\",\n \"ref_name\": \"master\"\n }\n }'\n```\n# Trigger a specific pipeline definition for a commit\nYou can trigger a specific pipeline that is defined in your `bitbucket-pipelines.yml` file for a specific commit.\nIn addition to the commit revision, you specify the type and pattern of the selector that identifies the pipeline definition. The resulting pipeline will then clone the repository and checkout the specified revision.\n\n### Example\n\n```\n$ curl -X POST -is -u username:password \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/jeroendr/meat-demo2/pipelines/ \\\n -d '\n {\n \"target\": {\n \"commit\": {\n \"hash\":\"a3c4e02c9a3755eccdc3764e6ea13facdf30f923\",\n \"type\":\"commit\"\n },\n \"selector\": {\n \"type\":\"custom\",\n \"pattern\":\"Deploy to production\"\n },\n \"type\":\"pipeline_commit_target\"\n }\n }'\n```\n# Trigger a specific pipeline definition for a commit on a branch or tag\nYou can trigger a specific pipeline that is defined in your `bitbucket-pipelines.yml` file for a specific commit in the context of a specified reference.\nIn addition to the commit revision, you specify the type and pattern of the selector that identifies the pipeline definition, as well as the reference information. The resulting pipeline will then clone the repository a checkout the specified reference.\n\n### Example\n\n```\n$ curl -X POST -is -u username:password \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/jeroendr/meat-demo2/pipelines/ \\\n -d '\n {\n \"target\": {\n \"commit\": {\n \"hash\":\"a3c4e02c9a3755eccdc3764e6ea13facdf30f923\",\n \"type\":\"commit\"\n },\n \"selector\": {\n \"type\": \"custom\",\n \"pattern\": \"Deploy to production\"\n },\n \"type\": \"pipeline_ref_target\",\n \"ref_name\": \"master\",\n \"ref_type\": \"branch\"\n }\n }'\n```\n\n\n# Trigger a custom pipeline with variables\nIn addition to triggering a custom pipeline that is defined in your `bitbucket-pipelines.yml` file as shown in the examples above, you can specify variables that will be available for your build. In the request, provide a list of variables, specifying the following for each variable: key, value, and whether it should be secured or not (this field is optional and defaults to not secured).\n\n### Example\n\n```\n$ curl -X POST -is -u username:password \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines/ \\\n -d '\n {\n \"target\": {\n \"type\": \"pipeline_ref_target\",\n \"ref_type\": \"branch\",\n \"ref_name\": \"master\",\n \"selector\": {\n \"type\": \"custom\",\n \"pattern\": \"Deploy to production\"\n }\n },\n \"variables\": [\n {\n \"key\": \"var1key\",\n \"value\": \"var1value\",\n \"secured\": true\n },\n {\n \"key\": \"var2key\",\n \"value\": \"var2value\"\n }\n ]\n }'\n```\n\n# Trigger a pull request pipeline\n\nYou can also initiate a pipeline for a specific pull request.\n\n### Example\n\n```\n$ curl -X POST -is -u username:password \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines/ \\\n -d '\n {\n\t\"target\": {\n \"type\": \"pipeline_pullrequest_target\",\n\t \"source\": \"pull-request-branch\",\n \"destination\": \"master\",\n \"destination_commit\": {\n \t \"hash\" : \"9f848b7\"\n },\n \"commit\": {\n \t\"hash\" : \"1a372fc\"\n },\n \"pullrequest\" : {\n \t\"id\" : \"3\"\n },\n\t \"selector\": {\n \"type\": \"pull-requests\",\n \"pattern\": \"**\"\n }\n }\n }'\n```\n", + "operationId": "createPipelineForRepository", + "parameters": [ + { + "name": "workspace", + "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline" + } + } + }, + "description": "The pipeline to initiate.", + "required": true + }, "responses": { "201": { + "description": "The initiated pipeline.", "headers": { "Location": { "description": "The URL of the newly created pipeline.", @@ -8403,7 +8673,6 @@ } } }, - "description": "The initiated pipeline.", "content": { "application/json": { "schema": { @@ -8432,84 +8701,44 @@ } } } - }, - "description": "Endpoint to create and initiate a pipeline.\nThere are a couple of different options to initiate a pipeline, where the payload of the request will determine which type of pipeline will be instantiated.\n# Trigger a Pipeline for a branch\nOne way to trigger pipelines is by specifying the branch for which you want to trigger a pipeline.\nThe specified branch will be used to determine which pipeline definition from the `bitbucket-pipelines.yml` file will be applied to initiate the pipeline. The pipeline will then do a clone of the repository and checkout the latest revision of the specified branch.\n\n### Example\n\n```\n$ curl -X POST -is -u username:password \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/jeroendr/meat-demo2/pipelines/ \\\n -d '\n {\n \"target\": {\n \"ref_type\": \"branch\",\n \"type\": \"pipeline_ref_target\",\n \"ref_name\": \"master\"\n }\n }'\n```\n# Trigger a Pipeline for a commit on a branch or tag\nYou can initiate a pipeline for a specific commit and in the context of a specified reference (e.g. a branch, tag or bookmark).\nThe specified reference will be used to determine which pipeline definition from the bitbucket-pipelines.yml file will be applied to initiate the pipeline. The pipeline will clone the repository and then do a checkout the specified reference.\n\nThe following reference types are supported:\n\n* `branch`\n* `named_branch`\n* `bookmark`\n * `tag`\n\n### Example\n\n```\n$ curl -X POST -is -u username:password \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/jeroendr/meat-demo2/pipelines/ \\\n -d '\n {\n \"target\": {\n \"commit\": {\n \"type\": \"commit\",\n \"hash\": \"ce5b7431602f7cbba007062eeb55225c6e18e956\"\n },\n \"ref_type\": \"branch\",\n \"type\": \"pipeline_ref_target\",\n \"ref_name\": \"master\"\n }\n }'\n```\n# Trigger a specific pipeline definition for a commit\nYou can trigger a specific pipeline that is defined in your `bitbucket-pipelines.yml` file for a specific commit.\nIn addition to the commit revision, you specify the type and pattern of the selector that identifies the pipeline definition. The resulting pipeline will then clone the repository and checkout the specified revision.\n\n### Example\n\n```\n$ curl -X POST -is -u username:password \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/jeroendr/meat-demo2/pipelines/ \\\n -d '\n {\n \"target\": {\n \"commit\": {\n \"hash\":\"a3c4e02c9a3755eccdc3764e6ea13facdf30f923\",\n \"type\":\"commit\"\n },\n \"selector\": {\n \"type\":\"custom\",\n \"pattern\":\"Deploy to production\"\n },\n \"type\":\"pipeline_commit_target\"\n }\n }'\n```\n# Trigger a specific pipeline definition for a commit on a branch or tag\nYou can trigger a specific pipeline that is defined in your `bitbucket-pipelines.yml` file for a specific commit in the context of a specified reference.\nIn addition to the commit revision, you specify the type and pattern of the selector that identifies the pipeline definition, as well as the reference information. The resulting pipeline will then clone the repository a checkout the specified reference.\n\n### Example\n\n```\n$ curl -X POST -is -u username:password \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/jeroendr/meat-demo2/pipelines/ \\\n -d '\n {\n \"target\": {\n \"commit\": {\n \"hash\":\"a3c4e02c9a3755eccdc3764e6ea13facdf30f923\",\n \"type\":\"commit\"\n },\n \"selector\": {\n \"type\": \"custom\",\n \"pattern\": \"Deploy to production\"\n },\n \"type\": \"pipeline_ref_target\",\n \"ref_name\": \"master\",\n \"ref_type\": \"branch\"\n }\n }'\n```\n\n\n# Trigger a custom pipeline with variables\nIn addition to triggering a custom pipeline that is defined in your `bitbucket-pipelines.yml` file as shown in the examples above, you can specify variables that will be available for your build. In the request, provide a list of variables, specifying the following for each variable: key, value, and whether it should be secured or not (this field is optional and defaults to not secured).\n\n### Example\n\n```\n$ curl -X POST -is -u username:password \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines/ \\\n -d '\n {\n \"target\": {\n \"type\": \"pipeline_ref_target\",\n \"ref_type\": \"branch\",\n \"ref_name\": \"master\",\n \"selector\": {\n \"type\": \"custom\",\n \"pattern\": \"Deploy to production\"\n }\n },\n \"variables\": [\n {\n \"key\": \"var1key\",\n \"value\": \"var1value\",\n \"secured\": true\n },\n {\n \"key\": \"var2key\",\n \"value\": \"var2value\"\n }\n ]\n }'\n```\n\n# Trigger a pull request pipeline\n\nYou can also initiate a pipeline for a specific pull request.\n\n### Example\n\n```\n$ curl -X POST -is -u username:password \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines/ \\\n -d '\n {\n\t\"target\": {\n \"type\": \"pipeline_pullrequest_target\",\n\t \"source\": \"pull-request-branch\",\n \"destination\": \"master\",\n \"destination_commit\": {\n \t \"hash\" : \"9f848b7\"\n },\n \"commit\": {\n \t\"hash\" : \"1a372fc\"\n },\n \"pullrequest\" : {\n \t\"id\" : \"3\"\n },\n\t \"selector\": {\n \"type\": \"pull-requests\",\n \"pattern\": \"**\"\n }\n }\n }'\n```\n", - "parameters": [ - { - "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", - "required": true, - "name": "workspace", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The repository.", - "required": true, - "name": "repo_slug", - "in": "path", - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/pipeline" - } - } - }, - "description": "The pipeline to initiate.", - "required": true - }, - "tags": ["Pipelines"], - "summary": "Run a pipeline", - "operationId": "createPipelineForRepository" - }, - "get": { - "responses": { - "200": { - "description": "The matching pipelines.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/paginated_pipelines" - } - } - } - } - }, - "description": "Find pipelines", - "parameters": [ - { - "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", - "required": true, - "name": "workspace", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The repository.", - "required": true, - "name": "repo_slug", - "in": "path", - "schema": { - "type": "string" - } - } - ], - "tags": ["Pipelines"], - "summary": "List pipelines", - "operationId": "getPipelinesForRepository" + } } }, "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}": { "get": { + "tags": ["Pipelines"], + "summary": "Get a pipeline", + "description": "Retrieve a specified pipeline", + "operationId": "getPipelineForRepository", + "parameters": [ + { + "name": "workspace", + "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "pipeline_uuid", + "description": "The pipeline UUID.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], "responses": { "200": { "description": "The pipeline.", @@ -8531,44 +8760,44 @@ } } } - }, - "description": "Retrieve a specified pipeline", + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/": { + "get": { + "tags": ["Pipelines"], + "summary": "List steps for a pipeline", + "description": "Find steps for the given pipeline.", + "operationId": "getPipelineStepsForRepository", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { - "description": "The pipeline UUID.", - "required": true, "name": "pipeline_uuid", + "description": "The UUID of the pipeline.", + "required": true, "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Get a pipeline", - "operationId": "getPipelineForRepository" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/": { - "get": { "responses": { "200": { "description": "The steps.", @@ -8580,44 +8809,53 @@ } } } - }, - "description": "Find steps for the given pipeline.", + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}": { + "get": { + "tags": ["Pipelines"], + "summary": "Get a step of a pipeline", + "description": "Retrieve a given step of a pipeline.", + "operationId": "getPipelineStepForRepository", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { + "name": "pipeline_uuid", "description": "The UUID of the pipeline.", "required": true, - "name": "pipeline_uuid", + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "step_uuid", + "description": "The UUID of the step.", + "required": true, "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "List steps for a pipeline", - "operationId": "getPipelineStepsForRepository" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}": { - "get": { "responses": { "200": { "description": "The step.", @@ -8639,53 +8877,53 @@ } } } - }, - "description": "Retrieve a given step of a pipeline.", + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/log": { + "get": { + "tags": ["Pipelines"], + "summary": "Get log file for a step", + "description": "Retrieve the log file for a given step of a pipeline.\n\nThis endpoint supports (and encourages!) the use of [HTTP Range requests](https://tools.ietf.org/html/rfc7233) to deal with potentially very large log files.", + "operationId": "getPipelineStepLogForRepository", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { + "name": "pipeline_uuid", "description": "The UUID of the pipeline.", "required": true, - "name": "pipeline_uuid", "in": "path", "schema": { "type": "string" } }, { + "name": "step_uuid", "description": "The UUID of the step.", "required": true, - "name": "step_uuid", "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Get a step of a pipeline", - "operationId": "getPipelineStepForRepository" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/log": { - "get": { "responses": { "200": { "description": "The raw log file for this pipeline step." @@ -8720,53 +8958,62 @@ } } } - }, + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/logs/{log_uuid}": { + "get": { + "tags": ["Pipelines"], + "summary": "Get the logs for the build container or a service container for a given step of a pipeline.", + "description": "Retrieve the log file for a build container or service container.\n\nThis endpoint supports (and encourages!) the use of [HTTP Range requests](https://tools.ietf.org/html/rfc7233) to deal with potentially very large log files.", + "operationId": "getPipelineContainerLog", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { + "name": "pipeline_uuid", "description": "The UUID of the pipeline.", "required": true, - "name": "pipeline_uuid", "in": "path", "schema": { "type": "string" } }, { + "name": "step_uuid", "description": "The UUID of the step.", "required": true, - "name": "step_uuid", + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "log_uuid", + "description": "For the main build container specify the step UUID; for a service container specify the service container UUID", + "required": true, "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Get log file for a step", - "operationId": "getPipelineStepLogForRepository", - "description": "Retrieve the log file for a given step of a pipeline.\n\nThis endpoint supports (and encourages!) the use of [HTTP Range requests](https://tools.ietf.org/html/rfc7233) to deal with potentially very large log files." - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/logs/{log_uuid}": { - "get": { "responses": { "200": { "description": "The raw log file for the build container or service container." @@ -8781,62 +9028,52 @@ } } } - }, + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports": { + "get": { + "tags": ["Pipelines"], + "summary": "Get a summary of test reports for a given step of a pipeline.", + "operationId": "getPipelineTestReports", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { + "name": "pipeline_uuid", "description": "The UUID of the pipeline.", "required": true, - "name": "pipeline_uuid", "in": "path", "schema": { "type": "string" } }, { + "name": "step_uuid", "description": "The UUID of the step.", "required": true, - "name": "step_uuid", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "For the main build container specify the step UUID; for a service container specify the service container UUID", - "required": true, - "name": "log_uuid", "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Get the logs for the build container or a service container for a given step of a pipeline.", - "operationId": "getPipelineContainerLog", - "description": "Retrieve the log file for a build container or service container.\n\nThis endpoint supports (and encourages!) the use of [HTTP Range requests](https://tools.ietf.org/html/rfc7233) to deal with potentially very large log files." - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports": { - "get": { "responses": { "200": { "description": "A summary of test reports for this pipeline step." @@ -8851,52 +9088,52 @@ } } } - }, + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports/test_cases": { + "get": { + "tags": ["Pipelines"], + "summary": "Get test cases for a given step of a pipeline.", + "operationId": "getPipelineTestReportTestCases", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { + "name": "pipeline_uuid", "description": "The UUID of the pipeline.", "required": true, - "name": "pipeline_uuid", "in": "path", "schema": { "type": "string" } }, { + "name": "step_uuid", "description": "The UUID of the step.", "required": true, - "name": "step_uuid", "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Get a summary of test reports for a given step of a pipeline.", - "operationId": "getPipelineTestReports" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports/test_cases": { - "get": { "responses": { "200": { "description": "Test cases for this pipeline step." @@ -8911,52 +9148,61 @@ } } } - }, + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports/test_cases/{test_case_uuid}/test_case_reasons": { + "get": { + "tags": ["Pipelines"], + "summary": "Get test case reasons (output) for a given test case in a step of a pipeline.", + "operationId": "getPipelineTestReportTestCaseReasons", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { + "name": "pipeline_uuid", "description": "The UUID of the pipeline.", "required": true, - "name": "pipeline_uuid", "in": "path", "schema": { "type": "string" } }, { + "name": "step_uuid", "description": "The UUID of the step.", "required": true, - "name": "step_uuid", + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "test_case_uuid", + "description": "The UUID of the test case.", + "required": true, "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Get test cases for a given step of a pipeline.", - "operationId": "getPipelineTestReportTestCases" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports/test_cases/{test_case_uuid}/test_case_reasons": { - "get": { "responses": { "200": { "description": "Test case reasons (output)." @@ -8971,61 +9217,44 @@ } } } - }, + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/stopPipeline": { + "post": { + "tags": ["Pipelines"], + "summary": "Stop a pipeline", + "description": "Signal the stop of a pipeline and all of its steps that not have completed yet.", + "operationId": "stopPipeline", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { + "name": "pipeline_uuid", "description": "The UUID of the pipeline.", "required": true, - "name": "pipeline_uuid", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The UUID of the step.", - "required": true, - "name": "step_uuid", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The UUID of the test case.", - "required": true, - "name": "test_case_uuid", "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Get test case reasons (output) for a given test case in a step of a pipeline.", - "operationId": "getPipelineTestReportTestCaseReasons" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/stopPipeline": { - "post": { "responses": { "204": { "description": "The pipeline has been signaled to stop." @@ -9050,47 +9279,38 @@ } } } - }, - "description": "Signal the stop of a pipeline and all of its steps that not have completed yet.", + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines_config": { + "get": { + "tags": ["Pipelines"], + "summary": "Get configuration", + "description": "Retrieve the repository pipelines configuration.", + "operationId": "getRepositoryPipelineConfig", "parameters": [ { - "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", - "required": true, "name": "workspace", + "description": "The account.", + "required": true, "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The UUID of the pipeline.", - "required": true, - "name": "pipeline_uuid", "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Stop a pipeline", - "operationId": "stopPipeline" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines_config": { - "put": { "responses": { "200": { - "description": "The repository pipelines configuration was updated.", + "description": "The repository pipelines configuration.", "content": { "application/json": { "schema": { @@ -9099,22 +9319,27 @@ } } } - }, + } + }, + "put": { + "tags": ["Pipelines"], + "summary": "Update configuration", "description": "Update the pipelines configuration for a repository.", + "operationId": "updateRepositoryPipelineConfig", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" @@ -9132,14 +9357,9 @@ "description": "The updated repository pipelines configuration.", "required": true }, - "tags": ["Pipelines"], - "summary": "Update configuration", - "operationId": "updateRepositoryPipelineConfig" - }, - "get": { "responses": { "200": { - "description": "The repository pipelines configuration.", + "description": "The repository pipelines configuration was updated.", "content": { "application/json": { "schema": { @@ -9148,35 +9368,46 @@ } } } - }, - "description": "Retrieve the repository pipelines configuration.", + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines_config/build_number": { + "put": { + "tags": ["Pipelines"], + "summary": "Update the next build number", + "description": "Update the next build number that should be assigned to a pipeline. The next build number that will be configured has to be strictly higher than the current latest build number for this repository.", + "operationId": "updateRepositoryBuildNumber", "parameters": [ { - "description": "The account.", - "required": true, "name": "workspace", + "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", + "required": true, "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Get configuration", - "operationId": "getRepositoryPipelineConfig" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines_config/build_number": { - "put": { + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_build_number" + } + } + }, + "description": "The build number to update.", + "required": true + }, "responses": { "200": { "description": "The build number has been configured.", @@ -9208,22 +9439,29 @@ } } } - }, - "description": "Update the next build number that should be assigned to a pipeline. The next build number that will be configured has to be strictly higher than the current latest build number for this repository.", + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines_config/schedules/": { + "post": { + "tags": ["Pipelines"], + "summary": "Create a schedule", + "description": "Create a schedule for the given repository.", + "operationId": "createRepositoryPipelineSchedule", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" @@ -9234,20 +9472,13 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/pipeline_build_number" + "$ref": "#/components/schemas/pipeline_schedule" } } }, - "description": "The build number to update.", + "description": "The schedule to create.", "required": true }, - "tags": ["Pipelines"], - "summary": "Update the next build number", - "operationId": "updateRepositoryBuildNumber" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines_config/schedules/": { - "post": { "responses": { "201": { "description": "The created schedule.", @@ -9289,44 +9520,33 @@ } } } - }, - "description": "Create a schedule for the given repository.", + } + }, + "get": { + "tags": ["Pipelines"], + "summary": "List schedules", + "description": "Retrieve the configured schedules for the given repository.", + "operationId": "getRepositoryPipelineSchedules", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/pipeline_schedule" - } - } - }, - "description": "The schedule to create.", - "required": true - }, - "tags": ["Pipelines"], - "summary": "Create a schedule", - "operationId": "createRepositoryPipelineSchedule" - }, - "get": { "responses": { "200": { "description": "The list of schedules.", @@ -9348,103 +9568,44 @@ } } } - }, - "description": "Retrieve the configured schedules for the given repository.", - "parameters": [ - { - "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", - "required": true, - "name": "workspace", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The repository.", - "required": true, - "name": "repo_slug", - "in": "path", - "schema": { - "type": "string" - } - } - ], - "tags": ["Pipelines"], - "summary": "List schedules", - "operationId": "getRepositoryPipelineSchedules" + } } }, "/repositories/{workspace}/{repo_slug}/pipelines_config/schedules/{schedule_uuid}": { - "put": { - "responses": { - "200": { - "description": "The schedule is updated.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/pipeline_schedule" - } - } - } - }, - "404": { - "description": "The account, repository or schedule was not found.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - } - }, - "description": "Update a schedule.", + "get": { + "tags": ["Pipelines"], + "summary": "Get a schedule", + "description": "Retrieve a schedule by its UUID.", + "operationId": "getRepositoryPipelineSchedule", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { + "name": "schedule_uuid", "description": "The uuid of the schedule.", "required": true, - "name": "schedule_uuid", "in": "path", "schema": { "type": "string" } } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/pipeline_schedule" - } - } - }, - "description": "The schedule to update.", - "required": true - }, - "tags": ["Pipelines"], - "summary": "Update a schedule", - "operationId": "updateRepositoryPipelineSchedule" - }, - "get": { "responses": { "200": { "description": "The requested schedule.", @@ -9466,42 +9627,110 @@ } } } - }, - "description": "Retrieve a schedule by its UUID.", + } + }, + "put": { + "tags": ["Pipelines"], + "summary": "Update a schedule", + "description": "Update a schedule.", + "operationId": "updateRepositoryPipelineSchedule", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { + "name": "schedule_uuid", "description": "The uuid of the schedule.", "required": true, - "name": "schedule_uuid", "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Get a schedule", - "operationId": "getRepositoryPipelineSchedule" + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_schedule" + } + } + }, + "description": "The schedule to update.", + "required": true + }, + "responses": { + "200": { + "description": "The schedule is updated.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_schedule" + } + } + } + }, + "404": { + "description": "The account, repository or schedule was not found.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + } }, "delete": { + "tags": ["Pipelines"], + "summary": "Delete a schedule", + "description": "Delete a schedule.", + "operationId": "deleteRepositoryPipelineSchedule", + "parameters": [ + { + "name": "workspace", + "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "schedule_uuid", + "description": "The uuid of the schedule.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], "responses": { "204": { "description": "The schedule was deleted." @@ -9516,44 +9745,44 @@ } } } - }, - "description": "Delete a schedule.", + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines_config/schedules/{schedule_uuid}/executions/": { + "get": { + "tags": ["Pipelines"], + "summary": "List executions of a schedule", + "description": "Retrieve the executions of a given schedule.", + "operationId": "getRepositoryPipelineScheduleExecutions", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { + "name": "schedule_uuid", "description": "The uuid of the schedule.", "required": true, - "name": "schedule_uuid", "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Delete a schedule", - "operationId": "deleteRepositoryPipelineSchedule" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines_config/schedules/{schedule_uuid}/executions/": { - "get": { "responses": { "200": { "description": "The list of executions of a schedule.", @@ -9575,103 +9804,35 @@ } } } - }, - "description": "Retrieve the executions of a given schedule.", - "parameters": [ - { - "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", - "required": true, - "name": "workspace", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The repository.", - "required": true, - "name": "repo_slug", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The uuid of the schedule.", - "required": true, - "name": "schedule_uuid", - "in": "path", - "schema": { - "type": "string" - } - } - ], - "tags": ["Pipelines"], - "summary": "List executions of a schedule", - "operationId": "getRepositoryPipelineScheduleExecutions" + } } }, "/repositories/{workspace}/{repo_slug}/pipelines_config/ssh/key_pair": { - "put": { - "responses": { - "200": { - "description": "The SSH key pair was created or updated.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/pipeline_ssh_key_pair" - } - } - } - }, - "404": { - "description": "The account, repository or SSH key pair was not found.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - } - }, - "description": "Create or update the repository SSH key pair. The private key will be set as a default SSH identity in your build container.", + "get": { + "tags": ["Pipelines"], + "summary": "Get SSH key pair", + "description": "Retrieve the repository SSH key pair excluding the SSH private key. The private key is a write only field and will never be exposed in the logs or the REST API.", + "operationId": "getRepositoryPipelineSshKeyPair", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/pipeline_ssh_key_pair" - } - } - }, - "description": "The created or updated SSH key pair.", - "required": true - }, - "tags": ["Pipelines"], - "summary": "Update SSH key pair", - "operationId": "updateRepositoryPipelineKeyPair" - }, - "get": { "responses": { "200": { "description": "The SSH key pair.", @@ -9693,33 +9854,92 @@ } } } - }, - "description": "Retrieve the repository SSH key pair excluding the SSH private key. The private key is a write only field and will never be exposed in the logs or the REST API.", + } + }, + "put": { + "tags": ["Pipelines"], + "summary": "Update SSH key pair", + "description": "Create or update the repository SSH key pair. The private key will be set as a default SSH identity in your build container.", + "operationId": "updateRepositoryPipelineKeyPair", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Get SSH key pair", - "operationId": "getRepositoryPipelineSshKeyPair" + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_ssh_key_pair" + } + } + }, + "description": "The created or updated SSH key pair.", + "required": true + }, + "responses": { + "200": { + "description": "The SSH key pair was created or updated.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_ssh_key_pair" + } + } + } + }, + "404": { + "description": "The account, repository or SSH key pair was not found.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + } }, "delete": { + "tags": ["Pipelines"], + "summary": "Delete SSH key pair", + "description": "Delete the repository SSH key pair.", + "operationId": "deleteRepositoryPipelineKeyPair", + "parameters": [ + { + "name": "workspace", + "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], "responses": { "204": { "description": "The SSH key pair was deleted." @@ -9734,37 +9954,87 @@ } } } - }, - "description": "Delete the repository SSH key pair.", + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines_config/ssh/known_hosts/": { + "get": { + "tags": ["Pipelines"], + "summary": "List known hosts", + "description": "Find repository level known hosts.", + "operationId": "getRepositoryPipelineKnownHosts", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Delete SSH key pair", - "operationId": "deleteRepositoryPipelineKeyPair" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines_config/ssh/known_hosts/": { + "responses": { + "200": { + "description": "The retrieved known hosts.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/paginated_pipeline_known_hosts" + } + } + } + } + } + }, "post": { + "tags": ["Pipelines"], + "summary": "Create a known host", + "description": "Create a repository level known host.", + "operationId": "createRepositoryPipelineKnownHost", + "parameters": [ + { + "name": "workspace", + "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_known_host" + } + } + }, + "description": "The known host to create.", + "required": true + }, "responses": { "201": { + "description": "The known host was created.", "headers": { "Location": { "description": "The URL of the newly created pipeline known host.", @@ -9773,7 +10043,6 @@ } } }, - "description": "The known host was created.", "content": { "application/json": { "schema": { @@ -9802,152 +10071,44 @@ } } } - }, - "description": "Create a repository level known host.", - "parameters": [ - { - "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", - "required": true, - "name": "workspace", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The repository.", - "required": true, - "name": "repo_slug", - "in": "path", - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/pipeline_known_host" - } - } - }, - "description": "The known host to create.", - "required": true - }, - "tags": ["Pipelines"], - "summary": "Create a known host", - "operationId": "createRepositoryPipelineKnownHost" - }, - "get": { - "responses": { - "200": { - "description": "The retrieved known hosts.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/paginated_pipeline_known_hosts" - } - } - } - } - }, - "description": "Find repository level known hosts.", - "parameters": [ - { - "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", - "required": true, - "name": "workspace", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The repository.", - "required": true, - "name": "repo_slug", - "in": "path", - "schema": { - "type": "string" - } - } - ], - "tags": ["Pipelines"], - "summary": "List known hosts", - "operationId": "getRepositoryPipelineKnownHosts" + } } }, "/repositories/{workspace}/{repo_slug}/pipelines_config/ssh/known_hosts/{known_host_uuid}": { - "put": { - "responses": { - "200": { - "description": "The known host was updated.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/pipeline_known_host" - } - } - } - }, - "404": { - "description": "The account, repository or known host with the given UUID was not found.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - } - }, - "description": "Update a repository level known host.", + "get": { + "tags": ["Pipelines"], + "summary": "Get a known host", + "description": "Retrieve a repository level known host.", + "operationId": "getRepositoryPipelineKnownHost", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { - "description": "The UUID of the known host to update.", - "required": true, "name": "known_host_uuid", + "description": "The UUID of the known host to retrieve.", + "required": true, "in": "path", "schema": { "type": "string" } } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/pipeline_known_host" - } - } - }, - "description": "The updated known host.", - "required": true - }, - "tags": ["Pipelines"], - "summary": "Update a known host", - "operationId": "updateRepositoryPipelineKnownHost" - }, - "get": { "responses": { "200": { "description": "The known host.", @@ -9969,42 +10130,110 @@ } } } - }, - "description": "Retrieve a repository level known host.", + } + }, + "put": { + "tags": ["Pipelines"], + "summary": "Update a known host", + "description": "Update a repository level known host.", + "operationId": "updateRepositoryPipelineKnownHost", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { - "description": "The UUID of the known host to retrieve.", - "required": true, "name": "known_host_uuid", + "description": "The UUID of the known host to update.", + "required": true, "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Get a known host", - "operationId": "getRepositoryPipelineKnownHost" + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_known_host" + } + } + }, + "description": "The updated known host.", + "required": true + }, + "responses": { + "200": { + "description": "The known host was updated.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_known_host" + } + } + } + }, + "404": { + "description": "The account, repository or known host with the given UUID was not found.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + } }, "delete": { + "tags": ["Pipelines"], + "summary": "Delete a known host", + "description": "Delete a repository level known host.", + "operationId": "deleteRepositoryPipelineKnownHost", + "parameters": [ + { + "name": "workspace", + "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "known_host_uuid", + "description": "The UUID of the known host to delete.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], "responses": { "204": { "description": "The known host was deleted." @@ -10019,46 +10248,87 @@ } } } - }, - "description": "Delete a repository level known host.", + } + } + }, + "/repositories/{workspace}/{repo_slug}/pipelines_config/variables/": { + "get": { + "tags": ["Pipelines"], + "summary": "List variables for a repository", + "description": "Find repository level variables.", + "operationId": "getRepositoryPipelineVariables", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The UUID of the known host to delete.", - "required": true, - "name": "known_host_uuid", "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Delete a known host", - "operationId": "deleteRepositoryPipelineKnownHost" - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines_config/variables/": { + "responses": { + "200": { + "description": "The retrieved variables.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/paginated_pipeline_variables" + } + } + } + } + } + }, "post": { + "tags": ["Pipelines"], + "summary": "Create a variable for a repository", + "description": "Create a repository level variable.", + "operationId": "createRepositoryPipelineVariable", + "parameters": [ + { + "name": "workspace", + "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_variable" + } + } + }, + "description": "The variable to create.", + "required": true + }, "responses": { "201": { + "description": "The variable was created.", "headers": { "Location": { "description": "The URL of the newly created pipeline variable.", @@ -10067,7 +10337,6 @@ } } }, - "description": "The variable was created.", "content": { "application/json": { "schema": { @@ -10096,152 +10365,44 @@ } } } - }, - "description": "Create a repository level variable.", - "parameters": [ - { - "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", - "required": true, - "name": "workspace", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The repository.", - "required": true, - "name": "repo_slug", - "in": "path", - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/pipeline_variable" - } - } - }, - "description": "The variable to create.", - "required": true - }, - "tags": ["Pipelines"], - "summary": "Create a variable for a repository", - "operationId": "createRepositoryPipelineVariable" - }, - "get": { - "responses": { - "200": { - "description": "The retrieved variables.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/paginated_pipeline_variables" - } - } - } - } - }, - "description": "Find repository level variables.", - "parameters": [ - { - "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", - "required": true, - "name": "workspace", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The repository.", - "required": true, - "name": "repo_slug", - "in": "path", - "schema": { - "type": "string" - } - } - ], - "tags": ["Pipelines"], - "summary": "List variables for a repository", - "operationId": "getRepositoryPipelineVariables" + } } }, "/repositories/{workspace}/{repo_slug}/pipelines_config/variables/{variable_uuid}": { - "put": { - "responses": { - "200": { - "description": "The variable was updated.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/pipeline_variable" - } - } - } - }, - "404": { - "description": "The account, repository or variable with the given UUID was not found.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - } - }, - "description": "Update a repository level variable.", + "get": { + "tags": ["Pipelines"], + "summary": "Get a variable for a repository", + "description": "Retrieve a repository level variable.", + "operationId": "getRepositoryPipelineVariable", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { - "description": "The UUID of the variable to update.", - "required": true, "name": "variable_uuid", + "description": "The UUID of the variable to retrieve.", + "required": true, "in": "path", "schema": { "type": "string" } } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/pipeline_variable" - } - } - }, - "description": "The updated variable", - "required": true - }, - "tags": ["Pipelines"], - "summary": "Update a variable for a repository", - "operationId": "updateRepositoryPipelineVariable" - }, - "get": { "responses": { "200": { "description": "The variable.", @@ -10263,42 +10424,110 @@ } } } - }, - "description": "Retrieve a repository level variable.", + } + }, + "put": { + "tags": ["Pipelines"], + "summary": "Update a variable for a repository", + "description": "Update a repository level variable.", + "operationId": "updateRepositoryPipelineVariable", "parameters": [ { + "name": "workspace", "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", "required": true, - "name": "workspace", "in": "path", "schema": { "type": "string" } }, { + "name": "repo_slug", "description": "The repository.", "required": true, - "name": "repo_slug", "in": "path", "schema": { "type": "string" } }, { - "description": "The UUID of the variable to retrieve.", - "required": true, "name": "variable_uuid", + "description": "The UUID of the variable to update.", + "required": true, "in": "path", "schema": { "type": "string" } } ], - "tags": ["Pipelines"], - "summary": "Get a variable for a repository", - "operationId": "getRepositoryPipelineVariable" + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_variable" + } + } + }, + "description": "The updated variable", + "required": true + }, + "responses": { + "200": { + "description": "The variable was updated.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_variable" + } + } + } + }, + "404": { + "description": "The account, repository or variable with the given UUID was not found.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + } }, "delete": { + "tags": ["Pipelines"], + "summary": "Delete a variable for a repository", + "description": "Delete a repository level variable.", + "operationId": "deleteRepositoryPipelineVariable", + "parameters": [ + { + "name": "workspace", + "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "variable_uuid", + "description": "The UUID of the variable to delete.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], "responses": { "204": { "description": "The variable was deleted." @@ -10313,40 +10542,7 @@ } } } - }, - "description": "Delete a repository level variable.", - "parameters": [ - { - "description": "This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`.", - "required": true, - "name": "workspace", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The repository.", - "required": true, - "name": "repo_slug", - "in": "path", - "schema": { - "type": "string" - } - }, - { - "description": "The UUID of the variable to delete.", - "required": true, - "name": "variable_uuid", - "in": "path", - "schema": { - "type": "string" - } - } - ], - "tags": ["Pipelines"], - "summary": "Delete a variable for a repository", - "operationId": "deleteRepositoryPipelineVariable" + } } }, "/repositories/{workspace}/{repo_slug}/properties/{app_key}/{property_name}": { @@ -10356,39 +10552,42 @@ "description": "An empty response." } }, + "operationId": "updateRepositoryHostedPropertyValue", + "summary": "Update a repository application property", + "description": "Update an [application property](/cloud/bitbucket/application-properties/) value stored against a repository.", "parameters": [ { "required": true, - "description": "The repository container; either the workspace slug or the UUID in curly braces.", "in": "path", "name": "workspace", + "description": "The repository container; either the workspace slug or the UUID in curly braces.", "schema": { "type": "string" } }, { "required": true, - "description": "The repository.", "in": "path", "name": "repo_slug", + "description": "The repository.", "schema": { "type": "string" } }, { "required": true, - "description": "The key of the Connect app.", "in": "path", "name": "app_key", + "description": "The key of the Connect app.", "schema": { "type": "string" } }, { "required": true, - "description": "The name of the property.", "in": "path", "name": "property_name", + "description": "The name of the property.", "schema": { "type": "string" } @@ -10397,10 +10596,7 @@ "requestBody": { "$ref": "#/components/requestBodies/application_property" }, - "tags": ["properties"], - "description": "Update an [application property](/cloud/bitbucket/application-properties/) value stored against a repository.", - "summary": "Update a repository application property", - "operationId": "updateRepositoryHostedPropertyValue" + "tags": ["properties"] }, "delete": { "responses": { @@ -10408,48 +10604,48 @@ "description": "An empty response." } }, + "operationId": "deleteRepositoryHostedPropertyValue", + "summary": "Delete a repository application property", + "description": "Delete an [application property](/cloud/bitbucket/application-properties/) value stored against a repository.", "parameters": [ { "required": true, - "description": "The repository container; either the workspace slug or the UUID in curly braces.", "in": "path", "name": "workspace", + "description": "The repository container; either the workspace slug or the UUID in curly braces.", "schema": { "type": "string" } }, { "required": true, - "description": "The repository.", "in": "path", "name": "repo_slug", + "description": "The repository.", "schema": { "type": "string" } }, { "required": true, - "description": "The key of the Connect app.", "in": "path", "name": "app_key", + "description": "The key of the Connect app.", "schema": { "type": "string" } }, { "required": true, - "description": "The name of the property.", "in": "path", "name": "property_name", + "description": "The name of the property.", "schema": { "type": "string" } } ], - "tags": ["properties"], - "description": "Delete an [application property](/cloud/bitbucket/application-properties/) value stored against a repository.", - "summary": "Delete a repository application property", - "operationId": "deleteRepositoryHostedPropertyValue" + "tags": ["properties"] }, "get": { "responses": { @@ -10464,52 +10660,55 @@ } } }, + "operationId": "getRepositoryHostedPropertyValue", + "summary": "Get a repository application property", + "description": "Retrieve an [application property](/cloud/bitbucket/application-properties/) value stored against a repository.", "parameters": [ { "required": true, - "description": "The repository container; either the workspace slug or the UUID in curly braces.", "in": "path", "name": "workspace", + "description": "The repository container; either the workspace slug or the UUID in curly braces.", "schema": { "type": "string" } }, { "required": true, - "description": "The repository.", "in": "path", "name": "repo_slug", + "description": "The repository.", "schema": { "type": "string" } }, { "required": true, - "description": "The key of the Connect app.", "in": "path", "name": "app_key", + "description": "The key of the Connect app.", "schema": { "type": "string" } }, { "required": true, - "description": "The name of the property.", "in": "path", "name": "property_name", + "description": "The name of the property.", "schema": { "type": "string" } } ], - "tags": ["properties"], - "description": "Retrieve an [application property](/cloud/bitbucket/application-properties/) value stored against a repository.", - "summary": "Get a repository application property", - "operationId": "getRepositoryHostedPropertyValue" + "tags": ["properties"] } }, "/repositories/{workspace}/{repo_slug}/pullrequests": { "get": { + "tags": ["Pullrequests"], + "description": "Returns all pull requests on the specified repository.\n\nBy default only open pull requests are returned. This can be controlled\nusing the `state` query parameter. To retrieve pull requests that are\nin one of multiple states, repeat the `state` parameter for each\nindividual state.\n\nThis endpoint also supports filtering and sorting of the results. See\n[filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for more details.", + "summary": "List pull requests", "responses": { "200": { "description": "All pull requests on the specified repository.", @@ -10542,12 +10741,10 @@ "description": "Only return pull requests that are in this state. This parameter can be repeated.", "schema": { "type": "string", - "enum": ["MERGED", "SUPERSEDED", "OPEN", "DECLINED"] + "enum": ["OPEN", "MERGED", "DECLINED", "SUPERSEDED"] } } ], - "tags": ["Pullrequests"], - "summary": "List pull requests", "security": [ { "oauth2": ["pullrequest"] @@ -10558,10 +10755,12 @@ { "api_key": [] } - ], - "description": "Returns all pull requests on the specified repository.\n\nBy default only open pull requests are returned. This can be controlled\nusing the `state` query parameter. To retrieve pull requests that are\nin one of multiple states, repeat the `state` parameter for each\nindividual state.\n\nThis endpoint also supports filtering and sorting of the results. See\n[filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for more details." + ] }, "post": { + "tags": ["Pullrequests"], + "description": "Creates a new pull request where the destination repository is\nthis repository and the author is the authenticated user.\n\nThe minimum required fields to create a pull request are `title` and\n`source`, specified by a branch name.\n\n```\ncurl https://api.bitbucket.org/2.0/repositories/my-workspace/my-repository/pullrequests \\\n -u my-username:my-password \\\n --request POST \\\n --header 'Content-Type: application/json' \\\n --data '{\n \"title\": \"My Title\",\n \"source\": {\n \"branch\": {\n \"name\": \"staging\"\n }\n }\n }'\n```\n\nIf the pull request's `destination` is not specified, it will default\nto the `repository.mainbranch`. To open a pull request to a\ndifferent branch, say from a feature branch to a staging branch,\nspecify a `destination` (same format as the `source`):\n\n```\n{\n \"title\": \"My Title\",\n \"source\": {\n \"branch\": {\n \"name\": \"my-feature-branch\"\n }\n },\n \"destination\": {\n \"branch\": {\n \"name\": \"staging\"\n }\n }\n}\n```\n\nReviewers can be specified by adding an array of user objects as the\n`reviewers` property.\n\n```\n{\n \"title\": \"My Title\",\n \"source\": {\n \"branch\": {\n \"name\": \"my-feature-branch\"\n }\n },\n \"reviewers\": [\n {\n \"uuid\": \"{504c3b62-8120-4f0c-a7bc-87800b9d6f70}\"\n }\n ]\n}\n```\n\nOther fields:\n\n* `description` - a string\n* `close_source_branch` - boolean that specifies if the source branch should be closed upon merging", + "summary": "Create a pull request", "responses": { "201": { "description": "The newly created pull request.", @@ -10612,8 +10811,6 @@ }, "description": "The new pull request.\n\nThe request URL you POST to becomes the destination repository URL. For this reason, you must specify an explicit source repository in the request object if you want to pull from a different repository (fork).\n\nSince not all elements are required or even mutable, you only need to include the elements you want to initialize, such as the source branch and the title." }, - "tags": ["Pullrequests"], - "summary": "Create a pull request", "security": [ { "oauth2": ["pullrequest:write"] @@ -10624,8 +10821,7 @@ { "api_key": [] } - ], - "description": "Creates a new pull request where the destination repository is\nthis repository and the author is the authenticated user.\n\nThe minimum required fields to create a pull request are `title` and\n`source`, specified by a branch name.\n\n```\ncurl https://api.bitbucket.org/2.0/repositories/my-workspace/my-repository/pullrequests \\\n -u my-username:my-password \\\n --request POST \\\n --header 'Content-Type: application/json' \\\n --data '{\n \"title\": \"My Title\",\n \"source\": {\n \"branch\": {\n \"name\": \"staging\"\n }\n }\n }'\n```\n\nIf the pull request's `destination` is not specified, it will default\nto the `repository.mainbranch`. To open a pull request to a\ndifferent branch, say from a feature branch to a staging branch,\nspecify a `destination` (same format as the `source`):\n\n```\n{\n \"title\": \"My Title\",\n \"source\": {\n \"branch\": {\n \"name\": \"my-feature-branch\"\n }\n },\n \"destination\": {\n \"branch\": {\n \"name\": \"staging\"\n }\n }\n}\n```\n\nReviewers can be specified by adding an array of user objects as the\n`reviewers` property.\n\n```\n{\n \"title\": \"My Title\",\n \"source\": {\n \"branch\": {\n \"name\": \"my-feature-branch\"\n }\n },\n \"reviewers\": [\n {\n \"uuid\": \"{504c3b62-8120-4f0c-a7bc-87800b9d6f70}\"\n }\n ]\n}\n```\n\nOther fields:\n\n* `description` - a string\n* `close_source_branch` - boolean that specifies if the source branch should be closed upon merging" + ] }, "parameters": [ { @@ -10650,6 +10846,9 @@ }, "/repositories/{workspace}/{repo_slug}/pullrequests/activity": { "get": { + "tags": ["Pullrequests"], + "description": "Returns a paginated list of the pull request's activity log.\n\nThis handler serves both a v20 and internal endpoint. The v20 endpoint\nreturns reviewer comments, updates, approvals and request changes. The internal\nendpoint includes those plus tasks and attachments.\n\nComments created on a file or a line of code have an inline property.\n\nComment example:\n```\n{\n \"pagelen\": 20,\n \"values\": [\n {\n \"comment\": {\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695/comments/118571088\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695/_/diff#comment-118571088\"\n }\n },\n \"deleted\": false,\n \"pullrequest\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n },\n \"content\": {\n \"raw\": \"inline with to a dn from lines\",\n \"markup\": \"markdown\",\n \"html\": \"inline with to a dn from lines
\",\n \"type\": \"rendered\"\n },\n \"created_on\": \"2019-09-27T00:33:46.039178+00:00\",\n \"user\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n },\n \"created_on\": \"2019-09-27T00:33:46.039178+00:00\",\n \"user\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n },\n \"updated_on\": \"2019-09-27T00:33:46.055384+00:00\",\n \"inline\": {\n \"context_lines\": \"\",\n \"to\": null,\n \"path\": \"\",\n \"outdated\": false,\n \"from\": 211\n },\n \"type\": \"pullrequest_comment\",\n \"id\": 118571088\n },\n \"pull_request\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n }\n }\n ]\n}\n```\n\nUpdates include a state property of OPEN, MERGED, or DECLINED.\n\nUpdate example:\n```\n{\n \"pagelen\": 20,\n \"values\": [\n {\n \"update\": {\n \"description\": \"\",\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\",\n \"destination\": {\n \"commit\": {\n \"type\": \"commit\",\n \"hash\": \"6a2c16e4a152\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/commit/6a2c16e4a152\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/commits/6a2c16e4a152\"\n }\n }\n },\n \"branch\": {\n \"name\": \"master\"\n },\n \"repository\": {\n \"name\": \"Atlaskit-MK-2\",\n \"type\": \"repository\",\n \"full_name\": \"atlassian/atlaskit-mk-2\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2\"\n },\n \"avatar\": {\n \"href\": \"https://bytebucket.org/ravatar/%7B%7D?ts=js\"\n }\n },\n \"uuid\": \"{}\"\n }\n },\n \"reason\": \"\",\n \"source\": {\n \"commit\": {\n \"type\": \"commit\",\n \"hash\": \"728c8bad1813\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/commit/728c8bad1813\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/commits/728c8bad1813\"\n }\n }\n },\n \"branch\": {\n \"name\": \"username/NONE-add-onClick-prop-for-accessibility\"\n },\n \"repository\": {\n \"name\": \"Atlaskit-MK-2\",\n \"type\": \"repository\",\n \"full_name\": \"atlassian/atlaskit-mk-2\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2\"\n },\n \"avatar\": {\n \"href\": \"https://bytebucket.org/ravatar/%7B%7D?ts=js\"\n }\n },\n \"uuid\": \"{}\"\n }\n },\n \"state\": \"OPEN\",\n \"author\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n },\n \"date\": \"2019-05-10T06:48:25.305565+00:00\"\n },\n \"pull_request\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n }\n }\n ]\n}\n```\n\nApproval example:\n```\n{\n \"pagelen\": 20,\n \"values\": [\n {\n \"approval\": {\n \"date\": \"2019-09-27T00:37:19.849534+00:00\",\n \"pullrequest\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n },\n \"user\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n }\n },\n \"pull_request\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n }\n }\n ]\n}\n```", + "summary": "List a pull request activity log", "responses": { "200": { "description": "The pull request activity log" @@ -10668,8 +10867,6 @@ } } }, - "tags": ["Pullrequests"], - "summary": "List a pull request activity log", "security": [ { "oauth2": ["pullrequest"] @@ -10680,8 +10877,7 @@ { "api_key": [] } - ], - "description": "Returns a paginated list of the pull request's activity log.\n\nThis handler serves both a v20 and internal endpoint. The v20 endpoint\nreturns reviewer comments, updates, approvals and request changes. The internal\nendpoint includes those plus tasks and attachments.\n\nComments created on a file or a line of code have an inline property.\n\nComment example:\n```\n{\n \"pagelen\": 20,\n \"values\": [\n {\n \"comment\": {\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695/comments/118571088\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695/_/diff#comment-118571088\"\n }\n },\n \"deleted\": false,\n \"pullrequest\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n },\n \"content\": {\n \"raw\": \"inline with to a dn from lines\",\n \"markup\": \"markdown\",\n \"html\": \"inline with to a dn from lines
\",\n \"type\": \"rendered\"\n },\n \"created_on\": \"2019-09-27T00:33:46.039178+00:00\",\n \"user\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n },\n \"created_on\": \"2019-09-27T00:33:46.039178+00:00\",\n \"user\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n },\n \"updated_on\": \"2019-09-27T00:33:46.055384+00:00\",\n \"inline\": {\n \"context_lines\": \"\",\n \"to\": null,\n \"path\": \"\",\n \"outdated\": false,\n \"from\": 211\n },\n \"type\": \"pullrequest_comment\",\n \"id\": 118571088\n },\n \"pull_request\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n }\n }\n ]\n}\n```\n\nUpdates include a state property of OPEN, MERGED, or DECLINED.\n\nUpdate example:\n```\n{\n \"pagelen\": 20,\n \"values\": [\n {\n \"update\": {\n \"description\": \"\",\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\",\n \"destination\": {\n \"commit\": {\n \"type\": \"commit\",\n \"hash\": \"6a2c16e4a152\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/commit/6a2c16e4a152\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/commits/6a2c16e4a152\"\n }\n }\n },\n \"branch\": {\n \"name\": \"master\"\n },\n \"repository\": {\n \"name\": \"Atlaskit-MK-2\",\n \"type\": \"repository\",\n \"full_name\": \"atlassian/atlaskit-mk-2\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2\"\n },\n \"avatar\": {\n \"href\": \"https://bytebucket.org/ravatar/%7B%7D?ts=js\"\n }\n },\n \"uuid\": \"{}\"\n }\n },\n \"reason\": \"\",\n \"source\": {\n \"commit\": {\n \"type\": \"commit\",\n \"hash\": \"728c8bad1813\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/commit/728c8bad1813\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/commits/728c8bad1813\"\n }\n }\n },\n \"branch\": {\n \"name\": \"username/NONE-add-onClick-prop-for-accessibility\"\n },\n \"repository\": {\n \"name\": \"Atlaskit-MK-2\",\n \"type\": \"repository\",\n \"full_name\": \"atlassian/atlaskit-mk-2\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2\"\n },\n \"avatar\": {\n \"href\": \"https://bytebucket.org/ravatar/%7B%7D?ts=js\"\n }\n },\n \"uuid\": \"{}\"\n }\n },\n \"state\": \"OPEN\",\n \"author\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n },\n \"date\": \"2019-05-10T06:48:25.305565+00:00\"\n },\n \"pull_request\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n }\n }\n ]\n}\n```\n\nApproval example:\n```\n{\n \"pagelen\": 20,\n \"values\": [\n {\n \"approval\": {\n \"date\": \"2019-09-27T00:37:19.849534+00:00\",\n \"pullrequest\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n },\n \"user\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n }\n },\n \"pull_request\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n }\n }\n ]\n}\n```" + ] }, "parameters": [ { @@ -10706,6 +10902,9 @@ }, "/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}": { "get": { + "tags": ["Pullrequests"], + "description": "Returns the specified pull request.", + "summary": "Get a pull request", "responses": { "200": { "description": "The pull request object", @@ -10731,8 +10930,6 @@ } } }, - "tags": ["Pullrequests"], - "summary": "Get a pull request", "security": [ { "oauth2": ["pullrequest"] @@ -10743,10 +10940,12 @@ { "api_key": [] } - ], - "description": "Returns the specified pull request." + ] }, "put": { + "tags": ["Pullrequests"], + "description": "Mutates the specified pull request.\n\nThis can be used to change the pull request's branches or description.\n\nOnly open pull requests can be mutated.", + "summary": "Update a pull request", "responses": { "200": { "description": "The updated pull request", @@ -10799,8 +10998,6 @@ }, "description": "The pull request that is to be updated." }, - "tags": ["Pullrequests"], - "summary": "Update a pull request", "security": [ { "oauth2": ["pullrequest:write"] @@ -10811,8 +11008,7 @@ { "api_key": [] } - ], - "description": "Mutates the specified pull request.\n\nThis can be used to change the pull request's branches or description.\n\nOnly open pull requests can be mutated." + ] }, "parameters": [ { @@ -10846,6 +11042,9 @@ }, "/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/activity": { "get": { + "tags": ["Pullrequests"], + "description": "Returns a paginated list of the pull request's activity log.\n\nThis handler serves both a v20 and internal endpoint. The v20 endpoint\nreturns reviewer comments, updates, approvals and request changes. The internal\nendpoint includes those plus tasks and attachments.\n\nComments created on a file or a line of code have an inline property.\n\nComment example:\n```\n{\n \"pagelen\": 20,\n \"values\": [\n {\n \"comment\": {\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695/comments/118571088\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695/_/diff#comment-118571088\"\n }\n },\n \"deleted\": false,\n \"pullrequest\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n },\n \"content\": {\n \"raw\": \"inline with to a dn from lines\",\n \"markup\": \"markdown\",\n \"html\": \"inline with to a dn from lines
\",\n \"type\": \"rendered\"\n },\n \"created_on\": \"2019-09-27T00:33:46.039178+00:00\",\n \"user\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n },\n \"created_on\": \"2019-09-27T00:33:46.039178+00:00\",\n \"user\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n },\n \"updated_on\": \"2019-09-27T00:33:46.055384+00:00\",\n \"inline\": {\n \"context_lines\": \"\",\n \"to\": null,\n \"path\": \"\",\n \"outdated\": false,\n \"from\": 211\n },\n \"type\": \"pullrequest_comment\",\n \"id\": 118571088\n },\n \"pull_request\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n }\n }\n ]\n}\n```\n\nUpdates include a state property of OPEN, MERGED, or DECLINED.\n\nUpdate example:\n```\n{\n \"pagelen\": 20,\n \"values\": [\n {\n \"update\": {\n \"description\": \"\",\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\",\n \"destination\": {\n \"commit\": {\n \"type\": \"commit\",\n \"hash\": \"6a2c16e4a152\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/commit/6a2c16e4a152\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/commits/6a2c16e4a152\"\n }\n }\n },\n \"branch\": {\n \"name\": \"master\"\n },\n \"repository\": {\n \"name\": \"Atlaskit-MK-2\",\n \"type\": \"repository\",\n \"full_name\": \"atlassian/atlaskit-mk-2\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2\"\n },\n \"avatar\": {\n \"href\": \"https://bytebucket.org/ravatar/%7B%7D?ts=js\"\n }\n },\n \"uuid\": \"{}\"\n }\n },\n \"reason\": \"\",\n \"source\": {\n \"commit\": {\n \"type\": \"commit\",\n \"hash\": \"728c8bad1813\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/commit/728c8bad1813\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/commits/728c8bad1813\"\n }\n }\n },\n \"branch\": {\n \"name\": \"username/NONE-add-onClick-prop-for-accessibility\"\n },\n \"repository\": {\n \"name\": \"Atlaskit-MK-2\",\n \"type\": \"repository\",\n \"full_name\": \"atlassian/atlaskit-mk-2\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2\"\n },\n \"avatar\": {\n \"href\": \"https://bytebucket.org/ravatar/%7B%7D?ts=js\"\n }\n },\n \"uuid\": \"{}\"\n }\n },\n \"state\": \"OPEN\",\n \"author\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n },\n \"date\": \"2019-05-10T06:48:25.305565+00:00\"\n },\n \"pull_request\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n }\n }\n ]\n}\n```\n\nApproval example:\n```\n{\n \"pagelen\": 20,\n \"values\": [\n {\n \"approval\": {\n \"date\": \"2019-09-27T00:37:19.849534+00:00\",\n \"pullrequest\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n },\n \"user\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n }\n },\n \"pull_request\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n }\n }\n ]\n}\n```", + "summary": "List a pull request activity log", "responses": { "200": { "description": "The pull request activity log" @@ -10864,8 +11063,6 @@ } } }, - "tags": ["Pullrequests"], - "summary": "List a pull request activity log", "security": [ { "oauth2": ["pullrequest"] @@ -10876,8 +11073,7 @@ { "api_key": [] } - ], - "description": "Returns a paginated list of the pull request's activity log.\n\nThis handler serves both a v20 and internal endpoint. The v20 endpoint\nreturns reviewer comments, updates, approvals and request changes. The internal\nendpoint includes those plus tasks and attachments.\n\nComments created on a file or a line of code have an inline property.\n\nComment example:\n```\n{\n \"pagelen\": 20,\n \"values\": [\n {\n \"comment\": {\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695/comments/118571088\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695/_/diff#comment-118571088\"\n }\n },\n \"deleted\": false,\n \"pullrequest\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n },\n \"content\": {\n \"raw\": \"inline with to a dn from lines\",\n \"markup\": \"markdown\",\n \"html\": \"inline with to a dn from lines
\",\n \"type\": \"rendered\"\n },\n \"created_on\": \"2019-09-27T00:33:46.039178+00:00\",\n \"user\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n },\n \"created_on\": \"2019-09-27T00:33:46.039178+00:00\",\n \"user\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n },\n \"updated_on\": \"2019-09-27T00:33:46.055384+00:00\",\n \"inline\": {\n \"context_lines\": \"\",\n \"to\": null,\n \"path\": \"\",\n \"outdated\": false,\n \"from\": 211\n },\n \"type\": \"pullrequest_comment\",\n \"id\": 118571088\n },\n \"pull_request\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n }\n }\n ]\n}\n```\n\nUpdates include a state property of OPEN, MERGED, or DECLINED.\n\nUpdate example:\n```\n{\n \"pagelen\": 20,\n \"values\": [\n {\n \"update\": {\n \"description\": \"\",\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\",\n \"destination\": {\n \"commit\": {\n \"type\": \"commit\",\n \"hash\": \"6a2c16e4a152\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/commit/6a2c16e4a152\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/commits/6a2c16e4a152\"\n }\n }\n },\n \"branch\": {\n \"name\": \"master\"\n },\n \"repository\": {\n \"name\": \"Atlaskit-MK-2\",\n \"type\": \"repository\",\n \"full_name\": \"atlassian/atlaskit-mk-2\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2\"\n },\n \"avatar\": {\n \"href\": \"https://bytebucket.org/ravatar/%7B%7D?ts=js\"\n }\n },\n \"uuid\": \"{}\"\n }\n },\n \"reason\": \"\",\n \"source\": {\n \"commit\": {\n \"type\": \"commit\",\n \"hash\": \"728c8bad1813\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/commit/728c8bad1813\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/commits/728c8bad1813\"\n }\n }\n },\n \"branch\": {\n \"name\": \"username/NONE-add-onClick-prop-for-accessibility\"\n },\n \"repository\": {\n \"name\": \"Atlaskit-MK-2\",\n \"type\": \"repository\",\n \"full_name\": \"atlassian/atlaskit-mk-2\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2\"\n },\n \"avatar\": {\n \"href\": \"https://bytebucket.org/ravatar/%7B%7D?ts=js\"\n }\n },\n \"uuid\": \"{}\"\n }\n },\n \"state\": \"OPEN\",\n \"author\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n },\n \"date\": \"2019-05-10T06:48:25.305565+00:00\"\n },\n \"pull_request\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n }\n }\n ]\n}\n```\n\nApproval example:\n```\n{\n \"pagelen\": 20,\n \"values\": [\n {\n \"approval\": {\n \"date\": \"2019-09-27T00:37:19.849534+00:00\",\n \"pullrequest\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n },\n \"user\": {\n \"display_name\": \"Name Lastname\",\n \"uuid\": \"{}\",\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/users/%7B%7D\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/%7B%7D/\"\n },\n \"avatar\": {\n \"href\": \"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/:/128\"\n }\n },\n \"type\": \"user\",\n \"nickname\": \"Name\",\n \"account_id\": \"\"\n }\n },\n \"pull_request\": {\n \"type\": \"pullrequest\",\n \"id\": 5695,\n \"links\": {\n \"self\": {\n \"href\": \"https://bitbucket.org/!api/2.0/repositories/atlassian/atlaskit-mk-2/pullrequests/5695\"\n },\n \"html\": {\n \"href\": \"https://bitbucket.org/atlassian/atlaskit-mk-2/pull-requests/5695\"\n }\n },\n \"title\": \"username/NONE: small change from onFocus to onClick to handle tabbing through the page and not expand the editor unless a click event triggers it\"\n }\n }\n ]\n}\n```" + ] }, "parameters": [ { @@ -10911,6 +11107,9 @@ }, "/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/approve": { "delete": { + "tags": ["Pullrequests"], + "description": "Redact the authenticated user's approval of the specified pull\nrequest.", + "summary": "Unapprove a pull request", "responses": { "204": { "description": "An empty response indicating the authenticated user's approval has been withdrawn." @@ -10936,8 +11135,6 @@ } } }, - "tags": ["Pullrequests"], - "summary": "Unapprove a pull request", "security": [ { "oauth2": ["pullrequest:write"] @@ -10948,10 +11145,12 @@ { "api_key": [] } - ], - "description": "Redact the authenticated user's approval of the specified pull\nrequest." + ] }, "post": { + "tags": ["Pullrequests"], + "description": "Approve the specified pull request as the authenticated user.", + "summary": "Approve a pull request", "responses": { "200": { "description": "The `participant` object recording that the authenticated user approved the pull request.", @@ -10984,8 +11183,6 @@ } } }, - "tags": ["Pullrequests"], - "summary": "Approve a pull request", "security": [ { "oauth2": ["pullrequest:write"] @@ -10996,8 +11193,7 @@ { "api_key": [] } - ], - "description": "Approve the specified pull request as the authenticated user." + ] }, "parameters": [ { @@ -11031,6 +11227,9 @@ }, "/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/comments": { "get": { + "tags": ["Pullrequests"], + "description": "Returns a paginated list of the pull request's comments.\n\nThis includes both global, inline comments and replies.\n\nThe default sorting is oldest to newest and can be overridden with\nthe `sort` query parameter.\n\nThis endpoint also supports filtering and sorting of the results. See\n[filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for more\ndetails.", + "summary": "List comments on a pull request", "responses": { "200": { "description": "A paginated list of comments made on the given pull request, in chronological order.", @@ -11063,8 +11262,6 @@ } } }, - "tags": ["Pullrequests"], - "summary": "List comments on a pull request", "security": [ { "oauth2": ["pullrequest"] @@ -11075,10 +11272,12 @@ { "api_key": [] } - ], - "description": "Returns a paginated list of the pull request's comments.\n\nThis includes both global, inline comments and replies.\n\nThe default sorting is oldest to newest and can be overridden with\nthe `sort` query parameter.\n\nThis endpoint also supports filtering and sorting of the results. See\n[filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for more\ndetails." + ] }, "post": { + "tags": ["Pullrequests"], + "description": "Creates a new pull request comment.\n\nReturns the newly created pull request comment.", + "summary": "Create a comment on a pull request", "responses": { "201": { "description": "The newly created comment.", @@ -11130,8 +11329,6 @@ "description": "The comment object.", "required": true }, - "tags": ["Pullrequests"], - "summary": "Create a comment on a pull request", "security": [ { "oauth2": ["pullrequest"] @@ -11142,8 +11339,7 @@ { "api_key": [] } - ], - "description": "Creates a new pull request comment.\n\nReturns the newly created pull request comment." + ] }, "parameters": [ { @@ -11177,6 +11373,9 @@ }, "/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/comments/{comment_id}": { "delete": { + "tags": ["Pullrequests"], + "description": "Deletes a specific pull request comment.", + "summary": "Delete a comment on a pull request", "responses": { "204": { "description": "Successful deletion." @@ -11202,8 +11401,6 @@ } } }, - "tags": ["Pullrequests"], - "summary": "Delete a comment on a pull request", "security": [ { "oauth2": ["pullrequest"] @@ -11214,10 +11411,12 @@ { "api_key": [] } - ], - "description": "Deletes a specific pull request comment." + ] }, "get": { + "tags": ["Pullrequests"], + "description": "Returns a specific pull request comment.", + "summary": "Get a comment on a pull request", "responses": { "200": { "description": "The comment.", @@ -11250,8 +11449,6 @@ } } }, - "tags": ["Pullrequests"], - "summary": "Get a comment on a pull request", "security": [ { "oauth2": ["pullrequest"] @@ -11262,10 +11459,12 @@ { "api_key": [] } - ], - "description": "Returns a specific pull request comment." + ] }, "put": { + "tags": ["Pullrequests"], + "description": "Updates a specific pull request comment.", + "summary": "Update a comment on a pull request", "responses": { "200": { "description": "The updated comment.", @@ -11309,8 +11508,6 @@ "description": "The contents of the updated comment.", "required": true }, - "tags": ["Pullrequests"], - "summary": "Update a comment on a pull request", "security": [ { "oauth2": ["pullrequest"] @@ -11321,8 +11518,7 @@ { "api_key": [] } - ], - "description": "Updates a specific pull request comment." + ] }, "parameters": [ { @@ -11365,6 +11561,9 @@ }, "/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/commits": { "get": { + "tags": ["Pullrequests"], + "description": "Returns a paginated list of the pull request's commits.\n\nThese are the commits that are being merged into the destination\nbranch when the pull requests gets accepted.", + "summary": "List commits on a pull request", "responses": { "200": { "description": "A paginated list of commits made on the given pull request, in chronological order. This list will be empty if the source branch no longer exists." @@ -11390,8 +11589,6 @@ } } }, - "tags": ["Pullrequests"], - "summary": "List commits on a pull request", "security": [ { "oauth2": ["pullrequest"] @@ -11402,8 +11599,7 @@ { "api_key": [] } - ], - "description": "Returns a paginated list of the pull request's commits.\n\nThese are the commits that are being merged into the destination\nbranch when the pull requests gets accepted." + ] }, "parameters": [ { @@ -11437,6 +11633,9 @@ }, "/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/decline": { "post": { + "tags": ["Pullrequests"], + "description": "Declines the pull request.", + "summary": "Decline a pull request", "responses": { "200": { "description": "The pull request was successfully declined.", @@ -11459,8 +11658,6 @@ } } }, - "tags": ["Pullrequests"], - "summary": "Decline a pull request", "security": [ { "oauth2": ["pullrequest:write"] @@ -11471,8 +11668,7 @@ { "api_key": [] } - ], - "description": "Declines the pull request." + ] }, "parameters": [ { @@ -11506,13 +11702,14 @@ }, "/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/diff": { "get": { + "tags": ["Pullrequests"], + "description": "Redirects to the [repository diff](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-diff-spec-get)\nwith the revspec that corresponds to the pull request.", + "summary": "List changes in a pull request", "responses": { "302": { "description": "Redirects to the [repository diff](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-diff-spec-get) with the\nrevspec that corresponds to the pull request.\n" } }, - "tags": ["Pullrequests"], - "summary": "List changes in a pull request", "security": [ { "oauth2": ["pullrequest"] @@ -11523,8 +11720,7 @@ { "api_key": [] } - ], - "description": "Redirects to the [repository diff](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-diff-spec-get)\nwith the revspec that corresponds to the pull request." + ] }, "parameters": [ { @@ -11558,13 +11754,14 @@ }, "/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/diffstat": { "get": { + "tags": ["Pullrequests"], + "description": "Redirects to the [repository diffstat](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-diffstat-spec-get)\nwith the revspec that corresponds to the pull request.", + "summary": "Get the diff stat for a pull request", "responses": { "302": { "description": "Redirects to the [repository diffstat](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-diffstat-spec-get) with\nthe revspec that corresponds to pull request.\n" } }, - "tags": ["Pullrequests"], - "summary": "Get the diff stat for a pull request", "security": [ { "oauth2": ["pullrequest"] @@ -11575,8 +11772,7 @@ { "api_key": [] } - ], - "description": "Redirects to the [repository diffstat](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-diffstat-spec-get)\nwith the revspec that corresponds to the pull request." + ] }, "parameters": [ { @@ -11610,6 +11806,9 @@ }, "/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/merge": { "post": { + "tags": ["Pullrequests"], + "description": "Merges the pull request.", + "summary": "Merge a pull request", "responses": { "200": { "description": "The pull request object.", @@ -11655,8 +11854,6 @@ } } }, - "tags": ["Pullrequests"], - "summary": "Merge a pull request", "security": [ { "oauth2": ["pullrequest:write"] @@ -11667,8 +11864,7 @@ { "api_key": [] } - ], - "description": "Merges the pull request." + ] }, "parameters": [ { @@ -11702,6 +11898,9 @@ }, "/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/merge/task-status/{task_id}": { "get": { + "tags": ["Pullrequests"], + "description": "When merging a pull request takes too long, the client receives a\ntask ID along with a 202 status code. The task ID can be used in a call\nto this endpoint to check the status of a merge task.\n\n```\ncurl -X GET https://api.bitbucket.org/2.0/repositories/atlassian/bitbucket/pullrequests/2286/merge/task-status/