From 8474bf958a6d4ae63c5a1a0508c85795be625878 Mon Sep 17 00:00:00 2001 From: Nathan Gendron Date: Tue, 16 Jun 2026 00:40:24 -0400 Subject: [PATCH 1/6] =?UTF-8?q?=F0=9F=8F=97=EF=B8=8F=20Composite?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Nathan Gendron --- package.json | 32 +- pnpm-lock.yaml | 1172 +++-- pnpm-workspace.yaml | 4 +- src/base64.ts | 2 +- src/cloud/openapi/openapi-typescript.ts | 5477 +++++++++++++++------- src/cloud/openapi/swagger.v3.json | 4991 +++++++++++++++----- src/cloud/tsconfig.json | 6 + src/server/openapi/openapi-typescript.ts | 508 +- src/server/tsconfig.json | 6 + src/types/undici-types.d.ts | 3 - tests/server/projects.test.ts | 4 +- tsconfig.json | 7 +- 12 files changed, 8558 insertions(+), 3654 deletions(-) create mode 100644 src/cloud/tsconfig.json create mode 100644 src/server/tsconfig.json delete mode 100644 src/types/undici-types.d.ts diff --git a/package.json b/package.json index 5433fec..97284de 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ }, "repository": "github:coderabbitai/bitbucket", "scripts": { - "build": "tsgo", + "build": "tsgo --build", "clean": "rm -rf dist docs node_modules tsconfig.tsbuildinfo", "dev": "node ./src/main.ts", "docs": "typedoc", @@ -50,26 +50,26 @@ "postopenapi-typescript:server": "ts-autofix ./src/server/openapi && pnpm run lint:fix" }, "dependencies": { - "openapi-fetch": "~0.15.0" + "openapi-fetch": "~0.17.0" }, "devDependencies": { - "@eslint/js": "^9.21.0", + "@eslint/js": "^10.0.1", "@natoboram/load_env": "^2.0.0", - "@types/node": "^25.0.3", - "@typescript/native-preview": "7.0.0-dev.20260201.1", - "dotenv": "^17.0.1", - "eslint": "^9.21.0", - "eslint-config-prettier": "^10.0.2", - "globals": "^17.0.0", - "jiti": "^2.4.2", + "@types/node": "^25.9.3", + "@typescript/native-preview": "7.0.0-dev.20260614.1", + "dotenv": "^17.4.2", + "eslint": "^10.5.0", + "eslint-config-prettier": "^10.1.8", + "globals": "^17.6.0", + "jiti": "^2.7.0", "markdownlint-cli2": "^0.22.1", - "openapi-typescript": "^7.8.0", - "prettier": "^3.5.2", + "openapi-typescript": "^7.13.0", + "prettier": "^3.8.4", "ts-autofix": "^1.0.0", - "typedoc": "^0.28.1", - "typescript": "5.9.3", - "typescript-eslint": "^8.25.0", - "vitest": "^4.0.18" + "typedoc": "^0.28.19", + "typescript": "6.0.3", + "typescript-eslint": "^8.61.0", + "vitest": "^4.1.8" }, "type": "module", "exports": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 15d2cf0..625534c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,69 +12,69 @@ importers: .: dependencies: openapi-fetch: - specifier: ~0.15.0 - version: 0.15.0 + specifier: ~0.17.0 + version: 0.17.0 devDependencies: '@eslint/js': - specifier: ^9.21.0 - version: 9.39.2 + specifier: ^10.0.1 + version: 10.0.1(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2)) '@natoboram/load_env': specifier: ^2.0.0 version: 2.0.0 '@types/node': - specifier: ^25.0.3 - version: 25.6.0 + specifier: ^25.9.3 + version: 25.9.3 '@typescript/native-preview': - specifier: 7.0.0-dev.20260201.1 - version: 7.0.0-dev.20260201.1 + specifier: 7.0.0-dev.20260614.1 + version: 7.0.0-dev.20260614.1 dotenv: - specifier: ^17.0.1 + specifier: ^17.4.2 version: 17.4.2 eslint: - specifier: ^9.21.0 - version: 9.39.2(jiti@2.6.1) + specifier: ^10.5.0 + version: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) eslint-config-prettier: - specifier: ^10.0.2 - version: 10.1.8(eslint@9.39.2(jiti@2.6.1)) + specifier: ^10.1.8 + version: 10.1.8(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2)) globals: - specifier: ^17.0.0 + specifier: ^17.6.0 version: 17.6.0 jiti: - specifier: ^2.4.2 - version: 2.6.1 + specifier: ^2.7.0 + version: 2.7.0 markdownlint-cli2: specifier: ^0.22.1 - version: 0.22.1 + version: 0.22.1(supports-color@10.2.2) openapi-typescript: - specifier: ^7.8.0 - version: 7.13.0(typescript@5.9.3) + specifier: ^7.13.0 + version: 7.13.0(typescript@6.0.3) prettier: - specifier: ^3.5.2 - version: 3.8.3 + specifier: ^3.8.4 + version: 3.8.4 ts-autofix: specifier: ^1.0.0 version: 1.0.0 typedoc: - specifier: ^0.28.1 - version: 0.28.16(typescript@5.9.3) + specifier: ^0.28.19 + version: 0.28.19(typescript@6.0.3) typescript: - specifier: 5.9.3 - version: 5.9.3 + specifier: 6.0.3 + version: 6.0.3 typescript-eslint: - specifier: ^8.25.0 - version: 8.59.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + specifier: ^8.61.0 + version: 8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) vitest: - specifier: ^4.0.18 - version: 4.1.5(@types/node@25.6.0)(vite@7.3.1(@types/node@25.6.0)(jiti@2.6.1)(tsx@4.19.2)(yaml@2.8.2)) + specifier: ^4.1.8 + version: 4.1.8(@types/node@25.9.3)(vite@7.3.1(@types/node@25.9.3)(jiti@2.7.0)(tsx@4.19.2)(yaml@2.9.0)) packages: - '@babel/code-frame@7.29.0': - resolution: {integrity: sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==} + '@babel/code-frame@7.29.7': + resolution: {integrity: sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.28.5': - resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} + '@babel/helper-validator-identifier@7.29.7': + resolution: {integrity: sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==} engines: {node: '>=6.9.0'} '@esbuild/aix-ppc64@0.25.12': @@ -399,43 +399,48 @@ packages: resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/config-array@0.21.1': - resolution: {integrity: sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/config-array@0.23.5': + resolution: {integrity: sha512-Y3kKLvC1dvTOT+oGlqNQ1XLqK6D1HU2YXPc52NmAlJZbMMWDzGYXMiPRJ8TYD39muD/OTjlZmNJ4ib7dvSrMBA==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/config-helpers@0.4.2': - resolution: {integrity: sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/config-helpers@0.6.0': + resolution: {integrity: sha512-ii6Bw9jJ2zi2cWA2Z+9/QZ/+3DX6kwaV5Q986D/CdP3Lap3w/pgQZ373FV7byY/i7L4IRH/G43I5dz1ClsCbpA==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/core@0.17.0': - resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/core@1.2.1': + resolution: {integrity: sha512-MwcE1P+AZ4C6DWlpin/OmOA54mmIZ/+xZuJiQd4SyB29oAJjN30UW9wkKNptW2ctp4cEsvhlLY/CsQ1uoHDloQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/eslintrc@3.3.3': - resolution: {integrity: sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/js@10.0.1': + resolution: {integrity: sha512-zeR9k5pd4gxjZ0abRoIaxdc7I3nDktoXZk2qOv9gCNWx3mVwEn32VRhyLaRsDiJjTs0xq/T8mfPtyuXu7GWBcA==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + peerDependencies: + eslint: ^10.0.0 + peerDependenciesMeta: + eslint: + optional: true - '@eslint/js@9.39.2': - resolution: {integrity: sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/object-schema@3.0.5': + resolution: {integrity: sha512-vqTaUEgxzm+YDSdElad6PiRoX4t8VGDjCtt05zn4nU810UIx/uNEV7/lZJ6KwFThKZOzOxzXy48da+No7HZaMw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/object-schema@2.1.7': - resolution: {integrity: sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/plugin-kit@0.7.2': + resolution: {integrity: sha512-+CNAzxglkrpNf/kKywqQfk74QjtceuOE7Qm+AF8miRvPF/wmmK5+OJOgVh3AVTT3RP2mH3+FOaxlE5v72owk0A==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/plugin-kit@0.4.1': - resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@gerrit0/mini-shiki@3.23.0': + resolution: {integrity: sha512-bEMORlG0cqdjVyCEuU0cDQbORWX+kYCeo0kV1lbxF5bt4r7SID2l9bqsxJEM0zndaxpOUT7riCyIVEuqq/Ynxg==} - '@gerrit0/mini-shiki@3.22.0': - resolution: {integrity: sha512-jMpciqEVUBKE1QwU64S4saNMzpsSza6diNCk4MWAeCxO2+LFi2FIFmL2S0VDLzEJCxuvCbU783xi8Hp/gkM5CQ==} + '@humanfs/core@0.19.2': + resolution: {integrity: sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==} + engines: {node: '>=18.18.0'} - '@humanfs/core@0.19.1': - resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} + '@humanfs/node@0.16.8': + resolution: {integrity: sha512-gE1eQNZ3R++kTzFUpdGlpmy8kDZD/MLyHqDwqjkVQI0JMdI1D51sy1H958PNXYkM2rAac7e5/CnIKZrHtPh3BQ==} engines: {node: '>=18.18.0'} - '@humanfs/node@0.16.7': - resolution: {integrity: sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==} + '@humanfs/types@0.15.0': + resolution: {integrity: sha512-ZZ1w0aoQkwuUuC7Yf+7sdeaNfqQiiLcSRbfI08oAxqLtpXQr9AIVX7Ay7HLDuiLYAaFPu8oBYNq/QIi9URHJ3Q==} engines: {node: '>=18.18.0'} '@humanwhocodes/module-importer@1.0.1': @@ -471,146 +476,159 @@ packages: '@redocly/config@0.22.0': resolution: {integrity: sha512-gAy93Ddo01Z3bHuVdPWfCwzgfaYgMdaZPcfL7JZ7hWJoK9V0lXDbigTWkhiPFAaLWzbOJ+kbUQG1+XwIm0KRGQ==} - '@redocly/openapi-core@1.34.14': - resolution: {integrity: sha512-y+xFx+Zz54Xhr8jUdnLENYnt7Y7GEDL6Q03ga7rTtX8DVwefX9H+hQEPgJp1nda7vdH+wJ9/HBVvyfBuW9x6rA==} + '@redocly/openapi-core@1.34.15': + resolution: {integrity: sha512-HAwCnNyKcs5XGQqms+9t7OdAPM/5TDstmhF+0i7tdCFato2QKuYIlyWETwkXd8c5zbltr1oB+6y9NTeQLr2d6Q==} engines: {node: '>=18.17.0', npm: '>=9.5.0'} - '@rollup/rollup-android-arm-eabi@4.60.2': - resolution: {integrity: sha512-dnlp69efPPg6Uaw2dVqzWRfAWRnYVb1XJ8CyyhIbZeaq4CA5/mLeZ1IEt9QqQxmbdvagjLIm2ZL8BxXv5lH4Yw==} + '@rollup/rollup-android-arm-eabi@4.62.0': + resolution: {integrity: sha512-IPIQ55ythEHkfEd9jMEi32OQ7SxURsGA43JI22lj01OLZNt2NUbJX8YUHxkVWyQ6daHPNn0truF5nSj3DQp6YQ==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.60.2': - resolution: {integrity: sha512-OqZTwDRDchGRHHm/hwLOL7uVPB9aUvI0am/eQuWMNyFHf5PSEQmyEeYYheA0EPPKUO/l0uigCp+iaTjoLjVoHg==} + '@rollup/rollup-android-arm64@4.62.0': + resolution: {integrity: sha512-M6s9cr10MibETyo8JsOkq+Lo1+lU6hcvb1MApnUql5qte/5hMEgzlN8/ReIKNfRV8rrqX50W1BX9zoUhC192RA==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.60.2': - resolution: {integrity: sha512-UwRE7CGpvSVEQS8gUMBe1uADWjNnVgP3Iusyda1nSRwNDCsRjnGc7w6El6WLQsXmZTbLZx9cecegumcitNfpmA==} + '@rollup/rollup-darwin-arm64@4.62.0': + resolution: {integrity: sha512-BqCoMoIbn0keKys+dEAdBa70EtOwV1bEsQCUgU9FdiZmmMge/Zk7LlkYGqbrdHR+Frnt0E1FOanly+rlwvvQzw==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.60.2': - resolution: {integrity: sha512-gjEtURKLCC5VXm1I+2i1u9OhxFsKAQJKTVB8WvDAHF+oZlq0GTVFOlTlO1q3AlCTE/DF32c16ESvfgqR7343/g==} + '@rollup/rollup-darwin-x64@4.62.0': + resolution: {integrity: sha512-SIMzST3VFNXDAbeIWDWiFCNM5qncUBDWaEV7NfE7oZbDt2mgfW4MvbKdbYiGOLoM32gbTv608UMd0XktEYSD7w==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.60.2': - resolution: {integrity: sha512-Bcl6CYDeAgE70cqZaMojOi/eK63h5Me97ZqAQoh77VPjMysA/4ORQBRGo3rRy45x4MzVlU9uZxs8Uwy7ZaKnBw==} + '@rollup/rollup-freebsd-arm64@4.62.0': + resolution: {integrity: sha512-ezjfSQMP7ArdUsbBwbQIfwAlhE84I2iVnzQNCFSveqV42q+BmKlzVpf7mxv5EchLcoWU4y6/heFzVg1F+hodUQ==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.60.2': - resolution: {integrity: sha512-LU+TPda3mAE2QB0/Hp5VyeKJivpC6+tlOXd1VMoXV/YFMvk/MNk5iXeBfB4MQGRWyOYVJ01625vjkr0Az98OJQ==} + '@rollup/rollup-freebsd-x64@4.62.0': + resolution: {integrity: sha512-9+qTWGW9AZRhnUgwtTwzNwcPlL87ngkeN0LA+q1bADvmY9aNvWaF2TFW8BZgnQPYxpDI7+rMVLivcd4V737TAQ==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.60.2': - resolution: {integrity: sha512-2QxQrM+KQ7DAW4o22j+XZ6RKdxjLD7BOWTP0Bv0tmjdyhXSsr2Ul1oJDQqh9Zf5qOwTuTc7Ek83mOFaKnodPjg==} + '@rollup/rollup-linux-arm-gnueabihf@4.62.0': + resolution: {integrity: sha512-T1dMEQhXA/jkJ/jyMIw9IovK8bSUq7A8kLIlvZTb/6YIVsp2zLavr4F3oyllHWo7eIVJRyE5n3tUjQJEbE1IuQ==} cpu: [arm] os: [linux] + libc: [glibc] - '@rollup/rollup-linux-arm-musleabihf@4.60.2': - resolution: {integrity: sha512-TbziEu2DVsTEOPif2mKWkMeDMLoYjx95oESa9fkQQK7r/Orta0gnkcDpzwufEcAO2BLBsD7mZkXGFqEdMRRwfw==} + '@rollup/rollup-linux-arm-musleabihf@4.62.0': + resolution: {integrity: sha512-2as0LgT7qQpyceQq6VUJYnumUMUrgGQCWIiDIN9DE0/tglsk6o66uCB4f3djRawAltvfCNLyZZrsqbPA6inCsA==} cpu: [arm] os: [linux] + libc: [musl] - '@rollup/rollup-linux-arm64-gnu@4.60.2': - resolution: {integrity: sha512-bO/rVDiDUuM2YfuCUwZ1t1cP+/yqjqz+Xf2VtkdppefuOFS2OSeAfgafaHNkFn0t02hEyXngZkxtGqXcXwO8Rg==} + '@rollup/rollup-linux-arm64-gnu@4.62.0': + resolution: {integrity: sha512-bVURMg+6eNN9C/yc0aVjooZcwTTtYF4YW3xta5pP0//r3o1V8gXEHXWCndj47w/HhwsFroZrFhR+6uQP5T0n0g==} cpu: [arm64] os: [linux] + libc: [glibc] - '@rollup/rollup-linux-arm64-musl@4.60.2': - resolution: {integrity: sha512-hr26p7e93Rl0Za+JwW7EAnwAvKkehh12BU1Llm9Ykiibg4uIr2rbpxG9WCf56GuvidlTG9KiiQT/TXT1yAWxTA==} + '@rollup/rollup-linux-arm64-musl@4.62.0': + resolution: {integrity: sha512-Ful8pM/2yYI83PViWdFdpZhdI8HJ5qsXANe5atypbHDf+KIBBDsZsbyy8hbXnULVvW9NsTh5DHwbcBftyLTfiw==} cpu: [arm64] os: [linux] + libc: [musl] - '@rollup/rollup-linux-loong64-gnu@4.60.2': - resolution: {integrity: sha512-pOjB/uSIyDt+ow3k/RcLvUAOGpysT2phDn7TTUB3n75SlIgZzM6NKAqlErPhoFU+npgY3/n+2HYIQVbF70P9/A==} + '@rollup/rollup-linux-loong64-gnu@4.62.0': + resolution: {integrity: sha512-9Gp/DgrkzfUBmNPVTyPTvay+4xEP7M/clXpj3efXBcm6uTIVIgDg4rqUpqKXvLEuFRVuEpSAOkhgNeecvaZ4Cg==} cpu: [loong64] os: [linux] + libc: [glibc] - '@rollup/rollup-linux-loong64-musl@4.60.2': - resolution: {integrity: sha512-2/w+q8jszv9Ww1c+6uJT3OwqhdmGP2/4T17cu8WuwyUuuaCDDJ2ojdyYwZzCxx0GcsZBhzi3HmH+J5pZNXnd+Q==} + '@rollup/rollup-linux-loong64-musl@4.62.0': + resolution: {integrity: sha512-m9tsJz54LUXkSYM8+8PG81B9IKK5r+2T0clMq4QrS16xFosufU7firBDAZEsDheDs7wTlP7h3++S7lMsU955HA==} cpu: [loong64] os: [linux] + libc: [musl] - '@rollup/rollup-linux-ppc64-gnu@4.60.2': - resolution: {integrity: sha512-11+aL5vKheYgczxtPVVRhdptAM2H7fcDR5Gw4/bTcteuZBlH4oP9f5s9zYO9aGZvoGeBpqXI/9TZZihZ609wKw==} + '@rollup/rollup-linux-ppc64-gnu@4.62.0': + resolution: {integrity: sha512-3UvJ5PNVU16aJf6M3tFI24pWzAl2/ynfbyRN3ICyQajK1lSkrnVYNnLz3v04J32qKa0FczJc22zeToc0lr2A3w==} cpu: [ppc64] os: [linux] + libc: [glibc] - '@rollup/rollup-linux-ppc64-musl@4.60.2': - resolution: {integrity: sha512-i16fokAGK46IVZuV8LIIwMdtqhin9hfYkCh8pf8iC3QU3LpwL+1FSFGej+O7l3E/AoknL6Dclh2oTdnRMpTzFQ==} + '@rollup/rollup-linux-ppc64-musl@4.62.0': + resolution: {integrity: sha512-vRWUAbYLGHBZS6Q8Msb2sfnf1fvJf+47t8l/TwOerM2qArzy+IeNMTHrYLHXh95h8MoatPHI5hhSZNs+mGXKPg==} cpu: [ppc64] os: [linux] + libc: [musl] - '@rollup/rollup-linux-riscv64-gnu@4.60.2': - resolution: {integrity: sha512-49FkKS6RGQoriDSK/6E2GkAsAuU5kETFCh7pG4yD/ylj9rKhTmO3elsnmBvRD4PgJPds5W2PkhC82aVwmUcJ7A==} + '@rollup/rollup-linux-riscv64-gnu@4.62.0': + resolution: {integrity: sha512-c00T5SYENHAt86cfW47URaP3Us5vLC/4QO7GYud1G5VNRffCwwCuBspwqYrriuJB+5m0WFzClCn9wed0FBjKvg==} cpu: [riscv64] os: [linux] + libc: [glibc] - '@rollup/rollup-linux-riscv64-musl@4.60.2': - resolution: {integrity: sha512-mjYNkHPfGpUR00DuM1ZZIgs64Hpf4bWcz9Z41+4Q+pgDx73UwWdAYyf6EG/lRFldmdHHzgrYyge5akFUW0D3mQ==} + '@rollup/rollup-linux-riscv64-musl@4.62.0': + resolution: {integrity: sha512-krrCDilhXOwFkSkO3Wm9I/f9H0L92XHHwy2fwxjukxIbh0dem8gZqOW5Y8BsHrpJv5qwlRBV+Wl4ZFyRWhUpwg==} cpu: [riscv64] os: [linux] + libc: [musl] - '@rollup/rollup-linux-s390x-gnu@4.60.2': - resolution: {integrity: sha512-ALyvJz965BQk8E9Al/JDKKDLH2kfKFLTGMlgkAbbYtZuJt9LU8DW3ZoDMCtQpXAltZxwBHevXz5u+gf0yA0YoA==} + '@rollup/rollup-linux-s390x-gnu@4.62.0': + resolution: {integrity: sha512-7pfYFSTc4/rUC/FtAI0Qp6QthDBCIi6/AuP1xYqFk5vanI6KnL5dWKP60OM/05LOsbwTmIcvr6eXC4CJuJ75IA==} cpu: [s390x] os: [linux] + libc: [glibc] - '@rollup/rollup-linux-x64-gnu@4.60.2': - resolution: {integrity: sha512-UQjrkIdWrKI626Du8lCQ6MJp/6V1LAo2bOK9OTu4mSn8GGXIkPXk/Vsp4bLHCd9Z9Iz2OTEaokUE90VweJgIYQ==} + '@rollup/rollup-linux-x64-gnu@4.62.0': + resolution: {integrity: sha512-7SDIalKeIpG0Ifogbbdn58HmSotYMlf23K3dCJEmiVd9Fg36Vmni82iPQec27N3wY4Bvbxftkxz6vSx9OcouTg==} cpu: [x64] os: [linux] + libc: [glibc] - '@rollup/rollup-linux-x64-musl@4.60.2': - resolution: {integrity: sha512-bTsRGj6VlSdn/XD4CGyzMnzaBs9bsRxy79eTqTCBsA8TMIEky7qg48aPkvJvFe1HyzQ5oMZdg7AnVlWQSKLTnw==} + '@rollup/rollup-linux-x64-musl@4.62.0': + resolution: {integrity: sha512-eRZevouTH2i1HeAVLqJuLnt256krQkGY0TN6WsTmsIhuzbh457HuWDMakKwmi0Cjadux983CoSr8Lim2QhUIFw==} cpu: [x64] os: [linux] + libc: [musl] - '@rollup/rollup-openbsd-x64@4.60.2': - resolution: {integrity: sha512-6d4Z3534xitaA1FcMWP7mQPq5zGwBmGbhphh2DwaA1aNIXUu3KTOfwrWpbwI4/Gr0uANo7NTtaykFyO2hPuFLg==} + '@rollup/rollup-openbsd-x64@4.62.0': + resolution: {integrity: sha512-3oVS7FLGa4U1qcvao9ylGxrjXZyUQqR8UwxEcnUEyPX53O/C/mKDZegNXTdHCP+h3e6ta/f1EN38Yif1mmZHYg==} cpu: [x64] os: [openbsd] - '@rollup/rollup-openharmony-arm64@4.60.2': - resolution: {integrity: sha512-NetAg5iO2uN7eB8zE5qrZ3CSil+7IJt4WDFLcC75Ymywq1VZVD6qJ6EvNLjZ3rEm6gB7XW5JdT60c6MN35Z85Q==} + '@rollup/rollup-openharmony-arm64@4.62.0': + resolution: {integrity: sha512-yTB9TgfWj5wHe5QgktAgXTLLot1gvEjl1NiPPAUiCs4oPrIWFl5V4nC3GrkNdj9LaAU4s94nVrGbGOCqUpyWsg==} cpu: [arm64] os: [openharmony] - '@rollup/rollup-win32-arm64-msvc@4.60.2': - resolution: {integrity: sha512-NCYhOotpgWZ5kdxCZsv6Iudx0wX8980Q/oW4pNFNihpBKsDbEA1zpkfxJGC0yugsUuyDZ7gL37dbzwhR0VI7pQ==} + '@rollup/rollup-win32-arm64-msvc@4.62.0': + resolution: {integrity: sha512-5LOhoaesY3doG1c+ac/2JtgREpKoJr5bUHH8tKY0V8di7+uSV6BwLs2PlR0/yzefGOkR+wE7ZolZphHCsyG5Rw==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.60.2': - resolution: {integrity: sha512-RXsaOqXxfoUBQoOgvmmijVxJnW2IGB0eoMO7F8FAjaj0UTywUO/luSqimWBJn04WNgUkeNhh7fs7pESXajWmkg==} + '@rollup/rollup-win32-ia32-msvc@4.62.0': + resolution: {integrity: sha512-yYkWHhmbhRTWTnWos5HC4GcPQfjlzzCNbM9e/+GXrLuaBXYA3qSDR9f0Vgufd5S8yX81U8jPKp7ZnAjZFMtRnw==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-gnu@4.60.2': - resolution: {integrity: sha512-qdAzEULD+/hzObedtmV6iBpdL5TIbKVztGiK7O3/KYSf+HIzU257+MX1EXJcyIiDbMAqmbwaufcYPvyRryeZtA==} + '@rollup/rollup-win32-x64-gnu@4.62.0': + resolution: {integrity: sha512-SoTb6lPg25xZlA2ibwQ++ahCCnH+FP0qmEuafMJ4gznZKOlXioKEAeJLgCrqjM98ACziXM9V1amFjICVL4IFoA==} cpu: [x64] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.60.2': - resolution: {integrity: sha512-Nd/SgG27WoA9e+/TdK74KnHz852TLa94ovOYySo/yMPuTmpckK/jIF2jSwS3g7ELSKXK13/cVdmg1Z/DaCWKxA==} + '@rollup/rollup-win32-x64-msvc@4.62.0': + resolution: {integrity: sha512-5L+T1fMX4RIEBoZzT0+sQ0PhTS36NULFmMXtl1TZo44TMAROIMHbZufSOjVWt/Y622BtxgxtaNOokbTDvfsrZA==} cpu: [x64] os: [win32] - '@shikijs/engine-oniguruma@3.22.0': - resolution: {integrity: sha512-DyXsOG0vGtNtl7ygvabHd7Mt5EY8gCNqR9Y7Lpbbd/PbJvgWrqaKzH1JW6H6qFkuUa8aCxoiYVv8/YfFljiQxA==} + '@shikijs/engine-oniguruma@3.23.0': + resolution: {integrity: sha512-1nWINwKXxKKLqPibT5f4pAFLej9oZzQTsby8942OTlsJzOBZ0MWKiwzMsd+jhzu8YPCHAswGnnN1YtQfirL35g==} - '@shikijs/langs@3.22.0': - resolution: {integrity: sha512-x/42TfhWmp6H00T6uwVrdTJGKgNdFbrEdhaDwSR5fd5zhQ1Q46bHq9EO61SCEWJR0HY7z2HNDMaBZp8JRmKiIA==} + '@shikijs/langs@3.23.0': + resolution: {integrity: sha512-2Ep4W3Re5aB1/62RSYQInK9mM3HsLeB91cHqznAJMuylqjzNVAVCMnNWRHFtcNHXsoNRayP9z1qj4Sq3nMqYXg==} - '@shikijs/themes@3.22.0': - resolution: {integrity: sha512-o+tlOKqsr6FE4+mYJG08tfCFDS+3CG20HbldXeVoyP+cYSUxDhrFf3GPjE60U55iOkkjbpY2uC3It/eeja35/g==} + '@shikijs/themes@3.23.0': + resolution: {integrity: sha512-5qySYa1ZgAT18HR/ypENL9cUSGOeI2x+4IvYJu4JgVJdizn6kG4ia5Q1jDEOi7gTbN4RbuYtmHh0W3eccOrjMA==} - '@shikijs/types@3.22.0': - resolution: {integrity: sha512-491iAekgKDBFE67z70Ok5a8KBMsQ2IJwOWw3us/7ffQkIBCyOQfm/aNwVMBUriP02QshIfgHCBSIYAl3u2eWjg==} + '@shikijs/types@3.23.0': + resolution: {integrity: sha512-3JZ5HXOZfYjsYSk0yPwBrkupyYSLpAE26Qc0HLghhZNGTZg/SKxXIIgoxOpmmeQP0RRSDJTk1/vPfw9tbw+jSQ==} '@shikijs/vscode-textmate@10.0.2': resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==} @@ -631,8 +649,11 @@ packages: '@types/deep-eql@4.0.2': resolution: {integrity: sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==} - '@types/estree@1.0.8': - resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} + '@types/esrecurse@4.3.1': + resolution: {integrity: sha512-xJBAbDifo5hpffDBuHl0Y8ywswbiAp/Wi7Y/GtAgSlZyIABppyurxVueOPE8LUQOxdlgi6Zqce7uoEpqNTeiUw==} + + '@types/estree@1.0.9': + resolution: {integrity: sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==} '@types/hast@3.0.4': resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} @@ -646,8 +667,8 @@ packages: '@types/ms@2.1.0': resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} - '@types/node@25.6.0': - resolution: {integrity: sha512-+qIYRKdNYJwY3vRCZMdJbPLJAtGjQBudzZzdzwQYkEPQd+PJGixUL5QfvCLDaULoLv+RhT3LDkwEfKaAkgSmNQ==} + '@types/node@25.9.3': + resolution: {integrity: sha512-603BddQMv3pUcr4U2dhujk83N2tTDVr/34wII2B6bJy6g+8WD6yUb11jszNs0gdi4PesVWl7ABt8nYMVpnLUcg==} '@types/unist@2.0.11': resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} @@ -655,109 +676,117 @@ packages: '@types/unist@3.0.3': resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} - '@typescript-eslint/eslint-plugin@8.59.1': - resolution: {integrity: sha512-BOziFIfE+6osHO9FoJG4zjoHUcvI7fTNBSpdAwrNH0/TLvzjsk2oo8XSSOT2HhqUyhZPfHv4UOffoJ9oEEQ7Ag==} + '@typescript-eslint/eslint-plugin@8.61.0': + resolution: {integrity: sha512-bFNvl9ZczlVb+wR2Akszf3gHfKVj/8WanXaGJ3UstTA7brNKg0cNdk6X1Psu5V7MZ2oQtzZKOEzIUehaoxbDGw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^8.59.1 + '@typescript-eslint/parser': ^8.61.0 eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/parser@8.59.1': - resolution: {integrity: sha512-HDQH9O/47Dxi1ceDhBXdaldtf/WV9yRYMjbjCuNk3qnaTD564qwv61Y7+gTxwxRKzSrgO5uhtw584igXVuuZkA==} + '@typescript-eslint/parser@8.61.0': + resolution: {integrity: sha512-5B7PfA2e1NQGCnDHd/0lW7W3gvp3d59Ryw54FYO8Uswxo9f6ikw3AZV+Xj/TvpImmpsiYyUqAfhC6kJID1jF6w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/project-service@8.59.1': - resolution: {integrity: sha512-+MuHQlHiEr00Of/IQbE/MmEoi44znZHbR/Pz7Opq4HryUOlRi+/44dro9Ycy8Fyo+/024IWtw8m4JUMCGTYxDg==} + '@typescript-eslint/project-service@8.61.0': + resolution: {integrity: sha512-DV42F7MLJO6Rax7SK1yg43tcnEfGUrurSpSxKuVX+a3RCTzBlH3fuxprrOJXKCJGAaw82xXocikJ0uQaqwXgGA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/scope-manager@8.59.1': - resolution: {integrity: sha512-LwuHQI4pDOYVKvmH2dkaJo6YZCSgouVgnS/z7yBPKBMvgtBvyLqiLy9Z6b7+m/TRcX1NFYUqZetI5Y+aT4GEfg==} + '@typescript-eslint/scope-manager@8.61.0': + resolution: {integrity: sha512-IWdXFHFSb6mlC3HPc7QsLDm5zYEbUla6trDEHf32D3/dnuUyXd87plScSNXSbm0/RxMvObpI17sv/EDTGrGZkA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/tsconfig-utils@8.59.1': - resolution: {integrity: sha512-/0nEyPbX7gRsk0Uwfe4ALwwgxuA66d/l2mhRDNlAvaj4U3juhUtJNq0DsY8M2AYwwb9rEq2hrC3IcIcEt++iJA==} + '@typescript-eslint/tsconfig-utils@8.61.0': + resolution: {integrity: sha512-O5Amvdv9ztMpxpf+vmFULGG78IE6Qwdr3bCGvqwG4nwc9H2qXkOYJJnRbRHyMkQTjv1d03olqwwwzHLMqpFePQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/type-utils@8.59.1': - resolution: {integrity: sha512-klWPBR2ciQHS3f++ug/mVnWKPjBUo7icEL3FAO1lhAR1Z1i5NQYZ1EannMSRYcq5qCv5wNALlXr6fksRHyYl7w==} + '@typescript-eslint/type-utils@8.61.0': + resolution: {integrity: sha512-TuBiQYIkd97yBfInHCTKVYMbX4kvEmpOEuixIuzCU9p8BGT1SfyyO0d0IfDMbPIHcjn/hWnusUX5e8v5Xg+X8A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/types@8.59.1': - resolution: {integrity: sha512-ZDCjgccSdYPw5Bxh+my4Z0lJU96ZDN7jbBzvmEn0FZx3RtU1C7VWl6NbDx94bwY3V5YsgwRzJPOgeY2Q/nLG8A==} + '@typescript-eslint/types@8.61.0': + resolution: {integrity: sha512-9QTQpZ5Iin4CdIodfbDQFSeiSJKidgYJYug1P9CC2xWgUTvlmixViqDZNciMjwLBZyJnG4tGmPl97rVAFb1AJg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.59.1': - resolution: {integrity: sha512-OUd+vJS05sSkOip+BkZ/2NS8RMxrAAJemsC6vU3kmfLyeaJT0TftHkV9mcx2107MmsBVXXexhVu4F0TZXyMl4g==} + '@typescript-eslint/typescript-estree@8.61.0': + resolution: {integrity: sha512-42zatd5qSvvcV1JdDBCLxYRznvP4eIHpPoZXdkPFnAmanA4FuZ5dibSnCBggY8hQnqajPpoGjXFdZ7fIJKQnlA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/utils@8.59.1': - resolution: {integrity: sha512-3pIeoXhCeYH9FSCBI8P3iNwJlGuzPlYKkTlen2O9T1DSeeg8UG8jstq6BLk+Mda0qup7mgk4z4XL4OzRaxZ8LA==} + '@typescript-eslint/utils@8.61.0': + resolution: {integrity: sha512-3bzFt7ImFMW/jVYwJamDoe/dMOdFLSC6pom6rRjdh4SZJEYupyMzem8e7vKZLclLfpHjlwSAXOUxtKxGXUiLqA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/visitor-keys@8.59.1': - resolution: {integrity: sha512-LdDNl6C5iJExcM0Yh0PwAIBb9PrSiCsWamF/JyEZawm3kFDnRoaq3LGE4bpyRao/fWeGKKyw7icx0YxrLFC5Cg==} + '@typescript-eslint/visitor-keys@8.61.0': + resolution: {integrity: sha512-QVLZu3ZPQEE+HICQyAMZ2yLQhxf0meY/wx6Hx14YcTNj13JB3qHlX3lJ02L3fLGHgERRH71kvYDwiXIguT3AjQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript/native-preview-darwin-arm64@7.0.0-dev.20260201.1': - resolution: {integrity: sha512-gWQiigYMGYEMT8DZELK04KJWHtNKuWxsrvjMZIYC5leEYegxU9KfVX4uCs/zMvnCBmucccAKidq04RRoi77gqg==} + '@typescript/native-preview-darwin-arm64@7.0.0-dev.20260614.1': + resolution: {integrity: sha512-2JHbdJ00FKTKDR1+NL4zhQBDlFZfZHEXaAarV6kbEjV0P47qKnSrAzzKHuponG0B9FqkPEMHOgu7WGJTBW2rHw==} + engines: {node: '>=16.20.0'} cpu: [arm64] os: [darwin] - '@typescript/native-preview-darwin-x64@7.0.0-dev.20260201.1': - resolution: {integrity: sha512-3bofmAfBzBqZruBJP1DDsAIMuOvTpKRaHMfl1lQ1YQwJwmKIhsMOWn241vtxFZcaqCPOXobQHUFCmCXPCT3heA==} + '@typescript/native-preview-darwin-x64@7.0.0-dev.20260614.1': + resolution: {integrity: sha512-/8enyEb1tDsVvUp4rDeA5DernrvWgD6cQ4rY6O6PH6BQK8fqwY+CcHEHmw2xgwfqoswHNYjznLvmQmHBOjHqLw==} + engines: {node: '>=16.20.0'} cpu: [x64] os: [darwin] - '@typescript/native-preview-linux-arm64@7.0.0-dev.20260201.1': - resolution: {integrity: sha512-DBzCiGSbvO37XM0Idxy5PQEP1LJ2f2kKod7tDxFwiChay7y0M0G2MchPVIWJ22OYVFuQFkE1UcXVQ8XgRytdLw==} + '@typescript/native-preview-linux-arm64@7.0.0-dev.20260614.1': + resolution: {integrity: sha512-jqhqAXqyEUxJpno/wRfWGa72R3VTt7p2LRTOFJ0C1bx5dEKrVosQSOdr2m9+2VhjXFXNvorXsGZPIWqxLOo28Q==} + engines: {node: '>=16.20.0'} cpu: [arm64] os: [linux] - '@typescript/native-preview-linux-arm@7.0.0-dev.20260201.1': - resolution: {integrity: sha512-D0cPUILpdhwdnTb44HqUbphsglpu6R1w6EFXpqOu8PXlfaCjrtdlnuLdKFkLro0mfVnxuC0yaT2XVzE3+2UPaQ==} + '@typescript/native-preview-linux-arm@7.0.0-dev.20260614.1': + resolution: {integrity: sha512-zYrUKq5oC6fUoHpOmT3B65hFMhbdIlLp7T9RW1/6a+wSYoq9xTRAeFufQ2XZ9cpTJ1tfIvlUmtgJJ5CGE/cOrg==} + engines: {node: '>=16.20.0'} cpu: [arm] os: [linux] - '@typescript/native-preview-linux-x64@7.0.0-dev.20260201.1': - resolution: {integrity: sha512-6LcmGJ0BRr0cPJw5kMC/rP4jG1PUBr/VNlwYcfpLSmyxU/OB4zhiHLPehCZZ0jD6D9BW2ninud32rUpK3N0xCQ==} + '@typescript/native-preview-linux-x64@7.0.0-dev.20260614.1': + resolution: {integrity: sha512-K2c/DN7Q3a6Z+KIl7bq45xByuuGjacqWO/UPCa/iTBA/m6GDzoMJ/Q/DBLtLRHyROBRiy5kjgEZfyLy3Tp8ygw==} + engines: {node: '>=16.20.0'} cpu: [x64] os: [linux] - '@typescript/native-preview-win32-arm64@7.0.0-dev.20260201.1': - resolution: {integrity: sha512-6YltsvcfK7ke3TZnXl55HonVULuSwbYjy8NqyhKY0DZmstIo8l4Gai9XqCQ/DBFWZO+B6PsFs2cuEVR9VTNT8g==} + '@typescript/native-preview-win32-arm64@7.0.0-dev.20260614.1': + resolution: {integrity: sha512-C+C25Grr4sCbQIYPT5WfKYIL613ZIN9aGcUwDGMSTmIQ3azIR5MtdkSF4l4vsOC4lF8HwFV83MDa28JuQYhQFg==} + engines: {node: '>=16.20.0'} cpu: [arm64] os: [win32] - '@typescript/native-preview-win32-x64@7.0.0-dev.20260201.1': - resolution: {integrity: sha512-fNT3ua4cw17c/vzU5PmaeeaAARPNyZv7ULLe9mMuAYvyOwit9GA6bqCal/c7psgH7jCVyCRCy3FNGY240io9/w==} + '@typescript/native-preview-win32-x64@7.0.0-dev.20260614.1': + resolution: {integrity: sha512-nJBR61NGiCMBJOpdzJ4ZgA/HEd+fqIb99ur39UljSH9xvFKFlRwDosyAQFD8UEwrZsUbXN0VPLJY5MDknug3GA==} + engines: {node: '>=16.20.0'} cpu: [x64] os: [win32] - '@typescript/native-preview@7.0.0-dev.20260201.1': - resolution: {integrity: sha512-UNr61SrdLWNsl+hedT3gJY8xbpdJtkS/cphjmS1xUXnVu9apYv/uMlVw02CTlSxsMoVsVGQ7CLXRABUODTjDVQ==} + '@typescript/native-preview@7.0.0-dev.20260614.1': + resolution: {integrity: sha512-4N1ZBHJUcsjKJQnUCxKUemV3jnm0PKZIZ4xh7dXN/3/AfmckE8Z1llyqOFfDwGOf8oQpdgkwQ6JUm7pqI3bGPg==} + engines: {node: '>=16.20.0'} hasBin: true - '@vitest/expect@4.1.5': - resolution: {integrity: sha512-PWBaRY5JoKuRnHlUHfpV/KohFylaDZTupcXN1H9vYryNLOnitSw60Mw9IAE2r67NbwwzBw/Cc/8q9BK3kIX8Kw==} + '@vitest/expect@4.1.8': + resolution: {integrity: sha512-h3nDO677RDLEGlBxyQ5CW8RlMThSKSRLUePLOx09gNIWRL40edgA1GCZSZgf1W55MFAG6/Sw14KeaAnqv0NKdQ==} - '@vitest/mocker@4.1.5': - resolution: {integrity: sha512-/x2EmFC4mT4NNzqvC3fmesuV97w5FC903KPmey4gsnJiMQ3Be1IlDKVaDaG8iqaLFHqJ2FVEkxZk5VmeLjIItw==} + '@vitest/mocker@4.1.8': + resolution: {integrity: sha512-LEiN/xe4OSIbKe9HQIp5OC24agGD9J5CnmMgsLohVVoOPWL9a2sBoR6VBx43jQZb7Kr1l4RCuyCJzcAa0+dojw==} peerDependencies: msw: ^2.4.9 vite: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -767,28 +796,28 @@ packages: vite: optional: true - '@vitest/pretty-format@4.1.5': - resolution: {integrity: sha512-7I3q6l5qr03dVfMX2wCo9FxwSJbPdwKjy2uu/YPpU3wfHvIL4QHwVRp57OfGrDFeUJ8/8QdfBKIV12FTtLn00g==} + '@vitest/pretty-format@4.1.8': + resolution: {integrity: sha512-9GasEBxpZ1VYIpqHf/0+YGg121uSNwCKOJqIrTwWP/TB7DmFCiaBpNl3aPZzoLWfWkuqhbH8vJIVobZkvdo2cA==} - '@vitest/runner@4.1.5': - resolution: {integrity: sha512-2D+o7Pr82IEO46YPpoA/YU0neeyr6FTerQb5Ro7BUnBuv6NQtT/kmVnczngiMEBhzgqz2UZYl5gArejsyERDSQ==} + '@vitest/runner@4.1.8': + resolution: {integrity: sha512-EmVxeBAfMJvycdjd6Hm+RbFBbA9fKvo0Kx37hNpBYoYeavH3RNsBXWDooR1mgD52dCrxIIuP7UotpfiwOikvcg==} - '@vitest/snapshot@4.1.5': - resolution: {integrity: sha512-zypXEt4KH/XgKGPUz4eC2AvErYx0My5hfL8oDb1HzGFpEk1P62bxSohdyOmvz+d9UJwanI68MKwr2EquOaOgMQ==} + '@vitest/snapshot@4.1.8': + resolution: {integrity: sha512-acfZboRmAIf05DEKcBQy33VXojFJjtUdLyo7oOmV9kebb2xdU01UknNiPuPZoJZQyO7DF0gZdTGTpeAzET9QPQ==} - '@vitest/spy@4.1.5': - resolution: {integrity: sha512-2lNOsh6+R2Idnf1TCZqSwYlKN2E/iDlD8sgU59kYVl+OMDmvldO1VDk39smRfpUNwYpNRVn3w4YfuC7KfbBnkQ==} + '@vitest/spy@4.1.8': + resolution: {integrity: sha512-6EevtBp6OZOPF7bmz36HrGMeP3txgVSrgebWxHOafDXGkhIzfXK14f8KF6MuFfgXXUeHxmpD3BQxkV00/3s5mA==} - '@vitest/utils@4.1.5': - resolution: {integrity: sha512-76wdkrmfXfqGjueGgnb45ITPyUi1ycZ4IHgC2bhPDUfWHklY/q3MdLOAB+TF1e6xfl8NxNY0ZYaPCFNWSsw3Ug==} + '@vitest/utils@4.1.8': + resolution: {integrity: sha512-uOJamYALNhfJ6iolExyQM40yIQwDqYnkKtQ5VCiSe17E33H0aQ/u+1GlRuz4LZBk6Mm3sg90G9hEbmEt37C1Zg==} acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn@8.15.0: - resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} + acorn@8.17.0: + resolution: {integrity: sha512-xRQbDb9BnwDafYNn6Vwl839DYVjqXYb1XVGtWAZ1kcDc6iwAL4hg3B1dZlRiuENFeO2H53gFG3in621AdERVAg==} engines: {node: '>=0.4.0'} hasBin: true @@ -796,8 +825,8 @@ packages: resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==} engines: {node: '>= 14'} - ajv@6.12.6: - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + ajv@6.15.0: + resolution: {integrity: sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==} ansi-colors@4.1.3: resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} @@ -829,27 +858,17 @@ packages: resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} engines: {node: 18 || 20 || >=22} - brace-expansion@1.1.12: - resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==} - - brace-expansion@2.0.2: - resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} - - brace-expansion@2.1.0: - resolution: {integrity: sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w==} + brace-expansion@2.1.1: + resolution: {integrity: sha512-WR1cURNjuvBLMZBMbqM0UoE+WAfdUcEV1ccD8PVBVOI+Z3ND4+SZbN8RsfT2bMuG1qwz5RFvPukSZm5fF2D5eA==} - brace-expansion@5.0.5: - resolution: {integrity: sha512-VZznLgtwhn+Mact9tfiwx64fA9erHH/MCXEUfB/0bX/6Fz6ny5EGTXYltMocqg4xFAQZtnO3DHWWXi8RiuN7cQ==} + brace-expansion@5.0.6: + resolution: {integrity: sha512-kLpxurY4Z4r9sgMsyG0Z9uzsBlgiU/EFKhj/h91/8yHu0edo7XuixOIH3VcJ8kkxs6/jPzoI6U9Vj3WqbMQ94g==} engines: {node: 18 || 20 || >=22} braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} - callsites@3.1.0: - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} - engines: {node: '>=6'} - chai@6.2.2: resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==} engines: {node: '>=18'} @@ -892,9 +911,6 @@ packages: resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} engines: {node: '>= 12'} - concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} @@ -958,25 +974,21 @@ packages: peerDependencies: eslint: '>=7.0.0' - eslint-scope@8.4.0: - resolution: {integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + eslint-scope@9.1.2: + resolution: {integrity: sha512-xS90H51cKw0jltxmvmHy2Iai1LIqrfbw57b79w/J7MfvDfkIkFZ+kj6zC3BjtUwh150HsSSdxXZcsuv72miDFQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} eslint-visitor-keys@3.4.3: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - eslint-visitor-keys@4.2.1: - resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint-visitor-keys@5.0.1: resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - eslint@9.39.2: - resolution: {integrity: sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + eslint@10.5.0: + resolution: {integrity: sha512-1y+7C+vi12bUK1IpZeaV3gsH9fHLBmPvYmPx42pvT/E9yG0IC8g3PUZZgp0+JLJl7ZDK0flc2gc+Aw9dpCvIsQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} hasBin: true peerDependencies: jiti: '*' @@ -984,9 +996,9 @@ packages: jiti: optional: true - espree@10.4.0: - resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + espree@11.2.0: + resolution: {integrity: sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} esquery@1.7.0: resolution: {integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==} @@ -1052,16 +1064,16 @@ packages: resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} engines: {node: '>=16'} - flatted@3.3.3: - resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} + flatted@3.4.2: + resolution: {integrity: sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==} fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] - get-east-asian-width@1.5.0: - resolution: {integrity: sha512-CQ+bEO+Tva/qlmw24dCejulK5pMzVnUOFOijVogd3KQs07HnRIgp8TGipvCCRT06xeYEbpbgwaCxglFyiuIcmA==} + get-east-asian-width@1.6.0: + resolution: {integrity: sha512-QRbvDIbx6YklUe6RxeTeleMR0yv3cYH6PsPZHcnVn7xv7zO1BHN8r0XETu8n6Ye3Q+ahtSarc3WgtNWmehIBfA==} engines: {node: '>=18'} get-tsconfig@4.14.0: @@ -1075,10 +1087,6 @@ packages: resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} engines: {node: '>=10.13.0'} - globals@14.0.0: - resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} - engines: {node: '>=18'} - globals@17.6.0: resolution: {integrity: sha512-sepffkT8stwnIYbsMBpoCHJuJM5l98FUF2AnE07hfvE0m/qp3R586hw4jF4uadbhvg1ooIdzuu7CsfD2jzCaNA==} engines: {node: '>=18'} @@ -1103,10 +1111,6 @@ packages: resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==} engines: {node: '>= 4'} - import-fresh@3.3.1: - resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} - engines: {node: '>=6'} - imurmurhash@0.1.4: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} engines: {node: '>=0.8.19'} @@ -1146,8 +1150,8 @@ packages: isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - jiti@2.6.1: - resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} + jiti@2.7.0: + resolution: {integrity: sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==} hasBin: true js-levenshtein@1.1.6: @@ -1180,8 +1184,8 @@ packages: resolution: {integrity: sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==} engines: {node: '>=0.10.0'} - katex@0.16.45: - resolution: {integrity: sha512-pQpZbdBu7wCTmQUh7ufPmLr0pFoObnGUoL/yhtwJDgmmQpbkg/0HSVti25Fu4rmd1oCR6NGWe9vqTWuWv3GcNA==} + katex@0.16.47: + resolution: {integrity: sha512-Eeo8Ys1doU1z+x8AZsPpQu+p/QcZBI5PeOo7QGQdy2x2m0MU/hYagBbGOmXwr5KVbEfVuWv9LpnQWeehogurjg==} hasBin: true keyv@4.5.4: @@ -1191,30 +1195,27 @@ packages: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} - linkify-it@5.0.0: - resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} + linkify-it@5.0.1: + resolution: {integrity: sha512-wVoTjP4Q6R0NW5hiZkVJaFZPWgtXfoGF+6LucL3/FtiNjmcHhYjEr5f1Kqjirc1nBW07J/ZuRFumqr2oqccEWg==} locate-path@6.0.0: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} - lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - lunr@2.3.9: resolution: {integrity: sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==} magic-string@0.30.21: resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} - markdown-it@14.1.0: - resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} - hasBin: true - markdown-it@14.1.1: resolution: {integrity: sha512-BuU2qnTti9YKgK5N+IeMubp14ZUKUUw7yeJbkjtosvHiP0AZ5c8IAgEMk79D0eC8F23r4Ac/q8cAIFdm2FtyoA==} hasBin: true + markdown-it@14.2.0: + resolution: {integrity: sha512-1TGiQiJVRQ3NPmZH6sx5Cfnmg6GQm9jvC1ch4TK511NjSJvjzKLzn5pPfZRNZkRPZP0HqCioSndqH8v2nRaWVQ==} + hasBin: true + markdownlint-cli2-formatter-default@0.0.6: resolution: {integrity: sha512-VVDGKsq9sgzu378swJ0fcHfSicUnMxnL8gnLm/Q4J/xsNJ4e5bA6lvAz7PCzIl0/No0lHyaWdqVD2jotxOSFMQ==} peerDependencies: @@ -1319,17 +1320,10 @@ packages: resolution: {integrity: sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==} engines: {node: 18 || 20 || >=22} - minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} - minimatch@5.1.9: resolution: {integrity: sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==} engines: {node: '>=10'} - minimatch@9.0.5: - resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} - engines: {node: '>=16 || 14 >=14.17'} - ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} @@ -1341,14 +1335,15 @@ packages: natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - obug@2.1.1: - resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==} + obug@2.1.3: + resolution: {integrity: sha512-9miFgM2OFba7hB+pRgvtV84pYTBaoTHohvmIgiRt6dRIzbwEOIaNaP+dIlGs2fNFoB0SeISs0Jz5WFVRid6Xyg==} + engines: {node: '>=12.20.0'} - openapi-fetch@0.15.0: - resolution: {integrity: sha512-OjQUdi61WO4HYhr9+byCPMj0+bgste/LtSBEcV6FzDdONTs7x0fWn8/ndoYwzqCsKWIxEZwo4FN/TG1c1rI8IQ==} + openapi-fetch@0.17.0: + resolution: {integrity: sha512-PsbZR1wAPcG91eEthKhN+Zn92FMHxv+/faECIwjXdxfTODGSGegYv0sc1Olz+HYPvKOuoXfp+0pA2XVt2cI0Ig==} - openapi-typescript-helpers@0.0.15: - resolution: {integrity: sha512-opyTPaunsklCBpTK8JGef6mfPhLSnyy5a0IN9vKtx3+4aExf+KxEqYwIy3hqkedXIB97u357uLMJsOnm3GVjsw==} + openapi-typescript-helpers@0.1.0: + resolution: {integrity: sha512-OKTGPthhivLw/fHz6c3OPtg72vi86qaMlqbJuVJ23qOvQ+53uw1n7HdmkJFibloF7QEjDrDkzJiOJuockM/ljw==} openapi-typescript@7.13.0: resolution: {integrity: sha512-EFP392gcqXS7ntPvbhBzbF8TyBA+baIYEm791Hy5YkjDYKTnk/Tn5OQeKm5BIZvJihpp8Zzr4hzx0Irde1LNGQ==} @@ -1368,10 +1363,6 @@ packages: resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} engines: {node: '>=10'} - parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} - parse-entities@4.0.2: resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==} @@ -1405,16 +1396,16 @@ packages: resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} engines: {node: '>=4'} - postcss@8.5.13: - resolution: {integrity: sha512-qif0+jGGZoLWdHey3UFHHWP0H7Gbmsk8T5VEqyYFbWqPr1XqvLGBbk/sl8V5exGmcYJklJOhOQq1pV9IcsiFag==} + postcss@8.5.15: + resolution: {integrity: sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==} engines: {node: ^10 || ^12 || >=14} prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} - prettier@3.8.3: - resolution: {integrity: sha512-7igPTM53cGHMW8xWuVTydi2KO233VFiTNyF5hLJqpilHfmn8C8gPf+PS7dUT64YcXFbiMGZxS9pCSxL/Dxm/Jw==} + prettier@3.8.4: + resolution: {integrity: sha512-N2MylSdi48+5N/6S5j+maeHbUSIzzZ5uOcX5Hm4QpV8Dkb1HFjfAKTKX6yNPJQD9AhcT3ifHNB66tWTTJDi11Q==} engines: {node: '>=14'} hasBin: true @@ -1433,10 +1424,6 @@ packages: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} - resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} - resolve-pkg-maps@1.0.0: resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} @@ -1444,16 +1431,16 @@ packages: resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rollup@4.60.2: - resolution: {integrity: sha512-J9qZyW++QK/09NyN/zeO0dG/1GdGfyp9lV8ajHnRVLfo/uFsbji5mHnDgn/qYdUHyCkM2N+8VyspgZclfAh0eQ==} + rollup@4.62.0: + resolution: {integrity: sha512-nc72Wgq62I7rtDV4izT5/aaS0zxy3kttkinf9586ApknY3jZO9NYsmtc24fUckA0X7Q2v+ML4a15pdUlV5V/jA==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} - semver@7.7.4: - resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} + semver@7.8.4: + resolution: {integrity: sha512-rUCObTnP32Q08R2uuIrt7r9PlEonuTmtuXYcW6s5kjdlj3xbnwe+21yXptAUYcMAABLkYYTtnmzb3w3EDZfueA==} engines: {node: '>=10'} hasBin: true @@ -1498,10 +1485,6 @@ packages: resolution: {integrity: sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==} engines: {node: '>=12'} - strip-json-comments@3.1.1: - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} - engines: {node: '>=8'} - supports-color@10.2.2: resolution: {integrity: sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==} engines: {node: '>=18'} @@ -1513,12 +1496,12 @@ packages: tinybench@2.9.0: resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} - tinyexec@1.1.2: - resolution: {integrity: sha512-dAqSqE/RabpBKI8+h26GfLq6Vb3JVXs30XYQjdMjaj/c2tS8IYYMbIzP599KtRj7c57/wYApb3QjgRgXmrCukA==} + tinyexec@1.2.4: + resolution: {integrity: sha512-SHf/r48b7vOrjve9PxJo3MN5v5yuyjHvdUcrQffT3WXMUfnGmHDVbC4k3sHJaJTgZCwpUplIaAo5ANtMyp3YHg==} engines: {node: '>=18'} - tinyglobby@0.2.16: - resolution: {integrity: sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==} + tinyglobby@0.2.17: + resolution: {integrity: sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==} engines: {node: '>=12.0.0'} tinyrainbow@3.1.0: @@ -1552,15 +1535,15 @@ packages: resolution: {integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==} engines: {node: '>=16'} - typedoc@0.28.16: - resolution: {integrity: sha512-x4xW77QC3i5DUFMBp0qjukOTnr/sSg+oEs86nB3LjDslvAmwe/PUGDWbe3GrIqt59oTqoXK5GRK9tAa0sYMiog==} + typedoc@0.28.19: + resolution: {integrity: sha512-wKh+lhdmMFivMlc6vRRcMGXeGEHGU2g8a2CkPTJjJlwRf1iXbimWIPcFolCqe4E0d/FRtGszpIrsp3WLpDB8Pw==} engines: {node: '>= 18', pnpm: '>= 10'} hasBin: true peerDependencies: - typescript: 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x || 5.9.x + typescript: 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x || 5.9.x || 6.0.x - typescript-eslint@8.59.1: - resolution: {integrity: sha512-xqDcFVBmlrltH64lklOVp1wYxgJr6LVdg3NamBgH2OOQDLFdTKfIZXF5PfghrnXQKXZGTQs8tr1vL7fJvq8CTQ==} + typescript-eslint@8.61.0: + resolution: {integrity: sha512-8y31Rd0eGTrDKqhy6vT0HtzhN+YLjQizwX3aA3hPXP/ynSfnrBXcQY5IzsP9/DM7+klX4IUncZZjkchP0z+rUw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 @@ -1571,16 +1554,16 @@ packages: engines: {node: '>=4.2.0'} hasBin: true - typescript@5.9.3: - resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + typescript@6.0.3: + resolution: {integrity: sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==} engines: {node: '>=14.17'} hasBin: true uc.micro@2.1.0: resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==} - undici-types@7.19.2: - resolution: {integrity: sha512-qYVnV5OEm2AW8cJMCpdV20CDyaN3g0AjDlOGf1OW4iaDEx8MwdtChUp4zu4H0VP3nDRF/8RKWH+IPp9uW0YGZg==} + undici-types@7.24.6: + resolution: {integrity: sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==} unicorn-magic@0.4.0: resolution: {integrity: sha512-wH590V9VNgYH9g3lH9wWjTrUoKsjLF6sGLjhR4sH1LWpLmCOH0Zf7PukhDA8BiS7KHe4oPNkcTHqYkj7SOGUOw==} @@ -1632,20 +1615,20 @@ packages: yaml: optional: true - vitest@4.1.5: - resolution: {integrity: sha512-9Xx1v3/ih3m9hN+SbfkUyy0JAs72ap3r7joc87XL6jwF0jGg6mFBvQ1SrwaX+h8BlkX6Hz9shdd1uo6AF+ZGpg==} + vitest@4.1.8: + resolution: {integrity: sha512-flY6ScbCIt9HThs+C5HS7jvGOB560DJtk/Z15IQROTA6zEy49Nh8T/dofWTQL+n3vswqn87sbJNiuqw1SDp5Ig==} engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@opentelemetry/api': ^1.9.0 '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 - '@vitest/browser-playwright': 4.1.5 - '@vitest/browser-preview': 4.1.5 - '@vitest/browser-webdriverio': 4.1.5 - '@vitest/coverage-istanbul': 4.1.5 - '@vitest/coverage-v8': 4.1.5 - '@vitest/ui': 4.1.5 + '@vitest/browser-playwright': 4.1.8 + '@vitest/browser-preview': 4.1.8 + '@vitest/browser-webdriverio': 4.1.8 + '@vitest/coverage-istanbul': 4.1.8 + '@vitest/coverage-v8': 4.1.8 + '@vitest/ui': 4.1.8 happy-dom: '*' jsdom: '*' vite: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -1693,8 +1676,8 @@ packages: yaml-ast-parser@0.0.43: resolution: {integrity: sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==} - yaml@2.8.2: - resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==} + yaml@2.9.0: + resolution: {integrity: sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==} engines: {node: '>= 14.6'} hasBin: true @@ -1708,13 +1691,13 @@ packages: snapshots: - '@babel/code-frame@7.29.0': + '@babel/code-frame@7.29.7': dependencies: - '@babel/helper-validator-identifier': 7.28.5 + '@babel/helper-validator-identifier': 7.29.7 js-tokens: 4.0.0 picocolors: 1.1.1 - '@babel/helper-validator-identifier@7.28.5': {} + '@babel/helper-validator-identifier@7.29.7': {} '@esbuild/aix-ppc64@0.25.12': optional: true @@ -1872,67 +1855,60 @@ snapshots: '@esbuild/win32-x64@0.27.7': optional: true - '@eslint-community/eslint-utils@4.9.1(eslint@9.39.2(jiti@2.6.1))': + '@eslint-community/eslint-utils@4.9.1(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))': dependencies: - eslint: 9.39.2(jiti@2.6.1) + eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.2': {} - '@eslint/config-array@0.21.1': + '@eslint/config-array@0.23.5(supports-color@10.2.2)': dependencies: - '@eslint/object-schema': 2.1.7 + '@eslint/object-schema': 3.0.5 debug: 4.4.3(supports-color@10.2.2) - minimatch: 3.1.2 + minimatch: 10.2.5 transitivePeerDependencies: - supports-color - '@eslint/config-helpers@0.4.2': + '@eslint/config-helpers@0.6.0': dependencies: - '@eslint/core': 0.17.0 + '@eslint/core': 1.2.1 - '@eslint/core@0.17.0': + '@eslint/core@1.2.1': dependencies: '@types/json-schema': 7.0.15 - '@eslint/eslintrc@3.3.3': - dependencies: - ajv: 6.12.6 - debug: 4.4.3(supports-color@10.2.2) - espree: 10.4.0 - globals: 14.0.0 - ignore: 5.3.2 - import-fresh: 3.3.1 - js-yaml: 4.1.1 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - - '@eslint/js@9.39.2': {} + '@eslint/js@10.0.1(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))': + optionalDependencies: + eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) - '@eslint/object-schema@2.1.7': {} + '@eslint/object-schema@3.0.5': {} - '@eslint/plugin-kit@0.4.1': + '@eslint/plugin-kit@0.7.2': dependencies: - '@eslint/core': 0.17.0 + '@eslint/core': 1.2.1 levn: 0.4.1 - '@gerrit0/mini-shiki@3.22.0': + '@gerrit0/mini-shiki@3.23.0': dependencies: - '@shikijs/engine-oniguruma': 3.22.0 - '@shikijs/langs': 3.22.0 - '@shikijs/themes': 3.22.0 - '@shikijs/types': 3.22.0 + '@shikijs/engine-oniguruma': 3.23.0 + '@shikijs/langs': 3.23.0 + '@shikijs/themes': 3.23.0 + '@shikijs/types': 3.23.0 '@shikijs/vscode-textmate': 10.0.2 - '@humanfs/core@0.19.1': {} + '@humanfs/core@0.19.2': + dependencies: + '@humanfs/types': 0.15.0 - '@humanfs/node@0.16.7': + '@humanfs/node@0.16.8': dependencies: - '@humanfs/core': 0.19.1 + '@humanfs/core': 0.19.2 + '@humanfs/types': 0.15.0 '@humanwhocodes/retry': 0.4.3 + '@humanfs/types@0.15.0': {} + '@humanwhocodes/module-importer@1.0.1': {} '@humanwhocodes/retry@0.4.3': {} @@ -1962,7 +1938,7 @@ snapshots: '@redocly/config@0.22.0': {} - '@redocly/openapi-core@1.34.14(supports-color@10.2.2)': + '@redocly/openapi-core@1.34.15(supports-color@10.2.2)': dependencies: '@redocly/ajv': 8.11.2 '@redocly/config': 0.22.0 @@ -1976,95 +1952,95 @@ snapshots: transitivePeerDependencies: - supports-color - '@rollup/rollup-android-arm-eabi@4.60.2': + '@rollup/rollup-android-arm-eabi@4.62.0': optional: true - '@rollup/rollup-android-arm64@4.60.2': + '@rollup/rollup-android-arm64@4.62.0': optional: true - '@rollup/rollup-darwin-arm64@4.60.2': + '@rollup/rollup-darwin-arm64@4.62.0': optional: true - '@rollup/rollup-darwin-x64@4.60.2': + '@rollup/rollup-darwin-x64@4.62.0': optional: true - '@rollup/rollup-freebsd-arm64@4.60.2': + '@rollup/rollup-freebsd-arm64@4.62.0': optional: true - '@rollup/rollup-freebsd-x64@4.60.2': + '@rollup/rollup-freebsd-x64@4.62.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.60.2': + '@rollup/rollup-linux-arm-gnueabihf@4.62.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.60.2': + '@rollup/rollup-linux-arm-musleabihf@4.62.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.60.2': + '@rollup/rollup-linux-arm64-gnu@4.62.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.60.2': + '@rollup/rollup-linux-arm64-musl@4.62.0': optional: true - '@rollup/rollup-linux-loong64-gnu@4.60.2': + '@rollup/rollup-linux-loong64-gnu@4.62.0': optional: true - '@rollup/rollup-linux-loong64-musl@4.60.2': + '@rollup/rollup-linux-loong64-musl@4.62.0': optional: true - '@rollup/rollup-linux-ppc64-gnu@4.60.2': + '@rollup/rollup-linux-ppc64-gnu@4.62.0': optional: true - '@rollup/rollup-linux-ppc64-musl@4.60.2': + '@rollup/rollup-linux-ppc64-musl@4.62.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.60.2': + '@rollup/rollup-linux-riscv64-gnu@4.62.0': optional: true - '@rollup/rollup-linux-riscv64-musl@4.60.2': + '@rollup/rollup-linux-riscv64-musl@4.62.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.60.2': + '@rollup/rollup-linux-s390x-gnu@4.62.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.60.2': + '@rollup/rollup-linux-x64-gnu@4.62.0': optional: true - '@rollup/rollup-linux-x64-musl@4.60.2': + '@rollup/rollup-linux-x64-musl@4.62.0': optional: true - '@rollup/rollup-openbsd-x64@4.60.2': + '@rollup/rollup-openbsd-x64@4.62.0': optional: true - '@rollup/rollup-openharmony-arm64@4.60.2': + '@rollup/rollup-openharmony-arm64@4.62.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.60.2': + '@rollup/rollup-win32-arm64-msvc@4.62.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.60.2': + '@rollup/rollup-win32-ia32-msvc@4.62.0': optional: true - '@rollup/rollup-win32-x64-gnu@4.60.2': + '@rollup/rollup-win32-x64-gnu@4.62.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.60.2': + '@rollup/rollup-win32-x64-msvc@4.62.0': optional: true - '@shikijs/engine-oniguruma@3.22.0': + '@shikijs/engine-oniguruma@3.23.0': dependencies: - '@shikijs/types': 3.22.0 + '@shikijs/types': 3.23.0 '@shikijs/vscode-textmate': 10.0.2 - '@shikijs/langs@3.22.0': + '@shikijs/langs@3.23.0': dependencies: - '@shikijs/types': 3.22.0 + '@shikijs/types': 3.23.0 - '@shikijs/themes@3.22.0': + '@shikijs/themes@3.23.0': dependencies: - '@shikijs/types': 3.22.0 + '@shikijs/types': 3.23.0 - '@shikijs/types@3.22.0': + '@shikijs/types@3.23.0': dependencies: '@shikijs/vscode-textmate': 10.0.2 '@types/hast': 3.0.4 @@ -2086,7 +2062,9 @@ snapshots: '@types/deep-eql@4.0.2': {} - '@types/estree@1.0.8': {} + '@types/esrecurse@4.3.1': {} + + '@types/estree@1.0.9': {} '@types/hast@3.0.4': dependencies: @@ -2098,186 +2076,186 @@ snapshots: '@types/ms@2.1.0': {} - '@types/node@25.6.0': + '@types/node@25.9.3': dependencies: - undici-types: 7.19.2 + undici-types: 7.24.6 '@types/unist@2.0.11': {} '@types/unist@3.0.3': {} - '@typescript-eslint/eslint-plugin@8.59.1(@typescript-eslint/parser@8.59.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@8.61.0(@typescript-eslint/parser@8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3))(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.59.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/scope-manager': 8.59.1 - '@typescript-eslint/type-utils': 8.59.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/utils': 8.59.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.59.1 - eslint: 9.39.2(jiti@2.6.1) + '@typescript-eslint/parser': 8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) + '@typescript-eslint/scope-manager': 8.61.0 + '@typescript-eslint/type-utils': 8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) + '@typescript-eslint/utils': 8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(typescript@6.0.3) + '@typescript-eslint/visitor-keys': 8.61.0 + eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) ignore: 7.0.5 natural-compare: 1.4.0 - ts-api-utils: 2.5.0(typescript@5.9.3) - typescript: 5.9.3 + ts-api-utils: 2.5.0(typescript@6.0.3) + typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.59.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/parser@8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3)': dependencies: - '@typescript-eslint/scope-manager': 8.59.1 - '@typescript-eslint/types': 8.59.1 - '@typescript-eslint/typescript-estree': 8.59.1(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.59.1 + '@typescript-eslint/scope-manager': 8.61.0 + '@typescript-eslint/types': 8.61.0 + '@typescript-eslint/typescript-estree': 8.61.0(typescript@6.0.3) + '@typescript-eslint/visitor-keys': 8.61.0 debug: 4.4.3(supports-color@10.2.2) - eslint: 9.39.2(jiti@2.6.1) - typescript: 5.9.3 + eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) + typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/project-service@8.59.1(typescript@5.9.3)': + '@typescript-eslint/project-service@8.61.0(typescript@6.0.3)': dependencies: - '@typescript-eslint/tsconfig-utils': 8.59.1(typescript@5.9.3) - '@typescript-eslint/types': 8.59.1 + '@typescript-eslint/tsconfig-utils': 8.61.0(typescript@6.0.3) + '@typescript-eslint/types': 8.61.0 debug: 4.4.3(supports-color@10.2.2) - typescript: 5.9.3 + typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.59.1': + '@typescript-eslint/scope-manager@8.61.0': dependencies: - '@typescript-eslint/types': 8.59.1 - '@typescript-eslint/visitor-keys': 8.59.1 + '@typescript-eslint/types': 8.61.0 + '@typescript-eslint/visitor-keys': 8.61.0 - '@typescript-eslint/tsconfig-utils@8.59.1(typescript@5.9.3)': + '@typescript-eslint/tsconfig-utils@8.61.0(typescript@6.0.3)': dependencies: - typescript: 5.9.3 + typescript: 6.0.3 - '@typescript-eslint/type-utils@8.59.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/type-utils@8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3)': dependencies: - '@typescript-eslint/types': 8.59.1 - '@typescript-eslint/typescript-estree': 8.59.1(typescript@5.9.3) - '@typescript-eslint/utils': 8.59.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/types': 8.61.0 + '@typescript-eslint/typescript-estree': 8.61.0(typescript@6.0.3) + '@typescript-eslint/utils': 8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(typescript@6.0.3) debug: 4.4.3(supports-color@10.2.2) - eslint: 9.39.2(jiti@2.6.1) - ts-api-utils: 2.5.0(typescript@5.9.3) - typescript: 5.9.3 + eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) + ts-api-utils: 2.5.0(typescript@6.0.3) + typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/types@8.59.1': {} + '@typescript-eslint/types@8.61.0': {} - '@typescript-eslint/typescript-estree@8.59.1(typescript@5.9.3)': + '@typescript-eslint/typescript-estree@8.61.0(typescript@6.0.3)': dependencies: - '@typescript-eslint/project-service': 8.59.1(typescript@5.9.3) - '@typescript-eslint/tsconfig-utils': 8.59.1(typescript@5.9.3) - '@typescript-eslint/types': 8.59.1 - '@typescript-eslint/visitor-keys': 8.59.1 + '@typescript-eslint/project-service': 8.61.0(typescript@6.0.3) + '@typescript-eslint/tsconfig-utils': 8.61.0(typescript@6.0.3) + '@typescript-eslint/types': 8.61.0 + '@typescript-eslint/visitor-keys': 8.61.0 debug: 4.4.3(supports-color@10.2.2) minimatch: 10.2.5 - semver: 7.7.4 - tinyglobby: 0.2.16 - ts-api-utils: 2.5.0(typescript@5.9.3) - typescript: 5.9.3 + semver: 7.8.4 + tinyglobby: 0.2.17 + ts-api-utils: 2.5.0(typescript@6.0.3) + typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.59.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/utils@8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(typescript@6.0.3)': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1)) - '@typescript-eslint/scope-manager': 8.59.1 - '@typescript-eslint/types': 8.59.1 - '@typescript-eslint/typescript-estree': 8.59.1(typescript@5.9.3) - eslint: 9.39.2(jiti@2.6.1) - typescript: 5.9.3 + '@eslint-community/eslint-utils': 4.9.1(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2)) + '@typescript-eslint/scope-manager': 8.61.0 + '@typescript-eslint/types': 8.61.0 + '@typescript-eslint/typescript-estree': 8.61.0(typescript@6.0.3) + eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) + typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.59.1': + '@typescript-eslint/visitor-keys@8.61.0': dependencies: - '@typescript-eslint/types': 8.59.1 + '@typescript-eslint/types': 8.61.0 eslint-visitor-keys: 5.0.1 - '@typescript/native-preview-darwin-arm64@7.0.0-dev.20260201.1': + '@typescript/native-preview-darwin-arm64@7.0.0-dev.20260614.1': optional: true - '@typescript/native-preview-darwin-x64@7.0.0-dev.20260201.1': + '@typescript/native-preview-darwin-x64@7.0.0-dev.20260614.1': optional: true - '@typescript/native-preview-linux-arm64@7.0.0-dev.20260201.1': + '@typescript/native-preview-linux-arm64@7.0.0-dev.20260614.1': optional: true - '@typescript/native-preview-linux-arm@7.0.0-dev.20260201.1': + '@typescript/native-preview-linux-arm@7.0.0-dev.20260614.1': optional: true - '@typescript/native-preview-linux-x64@7.0.0-dev.20260201.1': + '@typescript/native-preview-linux-x64@7.0.0-dev.20260614.1': optional: true - '@typescript/native-preview-win32-arm64@7.0.0-dev.20260201.1': + '@typescript/native-preview-win32-arm64@7.0.0-dev.20260614.1': optional: true - '@typescript/native-preview-win32-x64@7.0.0-dev.20260201.1': + '@typescript/native-preview-win32-x64@7.0.0-dev.20260614.1': optional: true - '@typescript/native-preview@7.0.0-dev.20260201.1': + '@typescript/native-preview@7.0.0-dev.20260614.1': optionalDependencies: - '@typescript/native-preview-darwin-arm64': 7.0.0-dev.20260201.1 - '@typescript/native-preview-darwin-x64': 7.0.0-dev.20260201.1 - '@typescript/native-preview-linux-arm': 7.0.0-dev.20260201.1 - '@typescript/native-preview-linux-arm64': 7.0.0-dev.20260201.1 - '@typescript/native-preview-linux-x64': 7.0.0-dev.20260201.1 - '@typescript/native-preview-win32-arm64': 7.0.0-dev.20260201.1 - '@typescript/native-preview-win32-x64': 7.0.0-dev.20260201.1 + '@typescript/native-preview-darwin-arm64': 7.0.0-dev.20260614.1 + '@typescript/native-preview-darwin-x64': 7.0.0-dev.20260614.1 + '@typescript/native-preview-linux-arm': 7.0.0-dev.20260614.1 + '@typescript/native-preview-linux-arm64': 7.0.0-dev.20260614.1 + '@typescript/native-preview-linux-x64': 7.0.0-dev.20260614.1 + '@typescript/native-preview-win32-arm64': 7.0.0-dev.20260614.1 + '@typescript/native-preview-win32-x64': 7.0.0-dev.20260614.1 - '@vitest/expect@4.1.5': + '@vitest/expect@4.1.8': dependencies: '@standard-schema/spec': 1.1.0 '@types/chai': 5.2.3 - '@vitest/spy': 4.1.5 - '@vitest/utils': 4.1.5 + '@vitest/spy': 4.1.8 + '@vitest/utils': 4.1.8 chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.1.5(vite@7.3.1(@types/node@25.6.0)(jiti@2.6.1)(tsx@4.19.2)(yaml@2.8.2))': + '@vitest/mocker@4.1.8(vite@7.3.1(@types/node@25.9.3)(jiti@2.7.0)(tsx@4.19.2)(yaml@2.9.0))': dependencies: - '@vitest/spy': 4.1.5 + '@vitest/spy': 4.1.8 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.3.1(@types/node@25.6.0)(jiti@2.6.1)(tsx@4.19.2)(yaml@2.8.2) + vite: 7.3.1(@types/node@25.9.3)(jiti@2.7.0)(tsx@4.19.2)(yaml@2.9.0) - '@vitest/pretty-format@4.1.5': + '@vitest/pretty-format@4.1.8': dependencies: tinyrainbow: 3.1.0 - '@vitest/runner@4.1.5': + '@vitest/runner@4.1.8': dependencies: - '@vitest/utils': 4.1.5 + '@vitest/utils': 4.1.8 pathe: 2.0.3 - '@vitest/snapshot@4.1.5': + '@vitest/snapshot@4.1.8': dependencies: - '@vitest/pretty-format': 4.1.5 - '@vitest/utils': 4.1.5 + '@vitest/pretty-format': 4.1.8 + '@vitest/utils': 4.1.8 magic-string: 0.30.21 pathe: 2.0.3 - '@vitest/spy@4.1.5': {} + '@vitest/spy@4.1.8': {} - '@vitest/utils@4.1.5': + '@vitest/utils@4.1.8': dependencies: - '@vitest/pretty-format': 4.1.5 + '@vitest/pretty-format': 4.1.8 convert-source-map: 2.0.0 tinyrainbow: 3.1.0 - acorn-jsx@5.3.2(acorn@8.15.0): + acorn-jsx@5.3.2(acorn@8.17.0): dependencies: - acorn: 8.15.0 + acorn: 8.17.0 - acorn@8.15.0: {} + acorn@8.17.0: {} agent-base@7.1.4: {} - ajv@6.12.6: + ajv@6.15.0: dependencies: fast-deep-equal: 3.1.3 fast-json-stable-stringify: 2.1.0 @@ -2302,20 +2280,11 @@ snapshots: balanced-match@4.0.4: {} - brace-expansion@1.1.12: - dependencies: - balanced-match: 1.0.2 - concat-map: 0.0.1 - - brace-expansion@2.0.2: - dependencies: - balanced-match: 1.0.2 - - brace-expansion@2.1.0: + brace-expansion@2.1.1: dependencies: balanced-match: 1.0.2 - brace-expansion@5.0.5: + brace-expansion@5.0.6: dependencies: balanced-match: 4.0.4 @@ -2323,8 +2292,6 @@ snapshots: dependencies: fill-range: 7.1.1 - callsites@3.1.0: {} - chai@6.2.2: {} chalk@4.1.2: @@ -2357,8 +2324,6 @@ snapshots: commander@8.3.0: {} - concat-map@0.0.1: {} - convert-source-map@2.0.0: {} cross-spawn@7.0.6: @@ -2456,43 +2421,40 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-prettier@10.1.8(eslint@9.39.2(jiti@2.6.1)): + eslint-config-prettier@10.1.8(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2)): dependencies: - eslint: 9.39.2(jiti@2.6.1) + eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) - eslint-scope@8.4.0: + eslint-scope@9.1.2: dependencies: + '@types/esrecurse': 4.3.1 + '@types/estree': 1.0.9 esrecurse: 4.3.0 estraverse: 5.3.0 eslint-visitor-keys@3.4.3: {} - eslint-visitor-keys@4.2.1: {} - eslint-visitor-keys@5.0.1: {} - eslint@9.39.2(jiti@2.6.1): + eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2)) '@eslint-community/regexpp': 4.12.2 - '@eslint/config-array': 0.21.1 - '@eslint/config-helpers': 0.4.2 - '@eslint/core': 0.17.0 - '@eslint/eslintrc': 3.3.3 - '@eslint/js': 9.39.2 - '@eslint/plugin-kit': 0.4.1 - '@humanfs/node': 0.16.7 + '@eslint/config-array': 0.23.5(supports-color@10.2.2) + '@eslint/config-helpers': 0.6.0 + '@eslint/core': 1.2.1 + '@eslint/plugin-kit': 0.7.2 + '@humanfs/node': 0.16.8 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.3 - '@types/estree': 1.0.8 - ajv: 6.12.6 - chalk: 4.1.2 + '@types/estree': 1.0.9 + ajv: 6.15.0 cross-spawn: 7.0.6 debug: 4.4.3(supports-color@10.2.2) escape-string-regexp: 4.0.0 - eslint-scope: 8.4.0 - eslint-visitor-keys: 4.2.1 - espree: 10.4.0 + eslint-scope: 9.1.2 + eslint-visitor-keys: 5.0.1 + espree: 11.2.0 esquery: 1.7.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 @@ -2503,20 +2465,19 @@ snapshots: imurmurhash: 0.1.4 is-glob: 4.0.3 json-stable-stringify-without-jsonify: 1.0.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 + minimatch: 10.2.5 natural-compare: 1.4.0 optionator: 0.9.4 optionalDependencies: - jiti: 2.6.1 + jiti: 2.7.0 transitivePeerDependencies: - supports-color - espree@10.4.0: + espree@11.2.0: dependencies: - acorn: 8.15.0 - acorn-jsx: 5.3.2(acorn@8.15.0) - eslint-visitor-keys: 4.2.1 + acorn: 8.17.0 + acorn-jsx: 5.3.2(acorn@8.17.0) + eslint-visitor-keys: 5.0.1 esquery@1.7.0: dependencies: @@ -2530,7 +2491,7 @@ snapshots: estree-walker@3.0.3: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 esutils@2.0.3: {} @@ -2573,15 +2534,15 @@ snapshots: flat-cache@4.0.1: dependencies: - flatted: 3.3.3 + flatted: 3.4.2 keyv: 4.5.4 - flatted@3.3.3: {} + flatted@3.4.2: {} fsevents@2.3.3: optional: true - get-east-asian-width@1.5.0: {} + get-east-asian-width@1.6.0: {} get-tsconfig@4.14.0: dependencies: @@ -2596,8 +2557,6 @@ snapshots: dependencies: is-glob: 4.0.3 - globals@14.0.0: {} - globals@17.6.0: {} globby@16.2.0: @@ -2622,11 +2581,6 @@ snapshots: ignore@7.0.5: {} - import-fresh@3.3.1: - dependencies: - parent-module: 1.0.1 - resolve-from: 4.0.0 - imurmurhash@0.1.4: {} index-to-position@1.2.0: {} @@ -2654,7 +2608,7 @@ snapshots: isexe@2.0.0: {} - jiti@2.6.1: {} + jiti@2.7.0: {} js-levenshtein@1.1.6: {} @@ -2676,7 +2630,7 @@ snapshots: jsonpointer@5.0.1: {} - katex@0.16.45: + katex@0.16.47: dependencies: commander: 8.3.0 @@ -2689,7 +2643,7 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 - linkify-it@5.0.0: + linkify-it@5.0.1: dependencies: uc.micro: 2.1.0 @@ -2697,53 +2651,51 @@ snapshots: dependencies: p-locate: 5.0.0 - lodash.merge@4.6.2: {} - lunr@2.3.9: {} magic-string@0.30.21: dependencies: '@jridgewell/sourcemap-codec': 1.5.5 - markdown-it@14.1.0: + markdown-it@14.1.1: dependencies: argparse: 2.0.1 entities: 4.5.0 - linkify-it: 5.0.0 + linkify-it: 5.0.1 mdurl: 2.0.0 punycode.js: 2.3.1 uc.micro: 2.1.0 - markdown-it@14.1.1: + markdown-it@14.2.0: dependencies: argparse: 2.0.1 entities: 4.5.0 - linkify-it: 5.0.0 + linkify-it: 5.0.1 mdurl: 2.0.0 punycode.js: 2.3.1 uc.micro: 2.1.0 - markdownlint-cli2-formatter-default@0.0.6(markdownlint-cli2@0.22.1): + markdownlint-cli2-formatter-default@0.0.6(markdownlint-cli2@0.22.1(supports-color@10.2.2)): dependencies: - markdownlint-cli2: 0.22.1 + markdownlint-cli2: 0.22.1(supports-color@10.2.2) - markdownlint-cli2@0.22.1: + markdownlint-cli2@0.22.1(supports-color@10.2.2): dependencies: globby: 16.2.0 js-yaml: 4.1.1 jsonc-parser: 3.3.1 jsonpointer: 5.0.1 markdown-it: 14.1.1 - markdownlint: 0.40.0 - markdownlint-cli2-formatter-default: 0.0.6(markdownlint-cli2@0.22.1) + markdownlint: 0.40.0(supports-color@10.2.2) + markdownlint-cli2-formatter-default: 0.0.6(markdownlint-cli2@0.22.1(supports-color@10.2.2)) micromatch: 4.0.8 smol-toml: 1.6.1 transitivePeerDependencies: - supports-color - markdownlint@0.40.0: + markdownlint@0.40.0(supports-color@10.2.2): dependencies: - micromark: 4.0.2 + micromark: 4.0.2(supports-color@10.2.2) micromark-core-commonmark: 2.0.3 micromark-extension-directive: 4.0.0 micromark-extension-gfm-autolink-literal: 2.1.0 @@ -2818,7 +2770,7 @@ snapshots: dependencies: '@types/katex': 0.16.8 devlop: 1.1.0 - katex: 0.16.45 + katex: 0.16.47 micromark-factory-space: 2.0.1 micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.1 @@ -2909,7 +2861,7 @@ snapshots: micromark-util-types@2.0.2: {} - micromark@4.0.2: + micromark@4.0.2(supports-color@10.2.2): dependencies: '@types/debug': 4.1.13 debug: 4.4.3(supports-color@10.2.2) @@ -2938,19 +2890,11 @@ snapshots: minimatch@10.2.5: dependencies: - brace-expansion: 5.0.5 - - minimatch@3.1.2: - dependencies: - brace-expansion: 1.1.12 + brace-expansion: 5.0.6 minimatch@5.1.9: dependencies: - brace-expansion: 2.1.0 - - minimatch@9.0.5: - dependencies: - brace-expansion: 2.0.2 + brace-expansion: 2.1.1 ms@2.1.3: {} @@ -2958,22 +2902,22 @@ snapshots: natural-compare@1.4.0: {} - obug@2.1.1: {} + obug@2.1.3: {} - openapi-fetch@0.15.0: + openapi-fetch@0.17.0: dependencies: - openapi-typescript-helpers: 0.0.15 + openapi-typescript-helpers: 0.1.0 - openapi-typescript-helpers@0.0.15: {} + openapi-typescript-helpers@0.1.0: {} - openapi-typescript@7.13.0(typescript@5.9.3): + openapi-typescript@7.13.0(typescript@6.0.3): dependencies: - '@redocly/openapi-core': 1.34.14(supports-color@10.2.2) + '@redocly/openapi-core': 1.34.15(supports-color@10.2.2) ansi-colors: 4.1.3 change-case: 5.4.4 parse-json: 8.3.0 supports-color: 10.2.2 - typescript: 5.9.3 + typescript: 6.0.3 yargs-parser: 21.1.1 optionator@0.9.4: @@ -2993,10 +2937,6 @@ snapshots: dependencies: p-limit: 3.1.0 - parent-module@1.0.1: - dependencies: - callsites: 3.1.0 - parse-entities@4.0.2: dependencies: '@types/unist': 2.0.11 @@ -3009,7 +2949,7 @@ snapshots: parse-json@8.3.0: dependencies: - '@babel/code-frame': 7.29.0 + '@babel/code-frame': 7.29.7 index-to-position: 1.2.0 type-fest: 4.41.0 @@ -3027,7 +2967,7 @@ snapshots: pluralize@8.0.0: {} - postcss@8.5.13: + postcss@8.5.15: dependencies: nanoid: 3.3.12 picocolors: 1.1.1 @@ -3035,7 +2975,7 @@ snapshots: prelude-ls@1.2.1: {} - prettier@3.8.3: {} + prettier@3.8.4: {} punycode.js@2.3.1: {} @@ -3045,49 +2985,47 @@ snapshots: require-from-string@2.0.2: {} - resolve-from@4.0.0: {} - resolve-pkg-maps@1.0.0: optional: true reusify@1.1.0: {} - rollup@4.60.2: + rollup@4.62.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.60.2 - '@rollup/rollup-android-arm64': 4.60.2 - '@rollup/rollup-darwin-arm64': 4.60.2 - '@rollup/rollup-darwin-x64': 4.60.2 - '@rollup/rollup-freebsd-arm64': 4.60.2 - '@rollup/rollup-freebsd-x64': 4.60.2 - '@rollup/rollup-linux-arm-gnueabihf': 4.60.2 - '@rollup/rollup-linux-arm-musleabihf': 4.60.2 - '@rollup/rollup-linux-arm64-gnu': 4.60.2 - '@rollup/rollup-linux-arm64-musl': 4.60.2 - '@rollup/rollup-linux-loong64-gnu': 4.60.2 - '@rollup/rollup-linux-loong64-musl': 4.60.2 - '@rollup/rollup-linux-ppc64-gnu': 4.60.2 - '@rollup/rollup-linux-ppc64-musl': 4.60.2 - '@rollup/rollup-linux-riscv64-gnu': 4.60.2 - '@rollup/rollup-linux-riscv64-musl': 4.60.2 - '@rollup/rollup-linux-s390x-gnu': 4.60.2 - '@rollup/rollup-linux-x64-gnu': 4.60.2 - '@rollup/rollup-linux-x64-musl': 4.60.2 - '@rollup/rollup-openbsd-x64': 4.60.2 - '@rollup/rollup-openharmony-arm64': 4.60.2 - '@rollup/rollup-win32-arm64-msvc': 4.60.2 - '@rollup/rollup-win32-ia32-msvc': 4.60.2 - '@rollup/rollup-win32-x64-gnu': 4.60.2 - '@rollup/rollup-win32-x64-msvc': 4.60.2 + '@rollup/rollup-android-arm-eabi': 4.62.0 + '@rollup/rollup-android-arm64': 4.62.0 + '@rollup/rollup-darwin-arm64': 4.62.0 + '@rollup/rollup-darwin-x64': 4.62.0 + '@rollup/rollup-freebsd-arm64': 4.62.0 + '@rollup/rollup-freebsd-x64': 4.62.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.62.0 + '@rollup/rollup-linux-arm-musleabihf': 4.62.0 + '@rollup/rollup-linux-arm64-gnu': 4.62.0 + '@rollup/rollup-linux-arm64-musl': 4.62.0 + '@rollup/rollup-linux-loong64-gnu': 4.62.0 + '@rollup/rollup-linux-loong64-musl': 4.62.0 + '@rollup/rollup-linux-ppc64-gnu': 4.62.0 + '@rollup/rollup-linux-ppc64-musl': 4.62.0 + '@rollup/rollup-linux-riscv64-gnu': 4.62.0 + '@rollup/rollup-linux-riscv64-musl': 4.62.0 + '@rollup/rollup-linux-s390x-gnu': 4.62.0 + '@rollup/rollup-linux-x64-gnu': 4.62.0 + '@rollup/rollup-linux-x64-musl': 4.62.0 + '@rollup/rollup-openbsd-x64': 4.62.0 + '@rollup/rollup-openharmony-arm64': 4.62.0 + '@rollup/rollup-win32-arm64-msvc': 4.62.0 + '@rollup/rollup-win32-ia32-msvc': 4.62.0 + '@rollup/rollup-win32-x64-gnu': 4.62.0 + '@rollup/rollup-win32-x64-msvc': 4.62.0 fsevents: 2.3.3 run-parallel@1.2.0: dependencies: queue-microtask: 1.2.3 - semver@7.7.4: {} + semver@7.8.4: {} shebang-command@2.0.0: dependencies: @@ -3109,7 +3047,7 @@ snapshots: string-width@8.1.0: dependencies: - get-east-asian-width: 1.5.0 + get-east-asian-width: 1.6.0 strip-ansi: 7.2.0 strip-ansi@6.0.1: @@ -3120,8 +3058,6 @@ snapshots: dependencies: ansi-regex: 6.2.2 - strip-json-comments@3.1.1: {} - supports-color@10.2.2: {} supports-color@7.2.0: @@ -3130,9 +3066,9 @@ snapshots: tinybench@2.9.0: {} - tinyexec@1.1.2: {} + tinyexec@1.2.4: {} - tinyglobby@0.2.16: + tinyglobby@0.2.17: dependencies: fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 @@ -3143,9 +3079,9 @@ snapshots: dependencies: is-number: 7.0.0 - ts-api-utils@2.5.0(typescript@5.9.3): + ts-api-utils@2.5.0(typescript@6.0.3): dependencies: - typescript: 5.9.3 + typescript: 6.0.3 ts-autofix@1.0.0: dependencies: @@ -3168,33 +3104,33 @@ snapshots: type-fest@4.41.0: {} - typedoc@0.28.16(typescript@5.9.3): + typedoc@0.28.19(typescript@6.0.3): dependencies: - '@gerrit0/mini-shiki': 3.22.0 + '@gerrit0/mini-shiki': 3.23.0 lunr: 2.3.9 - markdown-it: 14.1.0 - minimatch: 9.0.5 - typescript: 5.9.3 - yaml: 2.8.2 - - typescript-eslint@8.59.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3): - dependencies: - '@typescript-eslint/eslint-plugin': 8.59.1(@typescript-eslint/parser@8.59.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/parser': 8.59.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/typescript-estree': 8.59.1(typescript@5.9.3) - '@typescript-eslint/utils': 8.59.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) - eslint: 9.39.2(jiti@2.6.1) - typescript: 5.9.3 + markdown-it: 14.2.0 + minimatch: 10.2.5 + typescript: 6.0.3 + yaml: 2.9.0 + + typescript-eslint@8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3): + dependencies: + '@typescript-eslint/eslint-plugin': 8.61.0(@typescript-eslint/parser@8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3))(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) + '@typescript-eslint/parser': 8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) + '@typescript-eslint/typescript-estree': 8.61.0(typescript@6.0.3) + '@typescript-eslint/utils': 8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(typescript@6.0.3) + eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) + typescript: 6.0.3 transitivePeerDependencies: - supports-color typescript@4.9.5: {} - typescript@5.9.3: {} + typescript@6.0.3: {} uc.micro@2.1.0: {} - undici-types@7.19.2: {} + undici-types@7.24.6: {} unicorn-magic@0.4.0: {} @@ -3204,45 +3140,45 @@ snapshots: dependencies: punycode: 2.3.1 - vite@7.3.1(@types/node@25.6.0)(jiti@2.6.1)(tsx@4.19.2)(yaml@2.8.2): + vite@7.3.1(@types/node@25.9.3)(jiti@2.7.0)(tsx@4.19.2)(yaml@2.9.0): dependencies: esbuild: 0.27.7 fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 - postcss: 8.5.13 - rollup: 4.60.2 - tinyglobby: 0.2.16 + postcss: 8.5.15 + rollup: 4.62.0 + tinyglobby: 0.2.17 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.3 fsevents: 2.3.3 - jiti: 2.6.1 + jiti: 2.7.0 tsx: 4.19.2 - yaml: 2.8.2 + yaml: 2.9.0 - vitest@4.1.5(@types/node@25.6.0)(vite@7.3.1(@types/node@25.6.0)(jiti@2.6.1)(tsx@4.19.2)(yaml@2.8.2)): + vitest@4.1.8(@types/node@25.9.3)(vite@7.3.1(@types/node@25.9.3)(jiti@2.7.0)(tsx@4.19.2)(yaml@2.9.0)): dependencies: - '@vitest/expect': 4.1.5 - '@vitest/mocker': 4.1.5(vite@7.3.1(@types/node@25.6.0)(jiti@2.6.1)(tsx@4.19.2)(yaml@2.8.2)) - '@vitest/pretty-format': 4.1.5 - '@vitest/runner': 4.1.5 - '@vitest/snapshot': 4.1.5 - '@vitest/spy': 4.1.5 - '@vitest/utils': 4.1.5 + '@vitest/expect': 4.1.8 + '@vitest/mocker': 4.1.8(vite@7.3.1(@types/node@25.9.3)(jiti@2.7.0)(tsx@4.19.2)(yaml@2.9.0)) + '@vitest/pretty-format': 4.1.8 + '@vitest/runner': 4.1.8 + '@vitest/snapshot': 4.1.8 + '@vitest/spy': 4.1.8 + '@vitest/utils': 4.1.8 es-module-lexer: 2.1.0 expect-type: 1.3.0 magic-string: 0.30.21 - obug: 2.1.1 + obug: 2.1.3 pathe: 2.0.3 picomatch: 4.0.4 std-env: 4.1.0 tinybench: 2.9.0 - tinyexec: 1.1.2 - tinyglobby: 0.2.16 + tinyexec: 1.2.4 + tinyglobby: 0.2.17 tinyrainbow: 3.1.0 - vite: 7.3.1(@types/node@25.6.0)(jiti@2.6.1)(tsx@4.19.2)(yaml@2.8.2) + vite: 7.3.1(@types/node@25.9.3)(jiti@2.7.0)(tsx@4.19.2)(yaml@2.9.0) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.3 transitivePeerDependencies: - msw @@ -3263,7 +3199,7 @@ snapshots: yaml-ast-parser@0.0.43: {} - yaml@2.8.2: {} + yaml@2.9.0: {} yargs-parser@21.1.1: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index b7ed89b..33d3d06 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,5 +1,5 @@ -ignoredBuiltDependencies: - - esbuild +allowBuilds: + esbuild: false overrides: esbuild@<=0.24.2: ^0.25.0 diff --git a/src/base64.ts b/src/base64.ts index 79762b1..0b3776f 100644 --- a/src/base64.ts +++ b/src/base64.ts @@ -1,4 +1,4 @@ -export function fromBase64(base64: string): Buffer | Uint8Array | string { +export function fromBase64(base64: string): Uint8Array | string { const string = atob(base64) const bytes = Uint8Array.from(string, v => v.codePointAt(0) ?? 0) return new TextDecoder().decode(bytes) diff --git a/src/cloud/openapi/openapi-typescript.ts b/src/cloud/openapi/openapi-typescript.ts index 1a46b02..bf28db6 100644 --- a/src/cloud/openapi/openapi-typescript.ts +++ b/src/cloud/openapi/openapi-typescript.ts @@ -152,6 +152,79 @@ export interface paths { readonly patch?: never readonly trace?: never } + readonly "/addon/{addon_key}/client-key": { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description The Connect addon key as defined in an application descriptor. */ + readonly addon_key: string + } + readonly cookie?: never + } + /** + * Get the client key of a Connect addon + * @description Get the client key of the Connect addon associated with a Forge app install via forgeAppId linkage. + * + * This endpoint is part of the Connect -> Forge migration tooling. It is intended to be used by a Forge app + * using `asApp().requestBitbucket()` only. + * Prerequisite: app developer needs to register the linkage between their Connect and Forge app by setting + * `forgeAppId` in the Connect addon descriptor to `app.id` from Forge app manifest, then update the installations. + * If the request came from an installation of a registered Forge app, the client key of the linked Connect addon + * installed in the same workspace will be returned. + * + * ``` + * api.asApp().requestBitbucket(route`/2.0/addon/{addon-key}/client-key`) + * ``` + */ + readonly get: { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description The Connect addon key as defined in an application descriptor. */ + readonly addon_key: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description The client key of the Connect addon linked to the Forge app installation where the request was made */ + readonly 200: { + headers: Readonly> + content?: never + } + /** @description Invalid authentication. */ + readonly 401: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + /** @description Improper authorization. */ + readonly 403: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + /** @description The Connect addon or the Forge app does not exist. */ + readonly 404: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + } + } + readonly put?: never + readonly post?: never + readonly delete?: never + readonly options?: never + readonly head?: never + readonly patch?: never + readonly trace?: never + } readonly "/addon/linkers": { readonly parameters: { readonly query?: never @@ -161,8 +234,11 @@ export interface paths { } /** * List linkers for an app + * @deprecated * @description Gets a list of all [linkers](/cloud/bitbucket/modules/linker/) * for the authenticated application. + * + * This endpoint is deprecated and will be removed by May 2026. */ readonly get: { readonly parameters: { @@ -200,24 +276,31 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) - * as defined in an application descriptor. */ + /** + * @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) + * as defined in an application descriptor. + */ readonly linker_key: string } readonly cookie?: never } /** * Get a linker for an app + * @deprecated * @description Gets a [linker](/cloud/bitbucket/modules/linker/) specified by `linker_key` * for the authenticated application. + * + * This endpoint is deprecated and will be removed by May 2026. */ readonly get: { readonly parameters: { readonly query?: never readonly header?: never readonly path: { - /** @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) - * as defined in an application descriptor. */ + /** + * @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) + * as defined in an application descriptor. + */ readonly linker_key: string } readonly cookie?: never @@ -258,14 +341,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) - * as defined in an application descriptor. */ + /** + * @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) + * as defined in an application descriptor. + */ readonly linker_key: string } readonly cookie?: never } /** * List linker values for a linker + * @deprecated * @description Gets a list of all [linker](/cloud/bitbucket/modules/linker/) values for the * specified linker of the authenticated application. * @@ -275,14 +361,18 @@ export interface paths { * which will be translated to `([\w\-]+)`. A value must match this pattern. * * [Read more about linker values](/cloud/bitbucket/modules/linker/#usingthebitbucketapitosupplyvalues) + * + * This endpoint is deprecated and will be removed by May 2026. */ readonly get: { readonly parameters: { readonly query?: never readonly header?: never readonly path: { - /** @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) - * as defined in an application descriptor. */ + /** + * @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) + * as defined in an application descriptor. + */ readonly linker_key: string } readonly cookie?: never @@ -312,6 +402,7 @@ export interface paths { } /** * Update a linker value + * @deprecated * @description Bulk update [linker](/cloud/bitbucket/modules/linker/) values for the specified * linker of the authenticated application. * @@ -321,14 +412,18 @@ export interface paths { * which will be translated to `([\w\-]+)`. A value must match this pattern. * * [Read more about linker values](/cloud/bitbucket/modules/linker/#usingthebitbucketapitosupplyvalues) + * + * This endpoint is deprecated and will be removed by May 2026. */ readonly put: { readonly parameters: { readonly query?: never readonly header?: never readonly path: { - /** @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) - * as defined in an application descriptor. */ + /** + * @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) + * as defined in an application descriptor. + */ readonly linker_key: string } readonly cookie?: never @@ -365,6 +460,7 @@ export interface paths { } /** * Create a linker value + * @deprecated * @description Creates a [linker](/cloud/bitbucket/modules/linker/) value for the specified * linker of authenticated application. * @@ -374,14 +470,18 @@ export interface paths { * which will be translated to `([\w\-]+)`. A value must match this pattern. * * [Read more about linker values](/cloud/bitbucket/modules/linker/#usingthebitbucketapitosupplyvalues) + * + * This endpoint is deprecated and will be removed by May 2026. */ readonly post: { readonly parameters: { readonly query?: never readonly header?: never readonly path: { - /** @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) - * as defined in an application descriptor. */ + /** + * @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) + * as defined in an application descriptor. + */ readonly linker_key: string } readonly cookie?: never @@ -418,16 +518,21 @@ export interface paths { } /** * Delete all linker values + * @deprecated * @description Delete all [linker](/cloud/bitbucket/modules/linker/) values for the * specified linker of the authenticated application. + * + * This endpoint is deprecated and will be removed by May 2026. */ readonly delete: { readonly parameters: { readonly query?: never readonly header?: never readonly path: { - /** @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) - * as defined in an application descriptor. */ + /** + * @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) + * as defined in an application descriptor. + */ readonly linker_key: string } readonly cookie?: never @@ -465,8 +570,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) - * as defined in an application descriptor. */ + /** + * @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) + * as defined in an application descriptor. + */ readonly linker_key: string /** @description The numeric ID of the linker value. */ readonly value_id: number @@ -475,16 +582,21 @@ export interface paths { } /** * Get a linker value + * @deprecated * @description Get a single [linker](/cloud/bitbucket/modules/linker/) value * of the authenticated application. + * + * This endpoint is deprecated and will be removed by May 2026. */ readonly get: { readonly parameters: { readonly query?: never readonly header?: never readonly path: { - /** @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) - * as defined in an application descriptor. */ + /** + * @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) + * as defined in an application descriptor. + */ readonly linker_key: string /** @description The numeric ID of the linker value. */ readonly value_id: number @@ -518,16 +630,21 @@ export interface paths { readonly post?: never /** * Delete a linker value + * @deprecated * @description Delete a single [linker](/cloud/bitbucket/modules/linker/) value * of the authenticated application. + * + * This endpoint is deprecated and will be removed by May 2026. */ readonly delete: { readonly parameters: { readonly query?: never readonly header?: never readonly path: { - /** @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) - * as defined in an application descriptor. */ + /** + * @description The unique key of a [linker module](/cloud/bitbucket/modules/linker/) + * as defined in an application descriptor. + */ readonly linker_key: string /** @description The numeric ID of the linker value. */ readonly value_id: number @@ -674,7 +791,11 @@ export interface paths { } /** * List public repositories - * @description Returns a paginated list of all public repositories. + * @deprecated + * @description **This endpoint is deprecated. Please use the + * [workspace scoped alternative](/cloud/bitbucket/rest/api-group-repositories/#api-repositories-workspace-get).** + * + * Returns a paginated list of all public repositories. * * This endpoint also supports filtering and sorting of the results. See * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for more details. @@ -682,24 +803,27 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description Filter the results to include only repositories created on or + /** + * @description Filter the results to include only repositories created on or * after this [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) - * timestamp. Example: `YYYY-MM-DDTHH:mm:ss.sssZ` */ + * timestamp. Example: `YYYY-MM-DDTHH:mm:ss.sssZ` + */ readonly after?: string - /** @description Query string to narrow down the response as per [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). + /** + * @description Query string to narrow down the response as per [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). * `role` parameter must also be specified. - * */ + */ readonly q?: string - /** @description Filters the result based on the authenticated user's role on each repository. + /** + * @description Filters the result based on the authenticated user's role on each repository. * * * **member**: returns repositories to which the user has explicit read access * * **contributor**: returns repositories to which the user has explicit write access * * **admin**: returns repositories to which the user has explicit administrator access * * **owner**: returns all repositories owned by the current user - * */ + */ readonly role?: "admin" | "contributor" | "member" | "owner" - /** @description Field by which the results should be sorted as per [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). - * */ + /** @description Field by which the results should be sorted as per [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ readonly sort?: string } readonly header?: never @@ -730,9 +854,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -754,29 +879,26 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description - * Query string to narrow down the response as per [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). - * */ + /** @description Query string to narrow down the response as per [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ readonly q?: string - /** @description - * Filters the result based on the authenticated user's role on each repository. + /** + * @description Filters the result based on the authenticated user's role on each repository. * * * **member**: returns repositories to which the user has explicit read access * * **contributor**: returns repositories to which the user has explicit write access * * **admin**: returns repositories to which the user has explicit administrator access * * **owner**: returns all repositories owned by the current user - * */ + */ readonly role?: "admin" | "contributor" | "member" | "owner" - /** @description - * Field by which the results should be sorted as per [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). - * */ + /** @description Field by which the results should be sorted as per [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ readonly sort?: string } readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -819,13 +941,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -839,13 +963,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -900,22 +1026,25 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } - /** @description The repository that is to be updated. + /** + * @description The repository that is to be updated. * * Note that the elements "owner" and "full_name" are ignored since the * URL implies them. - * */ + */ readonly requestBody?: { readonly content: { readonly "application/json": components["schemas"]["repository"] @@ -925,8 +1054,10 @@ export interface paths { /** @description The existing repository has been updated */ readonly 200: { headers: { - /** @description The location of the repository. This header is only - * provided when the repository's name is changed. */ + /** + * @description The location of the repository. This header is only + * provided when the repository's name is changed. + */ readonly Location?: string readonly [name: string]: unknown } @@ -1000,13 +1131,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1050,22 +1183,25 @@ export interface paths { readonly delete: { readonly parameters: { readonly query?: { - /** @description If a repository has been moved to a new location, use this parameter to + /** + * @description If a repository has been moved to a new location, use this parameter to * show users a friendly message in the Bitbucket UI that the repository * has moved to a new location. However, a GET to this endpoint will still * return a 404. - * */ + */ readonly redirect_to?: string } readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1103,13 +1239,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1129,13 +1267,15 @@ export interface paths { } readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1226,13 +1366,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1287,13 +1429,15 @@ export interface paths { readonly path: { /** @description The restriction rule's id */ readonly id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1309,13 +1453,15 @@ export interface paths { readonly path: { /** @description The restriction rule's id */ readonly id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1367,13 +1513,15 @@ export interface paths { readonly path: { /** @description The restriction rule's id */ readonly id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1427,13 +1575,15 @@ export interface paths { readonly path: { /** @description The restriction rule's id */ readonly id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1477,13 +1627,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1513,13 +1665,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1569,13 +1723,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1601,13 +1757,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1710,13 +1868,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1774,13 +1934,15 @@ export interface paths { readonly path: { /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1796,13 +1958,15 @@ export interface paths { readonly path: { /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1840,13 +2004,15 @@ export interface paths { readonly path: { /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1869,13 +2035,15 @@ export interface paths { readonly path: { /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1914,13 +2082,15 @@ export interface paths { readonly path: { /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1953,13 +2123,15 @@ export interface paths { readonly path: { /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -1976,26 +2148,30 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description Query string to narrow down the response as per + /** + * @description Query string to narrow down the response as per * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). - * */ + */ readonly q?: string - /** @description Field by which the results should be sorted as per + /** + * @description Field by which the results should be sorted as per * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). - * */ + */ readonly sort?: string } readonly header?: never readonly path: { /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2033,13 +2209,15 @@ export interface paths { readonly path: { /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2087,13 +2265,15 @@ export interface paths { readonly comment_id: number /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2111,13 +2291,15 @@ export interface paths { readonly comment_id: number /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2153,13 +2335,15 @@ export interface paths { readonly comment_id: number /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2207,13 +2391,15 @@ export interface paths { readonly comment_id: number /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2366,7 +2552,6 @@ export interface paths { * | TEXT | String | The value will be read as a JSON string and will be displayed as-is | * * Please refer to the [Code Insights documentation](https://confluence.atlassian.com/bitbucket/code-insights-994316785.html) for more information. - * */ readonly put: operations["createOrUpdateReport"] readonly post?: never @@ -2433,7 +2618,6 @@ export interface paths { * severity: HIGH, MEDIUM, LOW, CRITICAL * * Please refer to the [Code Insights documentation](https://confluence.atlassian.com/bitbucket/code-insights-994316785.html) for more information. - * */ readonly post: operations["bulkCreateOrUpdateAnnotations"] readonly delete?: never @@ -2481,7 +2665,6 @@ export interface paths { * severity: HIGH, MEDIUM, LOW, CRITICAL * * Please refer to the [Code Insights documentation](https://confluence.atlassian.com/bitbucket/code-insights-994316785.html) for more information. - * */ readonly put: operations["createOrUpdateAnnotation"] readonly post?: never @@ -2502,13 +2685,15 @@ export interface paths { readonly path: { /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2520,31 +2705,36 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description Query string to narrow down the response as per + /** + * @description Query string to narrow down the response as per * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). - * */ + */ readonly q?: string - /** @description If specified, only return commit status objects that were either + /** + * @description If specified, only return commit status objects that were either * created without a refname, or were created with the specified refname - * */ + */ readonly refname?: string - /** @description Field by which the results should be sorted as per + /** + * @description Field by which the results should be sorted as per * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). * Defaults to `created_on`. - * */ + */ readonly sort?: string } readonly header?: never readonly path: { /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2587,13 +2777,15 @@ export interface paths { readonly path: { /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2648,13 +2840,15 @@ export interface paths { readonly path: { /** @description The commit's SHA1. */ readonly commit: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2702,13 +2896,15 @@ export interface paths { readonly commit: string /** @description The build status' unique key */ readonly key: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2726,13 +2922,15 @@ export interface paths { readonly commit: string /** @description The build status' unique key */ readonly key: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2785,13 +2983,15 @@ export interface paths { readonly commit: string /** @description The build status' unique key */ readonly key: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2836,13 +3036,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2900,13 +3102,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2943,13 +3147,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -2983,15 +3189,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description A commit SHA1 or ref name. */ readonly revision: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3042,15 +3250,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description A commit SHA1 or ref name. */ readonly revision: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3087,15 +3297,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description A commit SHA1 or ref name. */ readonly revision: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3129,19 +3341,22 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * List components + * @deprecated * @description Returns the components that have been defined in the issue tracker. * * This resource is only available on repositories that have the issue @@ -3152,13 +3367,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3196,19 +3413,22 @@ export interface paths { readonly path: { /** @description The component's id */ readonly component_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * Get a component for issues + * @deprecated * @description Returns the specified issue tracker component object. */ readonly get: { @@ -3218,13 +3438,15 @@ export interface paths { readonly path: { /** @description The component's id */ readonly component_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3260,13 +3482,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3285,13 +3509,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3327,17 +3553,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the username or the UUID of the default reviewer, + /** + * @description This can either be the username or the UUID of the default reviewer, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly target_username: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3355,17 +3584,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the username or the UUID of the default reviewer, + /** + * @description This can either be the username or the UUID of the default reviewer, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly target_username: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3407,17 +3639,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the username or the UUID of the default reviewer, + /** + * @description This can either be the username or the UUID of the default reviewer, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly target_username: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3464,17 +3699,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the username or the UUID of the default reviewer, + /** + * @description This can either be the username or the UUID of the default reviewer, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly target_username: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3512,13 +3750,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3532,13 +3772,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3591,13 +3833,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3643,13 +3887,15 @@ export interface paths { readonly path: { /** @description The key ID matching the deploy key. */ readonly key_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3665,13 +3911,15 @@ export interface paths { readonly path: { /** @description The key ID matching the deploy key. */ readonly key_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3701,7 +3949,7 @@ export interface paths { } /** * Update a repository deploy key - * @description Create a new deploy key in a repository. + * @description Update an existing deploy key in a repository. * * The same key needs to be passed in but the comment and label can change. * @@ -3724,13 +3972,15 @@ export interface paths { readonly path: { /** @description The key ID matching the deploy key. */ readonly key_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3777,13 +4027,15 @@ export interface paths { readonly path: { /** @description The key ID matching the deploy key. */ readonly key_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3907,17 +4159,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description A commit SHA (e.g. `3a8b42`) or a commit range using double dot + /** + * @description A commit SHA (e.g. `3a8b42`) or a commit range using double dot * notation (e.g. `3a8b42..9ff173`). - * */ + */ readonly spec: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -3970,7 +4225,8 @@ export interface paths { readonly context?: number /** @description Generate diffs that ignore whitespace. */ readonly ignore_whitespace?: boolean - /** @description This parameter is deprecated. The 'topic' parameter should be used + /** + * @description This parameter is deprecated. The 'topic' parameter should be used * instead. The 'merge' and 'topic' parameters cannot be both used at * the same time. * @@ -3978,33 +4234,44 @@ export interface paths { * destination commit, and then a diff from the * destination to the merge result is returned. If false, * a simple 'two dot' diff between the source and - * destination is returned. True if omitted. */ + * destination is returned. True if omitted. + */ readonly merge?: boolean - /** @description Limit the diff to a particular file (this parameter - * can be repeated for multiple paths). */ + /** + * @description Limit the diff to a particular file (this parameter + * can be repeated for multiple paths). + */ readonly path?: string /** @description Whether to perform rename detection, true if omitted. */ readonly renames?: boolean - /** @description If true, returns 2-way 'three-dot' diff. + /** + * @description If true, returns 2-way 'three-dot' diff. * This is a diff between the source commit and the merge base * of the source commit and the destination commit. * If false, a simple 'two dot' diff between the source and - * destination is returned. */ + * destination is returned. + * + * If omitted, defaults to true, ie. a 2 way 'three-dot' + * diff is returned. + */ readonly topic?: boolean } readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description A commit SHA (e.g. `3a8b42`) or a commit range using double dot + /** + * @description A commit SHA (e.g. `3a8b42`) or a commit range using double dot * notation (e.g. `3a8b42..9ff173`). - * */ + */ readonly spec: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4016,12 +4283,14 @@ export interface paths { headers: Readonly> content?: never } - /** @description If the diff was too large and timed out. + /** + * @description If the diff was too large and timed out. * * Since this endpoint does not employ any form of pagination, but * instead returns the diff as a single document, it can run into * trouble on very large diffs. If Bitbucket times out in cases - * like these, a 555 status code is returned. */ + * like these, a 555 status code is returned. + */ readonly 555: { headers: Readonly> content: { @@ -4043,7 +4312,8 @@ export interface paths { readonly query?: { /** @description Generate diffs that ignore whitespace */ readonly ignore_whitespace?: boolean - /** @description This parameter is deprecated. The 'topic' parameter should be used + /** + * @description This parameter is deprecated. The 'topic' parameter should be used * instead. The 'merge' and 'topic' parameters cannot be both used at * the same time. * @@ -4051,33 +4321,41 @@ export interface paths { * destination commit, and then a diffstat from the * destination to the merge result is returned. If false, * a simple 'two dot' diffstat between the source and - * destination is returned. True if omitted. */ + * destination is returned. True if omitted. + */ readonly merge?: boolean - /** @description Limit the diffstat to a particular file (this parameter - * can be repeated for multiple paths). */ + /** + * @description Limit the diffstat to a particular file (this parameter + * can be repeated for multiple paths). + */ readonly path?: string /** @description Whether to perform rename detection, true if omitted. */ readonly renames?: boolean - /** @description If true, returns 2-way 'three-dot' diff. + /** + * @description If true, returns 2-way 'three-dot' diff. * This is a diff between the source commit and the merge base * of the source commit and the destination commit. * If false, a simple 'two dot' diff between the source and - * destination is returned. */ + * destination is returned. + */ readonly topic?: boolean } readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description A commit SHA (e.g. `3a8b42`) or a commit range using double dot + /** + * @description A commit SHA (e.g. `3a8b42`) or a commit range using double dot * notation (e.g. `3a8b42..9ff173`). - * */ + */ readonly spec: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4114,7 +4392,8 @@ export interface paths { readonly query?: { /** @description Generate diffs that ignore whitespace */ readonly ignore_whitespace?: boolean - /** @description This parameter is deprecated. The 'topic' parameter should be used + /** + * @description This parameter is deprecated. The 'topic' parameter should be used * instead. The 'merge' and 'topic' parameters cannot be both used at * the same time. * @@ -4122,33 +4401,41 @@ export interface paths { * destination commit, and then a diffstat from the * destination to the merge result is returned. If false, * a simple 'two dot' diffstat between the source and - * destination is returned. True if omitted. */ + * destination is returned. True if omitted. + */ readonly merge?: boolean - /** @description Limit the diffstat to a particular file (this parameter - * can be repeated for multiple paths). */ + /** + * @description Limit the diffstat to a particular file (this parameter + * can be repeated for multiple paths). + */ readonly path?: string /** @description Whether to perform rename detection, true if omitted. */ readonly renames?: boolean - /** @description If true, returns 2-way 'three-dot' diff. + /** + * @description If true, returns 2-way 'three-dot' diff. * This is a diff between the source commit and the merge base * of the source commit and the destination commit. * If false, a simple 'two dot' diff between the source and - * destination is returned. */ + * destination is returned. + */ readonly topic?: boolean } readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description A commit SHA (e.g. `3a8b42`) or a commit range using double dot + /** + * @description A commit SHA (e.g. `3a8b42`) or a commit range using double dot * notation (e.g. `3a8b42..9ff173`). - * */ + */ readonly spec: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4184,13 +4471,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4204,13 +4493,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4250,13 +4541,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4304,13 +4597,15 @@ export interface paths { readonly path: { /** @description Name of the file. */ readonly filename: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4332,13 +4627,15 @@ export interface paths { readonly path: { /** @description Name of the file. */ readonly filename: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4379,13 +4676,15 @@ export interface paths { readonly path: { /** @description Name of the file. */ readonly filename: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4423,13 +4722,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4440,13 +4741,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4496,13 +4799,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4520,13 +4825,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4625,88 +4932,170 @@ export interface paths { readonly patch?: never readonly trace?: never } - readonly "/repositories/{workspace}/{repo_slug}/filehistory/{commit}/{path}": { + readonly "/repositories/{workspace}/{repo_slug}/file-conflicts/{spec}": { readonly parameters: { readonly query?: never readonly header?: never readonly path: { - /** @description The commit's SHA1. */ - readonly commit: string - /** @description Path to the file. */ - readonly path: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description A commit SHA (e.g. `3a8b42`) or a commit range using double dot + * notation (e.g. `3a8b42..9ff173`). + */ + readonly spec: string + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** - * List commits that modified a file - * @description Returns a paginated list of commits that modified the specified file. - * - * Commits are returned in reverse chronological order. This is roughly - * equivalent to the following commands: - * - * $ git log --follow --date-order - * - * By default, Bitbucket will follow renames and the path name in the - * returned entries reflects that. This can be turned off using the - * `?renames=false` query parameter. - * - * Results are returned in descending chronological order by default, and - * like most endpoints you can - * [filter and sort](/cloud/bitbucket/rest/intro/#filtering) the response to - * only provide exactly the data you want. - * - * The example response returns commits made before 2011-05-18 against a file - * named `README.rst`. The results are filtered to only return the path and - * date. This request can be made using: - * - * ``` - * $ curl 'https://api.bitbucket.org/2.0/repositories/evzijst/dogslow/filehistory/master/README.rst'\ - * '?fields=values.next,values.path,values.commit.date&q=commit.date<=2011-05-18' - * ``` - * - * In the response you can see that the file was renamed to `README.rst` - * by the commit made on 2011-05-16, and was previously named `README.txt`. + * Get file conflicts for a commit spec + * @description Get file conflicts for a commit spec */ readonly get: { readonly parameters: { - readonly query?: { - /** @description - * Query string to narrow down the response as per - * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ - readonly q?: string - /** @description - * When `true`, Bitbucket will follow the history of the file across - * renames (this is the default behavior). This can be turned off by - * specifying `false`. */ - readonly renames?: string - /** @description - * Name of a response property sort the result by as per - * [filtering and sorting](/cloud/bitbucket/rest/intro/#sorting-query-results). - * */ - readonly sort?: string - } + readonly query?: never readonly header?: never readonly path: { - /** @description The commit's SHA1. */ - readonly commit: string - /** @description Path to the file. */ - readonly path: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID - * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ - readonly workspace: string + /** + * @description A commit SHA (e.g. `3a8b42`) or a commit range using double dot + * notation (e.g. `3a8b42..9ff173`). + */ + readonly spec: string + /** + * @description This can either be the workspace ID (slug) or the workspace UUID + * surrounded by curly-braces, for example: `{workspace UUID}`. + */ + readonly workspace: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description A paginated list of file conflicts */ + readonly 200: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["paginated_file_conflicts"] + } + } + /** @description If the spec cannot be resolved, which may be due to an invalid spec, or commits/refs not present in the repository */ + readonly 404: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + } + } + readonly put?: never + readonly post?: never + readonly delete?: never + readonly options?: never + readonly head?: never + readonly patch?: never + readonly trace?: never + } + readonly "/repositories/{workspace}/{repo_slug}/filehistory/{commit}/{path}": { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description The commit's SHA1. */ + readonly commit: string + /** @description Path to the file. */ + readonly path: string + /** + * @description This can either be the repository slug or the UUID of the repository, + * surrounded by curly-braces, for example: `{repository UUID}`. + */ + readonly repo_slug: string + /** + * @description This can either be the workspace ID (slug) or the workspace UUID + * surrounded by curly-braces, for example: `{workspace UUID}`. + */ + readonly workspace: string + } + readonly cookie?: never + } + /** + * List commits that modified a file + * @description Returns a paginated list of commits that modified the specified file. + * + * Commits are returned in reverse chronological order. This is roughly + * equivalent to the following commands: + * + * $ git log --follow --date-order + * + * By default, Bitbucket will follow renames and the path name in the + * returned entries reflects that. This can be turned off using the + * `?renames=false` query parameter. + * + * Results are returned in descending chronological order by default, and + * like most endpoints you can + * [filter and sort](/cloud/bitbucket/rest/intro/#filtering) the response to + * only provide exactly the data you want. + * + * The example response returns commits made before 2011-05-18 against a file + * named `README.rst`. The results are filtered to only return the path and + * date. This request can be made using: + * + * ``` + * $ curl 'https://api.bitbucket.org/2.0/repositories/evzijst/dogslow/filehistory/master/README.rst'\ + * '?fields=values.next,values.path,values.commit.date&q=commit.date<=2011-05-18' + * ``` + * + * In the response you can see that the file was renamed to `README.rst` + * by the commit made on 2011-05-16, and was previously named `README.txt`. + */ + readonly get: { + readonly parameters: { + readonly query?: { + /** + * @description Query string to narrow down the response as per + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). + */ + readonly q?: string + /** + * @description When `true`, Bitbucket will follow the history of the file across + * renames (this is the default behavior). This can be turned off by + * specifying `false`. + */ + readonly renames?: string + /** + * @description Name of a response property sort the result by as per + * [filtering and sorting](/cloud/bitbucket/rest/intro/#sorting-query-results). + */ + readonly sort?: string + } + readonly header?: never + readonly path: { + /** @description The commit's SHA1. */ + readonly commit: string + /** @description Path to the file. */ + readonly path: string + /** + * @description This can either be the repository slug or the UUID of the repository, + * surrounded by curly-braces, for example: `{repository UUID}`. + */ + readonly repo_slug: string + /** + * @description This can either be the workspace ID (slug) or the workspace UUID + * surrounded by curly-braces, for example: `{workspace UUID}`. + */ + readonly workspace: string } readonly cookie?: never } @@ -4741,13 +5130,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4760,30 +5151,31 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description Query string to narrow down the response as per [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). - * */ + /** @description Query string to narrow down the response as per [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ readonly q?: string - /** @description Filters the result based on the authenticated user's role on each repository. + /** + * @description Filters the result based on the authenticated user's role on each repository. * * * **member**: returns repositories to which the user has explicit read access * * **contributor**: returns repositories to which the user has explicit write access * * **admin**: returns repositories to which the user has explicit administrator access * * **owner**: returns all repositories owned by the current user - * */ + */ readonly role?: "admin" | "contributor" | "member" | "owner" - /** @description Field by which the results should be sorted as per [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). - * */ + /** @description Field by which the results should be sorted as per [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ readonly sort?: string } readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4865,13 +5257,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4907,13 +5301,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -4927,13 +5323,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5005,13 +5403,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5056,15 +5456,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description Installed webhook's ID */ readonly uid: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5079,15 +5481,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description Installed webhook's ID */ readonly uid: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5136,15 +5540,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description Installed webhook's ID */ readonly uid: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5185,15 +5591,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description Installed webhook's ID */ readonly uid: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5231,19 +5639,22 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * List issues + * @deprecated * @description Returns the issues in the issue tracker. */ readonly get: { @@ -5251,13 +5662,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5283,6 +5696,7 @@ export interface paths { readonly put?: never /** * Create an issue + * @deprecated * @description Creates a new issue. * * This call requires authentication. Private repositories or private @@ -5296,13 +5710,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5361,19 +5777,22 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * Get an issue + * @deprecated * @description Returns the specified issue. */ readonly get: { @@ -5383,13 +5802,15 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5428,6 +5849,7 @@ export interface paths { } /** * Update an issue + * @deprecated * @description Modifies the issue. * * ``` @@ -5462,13 +5884,15 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5501,6 +5925,7 @@ export interface paths { readonly post?: never /** * Delete an issue + * @deprecated * @description Deletes the specified issue. This requires write access to the * repository. */ @@ -5511,13 +5936,15 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5557,19 +5984,22 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * List attachments for an issue + * @deprecated * @description Returns all attachments for this issue. * * This returns the files' meta data. This does not return the files' @@ -5584,13 +6014,15 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5621,6 +6053,7 @@ export interface paths { readonly put?: never /** * Upload an attachment to an issue + * @deprecated * @description Upload new issue attachments. * * To upload files, perform a `multipart/form-data` POST containing one @@ -5636,13 +6069,15 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5692,19 +6127,22 @@ export interface paths { readonly issue_id: string /** @description Path to the file. */ readonly path: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * Get attachment for an issue + * @deprecated * @description Returns the contents of the specified file attachment. * * Note that this endpoint does not return a JSON response, but instead @@ -5723,13 +6161,15 @@ export interface paths { readonly issue_id: string /** @description Path to the file. */ readonly path: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5762,6 +6202,7 @@ export interface paths { readonly post?: never /** * Delete an attachment for an issue + * @deprecated * @description Deletes an attachment. */ readonly delete: { @@ -5773,13 +6214,15 @@ export interface paths { readonly issue_id: string /** @description Path to the file. */ readonly path: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5817,19 +6260,22 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * List changes on an issue + * @deprecated * @description Returns the list of all changes that have been made to the specified * issue. Changes are returned in chronological order with the oldest * change first. @@ -5867,28 +6313,31 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description - * Query string to narrow down the response. See - * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for details. */ + /** + * @description Query string to narrow down the response. See + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for details. + */ readonly q?: string - /** @description - * Name of a response property to sort results. See + /** + * @description Name of a response property to sort results. See * [filtering and sorting](/cloud/bitbucket/rest/intro/#sorting-query-results) * for details. - * */ + */ readonly sort?: string } readonly header?: never readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -5914,6 +6363,7 @@ export interface paths { readonly put?: never /** * Modify the state of an issue + * @deprecated * @description Makes a change to the specified issue. * * For example, to change an issue's state and assignee, create a new @@ -5960,13 +6410,15 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6027,19 +6479,22 @@ export interface paths { readonly change_id: string /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * Get issue change object + * @deprecated * @description Returns the specified issue change object. * * This resource is only available on repositories that have the issue @@ -6054,13 +6509,15 @@ export interface paths { readonly change_id: string /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6098,19 +6555,22 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * List comments on an issue + * @deprecated * @description Returns a paginated list of all comments that were made on the * specified issue. * @@ -6123,22 +6583,25 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description - * Query string to narrow down the response as per - * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ + /** + * @description Query string to narrow down the response as per + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). + */ readonly q?: string } readonly header?: never readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6157,6 +6620,7 @@ export interface paths { readonly put?: never /** * Create a comment on an issue + * @deprecated * @description Creates a new issue comment. * * ``` @@ -6173,13 +6637,15 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6200,7 +6666,7 @@ export interface paths { } content?: never } - /** @description If the input was invalid, or if the comment being created is detected as spam */ + /** @description If the input was invalid, or if the comment being created is detected as spam */ readonly 400: { headers: Readonly> content: { @@ -6224,19 +6690,22 @@ export interface paths { readonly comment_id: number /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * Get a comment on an issue + * @deprecated * @description Returns the specified issue comment object. */ readonly get: { @@ -6248,13 +6717,15 @@ export interface paths { readonly comment_id: number /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6272,6 +6743,7 @@ export interface paths { } /** * Update a comment on an issue + * @deprecated * @description Updates the content of the specified issue comment. Note that only * the `content.raw` field can be modified. * @@ -6291,13 +6763,15 @@ export interface paths { readonly comment_id: number /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6316,7 +6790,7 @@ export interface paths { readonly "application/json": components["schemas"]["issue_comment"] } } - /** @description If the input was invalid, or if the update to the comment is detected as spam */ + /** @description If the input was invalid, or if the update to the comment is detected as spam */ readonly 400: { headers: Readonly> content: { @@ -6328,6 +6802,7 @@ export interface paths { readonly post?: never /** * Delete a comment on an issue + * @deprecated * @description Deletes the specified comment. */ readonly delete: { @@ -6339,13 +6814,15 @@ export interface paths { readonly comment_id: number /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6371,19 +6848,22 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * Check if current user voted for an issue + * @deprecated * @description Check whether the authenticated user has voted for this issue. * A 204 status code indicates that the user has voted, while a 404 * implies they haven't. @@ -6395,13 +6875,15 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6433,6 +6915,7 @@ export interface paths { } /** * Vote for an issue + * @deprecated * @description Vote for this issue. * * To cast your vote, do an empty PUT. The 204 status code indicates that @@ -6445,13 +6928,15 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6484,6 +6969,7 @@ export interface paths { readonly post?: never /** * Remove vote for an issue + * @deprecated * @description Retract your vote. */ readonly delete: { @@ -6493,13 +6979,15 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6527,19 +7015,22 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * Check if current user is watching a issue + * @deprecated * @description Indicated whether or not the authenticated user is watching this * issue. */ @@ -6550,13 +7041,15 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6588,6 +7081,7 @@ export interface paths { } /** * Watch an issue + * @deprecated * @description Start watching this issue. * * To start watching this issue, do an empty PUT. The 204 status code @@ -6600,13 +7094,15 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6639,6 +7135,7 @@ export interface paths { readonly post?: never /** * Stop watching an issue + * @deprecated * @description Stop watching this issue. */ readonly delete: { @@ -6648,13 +7145,15 @@ export interface paths { readonly path: { /** @description The issue id */ readonly issue_id: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6694,13 +7193,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6709,6 +7210,7 @@ export interface paths { readonly put?: never /** * Export issues + * @deprecated * @description A POST request to this endpoint initiates a new background celery task that archives the repo's issues. * * When the job has been accepted, it will return a 202 (Accepted) along with a unique url to this job in the @@ -6719,18 +7221,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } - /** @description The options to apply to the export. Available options include `project_key` and `project_name` which, if specified, are used as the project key and name in the exported Jira json format. Option `send_email` specifies whether an email should be sent upon export result. Option `include_attachments` specifies whether attachments are included in the export. */ + /** @description The options to apply to the export. Available options include `project_key` and `project_name` which, if specified, are used as the Jira space key and name in the exported Jira json format. Option `send_email` specifies whether an email should be sent upon export result. Option `include_attachments` specifies whether attachments are included in the export. */ readonly requestBody?: { readonly content: { readonly "application/json": components["schemas"]["export_options"] @@ -6778,21 +7282,24 @@ export interface paths { readonly path: { /** @description The name of the repo */ readonly repo_name: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description The ID of the export task */ readonly task_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * Check issue export status + * @deprecated * @description This endpoint is used to poll for the progress of an issue export * job and return the zip file after the job is complete. * As long as the job is running, this will return a 202 response @@ -6812,15 +7319,17 @@ export interface paths { readonly path: { /** @description The name of the repo */ readonly repo_name: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description The ID of the export task */ readonly task_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6870,19 +7379,22 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * Check issue import status + * @deprecated * @description When using GET, this endpoint reports the status of the current import task. * * After the job has been scheduled, but before it starts executing, the endpoint @@ -6897,13 +7409,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -6950,6 +7464,7 @@ export interface paths { readonly put?: never /** * Import issues + * @deprecated * @description A POST request to this endpoint will import the zip file given by the archive parameter into the repository. All * existing issues will be deleted and replaced by the contents of the imported zip file. * @@ -6965,13 +7480,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7026,16 +7543,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description A commit range using double dot notation (e.g. `3a8b42..9ff173`). - * */ + /** @description A commit range using double dot notation (e.g. `3a8b42..9ff173`). */ readonly revspec: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7053,16 +7571,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description A commit range using double dot notation (e.g. `3a8b42..9ff173`). - * */ + /** @description A commit range using double dot notation (e.g. `3a8b42..9ff173`). */ readonly revspec: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7112,19 +7631,22 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * List milestones + * @deprecated * @description Returns the milestones that have been defined in the issue tracker. * * This resource is only available on repositories that have the issue @@ -7135,13 +7657,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7179,19 +7703,22 @@ export interface paths { readonly path: { /** @description The milestone's id */ readonly milestone_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * Get a milestone + * @deprecated * @description Returns the specified issue tracker milestone object. */ readonly get: { @@ -7201,13 +7728,15 @@ export interface paths { readonly path: { /** @description The milestone's id */ readonly milestone_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7243,13 +7772,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7260,13 +7791,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7289,20 +7822,21 @@ export interface paths { } } } - /** Set the inheritance state for repository settings - * */ + /** Set the inheritance state for repository settings */ readonly put: { readonly parameters: { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7335,17 +7869,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description A commit SHA (e.g. `3a8b42`) or a commit range using double dot + /** + * @description A commit SHA (e.g. `3a8b42`) or a commit range using double dot * notation (e.g. `3a8b42..9ff173`). - * */ + */ readonly spec: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7375,17 +7912,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description A commit SHA (e.g. `3a8b42`) or a commit range using double dot + /** + * @description A commit SHA (e.g. `3a8b42`) or a commit range using double dot * notation (e.g. `3a8b42..9ff173`). - * */ + */ readonly spec: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7397,12 +7937,14 @@ export interface paths { headers: Readonly> content?: never } - /** @description If the diff was too large and timed out. + /** + * @description If the diff was too large and timed out. * * Since this endpoint does not employ any form of pagination, but * instead returns the diff as a single document, it can run into * trouble on very large diffs. If Bitbucket times out in cases - * like these, a 555 status code is returned. */ + * like these, a 555 status code is returned. + */ readonly 555: { headers: Readonly> content: { @@ -7424,13 +7966,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7445,13 +7989,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7503,13 +8049,15 @@ export interface paths { readonly path: { /** @description Slug of the requested group. */ readonly group_slug: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7534,13 +8082,15 @@ export interface paths { readonly path: { /** @description Slug of the requested group. */ readonly group_slug: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7598,13 +8148,15 @@ export interface paths { readonly path: { /** @description Slug of the requested group. */ readonly group_slug: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7671,13 +8223,15 @@ export interface paths { readonly path: { /** @description Slug of the requested group. */ readonly group_slug: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7722,13 +8276,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7743,13 +8299,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7799,17 +8357,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the UUID of the account, surrounded by curly-braces, for + /** + * @description This can either be the UUID of the account, surrounded by curly-braces, for * example: `{account UUID}`, OR an Atlassian Account ID. - * */ + */ readonly selected_user_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7832,17 +8393,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the UUID of the account, surrounded by curly-braces, for + /** + * @description This can either be the UUID of the account, surrounded by curly-braces, for * example: `{account UUID}`, OR an Atlassian Account ID. - * */ + */ readonly selected_user_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7898,17 +8462,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the UUID of the account, surrounded by curly-braces, for + /** + * @description This can either be the UUID of the account, surrounded by curly-braces, for * example: `{account UUID}`, OR an Atlassian Account ID. - * */ + */ readonly selected_user_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -7973,17 +8540,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the UUID of the account, surrounded by curly-braces, for + /** + * @description This can either be the UUID of the account, surrounded by curly-braces, for * example: `{account UUID}`, OR an Atlassian Account ID. - * */ + */ readonly selected_user_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -8037,34 +8607,37 @@ export interface paths { * Note that unlike other endpoints in the Bitbucket API, this endpoint utilizes query parameters to allow filtering * and sorting of returned results. See [query parameters](#api-repositories-workspace-repo-slug-pipelines-get-request-Query%20parameters) * for specific details. - * */ readonly get: operations["getPipelinesForRepository"] readonly put?: never /** * Run a pipeline * @description Endpoint to create and initiate a pipeline. - * There 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. - * # Trigger a Pipeline for a branch + * There are a number of different options to initiate a pipeline, where the payload of the request will determine which type of pipeline will be instantiated. + * + * ## Trigger a pipeline for a branch + * * One way to trigger pipelines is by specifying the branch for which you want to trigger a pipeline. * The 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. * * ### Example * * ``` - * $ curl -X POST -is -u username:password \ - * -H 'Content-Type: application/json' \ - * https://api.bitbucket.org/2.0/repositories/jeroendr/meat-demo2/pipelines/ \ - * -d ' - * { - * "target": { - * "ref_type": "branch", - * "type": "pipeline_ref_target", - * "ref_name": "master" - * } - * }' + * $ curl -X POST -is -u '{atlassian_account_email}:{api_token}' \ + * -H 'Content-Type: application/json' \ + * https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines/ \ + * -d ' + * { + * "target": { + * "ref_type": "branch", + * "type": "pipeline_ref_target", + * "ref_name": "master" + * } + * }' * ``` - * # Trigger a Pipeline for a commit on a branch or tag + * + * ## Trigger a pipeline for a commit on a branch or tag + * * You can initiate a pipeline for a specific commit and in the context of a specified reference (e.g. a branch, tag or bookmark). * The 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. * @@ -8078,143 +8651,270 @@ export interface paths { * ### Example * * ``` - * $ curl -X POST -is -u username:password \ - * -H 'Content-Type: application/json' \ - * https://api.bitbucket.org/2.0/repositories/jeroendr/meat-demo2/pipelines/ \ - * -d ' - * { - * "target": { - * "commit": { - * "type": "commit", - * "hash": "ce5b7431602f7cbba007062eeb55225c6e18e956" - * }, - * "ref_type": "branch", - * "type": "pipeline_ref_target", - * "ref_name": "master" - * } - * }' + * $ curl -X POST -is -u '{atlassian_account_email}:{api_token}' \ + * -H 'Content-Type: application/json' \ + * https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines/ \ + * -d ' + * { + * "target": { + * "commit": { + * "type": "commit", + * "hash": "ce5b7431602f7cbba007062eeb55225c6e18e956" + * }, + * "ref_type": "branch", + * "type": "pipeline_ref_target", + * "ref_name": "master" + * } + * }' * ``` - * # Trigger a specific pipeline definition for a commit + * + * ## Trigger a specific pipeline definition for a commit + * * You can trigger a specific pipeline that is defined in your `bitbucket-pipelines.yml` file for a specific commit. * In 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. * * ### Example * * ``` - * $ curl -X POST -is -u username:password \ - * -H 'Content-Type: application/json' \ - * https://api.bitbucket.org/2.0/repositories/jeroendr/meat-demo2/pipelines/ \ - * -d ' - * { - * "target": { - * "commit": { - * "hash":"a3c4e02c9a3755eccdc3764e6ea13facdf30f923", - * "type":"commit" - * }, - * "selector": { - * "type":"custom", - * "pattern":"Deploy to production" + * $ curl -X POST -is -u '{atlassian_account_email}:{api_token}' \ + * -H 'Content-Type: application/json' \ + * https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines/ \ + * -d ' + * { + * "target": { + * "commit": { + * "hash":"a3c4e02c9a3755eccdc3764e6ea13facdf30f923", + * "type":"commit" * }, - * "type":"pipeline_commit_target" - * } - * }' + * "selector": { + * "type":"custom", + * "pattern":"Deploy to production" + * }, + * "type":"pipeline_commit_target" + * } + * }' * ``` - * # Trigger a specific pipeline definition for a commit on a branch or tag + * + * ## Trigger a specific pipeline definition for a commit on a branch or tag + * * You 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. * In 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. * * ### Example * * ``` - * $ curl -X POST -is -u username:password \ - * -H 'Content-Type: application/json' \ - * https://api.bitbucket.org/2.0/repositories/jeroendr/meat-demo2/pipelines/ \ - * -d ' - * { - * "target": { - * "commit": { - * "hash":"a3c4e02c9a3755eccdc3764e6ea13facdf30f923", - * "type":"commit" - * }, - * "selector": { - * "type": "custom", - * "pattern": "Deploy to production" - * }, - * "type": "pipeline_ref_target", - * "ref_name": "master", - * "ref_type": "branch" - * } - * }' + * $ curl -X POST -is -u '{atlassian_account_email}:{api_token}' \ + * -H 'Content-Type: application/json' \ + * https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines/ \ + * -d ' + * { + * "target": { + * "commit": { + * "hash":"a3c4e02c9a3755eccdc3764e6ea13facdf30f923", + * "type":"commit" + * }, + * "selector": { + * "type": "custom", + * "pattern": "Deploy to production" + * }, + * "type": "pipeline_ref_target", + * "ref_name": "master", + * "ref_type": "branch" + * } + * }' + * ``` + * + * ## Trigger a custom pipeline with variables + * + * In 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). + * + * ### Example + * + * ``` + * $ curl -X POST -is -u '{atlassian_account_email}:{api_token}' \ + * -H 'Content-Type: application/json' \ + * https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines/ \ + * -d ' + * { + * "target": { + * "type": "pipeline_ref_target", + * "ref_type": "branch", + * "ref_name": "master", + * "selector": { + * "type": "custom", + * "pattern": "Deploy to production" + * } + * }, + * "variables": [ + * { + * "key": "var1key", + * "value": "var1value", + * "secured": true + * }, + * { + * "key": "var2key", + * "value": "var2value" + * } + * ] + * }' + * ``` + * + * ## Trigger a pull request pipeline + * + * You can also initiate a pipeline for a specific pull request. + * + * ### Example + * + * ``` + * $ curl -X POST -is -u '{atlassian_account_email}:{api_token}' \ + * -H 'Content-Type: application/json' \ + * https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines/ \ + * -d ' + * { + * "target": { + * "type": "pipeline_pullrequest_target", + * "source": "pull-request-branch", + * "destination": "master", + * "destination_commit": { + * "hash": "9f848b7" + * }, + * "commit": { + * "hash": "1a372fc" + * }, + * "pullrequest": { + * "id": "3" + * }, + * "selector": { + * "type": "pull-requests", + * "pattern": "**" + * } + * } + * }' + * ``` + * + * # On-demand pipeline + * + * By default, pipelines run using the YAML in the repository’s `bitbucket-pipelines.yml` configuration file. + * With an _on-demand_ pipeline, you include the pipeline’s YAML in the request body. That YAML applies only + * to that run and overrides the YAML in `bitbucket-pipelines.yml`. + * + * Just like with regular pipelines, there is a number of different options to initiate an on-demand pipeline. + * However, since the payload contains YAML configuration in this case, _query parameters_ are used to supply + * the necessary metadata to determine which type of pipeline will be instantiated. These query parameters + * are derived from the JSON equivalent by turning each property into a key-value pair with the JSON path + * of the property as the new key. + * + * ## Trigger on-demand pipeline for a branch + * + * You can initiate an on-demand pipeline for a specific branch. This branch will be used to determine + * which pipeline definition from the supplied YAML configuration will be applied to initiate the pipeline. + * The pipeline will then do a clone of the repository and check out the latest revision of the specified branch. + * + * To trigger an on-demand pipeline for a _branch_ the requesting user must have **write permission** for + * that branch (which can be limited by [branch restrictions](https://support.atlassian.com/bitbucket-cloud/docs/use-branch-permissions/)). + * + * ### Example + * + * ``` + * $ curl -X POST -is -u '{atlassian_account_email}:{api_token}' \ + * -H 'Content-Type: application/yaml' \ + * https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines?target.type=pipeline_ref_target&target.ref_type=branch&target.ref_name=master \ + * -d ' + * pipelines: + * default: + * - step: + * script: + * - echo This is an on-demand pipeline' + * ``` + * + * ## Trigger on-demand pipeline for a commit on a branch or tag + * + * You can initiate an on-demand pipeline for a specific commit and in the context of a specified reference + * (branch or tag). The specified reference will be used to determine which pipeline definition from the supplied + * YAML configuration will be applied to initiate the pipeline. The pipeline will clone the repository and + * check out the specified reference. + * + * To trigger an on-demand pipeline for a _branch_ the requesting user must have **write permission** for + * that branch (which can be limited by [branch restrictions](https://support.atlassian.com/bitbucket-cloud/docs/use-branch-permissions/)). + * + * ### Example + * + * ``` + * $ curl -X POST -is -u '{atlassian_account_email}:{api_token}' \ + * -H 'Content-Type: application/yaml' \ + * https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines?target.type=pipeline_ref_target&target.ref_type=branch&target.ref_name=master&target.commit.hash=ce5b7431602f7cbba007062eeb55225c6e18e956 \ + * -d ' + * pipelines: + * default: + * - step: + * script: + * - echo This is an on-demand pipeline' + * ``` + * + * ## Trigger a specific on-demand pipeline definition for a commit + * + * You can trigger a specific pipeline that is defined in the supplied YAML configuration for a specific commit. + * In 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. + * + * ### Example + * + * ``` + * $ curl -X POST -is -u '{atlassian_account_email}:{api_token}' \ + * -H 'Content-Type: application/yaml' \ + * https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines?target.type=pipeline_commit_target&target.commit.hash=a3c4e02c9a3755eccdc3764e6ea13facdf30f923&target.selector.type=custom&target.selector.pattern=security-scan \ + * -d ' + * pipelines: + * custom: + * security-scan: + * - step: + * script: + * - echo Run on-demand security scan * ``` * + * ## Trigger a custom on-demand pipeline with variables * - * # Trigger a custom pipeline with variables - * In 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). + * In addition to triggering a custom on-demand pipeline that is defined in the supplied YAML configuration + * as shown in the examples above, you can specify variables that will be available for your build. + * In the request, provide each variable as an indexed set of query parameters representing its key, value, + * and whether it should be secured or not (this field is optional and defaults to not secured). * * ### Example * * ``` - * $ curl -X POST -is -u username:password \ - * -H 'Content-Type: application/json' \ - * https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines/ \ - * -d ' - * { - * "target": { - * "type": "pipeline_ref_target", - * "ref_type": "branch", - * "ref_name": "master", - * "selector": { - * "type": "custom", - * "pattern": "Deploy to production" - * } - * }, - * "variables": [ - * { - * "key": "var1key", - * "value": "var1value", - * "secured": true - * }, - * { - * "key": "var2key", - * "value": "var2value" - * } - * ] - * }' + * $ curl -X POST -is -u '{atlassian_account_email}:{api_token}' \ + * -H 'Content-Type: application/yaml' \ + * https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines?target.type=pipeline_ref_target&target.ref_type=branch&target.ref_name=master&target.selector.type=custom&target.selector.pattern=security-scan&variables[0].key=var1key&variables[0].value=var1value&variables[0].secured=true&variables[1].key=var2key&variables[1].value=var2value \ + * -d ' + * pipelines: + * custom: + * security-scan: + * - variables: + * - name: var1key + * - name: var2key + * - step: + * script: + * - echo Run on-demand security scan' * ``` * - * # Trigger a pull request pipeline + * ## Trigger a pull request pipeline * - * You can also initiate a pipeline for a specific pull request. + * You can also initiate an on-demand pipeline for a specific pull request. * * ### Example * * ``` - * $ curl -X POST -is -u username:password \ - * -H 'Content-Type: application/json' \ - * https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines/ \ - * -d ' - * { - * "target": { - * "type": "pipeline_pullrequest_target", - * "source": "pull-request-branch", - * "destination": "master", - * "destination_commit": { - * "hash": "9f848b7" - * }, - * "commit": { - * "hash": "1a372fc" - * }, - * "pullrequest": { - * "id": "3" - * }, - * "selector": { - * "type": "pull-requests", - * "pattern": "**" - * } - * } - * }' + * $ curl -X POST -is -u '{atlassian_account_email}:{api_token}' \ + * -H 'Content-Type: application/yaml' \ + * https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines?target.type=pipeline_pullrequest_target&target.source=pull-request-branch&target.destination=destination&target.destination_commit.hash=9f848b7&target.commit.hash=1a372fc&target.pullrequest.id=3&target.selector.type=pull-requests&target.selector.pattern=** \ + * -d ' + * pipelines: + * pull-requests: + * "**": + * - step: + * script: + * - echo This is an on-demand pipeline' * ``` - * */ readonly post: operations["createPipelineForRepository"] readonly delete?: never @@ -8535,6 +9235,58 @@ export interface paths { readonly patch?: never readonly trace?: never } + readonly "/repositories/{workspace}/{repo_slug}/pipelines-config/runners": { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path?: never + readonly cookie?: never + } + /** + * Get repository runners + * @description Retrieve repository runners. + */ + readonly get: operations["getRepositoryRunners"] + readonly put?: never + /** + * Create repository runner + * @description Create repository runner. + */ + readonly post: operations["createRepositoryRunner"] + readonly delete?: never + readonly options?: never + readonly head?: never + readonly patch?: never + readonly trace?: never + } + readonly "/repositories/{workspace}/{repo_slug}/pipelines-config/runners/{runner_uuid}": { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path?: never + readonly cookie?: never + } + /** + * Get repository runner + * @description Retrieve repository runner by uuid. + */ + readonly get: operations["getRepositoryRunner"] + /** + * Update repository runner + * @description Update repository runner. + */ + readonly put: operations["updateRepositoryRunner"] + readonly post?: never + /** + * Delete repository runner + * @description Delete repository runner by uuid. + */ + readonly delete: operations["deleteRepositoryRunner"] + readonly options?: never + readonly head?: never + readonly patch?: never + readonly trace?: never + } readonly "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}": { readonly parameters: { readonly query?: never @@ -8743,13 +9495,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -8774,13 +9528,15 @@ export interface paths { } readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -8883,22 +9639,26 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } - /** @description The new pull request. + /** + * @description The new pull request. * * The 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). * - * Since 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. */ + * Since 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. + */ readonly requestBody?: { readonly content: { readonly "application/json": components["schemas"]["pullrequest"] @@ -8945,13 +9705,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -8967,13 +9729,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9016,13 +9780,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9078,13 +9844,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9385,13 +10153,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9432,13 +10202,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9456,13 +10228,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9504,13 +10278,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9557,13 +10333,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9588,13 +10366,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9638,13 +10418,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9698,13 +10480,15 @@ export interface paths { readonly comment_id: number /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9722,13 +10506,15 @@ export interface paths { readonly comment_id: number /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9771,13 +10557,15 @@ export interface paths { readonly comment_id: number /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9826,13 +10614,15 @@ export interface paths { readonly comment_id: number /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9874,13 +10664,15 @@ export interface paths { readonly comment_id: number /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9897,13 +10689,15 @@ export interface paths { readonly comment_id: number /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9917,9 +10711,11 @@ export interface paths { readonly "application/json": components["schemas"]["comment_resolution"] } } - /** @description If the authenticated user does not have access to the pull request, + /** + * @description If the authenticated user does not have access to the pull request, * if the provided comment is not a top-level comment, - * or if the comment is not on the diff. */ + * or if the comment is not on the diff. + */ readonly 403: { headers: Readonly> content: { @@ -9952,13 +10748,15 @@ export interface paths { readonly comment_id: number /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -9970,8 +10768,10 @@ export interface paths { headers: Readonly> content?: never } - /** @description If the authenticated user does not have access to the pull request, - * or if the provided comment is not a top-level comment. */ + /** + * @description If the authenticated user does not have access to the pull request, + * or if the provided comment is not a top-level comment. + */ readonly 403: { headers: Readonly> content: { @@ -9999,13 +10799,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10024,13 +10826,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10066,6 +10870,71 @@ export interface paths { readonly patch?: never readonly trace?: never } + readonly "/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/conflicts": { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description The id of the pull request. */ + readonly pull_request_id: number + /** + * @description This can either be the repository slug or the UUID of the repository, + * surrounded by curly-braces, for example: `{repository UUID}`. + */ + readonly repo_slug: string + /** + * @description This can either be the workspace ID (slug) or the workspace UUID + * surrounded by curly-braces, for example: `{workspace UUID}`. + */ + readonly workspace: string + } + readonly cookie?: never + } + /** + * Get file conflicts for a pull request + * @description Redirects to the [repository file conflicts](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-file-conflicts-spec-get) + * with the revspec that corresponds to the pull request. + */ + readonly get: { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description The id of the pull request. */ + readonly pull_request_id: number + /** + * @description This can either be the repository slug or the UUID of the repository, + * surrounded by curly-braces, for example: `{repository UUID}`. + */ + readonly repo_slug: string + /** + * @description This can either be the workspace ID (slug) or the workspace UUID + * surrounded by curly-braces, for example: `{workspace UUID}`. + */ + readonly workspace: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** + * @description Redirects to the [repository file conflicts](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-file-conflicts-spec-get) with the + * revspec that corresponds to the pull request. + */ + readonly 302: { + headers: Readonly> + content?: never + } + } + } + readonly put?: never + readonly post?: never + readonly delete?: never + readonly options?: never + readonly head?: never + readonly patch?: never + readonly trace?: never + } readonly "/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/decline": { readonly parameters: { readonly query?: never @@ -10073,13 +10942,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10097,13 +10968,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10117,8 +10990,10 @@ export interface paths { readonly "application/json": components["schemas"]["pullrequest"] } } - /** @description If the decline took too long and timed out. - * In this case the caller should retry the request later. */ + /** + * @description If the decline took too long and timed out. + * In this case the caller should retry the request later. + */ readonly 555: { headers: Readonly> content: { @@ -10140,13 +11015,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10163,22 +11040,25 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } readonly requestBody?: never readonly responses: { - /** @description Redirects to the [repository diff](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-diff-spec-get) with the + /** + * @description Redirects to the [repository diff](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-diff-spec-get) with the * revspec that corresponds to the pull request. - * */ + */ readonly 302: { headers: Readonly> content?: never @@ -10200,13 +11080,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10223,22 +11105,25 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } readonly requestBody?: never readonly responses: { - /** @description Redirects to the [repository diffstat](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-diffstat-spec-get) with + /** + * @description Redirects to the [repository diffstat](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-diffstat-spec-get) with * the revspec that corresponds to pull request. - * */ + */ readonly 302: { headers: Readonly> content?: never @@ -10260,13 +11145,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10280,7 +11167,8 @@ export interface paths { readonly post: { readonly parameters: { readonly query?: { - /** @description Default value is false. + /** + * @description Default value is false. * * * When set to true, runs merge asynchronously and @@ -10292,20 +11180,23 @@ export interface paths { * complete, returning 200 when it succeeds. If the * duration of the merge exceeds a timeout threshold, * the API returns a 202 with polling link to the - * task-status API in the Location header. */ + * task-status API in the Location header. + */ readonly async?: boolean } readonly header?: never readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10333,8 +11224,10 @@ export interface paths { headers: Readonly> content?: never } - /** @description If the merge took too long and timed out. - * In this case the caller should retry the request later */ + /** + * @description If the merge took too long and timed out. + * In this case the caller should retry the request later + */ readonly 555: { headers: Readonly> content: { @@ -10356,15 +11249,17 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description ID of the merge task */ readonly task_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10426,15 +11321,17 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description ID of the merge task */ readonly task_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10478,13 +11375,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10501,22 +11400,25 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } readonly requestBody?: never readonly responses: { - /** @description Redirects to the [repository patch](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-patch-spec-get) with + /** + * @description Redirects to the [repository patch](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-patch-spec-get) with * the revspec that corresponds to pull request. - * */ + */ readonly 302: { headers: Readonly> content?: never @@ -10538,13 +11440,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10559,13 +11463,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10610,13 +11516,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10663,13 +11571,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10682,27 +11592,31 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description Query string to narrow down the response as per + /** + * @description Query string to narrow down the response as per * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). - * */ + */ readonly q?: string - /** @description Field by which the results should be sorted as per + /** + * @description Field by which the results should be sorted as per * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). * Defaults to `created_on`. - * */ + */ readonly sort?: string } readonly header?: never readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10745,13 +11659,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10766,34 +11682,37 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description - * Current number of objects on the existing page. + /** + * @description Current number of objects on the existing page. * The default value is 10 with 100 being the maximum allowed value. * Individual APIs may enforce different values. - * */ + */ readonly pagelen?: number - /** @description - * Query string to narrow down the response. See - * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for details. */ + /** + * @description Query string to narrow down the response. See + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for details. + */ readonly q?: string - /** @description - * Field by which the results should be sorted as per + /** + * @description Field by which the results should be sorted as per * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). * Defaults to `created_on`. - * */ + */ readonly sort?: string } readonly header?: never readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10847,13 +11766,15 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10912,15 +11833,17 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description The ID of the task. */ readonly task_id: number - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10936,15 +11859,17 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description The ID of the task. */ readonly task_id: number - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -10985,15 +11910,17 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description The ID of the task. */ readonly task_id: number - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -11047,15 +11974,17 @@ export interface paths { readonly path: { /** @description The id of the pull request. */ readonly pull_request_id: number - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description The ID of the task. */ readonly task_id: number - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -11121,13 +12050,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -11426,13 +12357,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -11471,13 +12404,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -11500,27 +12435,31 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description - * Query string to narrow down the response as per - * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ + /** + * @description Query string to narrow down the response as per + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). + */ readonly q?: string - /** @description - * Field by which the results should be sorted as per + /** + * @description Field by which the results should be sorted as per * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). The `name` * field is handled specially for refs in that, if specified as the sort field, it * uses a natural sort order instead of the default lexicographical sort order. For example, - * it will return ['1.1', '1.2', '1.10'] instead of ['1.1', '1.10', '1.2']. */ + * it will return ['1.1', '1.2', '1.10'] instead of ['1.1', '1.10', '1.2']. + */ readonly sort?: string } readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -11534,9 +12473,10 @@ export interface paths { readonly "application/json": components["schemas"]["paginated_refs"] } } - /** @description If the repository is private and the authenticated user does not have + /** + * @description If the repository is private and the authenticated user does not have * access to it. - * */ + */ readonly 403: { headers: Readonly> content: { @@ -11565,13 +12505,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -11602,27 +12544,31 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description - * Query string to narrow down the response as per - * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ + /** + * @description Query string to narrow down the response as per + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). + */ readonly q?: string - /** @description - * Field by which the results should be sorted as per + /** + * @description Field by which the results should be sorted as per * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). The `name` * field is handled specially for branches in that, if specified as the sort field, it * uses a natural sort order instead of the default lexicographical sort order. For example, - * it will return ['branch1', 'branch2', 'branch10'] instead of ['branch1', 'branch10', 'branch2']. */ + * it will return ['branch1', 'branch2', 'branch10'] instead of ['branch1', 'branch10', 'branch2']. + */ readonly sort?: string } readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -11636,9 +12582,10 @@ export interface paths { readonly "application/json": components["schemas"]["paginated_branches"] } } - /** @description If the repository is private and the authenticated user does not have + /** + * @description If the repository is private and the authenticated user does not have * access to it. - * */ + */ readonly 403: { headers: Readonly> content: { @@ -11688,13 +12635,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -11708,9 +12657,10 @@ export interface paths { readonly "application/json": components["schemas"]["branch"] } } - /** @description If the repository is private and the authenticated user does not have + /** + * @description If the repository is private and the authenticated user does not have * access to it. - * */ + */ readonly 403: { headers: Readonly> content: { @@ -11739,13 +12689,15 @@ export interface paths { readonly path: { /** @description The name of the branch. */ readonly name: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -11768,13 +12720,15 @@ export interface paths { readonly path: { /** @description The name of the branch. */ readonly name: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -11788,9 +12742,10 @@ export interface paths { readonly "application/json": components["schemas"]["branch"] } } - /** @description If the repository is private and the authenticated user does not have + /** + * @description If the repository is private and the authenticated user does not have * access to it. - * */ + */ readonly 403: { headers: Readonly> content: { @@ -11825,13 +12780,15 @@ export interface paths { readonly path: { /** @description The name of the branch. */ readonly name: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -11843,9 +12800,10 @@ export interface paths { headers: Readonly> content?: never } - /** @description If the repository is private and the authenticated user does not have + /** + * @description If the repository is private and the authenticated user does not have * access to it. - * */ + */ readonly 403: { headers: Readonly> content: { @@ -11871,13 +12829,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -11899,27 +12859,31 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description - * Query string to narrow down the response as per - * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ + /** + * @description Query string to narrow down the response as per + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). + */ readonly q?: string - /** @description - * Field by which the results should be sorted as per + /** + * @description Field by which the results should be sorted as per * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). The `name` * field is handled specially for tags in that, if specified as the sort field, it * uses a natural sort order instead of the default lexicographical sort order. For example, - * it will return ['1.1', '1.2', '1.10'] instead of ['1.1', '1.10', '1.2']. */ + * it will return ['1.1', '1.2', '1.10'] instead of ['1.1', '1.10', '1.2']. + */ readonly sort?: string } readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -11933,9 +12897,10 @@ export interface paths { readonly "application/json": components["schemas"]["paginated_tags"] } } - /** @description If the repository is private and the authenticated user does not have + /** + * @description If the repository is private and the authenticated user does not have * access to it. - * */ + */ readonly 403: { headers: Readonly> content: { @@ -11954,7 +12919,7 @@ export interface paths { readonly put?: never /** * Create a tag - * @description Creates a new tag in the specified repository. + * @description Creates a new annotated tag in the specified repository. * * The payload of the POST should consist of a JSON document that * contains the name of the tag and the target hash. @@ -11973,19 +12938,25 @@ export interface paths { * This endpoint does support using short hash prefixes for the commit * hash, but it may return a 400 response if the provided prefix is * ambiguous. Using a full commit hash is the preferred approach. + * + * A message for the tag object may optionally be provided. If it is + * omitted or the provided message is empty, a default message of + * "Added tag for changeset " will be used. */ readonly post: { readonly parameters: { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -12025,13 +12996,15 @@ export interface paths { readonly path: { /** @description The name of the tag. */ readonly name: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -12172,13 +13145,15 @@ export interface paths { readonly path: { /** @description The name of the tag. */ readonly name: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -12192,9 +13167,10 @@ export interface paths { readonly "application/json": components["schemas"]["tag"] } } - /** @description If the repository is private and the authenticated user does not have + /** + * @description If the repository is private and the authenticated user does not have * access to it. - * */ + */ readonly 403: { headers: Readonly> content: { @@ -12225,13 +13201,15 @@ export interface paths { readonly path: { /** @description The name of the tag. */ readonly name: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -12243,9 +13221,10 @@ export interface paths { headers: Readonly> content?: never } - /** @description If the repository is private and the authenticated user does not have + /** + * @description If the repository is private and the authenticated user does not have * access to it. - * */ + */ readonly 403: { headers: Readonly> content: { @@ -12271,13 +13250,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -12301,27 +13282,30 @@ export interface paths { } readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } readonly requestBody?: never readonly responses: { - /** @description If the path matches a file, then the raw contents of the file are + /** + * @description If the path matches a file, then the raw contents of the file are * returned (unless the `format=meta` query parameter was provided, * in which case a json document containing the file's meta data is * returned). If the path matches a directory, then a paginated * list of file and directory entries is returned (if the * `format=meta` query parameter was provided, then the json document * containing the directory's meta data is returned). - * */ + */ readonly 200: { headers: Readonly> content: { @@ -12468,17 +13452,18 @@ export interface paths { readonly post: { readonly parameters: { readonly query?: { - /** @description - * The raw string to be used as the new commit's author. + /** + * @description The raw string to be used as the new commit's author. * This string follows the format * `Erik van Zijst `. * * When omitted, Bitbucket uses the authenticated user's * full/display name and primary email address. Commits cannot - * be created anonymously. */ + * be created anonymously. + */ readonly author?: string - /** @description - * The name of the branch that the new commit should be + /** + * @description The name of the branch that the new commit should be * created on. When omitted, the commit will be created on top * of the main branch and will become the main branch's new * head. @@ -12523,10 +13508,10 @@ export interface paths { * This will create a new commit and branch with the same * contents as the first parent. The diff of this commit * against its first parent will be empty. - * */ + */ readonly branch?: string - /** @description - * Optional field that declares the files that the request is + /** + * @description Optional field that declares the files that the request is * manipulating. When adding a new file to a repo, or when * overwriting an existing file, the client can just upload * the full contents of the file in a normal form field and @@ -12544,39 +13529,40 @@ export interface paths { * This API does not support renaming as an explicit feature. * To rename a file, simply delete it and recreate it under * the new name in the same commit. - * */ + */ readonly files?: string /** @description The commit message. When omitted, Bitbucket uses a canned string. */ readonly message?: string - /** @description - * A comma-separated list of SHA1s of the commits that should - * be the parents of the newly created commit. - * - * When omitted, the new commit will inherit from and become - * a child of the main branch's tip/HEAD commit. + /** + * @description #### Deprecation Notice: + * Support for specifying multiple parent + * commits is deprecated and will be removed in a future release. + * Only a single SHA1 is accepted. * - * When more than one SHA1 is provided, the first SHA1 - * identifies the commit from which the content will be - * inherited.". */ + * A SHA1 of the commit that should be the parent of the newly created + * commit. When omitted, the new commit will inherit from and + * become a child of the main branch's tip/HEAD commit. + */ readonly parents?: string } readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } readonly requestBody?: never readonly responses: { - /** @description - * */ + /** @description */ readonly 201: { headers: Readonly> content?: never @@ -12612,13 +13598,15 @@ export interface paths { readonly commit: string /** @description Path to the file. */ readonly path: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -12847,20 +13835,23 @@ export interface paths { readonly commit: string /** @description Path to the file. */ readonly path: string - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } readonly requestBody?: never readonly responses: { - /** @description If the path matches a file, then the raw contents of the file are + /** + * @description If the path matches a file, then the raw contents of the file are * returned. If the `format=meta` query parameter is provided, * a json document containing the file's meta data is * returned. If the `format=rendered` query parameter is provided, @@ -12869,7 +13860,7 @@ export interface paths { * list of file and directory entries is returned (if the * `format=meta` query parameter was provided, then the json document * containing the directory's meta data is returned.) - * */ + */ readonly 200: { headers: Readonly> content: { @@ -12905,19 +13896,22 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * List defined versions for issues + * @deprecated * @description Returns the versions that have been defined in the issue tracker. * * This resource is only available on repositories that have the issue @@ -12928,13 +13922,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -12970,21 +13966,24 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description The version's id */ readonly version_id: number - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never } /** * Get a defined version for issues + * @deprecated * @description Returns the specified issue tracker version object. */ readonly get: { @@ -12992,15 +13991,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string /** @description The version's id */ readonly version_id: number - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -13036,13 +14037,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -13057,13 +14060,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -13096,7 +14101,11 @@ export interface paths { } /** * List snippets - * @description Returns all snippets. Like pull requests, repositories and workspaces, the + * @deprecated + * @description **This endpoint is deprecated. Please use the + * [workspace scoped alternative](/cloud/bitbucket/rest/api-group-snippets/#api-snippets-workspace-get).** + * + * Returns all snippets. Like pull requests, repositories and workspaces, the * full set of snippets is defined by what the current user has access to. * * This includes all snippets owned by any of the workspaces the user is a member of, @@ -13339,9 +14348,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -13360,9 +14370,10 @@ export interface paths { } readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -13397,9 +14408,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -13446,9 +14458,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -13649,9 +14662,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -13913,9 +14927,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -13972,9 +14987,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14023,9 +15039,10 @@ export interface paths { readonly encoded_id: string /** @description A commit revision (SHA1). */ readonly node_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14051,9 +15068,10 @@ export interface paths { readonly encoded_id: string /** @description A commit revision (SHA1). */ readonly node_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14124,9 +15142,10 @@ export interface paths { readonly encoded_id: string /** @description A commit revision (SHA1). */ readonly node_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14201,9 +15220,10 @@ export interface paths { readonly encoded_id: string /** @description A commit revision (SHA1). */ readonly node_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14261,9 +15281,10 @@ export interface paths { readonly node_id: string /** @description Path to the file. */ readonly path: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14291,9 +15312,10 @@ export interface paths { readonly node_id: string /** @description Path to the file. */ readonly path: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14344,9 +15366,10 @@ export interface paths { readonly encoded_id: string /** @description A revspec expression. This can simply be a commit SHA1, a ref name, or a compare expression like `staging..production`. */ readonly revision: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14385,9 +15408,10 @@ export interface paths { readonly encoded_id: string /** @description A revspec expression. This can simply be a commit SHA1, a ref name, or a compare expression like `staging..production`. */ readonly revision: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14432,9 +15456,10 @@ export interface paths { readonly encoded_id: string /** @description A revspec expression. This can simply be a commit SHA1, a ref name, or a compare expression like `staging..production`. */ readonly revision: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14471,9 +15496,10 @@ export interface paths { readonly encoded_id: string /** @description A revspec expression. This can simply be a commit SHA1, a ref name, or a compare expression like `staging..production`. */ readonly revision: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14516,9 +15542,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14540,9 +15567,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14588,9 +15616,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14644,9 +15673,10 @@ export interface paths { readonly comment_id: number /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14664,9 +15694,10 @@ export interface paths { readonly comment_id: number /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14713,9 +15744,10 @@ export interface paths { readonly comment_id: number /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14766,9 +15798,10 @@ export interface paths { readonly comment_id: number /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14808,9 +15841,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14826,9 +15860,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14875,9 +15910,10 @@ export interface paths { readonly encoded_id: string /** @description The commit's SHA1. */ readonly revision: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14895,9 +15931,10 @@ export interface paths { readonly encoded_id: string /** @description The commit's SHA1. */ readonly revision: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14944,9 +15981,10 @@ export interface paths { readonly encoded_id: string /** @description Path to the file. */ readonly path: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -14966,9 +16004,10 @@ export interface paths { readonly encoded_id: string /** @description Path to the file. */ readonly path: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -15015,9 +16054,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -15038,9 +16078,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -15072,9 +16113,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -15115,9 +16157,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -15157,9 +16200,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -15176,9 +16220,10 @@ export interface paths { readonly path: { /** @description The snippet id. */ readonly encoded_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -15280,7 +16325,10 @@ export interface paths { } /** * Search for code in a team's repositories - * @description Search for code in the repositories of the specified team. + * @deprecated + * @description This API will be deprecated on November 1, 2026. + * + * Search for code in the repositories of the specified team. * * Note that searches can match in the file's text (`content_matches`), * the path (`path_matches`), or both. @@ -15296,7 +16344,6 @@ export interface paths { * (the `%2B` is a URL-encoded `+`). * * Try `fields=%2Bvalues.*.*.*.*` to get an idea what's possible. - * */ readonly get: operations["searchTeam"] readonly put?: never @@ -15445,7 +16492,11 @@ export interface paths { } /** * List repository permissions for a user - * @description Returns an object for each repository the caller has explicit access + * @deprecated + * @description **This endpoint is deprecated. Please use the + * [workspace scoped alternative](/cloud/bitbucket/rest/api-group-repositories/#api-user-workspaces-workspace-permissions-repositories-get).** + * + * Returns an object for each repository the caller has explicit access * to and their effective permission — the highest level of permission the * caller has. This does not return public repositories that the user was * not granted any specific permission in, and does not distinguish between @@ -15470,13 +16521,15 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description - * Query string to narrow down the response as per - * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ + /** + * @description Query string to narrow down the response as per + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). + */ readonly q?: string - /** @description - * Name of a response property sort the result by as per - * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ + /** + * @description Name of a response property sort the result by as per + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). + */ readonly sort?: string } readonly header?: never @@ -15511,7 +16564,12 @@ export interface paths { } /** * List workspaces for the current user - * @description Returns an object for each workspace the caller is a member of, and + * @deprecated + * @description **This endpoint is deprecated. Please use the supported alternatives:** + * * [List workspaces for user](/cloud/bitbucket/rest/api-group-workspaces/#api-user-workspaces-get) + * * [Get user permission on a workspace](/cloud/bitbucket/rest/api-group-workspaces/#api-user-workspaces-workspace-permission-get) + * + * Returns an object for each workspace the caller is a member of, and * their effective role - the highest level of privilege the caller has. * If a user is a member of multiple groups with distinct roles, only the * highest level is returned. @@ -15541,28 +16599,260 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description - * Query string to narrow down the response. See - * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for details. */ + /** + * @description Query string to narrow down the response. See + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for details. + */ readonly q?: string - /** @description - * Name of a response property to sort results. See + /** + * @description Name of a response property to sort results. See * [filtering and sorting](/cloud/bitbucket/rest/intro/#sorting-query-results) * for details. - * */ + */ + readonly sort?: string + } + readonly header?: never + readonly path?: never + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description All of the workspace memberships for the authenticated user. */ + readonly 200: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["paginated_workspace_memberships"] + } + } + /** @description The request wasn't authenticated. */ + readonly 401: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + } + } + readonly put?: never + readonly post?: never + readonly delete?: never + readonly options?: never + readonly head?: never + readonly patch?: never + readonly trace?: never + } + readonly "/user/workspaces": { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path?: never + readonly cookie?: never + } + /** + * List workspaces for the current user + * @description Returns an object for each workspace accessible to the caller. This object + * also contains details on whether the caller has admin permissions on the workspace + * (`"administrator" = true`) or not (`"administrator" = false`). + * + * Queries support filtering based on administrator permissions, + * [sorting](/cloud/bitbucket/rest/intro/#sorting-query-results) or + * [filtering](/cloud/bitbucket/rest/intro/#filtering) by `slug`. Results can + * be [paginated](/cloud/bitbucket/rest/intro/#pagination). + */ + readonly get: { + readonly parameters: { + readonly query?: { + /** @description Filter workspaces based on which ones the caller has admin permissions or not. */ + readonly administrator?: boolean + /** @description Name of a response property to sort results (only slug is supported). */ + readonly sort?: string + } + readonly header?: never + readonly path?: never + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description The list of workspaces accessible by the authenticated user. */ + readonly 200: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["paginated_workspace_access"] + } + } + /** @description The request was invalid. */ + readonly 400: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + /** @description The request wasn't authenticated. */ + readonly 401: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + } + } + readonly put?: never + readonly post?: never + readonly delete?: never + readonly options?: never + readonly head?: never + readonly patch?: never + readonly trace?: never + } + readonly "/user/workspaces/{workspace}/permission": { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** + * @description This can either be the workspace ID (slug) or the workspace UUID + * surrounded by curly-braces, for example: `{workspace UUID}`. + */ + readonly workspace: string + } + readonly cookie?: never + } + /** + * Get user permission on a workspace + * @description Returns the caller's effective role; as in, the highest level of privilege + * the caller has for the workspace. + * If the calling user is a member of multiple groups with distinct roles, only the + * highest level is returned. + * + * Permissions can be: + * + * * `owner` + * * `create-project` + * * `collaborator` (deprecated; see this + * [deprecation announcement](/cloud/bitbucket/deprecation-notice-collaborator-role/) for more details) + * * `member` + */ + readonly get: { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** + * @description This can either be the workspace ID (slug) or the workspace UUID + * surrounded by curly-braces, for example: `{workspace UUID}`. + */ + readonly workspace: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description The user that is part of a workspace. */ + readonly 200: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["workspace_membership"] + } + } + /** @description The request wasn't authenticated. */ + readonly 401: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + /** @description The requesting user does not have access to the workspace. */ + readonly 403: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + } + } + readonly put?: never + readonly post?: never + readonly delete?: never + readonly options?: never + readonly head?: never + readonly patch?: never + readonly trace?: never + } + readonly "/user/workspaces/{workspace}/permissions/repositories": { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** + * @description This can either be the workspace ID (slug) or the workspace UUID + * surrounded by curly-braces, for example: `{workspace UUID}`. + */ + readonly workspace: string + } + readonly cookie?: never + } + /** + * List repository permissions in a workspace for a user + * @description Returns an object for each repository the caller has explicit access to in the + * specified workspace and their effective permission — the highest level of + * permission the caller has. This does not return public repositories that the + * user was not granted any specific permission in, and does not distinguish between + * explicit and implicit privileges. + * + * Permissions can be: + * + * * `admin` + * * `write` + * * `read` + * + * Results may be further [filtered or sorted](/cloud/bitbucket/rest/intro/#filtering) by + * repository or permission by adding the following query string + * parameters: + * + * * `q=repository.name="bits"` or `q=permission>"read"` + * * `sort=repository.name` + * + * Note that the query parameter values need to be URL escaped so that `=` + * would become `%3D`. + */ + readonly get: { + readonly parameters: { + readonly query?: { + /** + * @description Query string to narrow down the response as per + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). + */ + readonly q?: string + /** + * @description Name of a response property sort the result by as per + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). + */ readonly sort?: string } - readonly header?: never - readonly path?: never + readonly header?: never + readonly path: { + /** + * @description This can either be the workspace ID (slug) or the workspace UUID + * surrounded by curly-braces, for example: `{workspace UUID}`. + */ + readonly workspace: string + } readonly cookie?: never } readonly requestBody?: never readonly responses: { - /** @description All of the workspace memberships for the authenticated user. */ + /** @description The list of repository permissions for the authenticated user in the specified workspace. */ readonly 200: { headers: Readonly> content: { - readonly "application/json": components["schemas"]["paginated_workspace_memberships"] + readonly "application/json": components["schemas"]["paginated_repository_permissions"] + } + } + /** @description The request was invalid. */ + readonly 400: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] } } /** @description The request wasn't authenticated. */ @@ -15572,6 +16862,13 @@ export interface paths { readonly "application/json": components["schemas"]["error"] } } + /** @description The requesting user does not have access to the workspace. */ + readonly 403: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } } } readonly put?: never @@ -15587,9 +16884,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -15609,9 +16907,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -15647,9 +16946,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -15665,9 +16965,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -15713,9 +17014,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -15766,12 +17068,12 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description A GPG key fingerprint. - * */ + /** @description A GPG key fingerprint. */ readonly fingerprint: string - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -15787,12 +17089,12 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description A GPG key fingerprint. - * */ + /** @description A GPG key fingerprint. */ readonly fingerprint: string - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -15831,12 +17133,12 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description A GPG key fingerprint. - * */ + /** @description A GPG key fingerprint. */ readonly fingerprint: string - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -15973,7 +17275,10 @@ export interface paths { } /** * Search for code in a user's repositories - * @description Search for code in the repositories of the specified user. + * @deprecated + * @description This API will be deprecated on November 1, 2026. + * + * Search for code in the repositories of the specified user. * * Note that searches can match in the file's text (`content_matches`), * the path (`path_matches`), or both. @@ -15987,7 +17292,6 @@ export interface paths { * the repository of matched files, use the query parameter * `search_query=foo&fields=%2Bvalues.file.commit.repository` * (the `%2B` is a URL-encoded `+`). - * */ readonly get: operations["searchAccount"] readonly put?: never @@ -16003,9 +17307,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -16019,9 +17324,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -16063,16 +17369,19 @@ export interface paths { readonly post: { readonly parameters: { readonly query?: { - /** @description The date or date-time of when the key will expire, + /** + * @description The date or date-time of when the key will expire, * in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format. - * Example: `YYYY-MM-DDTHH:mm:ss.sssZ` */ + * Example: `YYYY-MM-DDTHH:mm:ss.sssZ` + */ readonly expires_on?: string } readonly header?: never readonly path: { - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -16125,9 +17434,10 @@ export interface paths { readonly path: { /** @description The SSH key's UUID value. */ readonly key_id: string - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -16143,9 +17453,10 @@ export interface paths { readonly path: { /** @description The SSH key's UUID value. */ readonly key_id: string - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -16192,9 +17503,10 @@ export interface paths { readonly path: { /** @description The SSH key's UUID value. */ readonly key_id: string - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -16246,9 +17558,10 @@ export interface paths { readonly path: { /** @description The SSH key's UUID value. */ readonly key_id: string - /** @description This can either be an Atlassian Account ID OR the UUID of the account, + /** + * @description This can either be an Atlassian Account ID OR the UUID of the account, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string } readonly cookie?: never @@ -16295,7 +17608,11 @@ export interface paths { } /** * List workspaces for user - * @description Returns a list of workspaces accessible by the authenticated user. + * @deprecated + * @description **This endpoint is deprecated. Please use the + * [supported alternative](/cloud/bitbucket/rest/api-group-workspaces/#api-user-workspaces-get).** + * + * Returns a list of workspaces accessible by the authenticated user. * * Results may be further [filtered or sorted](/cloud/bitbucket/rest/intro/#filtering) by * workspace or permission by adding the following query string parameters: @@ -16312,25 +17629,26 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description - * Query string to narrow down the response. See - * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for details. */ + /** + * @description Query string to narrow down the response. See + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for details. + */ readonly q?: string - /** @description - * Filters the workspaces based on the authenticated user's role on each workspace. + /** + * @description Filters the workspaces based on the authenticated user's role on each workspace. * * * **member**: returns a list of all the workspaces which the caller is a member of * at least one workspace group or repository * * **collaborator**: returns a list of workspaces which the caller has write access * to at least one repository in the workspace * * **owner**: returns a list of workspaces which the caller has administrator access - * */ + */ readonly role?: "collaborator" | "member" | "owner" - /** @description - * Name of a response property to sort results. See + /** + * @description Name of a response property to sort results. See * [filtering and sorting](/cloud/bitbucket/rest/intro/#sorting-query-results) * for details. - * */ + */ readonly sort?: string } readonly header?: never @@ -16368,9 +17686,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16384,9 +17703,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16422,9 +17742,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16438,9 +17759,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16516,9 +17838,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16565,9 +17888,10 @@ export interface paths { readonly path: { /** @description Installed webhook's ID */ readonly uid: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16584,9 +17908,10 @@ export interface paths { readonly path: { /** @description Installed webhook's ID */ readonly uid: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16637,9 +17962,10 @@ export interface paths { readonly path: { /** @description Installed webhook's ID */ readonly uid: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16681,9 +18007,10 @@ export interface paths { readonly path: { /** @description Installed webhook's ID */ readonly uid: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16721,9 +18048,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16758,9 +18086,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16805,9 +18134,10 @@ export interface paths { readonly path: { /** @description Member's UUID or Atlassian ID. */ readonly member: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16825,9 +18155,10 @@ export interface paths { readonly path: { /** @description Member's UUID or Atlassian ID. */ readonly member: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16870,9 +18201,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16901,16 +18233,18 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description - * Query string to narrow down the response as per - * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ + /** + * @description Query string to narrow down the response as per + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). + */ readonly q?: string } readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16946,9 +18280,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -16983,21 +18318,23 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description - * Query string to narrow down the response as per - * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ + /** + * @description Query string to narrow down the response as per + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). + */ readonly q?: string - /** @description - * Name of a response property sort the result by as per + /** + * @description Name of a response property sort the result by as per * [filtering and sorting](/cloud/bitbucket/rest/intro/#sorting-query-results). - * */ + */ readonly sort?: string } readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17033,13 +18370,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17073,25 +18412,28 @@ export interface paths { readonly get: { readonly parameters: { readonly query?: { - /** @description - * Query string to narrow down the response as per - * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). */ + /** + * @description Query string to narrow down the response as per + * [filtering and sorting](/cloud/bitbucket/rest/intro/#filtering). + */ readonly q?: string - /** @description - * Name of a response property sort the result by as per + /** + * @description Name of a response property sort the result by as per * [filtering and sorting](/cloud/bitbucket/rest/intro/#sorting-query-results). - * */ + */ readonly sort?: string } readonly header?: never readonly path: { - /** @description This can either be the repository slug or the UUID of the repository, + /** + * @description This can either be the repository slug or the UUID of the repository, * surrounded by curly-braces, for example: `{repository UUID}`. - * */ + */ readonly repo_slug: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17162,6 +18504,58 @@ export interface paths { readonly patch?: never readonly trace?: never } + readonly "/workspaces/{workspace}/pipelines-config/runners": { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path?: never + readonly cookie?: never + } + /** + * Get workspace runners + * @description Retrieve workspace runners. + */ + readonly get: operations["getWorkspaceRunners"] + readonly put?: never + /** + * Create workspace runner + * @description Create workspace runner. + */ + readonly post: operations["createWorkspaceRunner"] + readonly delete?: never + readonly options?: never + readonly head?: never + readonly patch?: never + readonly trace?: never + } + readonly "/workspaces/{workspace}/pipelines-config/runners/{runner_uuid}": { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path?: never + readonly cookie?: never + } + /** + * Get workspace runner + * @description Get workspace runner by uuid. + */ + readonly get: operations["getWorkspaceRunner"] + /** + * Update workspace runner + * @description Update workspace runner. + */ + readonly put: operations["updateWorkspaceRunner"] + readonly post?: never + /** + * Delete workspace runner + * @description Delete workspace runner by uuid. + */ + readonly delete: operations["deleteWorkspaceRunner"] + readonly options?: never + readonly head?: never + readonly patch?: never + readonly trace?: never + } readonly "/workspaces/{workspace}/pipelines-config/variables": { readonly parameters: { readonly query?: never @@ -17219,9 +18613,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17235,9 +18630,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17323,9 +18719,10 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17370,13 +18767,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17390,13 +18789,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17463,13 +18864,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17479,8 +18882,10 @@ export interface paths { /** @description The existing project is has been updated. */ readonly 200: { headers: { - /** @description The location of the project. This header is only provided - * when the project key is updated. */ + /** + * @description The location of the project. This header is only provided + * when the project key is updated. + */ readonly Location?: string readonly [name: string]: unknown } @@ -17534,13 +18939,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17578,13 +18985,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17613,13 +19022,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17669,13 +19080,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17703,13 +19116,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17792,13 +19207,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17854,13 +19271,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17875,13 +19294,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17924,17 +19345,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This can either be the actual `key` assigned + /** + * @description The project in question. This can either be the actual `key` assigned * to the project or the `UUID` (surrounded by curly-braces (`{}`)). - * */ + */ readonly project_key: string - /** @description This can either be the username or the UUID of the default reviewer, + /** + * @description This can either be the username or the UUID of the default reviewer, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -17948,17 +19372,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This can either be the actual `key` assigned + /** + * @description The project in question. This can either be the actual `key` assigned * to the project or the `UUID` (surrounded by curly-braces (`{}`)). - * */ + */ readonly project_key: string - /** @description This can either be the username or the UUID of the default reviewer, + /** + * @description This can either be the username or the UUID of the default reviewer, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18005,17 +19432,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This can either be the actual `key` assigned + /** + * @description The project in question. This can either be the actual `key` assigned * to the project or the `UUID` (surrounded by curly-braces (`{}`)). - * */ + */ readonly project_key: string - /** @description This can either be the username or the UUID of the default reviewer, + /** + * @description This can either be the username or the UUID of the default reviewer, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18069,17 +19499,20 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This can either be the actual `key` assigned + /** + * @description The project in question. This can either be the actual `key` assigned * to the project or the `UUID` (surrounded by curly-braces (`{}`)). - * */ + */ readonly project_key: string - /** @description This can either be the username or the UUID of the default reviewer, + /** + * @description This can either be the username or the UUID of the default reviewer, * surrounded by curly-braces, for example: `{account UUID}`. - * */ + */ readonly selected_user: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18124,13 +19557,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18144,13 +19579,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18202,13 +19639,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18258,13 +19697,15 @@ export interface paths { readonly path: { /** @description The key ID matching the project deploy key. */ readonly key_id: string - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18280,13 +19721,15 @@ export interface paths { readonly path: { /** @description The key ID matching the project deploy key. */ readonly key_id: string - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18329,13 +19772,15 @@ export interface paths { readonly path: { /** @description The key ID matching the project deploy key. */ readonly key_id: string - /** @description The project in question. This is the actual `key` assigned + /** + * @description The project in question. This is the actual `key` assigned * to the project. - * */ + */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18373,12 +19818,12 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual key assigned to the project. - * */ + /** @description The project in question. This is the actual key assigned to the project. */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18393,12 +19838,12 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual key assigned to the project. - * */ + /** @description The project in question. This is the actual key assigned to the project. */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18450,12 +19895,12 @@ export interface paths { readonly path: { /** @description Slug of the requested group. */ readonly group_slug: string - /** @description The project in question. This is the actual key assigned to the project. - * */ + /** @description The project in question. This is the actual key assigned to the project. */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18481,12 +19926,12 @@ export interface paths { readonly path: { /** @description Slug of the requested group. */ readonly group_slug: string - /** @description The project in question. This is the actual key assigned to the project. - * */ + /** @description The project in question. This is the actual key assigned to the project. */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18546,12 +19991,12 @@ export interface paths { readonly path: { /** @description Slug of the requested group. */ readonly group_slug: string - /** @description The project in question. This is the actual key assigned to the project. - * */ + /** @description The project in question. This is the actual key assigned to the project. */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18616,12 +20061,12 @@ export interface paths { readonly path: { /** @description Slug of the requested group. */ readonly group_slug: string - /** @description The project in question. This is the actual key assigned to the project. - * */ + /** @description The project in question. This is the actual key assigned to the project. */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18666,12 +20111,12 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual key assigned to the project. - * */ + /** @description The project in question. This is the actual key assigned to the project. */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18686,12 +20131,12 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual key assigned to the project. - * */ + /** @description The project in question. This is the actual key assigned to the project. */ readonly project_key: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18741,16 +20186,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual key assigned to the project. - * */ + /** @description The project in question. This is the actual key assigned to the project. */ readonly project_key: string - /** @description This can either be the username, the user's UUID surrounded by curly-braces, + /** + * @description This can either be the username, the user's UUID surrounded by curly-braces, * for example: {account UUID}, or the user's Atlassian ID. - * */ + */ readonly selected_user_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18774,16 +20220,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual key assigned to the project. - * */ + /** @description The project in question. This is the actual key assigned to the project. */ readonly project_key: string - /** @description This can either be the username, the user's UUID surrounded by curly-braces, + /** + * @description This can either be the username, the user's UUID surrounded by curly-braces, * for example: {account UUID}, or the user's Atlassian ID. - * */ + */ readonly selected_user_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18842,16 +20289,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual key assigned to the project. - * */ + /** @description The project in question. This is the actual key assigned to the project. */ readonly project_key: string - /** @description This can either be the username, the user's UUID surrounded by curly-braces, + /** + * @description This can either be the username, the user's UUID surrounded by curly-braces, * for example: {account UUID}, or the user's Atlassian ID. - * */ + */ readonly selected_user_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18917,16 +20365,17 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description The project in question. This is the actual key assigned to the project. - * */ + /** @description The project in question. This is the actual key assigned to the project. */ readonly project_key: string - /** @description This can either be the username, the user's UUID surrounded by curly-braces, + /** + * @description This can either be the username, the user's UUID surrounded by curly-braces, * for example: {account UUID}, or the user's Atlassian ID. - * */ + */ readonly selected_user_id: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -18971,13 +20420,15 @@ export interface paths { readonly query?: never readonly header?: never readonly path: { - /** @description This can either be the username of the pull request author, the author's UUID + /** + * @description This can either be the username of the pull request author, the author's UUID * surrounded by curly-braces, for example: `{account UUID}`, or the author's Atlassian ID. - * */ + */ readonly selected_user: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -19002,13 +20453,15 @@ export interface paths { } readonly header?: never readonly path: { - /** @description This can either be the username of the pull request author, the author's UUID + /** + * @description This can either be the username of the pull request author, the author's UUID * surrounded by curly-braces, for example: `{account UUID}`, or the author's Atlassian ID. - * */ + */ readonly selected_user: string - /** @description This can either be the workspace ID (slug) or the workspace UUID + /** + * @description This can either be the workspace ID (slug) or the workspace UUID * surrounded by curly-braces, for example: `{workspace UUID}`. - * */ + */ readonly workspace: string } readonly cookie?: never @@ -19048,7 +20501,10 @@ export interface paths { } /** * Search for code in a workspace - * @description Search for code in the repositories of the specified workspace. + * @deprecated + * @description This API will be deprecated on November 1, 2026. + * + * Search for code in the repositories of the specified workspace. * * Note that searches can match in the file's text (`content_matches`), * the path (`path_matches`), or both. @@ -19064,7 +20520,6 @@ export interface paths { * (the `%2B` is a URL-encoded `+`). * * Try `fields=%2Bvalues.*.*.*.*` to get an idea what's possible. - * */ readonly get: operations["searchWorkspace"] readonly put?: never @@ -19075,6 +20530,75 @@ export interface paths { readonly patch?: never readonly trace?: never } + readonly "/workspaces/{workspace}/settings/gpg/public-key": { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** + * @description This can either be the workspace ID (slug) or the workspace UUID + * surrounded by curly-braces, for example: `{workspace UUID}`. + */ + readonly workspace: string + } + readonly cookie?: never + } + /** + * Get the workspace system GPG public key(s) + * @description Returns the system public GPG key(s). In most cases a single key is returned. + * During a key rotation period, two keys may be returned. + */ + readonly get: { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** + * @description This can either be the workspace ID (slug) or the workspace UUID + * surrounded by curly-braces, for example: `{workspace UUID}`. + */ + readonly workspace: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description The system public GPG key(s). */ + readonly 200: { + headers: Readonly> + content?: never + } + /** @description The request wasn't authenticated. */ + readonly 401: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + /** @description The requesting user is not a workspace member. */ + readonly 403: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + /** @description The workspace does not exist. */ + readonly 404: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + } + } + readonly put?: never + readonly post?: never + readonly delete?: never + readonly options?: never + readonly head?: never + readonly patch?: never + readonly trace?: never + } } export type webhooks = Record export interface components { @@ -19113,7 +20637,6 @@ export interface components { * The `_attributes` field at its top level can be used to control who is allowed to read and update the property. * The keys of the JSON object must match an allowed pattern. For details, * see [Application properties](/cloud/bitbucket/application-properties/). - * */ readonly application_property: Readonly> & { readonly _attributes?: readonly ("public" | "read_only")[] @@ -19305,7 +20828,8 @@ export interface components { /** @description Apply the restriction to branches that match this pattern. Active when `branch_match_kind` is `glob`. Will be empty when `branch_match_kind` is `branching_model`. */ readonly pattern: string readonly users?: readonly components["schemas"]["account"][] - /** @description Value with kind-specific semantics: + /** + * @description Value with kind-specific semantics: * * * `require_approvals_to_merge` uses it to require a minimum number of approvals on a PR. * @@ -19313,7 +20837,8 @@ export interface components { * * * `require_passing_builds_to_merge` uses it to require a minimum number of passing builds. * - * * `require_commits_behind` uses it to require the current branch is up to a maximum number of commits behind it destination. */ + * * `require_commits_behind` uses it to require the current branch is up to a maximum number of commits behind it destination. + */ readonly value?: number })) readonly comment: { @@ -19334,13 +20859,18 @@ export interface components { /** Format: date-time */ readonly created_on?: string readonly deleted?: boolean + /** Format: int64 */ readonly id?: number readonly inline?: { - /** @description The comment's anchor line in the old version of the file. */ + /** @description The comment's anchor line in the old version of the file. If the comment is a multi-line comment, this is the ending line number in the old version of the file. */ readonly from?: number /** @description The path of the file this comment is anchored to. */ readonly path: string - /** @description The comment's anchor line in the new version of the file. If the 'from' line is also provided, this value will be removed. */ + /** @description The starting line number in the old version of the file, if the comment is a multi-line comment. This is null otherwise. */ + readonly start_from?: number + /** @description The starting line number in the new version of the file, if the comment is a multi-line comment. This is null otherwise. */ + readonly start_to?: number + /** @description The comment's anchor line in the new version of the file. If the comment is a multi-line comment, this is the ending line number in the new version of the file. */ readonly to?: number } readonly links?: { @@ -19430,10 +20960,12 @@ export interface components { readonly created_on?: string /** @description A description of the build (e.g. "Unit tests in Bamboo") */ readonly description?: string - /** @description An identifier for the status that's unique to + /** + * @description An identifier for the status that's unique to * its type (current "build" is the only supported type) and the vendor, - * e.g. BB-DEPLOY */ - readonly key?: string + * e.g. BB-DEPLOY + */ + readonly key: string readonly links?: { /** * Link @@ -19456,26 +20988,25 @@ export interface components { } /** @description An identifier for the build itself, e.g. BB-DEPLOY-1 */ readonly name?: string - /** @description - * The name of the ref that pointed to this commit at the time the status + /** + * @description The name of the ref that pointed to this commit at the time the status * object was created. Note that this the ref may since have moved off of * the commit. This optional field can be useful for build systems whose * build triggers and configuration are branch-dependent (e.g. a Pipeline * build). * It is legitimate for this field to not be set, or even apply (e.g. a - * static linting job). */ + * static linting job). + */ readonly refname?: string /** * @description Provides some indication of the status of this commit * @enum {string} */ - readonly state?: "FAILED" | "INPROGRESS" | "STOPPED" | "SUCCESSFUL" + readonly state: "FAILED" | "INPROGRESS" | "STOPPED" | "SUCCESSFUL" /** Format: date-time */ readonly updated_on?: string /** @description A URL linking back to the vendor or build system, for providing more information about whatever process produced this status. Accepts context variables `repository` and `commit` that Bitbucket will evaluate at runtime whenever at runtime. For example, one could use https://foo.com/builds/{repository.full_name} which Bitbucket will turn into https://foo.com/builds/foo/bar at render time. */ readonly url?: string - /** @description The commit status' id. */ - readonly uuid?: string })) readonly committer: { readonly type: "committer" @@ -19768,14 +21299,40 @@ export interface components { readonly send_email?: boolean readonly type: string } + /** + * File Conflict + * @description A file conflict object. + */ + readonly file_conflict: Readonly> & { + readonly message?: string + readonly path?: string + /** @enum {string} */ + readonly scenario?: + | "add_rename" + | "binary" + | "content" + | "delete_modify" + | "delete_rename" + | "directory_file" + | "file_directory" + | "flags" + | "mode" + | "modify_delete" + | "rename_add" + | "rename_delete" + | "rename" + | "subrepo" + | "symlink" + | "type" + | "unknown" + readonly type: string + } readonly GPG_account_key: { readonly type: "GPG_account_key" } & (Omit & (Readonly> & { /** Format: date-time */ readonly added_on?: string - /** @description The comment parsed from the GPG key (if present) */ - readonly comment?: string /** Format: date-time */ readonly created_on?: string /** Format: date-time */ @@ -19810,9 +21367,10 @@ export interface components { readonly type: "group" } & (Omit & (Readonly> & { - /** @description The concatenation of the workspace's slug and the group's slug, + /** + * @description The concatenation of the workspace's slug and the group's slug, * separated with a colon (e.g. `acme:developers`) - * */ + */ readonly full_slug?: string readonly links?: { /** @@ -19836,8 +21394,10 @@ export interface components { } readonly name?: string readonly owner?: components["schemas"]["account"] - /** @description The "sluggified" version of the group's name. This contains only ASCII - * characters and can therefore be slightly different than the name */ + /** + * @description The "sluggified" version of the group's name. This contains only ASCII + * characters and can therefore be slightly different than the name + */ readonly slug?: string readonly workspace?: components["schemas"]["workspace"] })) @@ -19858,6 +21418,7 @@ export interface components { | "issue:comment_created" | "issue:created" | "issue:updated" + | "pipeline:span_created" | "project:updated" | "pullrequest:approved" | "pullrequest:changes_request_created" @@ -20474,6 +22035,29 @@ export interface components { /** @description The values of the current page. */ readonly values?: readonly components["schemas"]["deployment_environment"][] } + /** + * Paginated File Conflicts + * @description A paginated list of file conflicts. + */ + readonly paginated_file_conflicts: { + /** + * Format: uri + * @description Link to the next page if it exists. The last page of a collection does not have this value. Use this link to navigate the result set and refrain from constructing your own URLs. + */ + readonly next?: string + /** @description Page number of the current results. This is an optional element that is not provided in all responses. */ + readonly page?: number + /** @description Current number of objects on the existing page. The default value is 10 with 100 being the maximum allowed value. Individual APIs may enforce different values. */ + readonly pagelen?: number + /** + * Format: uri + * @description Link to previous page if it exists. A collections first page does not have this value. This is an optional element that is not provided in all responses. Some result sets strictly support forward navigation and never provide previous links. Clients must anticipate that backwards navigation is not always available. Use this link to navigate the result set and refrain from constructing your own URLs. + */ + readonly previous?: string + /** @description Total number of objects in the response. This is an optional element that is not provided in all responses, as it can be expensive to compute. */ + readonly size?: number + readonly values?: readonly components["schemas"]["file_conflict"][] + } /** * Paginated Files * @description A paginated list of commit_file objects. @@ -20706,6 +22290,24 @@ export interface components { /** @description The values of the current page. */ readonly values?: readonly components["schemas"]["pipeline_known_host"][] } + /** + * Paginated Runners + * @description A paged list of runners. + */ + readonly paginated_pipeline_runners: { + /** @description Link to the next page if it exists. The last page of a collection does not have this value. Use this link to navigate the result set and refrain from constructing your own URLs. */ + readonly next?: string + /** @description Page number of the current results. This is an optional element that is not provided in all responses. */ + readonly page?: number + /** @description Current number of objects on the existing page. The default value is 10 with 100 being the maximum allowed value. Individual APIs may enforce different values. */ + readonly pagelen?: number + /** @description Link to previous page if it exists. A collections first page does not have this value. This is an optional element that is not provided in all responses. Some result sets strictly support forward navigation and never provide previous links. Clients must anticipate that backwards navigation is not always available. Use this link to navigate the result set and refrain from constructing your own URLs. */ + readonly previous?: string + /** @description Total number of objects in the response. This is an optional element that is not provided in all responses, as it can be expensive to compute. */ + readonly size?: number + /** @description The values of the current page. */ + readonly values?: readonly components["schemas"]["pipeline_runner"][] + } /** * Paginated Pipeline Schedule Executions * @description A paged list of the executions of a schedule. @@ -21310,6 +22912,29 @@ export interface components { readonly size?: number readonly values?: readonly components["schemas"]["webhook_subscription"][] } + /** + * Paginated Workspace Permissions + * @description A paginated list of workspace permissions. + */ + readonly paginated_workspace_access: { + /** + * Format: uri + * @description Link to the next page if it exists. The last page of a collection does not have this value. Use this link to navigate the result set and refrain from constructing your own URLs. + */ + readonly next?: string + /** @description Page number of the current results. This is an optional element that is not provided in all responses. */ + readonly page?: number + /** @description Current number of objects on the existing page. The default value is 10 with 100 being the maximum allowed value. Individual APIs may enforce different values. */ + readonly pagelen?: number + /** + * Format: uri + * @description Link to previous page if it exists. A collections first page does not have this value. This is an optional element that is not provided in all responses. Some result sets strictly support forward navigation and never provide previous links. Clients must anticipate that backwards navigation is not always available. Use this link to navigate the result set and refrain from constructing your own URLs. + */ + readonly previous?: string + /** @description Total number of objects in the response. This is an optional element that is not provided in all responses, as it can be expensive to compute. */ + readonly size?: number + readonly values?: readonly components["schemas"]["workspace_access"][] + } /** * Paginated Workspace Memberships * @description A paginated list of workspace memberships. @@ -21519,6 +23144,78 @@ export interface components { readonly ref_type?: "bookmark" | "branch" | "named_branch" | "tag" readonly selector?: components["schemas"]["pipeline_selector"] })) + readonly pipeline_runner: { + readonly type: "pipeline_runner" + } & (Omit & + (Readonly> & { + /** + * Format: date-time + * @description The timestamp when the runner was created. + */ + readonly created_on?: string + /** @description Labels assigned to the runner for identification and routing. */ + readonly labels?: readonly string[] + /** @description The name of the runner. */ + readonly name?: string + readonly oauth_client?: components["schemas"]["pipeline_runner_oauth_client"] + readonly state?: components["schemas"]["pipeline_runner_state"] + /** + * Format: date-time + * @description The timestamp when the runner was last updated. + */ + readonly updated_on?: string + /** @description The UUID identifying the runner. */ + readonly uuid?: string + })) + readonly pipeline_runner_oauth_client: { + readonly type: "pipeline_runner_oauth_client" + } & (Omit & + (Readonly> & { + /** @description The intended audience for the OAuth token. */ + readonly audience?: string + /** @description The OAuth client ID. */ + readonly id?: string + /** @description The OAuth client secret. This is an optional element that is only provided once. */ + readonly secret?: string + /** + * Format: uri + * @description The OAuth token endpoint URL. + */ + readonly token_endpoint?: string + })) + readonly pipeline_runner_state: { + readonly type: "pipeline_runner_state" + } & (Omit & + (Readonly> & { + /** @description Whether the runner is cordoned (prevented from accepting new steps). */ + readonly cordoned?: boolean + /** + * @description The current status of the runner. + * @enum {string} + */ + readonly status?: + | "DISABLED" + | "ENABLED" + | "OFFLINE" + | "ONLINE" + | "UNHEALTHY" + | "UNREGISTERED" + /** + * Format: date-time + * @description The timestamp when the runner state was last updated. + */ + readonly updated_on?: string + readonly version?: components["schemas"]["pipeline_runner_version"] + })) + readonly pipeline_runner_version: { + readonly type: "pipeline_runner_version" + } & (Omit & + (Readonly> & { + /** @description The current recommended version of the runner. */ + readonly current?: string + /** @description The currently installed version of the runner. */ + readonly version?: string + })) readonly pipeline_schedule: { readonly type: "pipeline_schedule" } & (Omit & @@ -21975,14 +23672,16 @@ export interface components { /** Format: date-time */ readonly created_on?: string readonly description?: string - /** @description - * Indicates whether the project contains publicly visible repositories. - * Note that private projects cannot contain public repositories. */ + /** + * @description Indicates whether the project contains publicly visible repositories. + * Note that private projects cannot contain public repositories. + */ readonly has_publicly_visible_repos?: boolean - /** @description - * Indicates whether the project is publicly accessible, or whether it is + /** + * @description Indicates whether the project is publicly accessible, or whether it is * private to the team and consequently only visible to team members. - * Note that private projects cannot contain public repositories. */ + * Note that private projects cannot contain public repositories. + */ readonly is_private?: boolean /** @description The project's key. */ readonly key?: string @@ -22229,7 +23928,10 @@ export interface components { readonly merge_commit?: { readonly hash?: string } - /** @description The list of users that are collaborating on this pull request. + /** @description A boolean flag indicating whether the pull request passes all merge checks */ + readonly mergeable?: boolean + /** + * @description The list of users that are collaborating on this pull request. * Collaborators are user that: * * * are added to the pull request as a reviewer (part of the reviewers @@ -22241,7 +23943,7 @@ export interface components { * whether they have approved the pull request. For performance reasons, * the API only returns this list when an API requests a pull request by * id. - * */ + */ readonly participants?: readonly components["schemas"]["participant"][] /** @description A boolean flag indicating whether the pull request is queued */ readonly queued?: boolean @@ -22293,7 +23995,13 @@ export interface components { * @description The pull request's current status. * @enum {string} */ - readonly state?: "DECLINED" | "MERGED" | "OPEN" | "SUPERSEDED" + readonly state?: + | "DECLINED" + | "DRAFT" + | "MERGED" + | "OPEN" + | "QUEUED" + | "SUPERSEDED" readonly summary?: { /** @description The user's content rendered as HTML. */ readonly html?: string @@ -22490,7 +24198,7 @@ export interface components { * @description A URL to the report logo. If none is provided, the default insights logo will be used. */ readonly logo_url?: string - /** @description If enabled, a remote link is created in Jira for the issue associated with the commit the report belongs to. */ + /** @description If enabled, a remote link is created in Jira for the work item associated with the commit the report belongs to. */ readonly remote_link_enabled?: boolean /** * @description The type of the report. @@ -22591,30 +24299,28 @@ export interface components { readonly created_on?: string readonly description?: string /** - * @description - * Controls the rules for forking this repository. + * @description Controls the rules for forking this repository. * * * **allow_forks**: unrestricted forking * * **no_public_forks**: restrict forking to private forks (forks cannot * be made public later) * * **no_forks**: deny all forking - * * @enum {string} */ readonly fork_policy?: "allow_forks" | "no_forks" | "no_public_forks" /** @description The concatenation of the repository owner's username and the slugified name, e.g. "evzijst/interruptingcow". This is the same string used in Bitbucket URLs. */ readonly full_name?: string - /** @description - * The issue tracker for this repository is enabled. Issue Tracker + /** + * @description The issue tracker for this repository is enabled. Issue Tracker * features are not supported for repositories in workspaces * administered through admin.atlassian.com. - * */ + */ readonly has_issues?: boolean - /** @description - * The wiki for this repository is enabled. Wiki + /** + * @description The wiki for this repository is enabled. Wiki * features are not supported for repositories in workspaces * administered through admin.atlassian.com. - * */ + */ readonly has_wiki?: boolean readonly is_private?: boolean readonly language?: string @@ -22992,6 +24698,7 @@ export interface components { /** Format: date-time */ readonly created_on: string readonly creator: components["schemas"]["account"] + /** Format: int64 */ readonly id?: number readonly pending?: boolean readonly resolved_by?: components["schemas"]["account"] @@ -23081,6 +24788,7 @@ export interface components { | "issue:comment_created" | "issue:created" | "issue:updated" + | "pipeline:span_created" | "project:updated" | "pullrequest:approved" | "pullrequest:changes_request_created" @@ -23136,14 +24844,15 @@ export interface components { * * * **allow_forks**: unrestricted forking * * **internal_only**: prevents forking of private repositories outside the workspace or to public repositories - * * @enum {string} */ readonly forking_mode?: "allow_forks" | "internal_only" /** @description Indicates whether the workspace enforces private content, or whether it allows public content. */ readonly is_privacy_enforced?: boolean - /** @description Indicates whether the workspace is publicly accessible, or whether it is - * private to the members and consequently only visible to members. */ + /** + * @description Indicates whether the workspace is publicly accessible, or whether it is + * private to the members and consequently only visible to members. + */ readonly is_private?: boolean readonly links?: { /** @@ -23223,8 +24932,45 @@ export interface components { readonly name?: string /** @description The short label that identifies this workspace. */ readonly slug?: string - /** Format: date-time */ - readonly updated_on?: string + /** Format: date-time */ + readonly updated_on?: string + /** @description The workspace's immutable id. */ + readonly uuid?: string + })) + readonly workspace_access: { + readonly type: "workspace_access" + } & (Omit & + (Readonly> & { + /** @description The permission level the user has for the workspace. True if the user is an administrator, otherwise False. */ + readonly administrator?: boolean + readonly workspace?: components["schemas"]["workspace_base"] + })) + readonly workspace_base: { + readonly type: "workspace_base" + } & (Omit & + (Readonly> & { + readonly links?: { + /** + * Link + * @description A link to a resource related to this object. + */ + readonly avatar?: { + /** Format: uri */ + readonly href?: string + readonly name?: string + } + /** + * Link + * @description A link to a resource related to this object. + */ + readonly self?: { + /** Format: uri */ + readonly href?: string + readonly name?: string + } + } + /** @description The short label that identifies this workspace. */ + readonly slug?: string /** @description The workspace's immutable id. */ readonly uuid?: string })) @@ -23350,6 +25096,7 @@ export type SchemaEffectiveRepoBranchingModel = components["schemas"]["effective_repo_branching_model"] export type SchemaError = components["schemas"]["error"] export type SchemaExportOptions = components["schemas"]["export_options"] +export type SchemaFileConflict = components["schemas"]["file_conflict"] export type SchemaGpgAccountKey = components["schemas"]["GPG_account_key"] export type SchemaGroup = components["schemas"]["group"] export type SchemaHookEvent = components["schemas"]["hook_event"] @@ -23389,6 +25136,8 @@ export type SchemaPaginatedDiffstats = components["schemas"]["paginated_diffstats"] export type SchemaPaginatedEnvironments = components["schemas"]["paginated_environments"] +export type SchemaPaginatedFileConflicts = + components["schemas"]["paginated_file_conflicts"] export type SchemaPaginatedFiles = components["schemas"]["paginated_files"] export type SchemaPaginatedGpgUserKeys = components["schemas"]["paginated_gpg_user_keys"] @@ -23407,6 +25156,8 @@ export type SchemaPaginatedPipelineCaches = components["schemas"]["paginated_pipeline_caches"] export type SchemaPaginatedPipelineKnownHosts = components["schemas"]["paginated_pipeline_known_hosts"] +export type SchemaPaginatedPipelineRunners = + components["schemas"]["paginated_pipeline_runners"] export type SchemaPaginatedPipelineScheduleExecutions = components["schemas"]["paginated_pipeline_schedule_executions"] export type SchemaPaginatedPipelineSchedules = @@ -23455,6 +25206,8 @@ export type SchemaPaginatedVersions = components["schemas"]["paginated_versions"] export type SchemaPaginatedWebhookSubscriptions = components["schemas"]["paginated_webhook_subscriptions"] +export type SchemaPaginatedWorkspaceAccess = + components["schemas"]["paginated_workspace_access"] export type SchemaPaginatedWorkspaceMemberships = components["schemas"]["paginated_workspace_memberships"] export type SchemaPaginatedWorkspaces = @@ -23477,6 +25230,13 @@ export type SchemaPipelineKnownHost = components["schemas"]["pipeline_known_host"] export type SchemaPipelineRefTarget = components["schemas"]["pipeline_ref_target"] +export type SchemaPipelineRunner = components["schemas"]["pipeline_runner"] +export type SchemaPipelineRunnerOauthClient = + components["schemas"]["pipeline_runner_oauth_client"] +export type SchemaPipelineRunnerState = + components["schemas"]["pipeline_runner_state"] +export type SchemaPipelineRunnerVersion = + components["schemas"]["pipeline_runner_version"] export type SchemaPipelineSchedule = components["schemas"]["pipeline_schedule"] export type SchemaPipelineScheduleExecution = components["schemas"]["pipeline_schedule_execution"] @@ -23616,6 +25376,8 @@ export type SchemaVersion = components["schemas"]["version"] export type SchemaWebhookSubscription = components["schemas"]["webhook_subscription"] export type SchemaWorkspace = components["schemas"]["workspace"] +export type SchemaWorkspaceAccess = components["schemas"]["workspace_access"] +export type SchemaWorkspaceBase = components["schemas"]["workspace_base"] export type SchemaWorkspaceMembership = components["schemas"]["workspace_membership"] export type RequestBodyApplicationProperty = @@ -25375,6 +27137,160 @@ export interface operations { } } } + readonly getRepositoryRunners: { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description The repository. */ + readonly repo_slug: string + /** @description This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`. */ + readonly workspace: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description The repository runners. */ + readonly 200: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["paginated_pipeline_runners"] + } + } + } + } + readonly createRepositoryRunner: { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description The repository. */ + readonly repo_slug: string + /** @description This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`. */ + readonly workspace: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description The repository runner. */ + readonly 200: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["pipeline_runner"] + } + } + /** @description The request body contained invalid properties or runner limit exceeded. */ + readonly 400: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + /** @description The repository runner with the provided UUID already exists. */ + readonly 409: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + } + } + readonly getRepositoryRunner: { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description The repository. */ + readonly repo_slug: string + /** @description The runner uuid. */ + readonly runner_uuid: string + /** @description This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`. */ + readonly workspace: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description The repository runner. */ + readonly 200: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["pipeline_runner"] + } + } + /** @description The repository runner was not found. */ + readonly 404: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + } + } + readonly updateRepositoryRunner: { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description The repository. */ + readonly repo_slug: string + /** @description The runner uuid. */ + readonly runner_uuid: string + /** @description This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`. */ + readonly workspace: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description The repository runner. */ + readonly 200: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["pipeline_runner"] + } + } + /** @description The repository runner was not found. */ + readonly 404: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + } + } + readonly deleteRepositoryRunner: { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description The repository. */ + readonly repo_slug: string + /** @description The runner uuid. */ + readonly runner_uuid: string + /** @description This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`. */ + readonly workspace: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description The repository runner was deleted. */ + readonly 204: { + headers: Readonly> + content?: never + } + /** @description The repository runner was not found. */ + readonly 404: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + } + } readonly getPipelineForRepository: { readonly parameters: { readonly query?: never @@ -26025,7 +27941,8 @@ export interface operations { readonly "application/json": components["schemas"]["search_result_page"] } } - /** @description If the search request was invalid due to one of the + /** + * @description If the search request was invalid due to one of the * following reasons: * * * the specified type of target account doesn''t match the actual @@ -26035,7 +27952,7 @@ export interface operations { * * * missing or malformed search query, in the latter case an error * key will be returned in `error.data.key` property. - * */ + */ readonly 400: { headers: Readonly> content: { @@ -26303,7 +28220,8 @@ export interface operations { readonly "application/json": components["schemas"]["search_result_page"] } } - /** @description If the search request was invalid due to one of the + /** + * @description If the search request was invalid due to one of the * following reasons: * * * the specified type of target account doesn''t match the actual @@ -26313,7 +28231,7 @@ export interface operations { * * * missing or malformed search query, in the latter case an error * key will be returned in `error.data.key` property. - * */ + */ readonly 400: { headers: Readonly> content: { @@ -26388,6 +28306,150 @@ export interface operations { } } } + readonly getWorkspaceRunners: { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`. */ + readonly workspace: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description The workspace runners. */ + readonly 200: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["paginated_pipeline_runners"] + } + } + } + } + readonly createWorkspaceRunner: { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`. */ + readonly workspace: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description The workspace runner. */ + readonly 200: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["pipeline_runner"] + } + } + /** @description The request body contained invalid properties or runner limit exceeded. */ + readonly 400: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + /** @description The workspace runner with the provided UUID already exists. */ + readonly 409: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + } + } + readonly getWorkspaceRunner: { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description The runner uuid. */ + readonly runner_uuid: string + /** @description This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`. */ + readonly workspace: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description The workspace runner. */ + readonly 200: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["pipeline_runner"] + } + } + /** @description The workspace runner was not found. */ + readonly 404: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + } + } + readonly updateWorkspaceRunner: { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description The runner uuid. */ + readonly runner_uuid: string + /** @description This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`. */ + readonly workspace: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description The workspace runner. */ + readonly 200: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["pipeline_runner"] + } + } + /** @description The workspace runner was not found. */ + readonly 404: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + } + } + readonly deleteWorkspaceRunner: { + readonly parameters: { + readonly query?: never + readonly header?: never + readonly path: { + /** @description The runner uuid. */ + readonly runner_uuid: string + /** @description This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example `{workspace UUID}`. */ + readonly workspace: string + } + readonly cookie?: never + } + readonly requestBody?: never + readonly responses: { + /** @description The workspace runner was deleted. */ + readonly 204: { + headers: Readonly> + content?: never + } + /** @description The workspace runner was not found. */ + readonly 404: { + headers: Readonly> + content: { + readonly "application/json": components["schemas"]["error"] + } + } + } + } readonly getPipelineVariablesForWorkspace: { readonly parameters: { readonly query?: never @@ -26562,7 +28624,8 @@ export interface operations { readonly "application/json": components["schemas"]["search_result_page"] } } - /** @description If the search request was invalid due to one of the + /** + * @description If the search request was invalid due to one of the * following reasons: * * * the specified type of target account doesn''t match the actual @@ -26572,7 +28635,7 @@ export interface operations { * * * missing or malformed search query, in the latter case an error * key will be returned in `error.data.key` property. - * */ + */ readonly 400: { headers: Readonly> content: { diff --git a/src/cloud/openapi/swagger.v3.json b/src/cloud/openapi/swagger.v3.json index f9a8de3..f0bac6d 100644 --- a/src/cloud/openapi/swagger.v3.json +++ b/src/cloud/openapi/swagger.v3.json @@ -110,7 +110,7 @@ "/addon/linkers": { "get": { "tags": ["Addon"], - "description": "Gets a list of all [linkers](/cloud/bitbucket/modules/linker/)\nfor the authenticated application.", + "description": "Gets a list of all [linkers](/cloud/bitbucket/modules/linker/)\nfor the authenticated application.\n\nThis endpoint is deprecated and will be removed by May 2026.", "summary": "List linkers for an app", "responses": { "200": { @@ -137,14 +137,15 @@ { "api_key": [] } - ] + ], + "deprecated": true }, "parameters": [] }, "/addon/linkers/{linker_key}": { "get": { "tags": ["Addon"], - "description": "Gets a [linker](/cloud/bitbucket/modules/linker/) specified by `linker_key`\nfor the authenticated application.", + "description": "Gets a [linker](/cloud/bitbucket/modules/linker/) specified by `linker_key`\nfor the authenticated application.\n\nThis endpoint is deprecated and will be removed by May 2026.", "summary": "Get a linker for an app", "responses": { "200": { @@ -181,7 +182,8 @@ { "api_key": [] } - ] + ], + "deprecated": true }, "parameters": [ { @@ -198,7 +200,7 @@ "/addon/linkers/{linker_key}/values": { "delete": { "tags": ["Addon"], - "description": "Delete all [linker](/cloud/bitbucket/modules/linker/) values for the\nspecified linker of the authenticated application.", + "description": "Delete all [linker](/cloud/bitbucket/modules/linker/) values for the\nspecified linker of the authenticated application.\n\nThis endpoint is deprecated and will be removed by May 2026.", "summary": "Delete all linker values", "responses": { "204": { @@ -235,11 +237,12 @@ { "api_key": [] } - ] + ], + "deprecated": true }, "get": { "tags": ["Addon"], - "description": "Gets a list of all [linker](/cloud/bitbucket/modules/linker/) values for the\nspecified linker of the authenticated application.\n\nA linker value lets applications supply values to modify its regular expression.\n\nThe base regular expression must use a Bitbucket-specific match group `(?K)`\nwhich will be translated to `([\\w\\-]+)`. A value must match this pattern.\n\n[Read more about linker values](/cloud/bitbucket/modules/linker/#usingthebitbucketapitosupplyvalues)", + "description": "Gets a list of all [linker](/cloud/bitbucket/modules/linker/) values for the\nspecified linker of the authenticated application.\n\nA linker value lets applications supply values to modify its regular expression.\n\nThe base regular expression must use a Bitbucket-specific match group `(?K)`\nwhich will be translated to `([\\w\\-]+)`. A value must match this pattern.\n\n[Read more about linker values](/cloud/bitbucket/modules/linker/#usingthebitbucketapitosupplyvalues)\n\nThis endpoint is deprecated and will be removed by May 2026.", "summary": "List linker values for a linker", "responses": { "200": { @@ -276,11 +279,12 @@ { "api_key": [] } - ] + ], + "deprecated": true }, "post": { "tags": ["Addon"], - "description": "Creates a [linker](/cloud/bitbucket/modules/linker/) value for the specified\nlinker of authenticated application.\n\nA linker value lets applications supply values to modify its regular expression.\n\nThe base regular expression must use a Bitbucket-specific match group `(?K)`\nwhich will be translated to `([\\w\\-]+)`. A value must match this pattern.\n\n[Read more about linker values](/cloud/bitbucket/modules/linker/#usingthebitbucketapitosupplyvalues)", + "description": "Creates a [linker](/cloud/bitbucket/modules/linker/) value for the specified\nlinker of authenticated application.\n\nA linker value lets applications supply values to modify its regular expression.\n\nThe base regular expression must use a Bitbucket-specific match group `(?K)`\nwhich will be translated to `([\\w\\-]+)`. A value must match this pattern.\n\n[Read more about linker values](/cloud/bitbucket/modules/linker/#usingthebitbucketapitosupplyvalues)\n\nThis endpoint is deprecated and will be removed by May 2026.", "summary": "Create a linker value", "responses": { "201": { @@ -327,11 +331,12 @@ { "api_key": [] } - ] + ], + "deprecated": true }, "put": { "tags": ["Addon"], - "description": "Bulk update [linker](/cloud/bitbucket/modules/linker/) values for the specified\nlinker of the authenticated application.\n\nA linker value lets applications supply values to modify its regular expression.\n\nThe base regular expression must use a Bitbucket-specific match group `(?K)`\nwhich will be translated to `([\\w\\-]+)`. A value must match this pattern.\n\n[Read more about linker values](/cloud/bitbucket/modules/linker/#usingthebitbucketapitosupplyvalues)", + "description": "Bulk update [linker](/cloud/bitbucket/modules/linker/) values for the specified\nlinker of the authenticated application.\n\nA linker value lets applications supply values to modify its regular expression.\n\nThe base regular expression must use a Bitbucket-specific match group `(?K)`\nwhich will be translated to `([\\w\\-]+)`. A value must match this pattern.\n\n[Read more about linker values](/cloud/bitbucket/modules/linker/#usingthebitbucketapitosupplyvalues)\n\nThis endpoint is deprecated and will be removed by May 2026.", "summary": "Update a linker value", "responses": { "204": { @@ -378,7 +383,8 @@ { "api_key": [] } - ] + ], + "deprecated": true }, "parameters": [ { @@ -395,7 +401,7 @@ "/addon/linkers/{linker_key}/values/{value_id}": { "delete": { "tags": ["Addon"], - "description": "Delete a single [linker](/cloud/bitbucket/modules/linker/) value\nof the authenticated application.", + "description": "Delete a single [linker](/cloud/bitbucket/modules/linker/) value\nof the authenticated application.\n\nThis endpoint is deprecated and will be removed by May 2026.", "summary": "Delete a linker value", "responses": { "204": { @@ -432,11 +438,12 @@ { "api_key": [] } - ] + ], + "deprecated": true }, "get": { "tags": ["Addon"], - "description": "Get a single [linker](/cloud/bitbucket/modules/linker/) value\nof the authenticated application.", + "description": "Get a single [linker](/cloud/bitbucket/modules/linker/) value\nof the authenticated application.\n\nThis endpoint is deprecated and will be removed by May 2026.", "summary": "Get a linker value", "responses": { "200": { @@ -473,7 +480,8 @@ { "api_key": [] } - ] + ], + "deprecated": true }, "parameters": [ { @@ -496,6 +504,78 @@ } ] }, + "/addon/{addon_key}/client-key": { + "get": { + "tags": ["Addon"], + "description": "Get the client key of the Connect addon associated with a Forge app install via forgeAppId linkage.\n\nThis endpoint is part of the Connect -> Forge migration tooling. It is intended to be used by a Forge app\nusing `asApp().requestBitbucket()` only.\nPrerequisite: app developer needs to register the linkage between their Connect and Forge app by setting\n`forgeAppId` in the Connect addon descriptor to `app.id` from Forge app manifest, then update the installations.\nIf the request came from an installation of a registered Forge app, the client key of the linked Connect addon\ninstalled in the same workspace will be returned.\n\n```\napi.asApp().requestBitbucket(route`/2.0/addon/{addon-key}/client-key`)\n```", + "summary": "Get the client key of a Connect addon", + "responses": { + "200": { + "description": "The client key of the Connect addon linked to the Forge app installation where the request was made" + }, + "401": { + "description": "Invalid authentication.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "403": { + "description": "Improper authorization.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "404": { + "description": "The Connect addon or the Forge app does not exist.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": [] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:workspace:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2"] + }, + "parameters": [ + { + "name": "addon_key", + "in": "path", + "description": "The Connect addon key as defined in an application descriptor.\n", + "required": true, + "schema": { + "type": "string" + } + } + ] + }, "/hook_events": { "get": { "tags": ["Webhooks"], @@ -637,7 +717,7 @@ "/repositories": { "get": { "tags": ["Repositories"], - "description": "Returns a paginated list of all public repositories.\n\nThis endpoint also supports filtering and sorting of the results. See\n[filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for more details.", + "description": "**This endpoint is deprecated. Please use the\n[workspace scoped alternative](/cloud/bitbucket/rest/api-group-repositories/#api-repositories-workspace-get).**\n\nReturns a paginated list of all public repositories.\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 public repositories", "responses": { "200": { @@ -700,7 +780,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:repository:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [] }, @@ -788,7 +877,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -860,7 +950,8 @@ "scheme": "oauth2", "scopes": ["delete:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "get": { "tags": ["Repositories"], @@ -915,7 +1006,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Repositories"], @@ -980,7 +1072,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Repositories"], @@ -1071,7 +1164,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -1178,7 +1272,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Branch restrictions"], @@ -1254,7 +1349,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -1334,7 +1430,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "get": { "tags": ["Branch restrictions"], @@ -1399,7 +1496,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Branch restrictions"], @@ -1475,7 +1573,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -1623,7 +1722,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -1756,7 +1856,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Branching model"], @@ -1866,7 +1967,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -2034,7 +2136,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -2103,7 +2206,8 @@ "scheme": "oauth2", "scopes": ["write:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Commits"], @@ -2151,7 +2255,8 @@ "write:repository:bitbucket" ] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -2237,7 +2342,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Commits"], @@ -2290,7 +2396,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -2352,7 +2459,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "get": { "tags": ["Commits"], @@ -2387,7 +2495,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Commits"], @@ -2437,7 +2546,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -2446,7 +2556,8 @@ "description": "The id of the comment.", "required": true, "schema": { - "type": "integer" + "type": "integer", + "format": "int64" } }, { @@ -2694,7 +2805,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:workspace:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/commit/{commit}/pullrequests": { @@ -2803,7 +2922,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/commit/{commit}/reports": { @@ -2870,7 +2990,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}": { @@ -2967,7 +3088,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "get": { "tags": ["Reports", "Commits"], @@ -3051,7 +3173,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "delete": { "tags": ["Reports", "Commits"], @@ -3118,7 +3241,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}/annotations": { @@ -3194,7 +3318,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Reports", "Commits"], @@ -3287,7 +3412,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}/annotations/{annotationId}": { @@ -3382,7 +3508,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Reports", "Commits"], @@ -3486,7 +3613,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "delete": { "tags": ["Reports", "Commits"], @@ -3562,7 +3690,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/commit/{commit}/statuses": { @@ -3641,7 +3770,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -3730,7 +3860,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -3809,7 +3940,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Commit statuses"], @@ -3867,7 +3999,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -3952,7 +4085,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Commits"], @@ -3997,7 +4131,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -4064,7 +4199,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Commits"], @@ -4109,7 +4245,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -4178,7 +4315,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -4238,7 +4384,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -4314,7 +4469,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -4384,7 +4540,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "get": { "tags": ["Pullrequests"], @@ -4439,7 +4596,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Pullrequests"], @@ -4504,7 +4662,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -4607,7 +4766,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:repository:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "post": { "tags": ["Deployments"], @@ -4675,7 +4842,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:repository:bitbucket", "write:ssh-key:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -4731,7 +4906,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:repository:bitbucket", "delete:ssh-key:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Deployments"], @@ -4796,11 +4979,19 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:repository:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "put": { "tags": ["Deployments"], - "description": "Create a new deploy key in a repository.\n\nThe same key needs to be passed in but the comment and label can change.\n\nExample:\n```\n$ curl -X PUT \\\n-H \"Authorization \" \\\n-H \"Content-type: application/json\" \\\nhttps://api.bitbucket.org/2.0/repositories/mleu/test/deploy-keys/1234 -d \\\n'{\n \"label\": \"newlabel\",\n \"key\": \"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAK/b1cHHDr/TEV1JGQl+WjCwStKG6Bhrv0rFpEsYlyTBm1fzN0VOJJYn4ZOPCPJwqse6fGbXntEs+BbXiptR+++HycVgl65TMR0b5ul5AgwrVdZdT7qjCOCgaSV74/9xlHDK8oqgGnfA7ZoBBU+qpVyaloSjBdJfLtPY/xqj4yHnXKYzrtn/uFc4Kp9Tb7PUg9Io3qohSTGJGVHnsVblq/rToJG7L5xIo0OxK0SJSQ5vuId93ZuFZrCNMXj8JDHZeSEtjJzpRCBEXHxpOPhAcbm4MzULgkFHhAVgp4JbkrT99/wpvZ7r9AdkTg7HGqL3rlaDrEcWfL7Lu6TnhBdq5 newcomment\",\n}'\n```", + "description": "Update an existing deploy key in a repository.\n\nThe same key needs to be passed in but the comment and label can change.\n\nExample:\n```\n$ curl -X PUT \\\n-H \"Authorization \" \\\n-H \"Content-type: application/json\" \\\nhttps://api.bitbucket.org/2.0/repositories/mleu/test/deploy-keys/1234 -d \\\n'{\n \"label\": \"newlabel\",\n \"key\": \"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAK/b1cHHDr/TEV1JGQl+WjCwStKG6Bhrv0rFpEsYlyTBm1fzN0VOJJYn4ZOPCPJwqse6fGbXntEs+BbXiptR+++HycVgl65TMR0b5ul5AgwrVdZdT7qjCOCgaSV74/9xlHDK8oqgGnfA7ZoBBU+qpVyaloSjBdJfLtPY/xqj4yHnXKYzrtn/uFc4Kp9Tb7PUg9Io3qohSTGJGVHnsVblq/rToJG7L5xIo0OxK0SJSQ5vuId93ZuFZrCNMXj8JDHZeSEtjJzpRCBEXHxpOPhAcbm4MzULgkFHhAVgp4JbkrT99/wpvZ7r9AdkTg7HGqL3rlaDrEcWfL7Lu6TnhBdq5 newcomment\",\n}'\n```", "summary": "Update a repository deploy key", "responses": { "200": { @@ -4871,7 +5062,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:repository:bitbucket", "write:ssh-key:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -4958,7 +5157,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/deployments/{deployment_uuid}": { @@ -5035,7 +5235,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/deployments_config/environments/{environment_uuid}/variables": { @@ -5102,7 +5303,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Pipelines"], @@ -5206,7 +5408,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/deployments_config/environments/{environment_uuid}/variables/{variable_uuid}": { @@ -5303,7 +5506,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "delete": { "tags": ["Pipelines"], @@ -5380,7 +5584,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/diff/{spec}": { @@ -5461,7 +5666,7 @@ { "name": "topic", "in": "query", - "description": "If true, returns 2-way 'three-dot' diff.\nThis is a diff between the source commit and the merge base\nof the source commit and the destination commit.\nIf false, a simple 'two dot' diff between the source and\ndestination is returned.", + "description": "If true, returns 2-way 'three-dot' diff.\nThis is a diff between the source commit and the merge base\nof the source commit and the destination commit.\nIf false, a simple 'two dot' diff between the source and\ndestination is returned.\n\nIf omitted, defaults to true, ie. a 2 way 'three-dot'\ndiff is returned.\n", "required": false, "schema": { "type": "boolean" @@ -5485,7 +5690,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -5598,7 +5804,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -5712,7 +5919,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Downloads"], @@ -5770,7 +5978,8 @@ "scheme": "oauth2", "scopes": ["write:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -5840,7 +6049,8 @@ "scheme": "oauth2", "scopes": ["write:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "get": { "tags": ["Downloads"], @@ -5888,7 +6098,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -5984,7 +6195,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -6078,7 +6290,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -6156,7 +6369,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Deployments"], @@ -6251,7 +6465,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/environments/{environment_uuid}": { @@ -6328,7 +6543,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "delete": { "tags": ["Deployments"], @@ -6396,7 +6612,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/environments/{environment_uuid}/changes": { @@ -6466,9 +6683,100 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, + "/repositories/{workspace}/{repo_slug}/file-conflicts/{spec}": { + "get": { + "tags": ["Commits"], + "description": "Get file conflicts for a commit spec", + "summary": "Get file conflicts for a commit spec", + "responses": { + "200": { + "description": "A paginated list of file conflicts", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/paginated_file_conflicts" + }, + "examples": { + "response": { + "value": { + "pagelen": 500, + "page": 1, + "size": 2, + "values": [ + { + "path": "src/main/App.java", + "scenario": "content", + "message": "File modified in both source and destination" + }, + { + "path": "README.md", + "scenario": "content", + "message": "File modified in both source and destination" + } + ] + } + } + } + } + } + }, + "404": { + "description": "If the spec cannot be resolved, which may be due to an invalid spec, or commits/refs not present in the repository", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["repository"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ] + }, + "parameters": [ + { + "name": "repo_slug", + "in": "path", + "description": "This can either be the repository slug or the UUID of the repository,\nsurrounded by curly-braces, for example: `{repository UUID}`.\n", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "spec", + "in": "path", + "description": "A commit SHA (e.g. `3a8b42`) or a commit range using double dot\nnotation (e.g. `3a8b42..9ff173`).\n", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "workspace", + "in": "path", + "description": "This can either be the workspace ID (slug) or the workspace UUID\nsurrounded by curly-braces, for example: `{workspace UUID}`.\n", + "required": true, + "schema": { + "type": "string" + } + } + ] + }, "/repositories/{workspace}/{repo_slug}/filehistory/{commit}/{path}": { "get": { "tags": ["Source", "Repositories"], @@ -6568,7 +6876,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -6673,7 +6982,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Repositories"], @@ -6729,7 +7039,8 @@ "write:repository:bitbucket" ] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -6799,7 +7110,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:webhook:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "post": { "tags": ["Repositories", "Webhooks"], @@ -6855,7 +7174,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:webhook:bitbucket", "write:webhook:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -6918,7 +7245,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["delete:webhook:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Repositories", "Webhooks"], @@ -6956,7 +7291,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:webhook:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "put": { "tags": ["Repositories", "Webhooks"], @@ -7004,7 +7347,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:webhook:bitbucket", "write:webhook:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -7073,7 +7424,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "post": { "tags": ["Issue tracker"], @@ -7150,7 +7510,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket", "write:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -7221,7 +7590,7 @@ } } }, - "description": "The options to apply to the export. Available options include `project_key` and `project_name` which, if specified, are used as the project key and name in the exported Jira json format. Option `send_email` specifies whether an email should be sent upon export result. Option `include_attachments` specifies whether attachments are included in the export." + "description": "The options to apply to the export. Available options include `project_key` and `project_name` which, if specified, are used as the Jira space key and name in the exported Jira json format. Option `send_email` specifies whether an email should be sent upon export result. Option `include_attachments` specifies whether attachments are included in the export." }, "security": [ { @@ -7233,7 +7602,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -7325,7 +7703,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -7445,7 +7832,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:issue:bitbucket", "admin:repository:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "post": { "tags": ["Issue tracker"], @@ -7525,7 +7921,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:issue:bitbucket", "admin:repository:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -7588,7 +7993,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["delete:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Issue tracker"], @@ -7646,7 +8060,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "put": { "tags": ["Issue tracker"], @@ -7694,7 +8117,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket", "write:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -7766,7 +8198,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "post": { "tags": ["Issue tracker"], @@ -7811,7 +8252,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -7876,7 +8326,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Issue tracker"], @@ -7917,7 +8376,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -8107,7 +8575,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "post": { "tags": ["Issue tracker"], @@ -8184,7 +8661,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket", "write:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -8253,7 +8739,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -8332,7 +8827,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "post": { "tags": ["Issue tracker"], @@ -8382,7 +8886,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket", "write:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -8434,7 +8947,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Issue tracker"], @@ -8462,7 +8984,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "put": { "tags": ["Issue tracker"], @@ -8511,7 +9042,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket", "write:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -8520,7 +9060,8 @@ "description": "The id of the comment.", "required": true, "schema": { - "type": "integer" + "type": "integer", + "format": "int64" } }, { @@ -8579,7 +9120,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:issue:bitbucket", "write:user:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Issue tracker"], @@ -8627,7 +9177,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket", "read:user:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "put": { "tags": ["Issue tracker"], @@ -8675,182 +9234,218 @@ { "api_key": [] } - ] - }, - "parameters": [ - { - "name": "issue_id", - "in": "path", - "description": "The issue id", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo_slug", - "in": "path", - "description": "This can either be the repository slug or the UUID of the repository,\nsurrounded by curly-braces, for example: `{repository UUID}`.\n", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "workspace", - "in": "path", - "description": "This can either be the workspace ID (slug) or the workspace UUID\nsurrounded by curly-braces, for example: `{workspace UUID}`.\n", - "required": true, - "schema": { - "type": "string" - } - } - ] - }, - "/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.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - }, - "401": { - "description": "When the request wasn't authenticated.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - }, - "404": { - "description": "The specified repository or issue does not exist or does not have the issue tracker enabled.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - } - }, - "security": [ - { - "oauth2": ["account:write", "issue:write"] - }, - { - "basic": [] - }, - { - "api_key": [] - } - ] - }, - "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.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - }, - "401": { - "description": "When the request wasn't authenticated.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - }, - "404": { - "description": "If the authenticated user is not watching this issue, or when the repo does not exist, or does not have an issue tracker.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - } - }, - "security": [ - { - "oauth2": ["account", "issue"] - }, - { - "basic": [] - }, - { - "api_key": [] - } - ] - }, - "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.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - }, - "401": { - "description": "When the request wasn't authenticated.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - }, - "404": { - "description": "If the authenticated user is not watching this issue, or when the repo does not exist, or does not have an issue tracker.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - } - }, - "security": [ - { - "oauth2": ["account:write", "issue"] - }, - { - "basic": [] - }, + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ { - "api_key": [] + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:issue:bitbucket", "write:user:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["api-token"] + }, + "parameters": [ + { + "name": "issue_id", + "in": "path", + "description": "The issue id", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "in": "path", + "description": "This can either be the repository slug or the UUID of the repository,\nsurrounded by curly-braces, for example: `{repository UUID}`.\n", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "workspace", + "in": "path", + "description": "This can either be the workspace ID (slug) or the workspace UUID\nsurrounded by curly-braces, for example: `{workspace UUID}`.\n", + "required": true, + "schema": { + "type": "string" + } + } + ] + }, + "/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.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "401": { + "description": "When the request wasn't authenticated.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "404": { + "description": "The specified repository or issue does not exist or does not have the issue tracker enabled.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["account:write", "issue:write"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:issue:bitbucket", "write:user:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] + }, + "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.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "401": { + "description": "When the request wasn't authenticated.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "404": { + "description": "If the authenticated user is not watching this issue, or when the repo does not exist, or does not have an issue tracker.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["account", "issue"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket", "read:user:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] + }, + "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.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "401": { + "description": "When the request wasn't authenticated.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "404": { + "description": "If the authenticated user is not watching this issue, or when the repo does not exist, or does not have an issue tracker.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["account:write", "issue"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:issue:bitbucket", "write:user:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -8946,7 +9541,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -9015,7 +9611,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -9075,7 +9680,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -9151,7 +9765,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Repositories"], @@ -9189,7 +9804,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -9249,7 +9865,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -9384,7 +10001,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -9457,7 +10075,18 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": [ + "admin:repository:bitbucket", + "delete:permission:bitbucket" + ] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Repositories"], @@ -9541,7 +10170,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Repositories"], @@ -9641,7 +10271,18 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": [ + "admin:repository:bitbucket", + "write:permission:bitbucket" + ] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -9778,7 +10419,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -9851,7 +10493,18 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": [ + "admin:repository:bitbucket", + "delete:permission:bitbucket" + ] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Repositories"], @@ -9936,7 +10589,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Repositories"], @@ -10037,7 +10691,18 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": [ + "admin:repository:bitbucket", + "write:permission:bitbucket" + ] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -10266,12 +10931,13 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "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 \"target\": {\n \"type\": \"pipeline_pullrequest_target\",\n \"source\": \"pull-request-branch\",\n \"destination\": \"master\",\n \"destination_commit\": {\n \"hash\": \"9f848b7\"\n },\n \"commit\": {\n \"hash\": \"1a372fc\"\n },\n \"pullrequest\": {\n \"id\": \"3\"\n },\n \"selector\": {\n \"type\": \"pull-requests\",\n \"pattern\": \"**\"\n }\n }\n }'\n```\n", + "description": "Endpoint to create and initiate a pipeline.\nThere are a number of different options to initiate a pipeline, where the payload of the request will determine which type of pipeline will be instantiated.\n\n## Trigger a pipeline for a branch\n\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 '{atlassian_account_email}:{api_token}' \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines/ \\\n -d '\n {\n \"target\": {\n \"ref_type\": \"branch\",\n \"type\": \"pipeline_ref_target\",\n \"ref_name\": \"master\"\n }\n }'\n```\n\n## Trigger a pipeline for a commit on a branch or tag\n\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 '{atlassian_account_email}:{api_token}' \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/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\n## Trigger a specific pipeline definition for a commit\n\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 '{atlassian_account_email}:{api_token}' \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/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\n## Trigger a specific pipeline definition for a commit on a branch or tag\n\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 '{atlassian_account_email}:{api_token}' \\\n -H 'Content-Type: application/json' \\\n https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/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## Trigger a custom pipeline with variables\n\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 '{atlassian_account_email}:{api_token}' \\\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 '{atlassian_account_email}:{api_token}' \\\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_pullrequest_target\",\n \"source\": \"pull-request-branch\",\n \"destination\": \"master\",\n \"destination_commit\": {\n \"hash\": \"9f848b7\"\n },\n \"commit\": {\n \"hash\": \"1a372fc\"\n },\n \"pullrequest\": {\n \"id\": \"3\"\n },\n \"selector\": {\n \"type\": \"pull-requests\",\n \"pattern\": \"**\"\n }\n }\n }'\n```\n\n# On-demand pipeline\n\nBy default, pipelines run using the YAML in the repository’s `bitbucket-pipelines.yml` configuration file.\nWith an _on-demand_ pipeline, you include the pipeline’s YAML in the request body. That YAML applies only\nto that run and overrides the YAML in `bitbucket-pipelines.yml`.\n\nJust like with regular pipelines, there is a number of different options to initiate an on-demand pipeline.\nHowever, since the payload contains YAML configuration in this case, _query parameters_ are used to supply\nthe necessary metadata to determine which type of pipeline will be instantiated. These query parameters\nare derived from the JSON equivalent by turning each property into a key-value pair with the JSON path\nof the property as the new key.\n\n## Trigger on-demand pipeline for a branch\n\nYou can initiate an on-demand pipeline for a specific branch. This branch will be used to determine\nwhich pipeline definition from the supplied YAML configuration will be applied to initiate the pipeline.\nThe pipeline will then do a clone of the repository and check out the latest revision of the specified branch.\n\nTo trigger an on-demand pipeline for a _branch_ the requesting user must have **write permission** for\nthat branch (which can be limited by [branch restrictions](https://support.atlassian.com/bitbucket-cloud/docs/use-branch-permissions/)).\n\n### Example\n\n```\n$ curl -X POST -is -u '{atlassian_account_email}:{api_token}' \\\n -H 'Content-Type: application/yaml' \\\n https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines?target.type=pipeline_ref_target&target.ref_type=branch&target.ref_name=master \\\n -d '\npipelines:\n default:\n - step:\n script:\n - echo This is an on-demand pipeline'\n```\n\n## Trigger on-demand pipeline for a commit on a branch or tag\n\nYou can initiate an on-demand pipeline for a specific commit and in the context of a specified reference\n(branch or tag). The specified reference will be used to determine which pipeline definition from the supplied\nYAML configuration will be applied to initiate the pipeline. The pipeline will clone the repository and\ncheck out the specified reference.\n\nTo trigger an on-demand pipeline for a _branch_ the requesting user must have **write permission** for\nthat branch (which can be limited by [branch restrictions](https://support.atlassian.com/bitbucket-cloud/docs/use-branch-permissions/)).\n\n### Example\n\n```\n$ curl -X POST -is -u '{atlassian_account_email}:{api_token}' \\\n -H 'Content-Type: application/yaml' \\\n https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines?target.type=pipeline_ref_target&target.ref_type=branch&target.ref_name=master&target.commit.hash=ce5b7431602f7cbba007062eeb55225c6e18e956 \\\n -d '\npipelines:\n default:\n - step:\n script:\n - echo This is an on-demand pipeline'\n```\n\n## Trigger a specific on-demand pipeline definition for a commit\n\nYou can trigger a specific pipeline that is defined in the supplied YAML configuration for a specific commit.\nIn addition to the commit revision, you specify the type and pattern of the selector that identifies\nthe 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 '{atlassian_account_email}:{api_token}' \\\n -H 'Content-Type: application/yaml' \\\n https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines?target.type=pipeline_commit_target&target.commit.hash=a3c4e02c9a3755eccdc3764e6ea13facdf30f923&target.selector.type=custom&target.selector.pattern=security-scan \\\n -d '\npipelines:\n custom:\n security-scan:\n - step:\n script:\n - echo Run on-demand security scan\n```\n\n## Trigger a custom on-demand pipeline with variables\n\nIn addition to triggering a custom on-demand pipeline that is defined in the supplied YAML configuration\nas shown in the examples above, you can specify variables that will be available for your build.\nIn the request, provide each variable as an indexed set of query parameters representing its key, value,\nand 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 '{atlassian_account_email}:{api_token}' \\\n -H 'Content-Type: application/yaml' \\\n https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines?target.type=pipeline_ref_target&target.ref_type=branch&target.ref_name=master&target.selector.type=custom&target.selector.pattern=security-scan&variables[0].key=var1key&variables[0].value=var1value&variables[0].secured=true&variables[1].key=var2key&variables[1].value=var2value \\\n -d '\npipelines:\n custom:\n security-scan:\n - variables:\n - name: var1key\n - name: var2key\n - step:\n script:\n - echo Run on-demand security scan'\n```\n\n## Trigger a pull request pipeline\n\nYou can also initiate an on-demand pipeline for a specific pull request.\n\n### Example\n\n```\n$ curl -X POST -is -u '{atlassian_account_email}:{api_token}' \\\n -H 'Content-Type: application/yaml' \\\n https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pipelines?target.type=pipeline_pullrequest_target&target.source=pull-request-branch&target.destination=destination&target.destination_commit.hash=9f848b7&target.commit.hash=1a372fc&target.pullrequest.id=3&target.selector.type=pull-requests&target.selector.pattern=** \\\n -d '\npipelines:\n pull-requests:\n \"**\":\n - step:\n script:\n - echo This is an on-demand pipeline'\n```\n", "operationId": "createPipelineForRepository", "parameters": [ { @@ -10361,7 +11027,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket", "write:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pipelines-config/caches": { @@ -10429,7 +11096,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "delete": { "tags": ["Pipelines"], @@ -10497,7 +11165,8 @@ "scheme": "oauth2", "scopes": ["write:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pipelines-config/caches/{cache_uuid}": { @@ -10567,7 +11236,8 @@ "scheme": "oauth2", "scopes": ["write:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pipelines-config/caches/{cache_uuid}/content-uri": { @@ -10644,15 +11314,16 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}": { + "/repositories/{workspace}/{repo_slug}/pipelines-config/runners": { "get": { "tags": ["Pipelines"], - "summary": "Get a pipeline", - "description": "Retrieve a specified pipeline", - "operationId": "getPipelineForRepository", + "summary": "Get repository runners", + "description": "Retrieve repository runners.", + "operationId": "getRepositoryRunners", "parameters": [ { "name": "workspace", @@ -10671,34 +11342,15 @@ "schema": { "type": "string" } - }, - { - "name": "pipeline_uuid", - "description": "The pipeline UUID.", - "required": true, - "in": "path", - "schema": { - "type": "string" - } } ], "responses": { "200": { - "description": "The pipeline.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/pipeline" - } - } - } - }, - "404": { - "description": "No account, repository or pipeline with the UUID provided exists.", + "description": "The repository runners.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/error" + "$ref": "#/components/schemas/paginated_pipeline_runners" } } } @@ -10706,7 +11358,7 @@ }, "security": [ { - "oauth2": ["pipeline"] + "oauth2": ["runner"] }, { "basic": [] @@ -10719,17 +11371,16 @@ { "state": "Current", "scheme": "oauth2", - "scopes": ["read:pipeline:bitbucket"] + "scopes": ["read:runner:bitbucket"] } - ] - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps": { - "get": { + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + }, + "post": { "tags": ["Pipelines"], - "summary": "List steps for a pipeline", - "description": "Find steps for the given pipeline.", - "operationId": "getPipelineStepsForRepository", + "summary": "Create repository runner", + "description": "Create repository runner.", + "operationId": "createRepositoryRunner", "parameters": [ { "name": "workspace", @@ -10748,24 +11399,35 @@ "schema": { "type": "string" } - }, - { - "name": "pipeline_uuid", - "description": "The UUID of the pipeline.", - "required": true, - "in": "path", - "schema": { - "type": "string" - } } ], "responses": { "200": { - "description": "The steps.", + "description": "The repository runner.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/paginated_pipeline_steps" + "$ref": "#/components/schemas/pipeline_runner" + } + } + } + }, + "400": { + "description": "The request body contained invalid properties or runner limit exceeded.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "409": { + "description": "The repository runner with the provided UUID already exists.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" } } } @@ -10773,7 +11435,7 @@ }, "security": [ { - "oauth2": ["pipeline"] + "oauth2": ["runner:write"] }, { "basic": [] @@ -10786,17 +11448,18 @@ { "state": "Current", "scheme": "oauth2", - "scopes": ["read:pipeline:bitbucket"] + "scopes": ["write:runner:bitbucket", "read:runner:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}": { + "/repositories/{workspace}/{repo_slug}/pipelines-config/runners/{runner_uuid}": { "get": { "tags": ["Pipelines"], - "summary": "Get a step of a pipeline", - "description": "Retrieve a given step of a pipeline.", - "operationId": "getPipelineStepForRepository", + "summary": "Get repository runner", + "description": "Retrieve repository runner by uuid.", + "operationId": "getRepositoryRunner", "parameters": [ { "name": "workspace", @@ -10817,17 +11480,8 @@ } }, { - "name": "pipeline_uuid", - "description": "The UUID of the pipeline.", - "required": true, - "in": "path", - "schema": { - "type": "string" - } - }, - { - "name": "step_uuid", - "description": "The UUID of the step.", + "name": "runner_uuid", + "description": "The runner uuid.", "required": true, "in": "path", "schema": { @@ -10837,17 +11491,17 @@ ], "responses": { "200": { - "description": "The step.", + "description": "The repository runner.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/pipeline_step" + "$ref": "#/components/schemas/pipeline_runner" } } } }, "404": { - "description": "No account, repository, pipeline or step with the UUID provided exists for the pipeline with the UUID provided.", + "description": "The repository runner was not found.", "content": { "application/json": { "schema": { @@ -10859,7 +11513,7 @@ }, "security": [ { - "oauth2": ["pipeline"] + "oauth2": ["runner"] }, { "basic": [] @@ -10872,17 +11526,16 @@ { "state": "Current", "scheme": "oauth2", - "scopes": ["read:pipeline:bitbucket"] + "scopes": ["read:runner:bitbucket"] } - ] - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/log": { - "get": { + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + }, + "put": { "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", + "summary": "Update repository runner", + "description": "Update repository runner.", + "operationId": "updateRepositoryRunner", "parameters": [ { "name": "workspace", @@ -10903,17 +11556,8 @@ } }, { - "name": "pipeline_uuid", - "description": "The UUID of the pipeline.", - "required": true, - "in": "path", - "schema": { - "type": "string" - } - }, - { - "name": "step_uuid", - "description": "The UUID of the step.", + "name": "runner_uuid", + "description": "The runner uuid.", "required": true, "in": "path", "schema": { @@ -10923,35 +11567,19 @@ ], "responses": { "200": { - "description": "The raw log file for this pipeline step." - }, - "304": { - "description": "The log has the same etag as the provided If-None-Match header.", + "description": "The repository runner.", "content": { - "application/octet-stream": { + "application/json": { "schema": { - "$ref": "#/components/schemas/error" + "$ref": "#/components/schemas/pipeline_runner" } } } }, - "307": { - "description": "After the step is completed, the log is moved to long term storage and a redirection to the log file is returned." - }, "404": { - "description": "A pipeline with the given UUID does not exist, a step with the given UUID does not exist in the pipeline or a log file does not exist for the given step.", - "content": { - "application/octet-stream": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - }, - "416": { - "description": "The requested range does not exist for requests that specified the [HTTP Range header](https://tools.ietf.org/html/rfc7233#section-3.1).", + "description": "The repository runner was not found.", "content": { - "application/octet-stream": { + "application/json": { "schema": { "$ref": "#/components/schemas/error" } @@ -10961,7 +11589,7 @@ }, "security": [ { - "oauth2": ["pipeline"] + "oauth2": ["runner:write"] }, { "basic": [] @@ -10974,17 +11602,16 @@ { "state": "Current", "scheme": "oauth2", - "scopes": ["read:pipeline:bitbucket"] + "scopes": ["read:runner:bitbucket", "write:runner:bitbucket"] } - ] - } - }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/logs/{log_uuid}": { - "get": { + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + }, + "delete": { "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", + "summary": "Delete repository runner", + "description": "Delete repository runner by uuid.", + "operationId": "deleteRepositoryRunner", "parameters": [ { "name": "workspace", @@ -11005,26 +11632,8 @@ } }, { - "name": "pipeline_uuid", - "description": "The UUID of the pipeline.", - "required": true, - "in": "path", - "schema": { - "type": "string" - } - }, - { - "name": "step_uuid", - "description": "The UUID of the step.", - "required": true, - "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", + "name": "runner_uuid", + "description": "The runner uuid.", "required": true, "in": "path", "schema": { @@ -11033,16 +11642,13 @@ } ], "responses": { - "200": { - "description": "The raw log file for the build container or service container." - }, - "307": { - "description": "After the step is completed, the log is moved to long term storage and a redirection to the log file is returned." + "204": { + "description": "The repository runner was deleted." }, "404": { - "description": "No account, repository, pipeline, step or log exist for the provided path.", + "description": "The repository runner was not found.", "content": { - "application/octet-stream": { + "application/json": { "schema": { "$ref": "#/components/schemas/error" } @@ -11052,7 +11658,7 @@ }, "security": [ { - "oauth2": ["pipeline"] + "oauth2": ["runner:write"] }, { "basic": [] @@ -11065,16 +11671,18 @@ { "state": "Current", "scheme": "oauth2", - "scopes": ["read:pipeline:bitbucket"] + "scopes": ["write:runner:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports": { + "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}": { "get": { "tags": ["Pipelines"], - "summary": "Get a summary of test reports for a given step of a pipeline.", - "operationId": "getPipelineTestReports", + "summary": "Get a pipeline", + "description": "Retrieve a specified pipeline", + "operationId": "getPipelineForRepository", "parameters": [ { "name": "workspace", @@ -11096,16 +11704,7 @@ }, { "name": "pipeline_uuid", - "description": "The UUID of the pipeline.", - "required": true, - "in": "path", - "schema": { - "type": "string" - } - }, - { - "name": "step_uuid", - "description": "The UUID of the step.", + "description": "The pipeline UUID.", "required": true, "in": "path", "schema": { @@ -11115,10 +11714,17 @@ ], "responses": { "200": { - "description": "A summary of test reports for this pipeline step." + "description": "The pipeline.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline" + } + } + } }, "404": { - "description": "No account, repository, pipeline, step or test reports exist for the provided path.", + "description": "No account, repository or pipeline with the UUID provided exists.", "content": { "application/json": { "schema": { @@ -11145,14 +11751,16 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, - "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports/test_cases": { + "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps": { "get": { "tags": ["Pipelines"], - "summary": "Get test cases for a given step of a pipeline.", - "operationId": "getPipelineTestReportTestCases", + "summary": "List steps for a pipeline", + "description": "Find steps for the given pipeline.", + "operationId": "getPipelineStepsForRepository", "parameters": [ { "name": "workspace", @@ -11180,27 +11788,15 @@ "schema": { "type": "string" } - }, - { - "name": "step_uuid", - "description": "The UUID of the step.", - "required": true, - "in": "path", - "schema": { - "type": "string" - } } ], "responses": { "200": { - "description": "Test cases for this pipeline step." - }, - "404": { - "description": "No account, repository, pipeline, step or test reports exist for the provided path.", + "description": "The steps.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/error" + "$ref": "#/components/schemas/paginated_pipeline_steps" } } } @@ -11223,7 +11819,448 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + } + }, + "/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, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "pipeline_uuid", + "description": "The UUID of the pipeline.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "step_uuid", + "description": "The UUID of the step.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "The step.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_step" + } + } + } + }, + "404": { + "description": "No account, repository, pipeline or step with the UUID provided exists for the pipeline with the UUID provided.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["pipeline"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:pipeline:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + } + }, + "/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, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "pipeline_uuid", + "description": "The UUID of the pipeline.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "step_uuid", + "description": "The UUID of the step.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "The raw log file for this pipeline step." + }, + "304": { + "description": "The log has the same etag as the provided If-None-Match header.", + "content": { + "application/octet-stream": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "307": { + "description": "After the step is completed, the log is moved to long term storage and a redirection to the log file is returned." + }, + "404": { + "description": "A pipeline with the given UUID does not exist, a step with the given UUID does not exist in the pipeline or a log file does not exist for the given step.", + "content": { + "application/octet-stream": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "416": { + "description": "The requested range does not exist for requests that specified the [HTTP Range header](https://tools.ietf.org/html/rfc7233#section-3.1).", + "content": { + "application/octet-stream": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["pipeline"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:pipeline:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + } + }, + "/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, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "pipeline_uuid", + "description": "The UUID of the pipeline.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "step_uuid", + "description": "The UUID of the step.", + "required": true, + "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" + } + } + ], + "responses": { + "200": { + "description": "The raw log file for the build container or service container." + }, + "307": { + "description": "After the step is completed, the log is moved to long term storage and a redirection to the log file is returned." + }, + "404": { + "description": "No account, repository, pipeline, step or log exist for the provided path.", + "content": { + "application/octet-stream": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["pipeline"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:pipeline:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + } + }, + "/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, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "pipeline_uuid", + "description": "The UUID of the pipeline.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "step_uuid", + "description": "The UUID of the step.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "A summary of test reports for this pipeline step." + }, + "404": { + "description": "No account, repository, pipeline, step or test reports exist for the provided path.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["pipeline"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:pipeline:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + } + }, + "/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, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "pipeline_uuid", + "description": "The UUID of the pipeline.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "step_uuid", + "description": "The UUID of the step.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Test cases for this pipeline step." + }, + "404": { + "description": "No account, repository, pipeline, step or test reports exist for the provided path.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["pipeline"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:pipeline:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports/test_cases/{test_case_uuid}/test_case_reasons": { @@ -11310,7 +12347,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/stopPipeline": { @@ -11390,7 +12428,8 @@ "scheme": "oauth2", "scopes": ["write:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pipelines_config": { @@ -11448,7 +12487,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Pipelines"], @@ -11515,7 +12555,8 @@ "scheme": "oauth2", "scopes": ["admin:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pipelines_config/build_number": { @@ -11604,7 +12645,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pipelines_config/schedules": { @@ -11711,7 +12753,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket", "write:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "get": { "tags": ["Pipelines"], @@ -11777,7 +12820,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pipelines_config/schedules/{schedule_uuid}": { @@ -11854,7 +12898,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Pipelines"], @@ -11940,7 +12985,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket", "write:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "delete": { "tags": ["Pipelines"], @@ -12008,7 +13054,8 @@ "scheme": "oauth2", "scopes": ["write:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pipelines_config/schedules/{schedule_uuid}/executions": { @@ -12085,7 +13132,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pipelines_config/ssh/key_pair": { @@ -12153,7 +13201,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Pipelines"], @@ -12230,7 +13279,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "delete": { "tags": ["Pipelines"], @@ -12289,7 +13339,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pipelines_config/ssh/known_hosts": { @@ -12347,7 +13398,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Pipelines"], @@ -12442,7 +13494,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pipelines_config/ssh/known_hosts/{known_host_uuid}": { @@ -12519,7 +13572,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Pipelines"], @@ -12605,7 +13659,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "delete": { "tags": ["Pipelines"], @@ -12673,160 +13728,163 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] - } - }, - "/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, - "in": "path", - "schema": { - "type": "string" - } - }, - { - "name": "repo_slug", - "description": "The repository.", - "required": true, - "in": "path", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "The retrieved variables.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/paginated_pipeline_variables" - } - } - } - } - }, - "security": [ - { - "oauth2": ["pipeline"] - }, - { - "basic": [] - }, - { - "api_key": [] - } - ], - "x-atlassian-oauth2-scopes": [ - { - "state": "Current", - "scheme": "oauth2", - "scopes": ["read:pipeline:bitbucket"] - } - ] - }, - "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.", - "schema": { - "type": "string" - } - } - }, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/pipeline_variable" - } - } - } - }, - "404": { - "description": "The account or repository does not exist.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - }, - "409": { - "description": "A variable with the provided key already exists.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - } - }, - "security": [ - { - "oauth2": ["pipeline:variable"] - }, - { - "basic": [] - }, - { - "api_key": [] - } ], - "x-atlassian-oauth2-scopes": [ - { - "state": "Current", - "scheme": "oauth2", - "scopes": ["admin:pipeline:bitbucket"] - } - ] + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + } + }, + "/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, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "repo_slug", + "description": "The repository.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "The retrieved variables.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/paginated_pipeline_variables" + } + } + } + } + }, + "security": [ + { + "oauth2": ["pipeline"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:pipeline:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + }, + "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.", + "schema": { + "type": "string" + } + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_variable" + } + } + } + }, + "404": { + "description": "The account or repository does not exist.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "409": { + "description": "A variable with the provided key already exists.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["pipeline:variable"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:pipeline:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pipelines_config/variables/{variable_uuid}": { @@ -12903,7 +13961,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Pipelines"], @@ -12989,7 +14048,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "delete": { "tags": ["Pipelines"], @@ -13057,7 +14117,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/properties/{app_key}/{property_name}": { @@ -13249,7 +14310,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:workspace:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/pullrequests": { @@ -13310,7 +14379,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Pullrequests"], @@ -13386,7 +14456,8 @@ "write:pullrequest:bitbucket" ] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -13449,7 +14520,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -13519,7 +14591,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Pullrequests"], @@ -13597,7 +14670,8 @@ "write:pullrequest:bitbucket" ] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -13669,7 +14743,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -13758,7 +14833,8 @@ "scheme": "oauth2", "scopes": ["write:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Pullrequests"], @@ -13816,7 +14892,8 @@ "write:pullrequest:bitbucket" ] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -13902,7 +14979,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Pullrequests"], @@ -13976,7 +15054,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -14055,7 +15134,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "get": { "tags": ["Pullrequests"], @@ -14110,7 +15190,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Pullrequests"], @@ -14176,7 +15257,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -14185,7 +15267,8 @@ "description": "The id of the comment.", "required": true, "schema": { - "type": "integer" + "type": "integer", + "format": "int64" } }, { @@ -14264,7 +15347,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Pullrequests"], @@ -14329,7 +15413,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -14338,7 +15423,8 @@ "description": "The id of the comment.", "required": true, "schema": { - "type": "integer" + "type": "integer", + "format": "int64" } }, { @@ -14417,7 +15503,68 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + }, + "parameters": [ + { + "name": "pull_request_id", + "in": "path", + "description": "The id of the pull request.", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "repo_slug", + "in": "path", + "description": "This can either be the repository slug or the UUID of the repository,\nsurrounded by curly-braces, for example: `{repository UUID}`.\n", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "workspace", + "in": "path", + "description": "This can either be the workspace ID (slug) or the workspace UUID\nsurrounded by curly-braces, for example: `{workspace UUID}`.\n", + "required": true, + "schema": { + "type": "string" + } + } + ] + }, + "/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/conflicts": { + "get": { + "tags": ["Pullrequests"], + "description": "Redirects to the [repository file conflicts](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-file-conflicts-spec-get)\nwith the revspec that corresponds to the pull request.", + "summary": "Get file conflicts for a pull request", + "responses": { + "302": { + "description": "Redirects to the [repository file conflicts](/cloud/bitbucket/rest/api-group-commits/#api-repositories-workspace-repo-slug-file-conflicts-spec-get) with the\nrevspec that corresponds to the pull request.\n" + } + }, + "security": [ + { + "oauth2": ["pullrequest"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:pullrequest:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -14496,7 +15643,8 @@ "write:pullrequest:bitbucket" ] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -14555,7 +15703,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -14614,7 +15763,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -14719,7 +15869,8 @@ "write:pullrequest:bitbucket" ] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -14787,7 +15938,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -14855,7 +16007,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -14944,7 +16097,8 @@ "scheme": "oauth2", "scopes": ["write:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Pullrequests"], @@ -15012,7 +16166,8 @@ "write:pullrequest:bitbucket" ] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -15111,7 +16266,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -15236,7 +16392,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Pullrequests"], @@ -15320,7 +16477,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -15399,7 +16557,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "get": { "tags": ["Pullrequests"], @@ -15454,7 +16613,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Pullrequests"], @@ -15530,7 +16690,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -15557,7 +16718,8 @@ "description": "The ID of the task.", "required": true, "schema": { - "type": "integer" + "type": "integer", + "format": "int64" } }, { @@ -15787,7 +16949,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:workspace:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/repositories/{workspace}/{repo_slug}/refs": { @@ -15862,7 +17032,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -16075,7 +17246,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Refs"], @@ -16133,7 +17305,8 @@ "read:repository:bitbucket" ] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -16203,7 +17376,8 @@ "scheme": "oauth2", "scopes": ["write:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "get": { "tags": ["Refs"], @@ -16368,7 +17542,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -16472,11 +17647,12 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Refs"], - "description": "Creates a new tag in the specified repository.\n\nThe payload of the POST should consist of a JSON document that\ncontains the name of the tag and the target hash.\n\n```\ncurl https://api.bitbucket.org/2.0/repositories/jdoe/myrepo/refs/tags \\\n-s -u jdoe -X POST -H \"Content-Type: application/json\" \\\n-d '{\n \"name\" : \"new-tag-name\",\n \"target\" : {\n \"hash\" : \"a1b2c3d4e5f6\",\n }\n}'\n```\n\nThis endpoint does support using short hash prefixes for the commit\nhash, but it may return a 400 response if the provided prefix is\nambiguous. Using a full commit hash is the preferred approach.", + "description": "Creates a new annotated tag in the specified repository.\n\nThe payload of the POST should consist of a JSON document that\ncontains the name of the tag and the target hash.\n\n```\ncurl https://api.bitbucket.org/2.0/repositories/jdoe/myrepo/refs/tags \\\n-s -u jdoe -X POST -H \"Content-Type: application/json\" \\\n-d '{\n \"name\" : \"new-tag-name\",\n \"target\" : {\n \"hash\" : \"a1b2c3d4e5f6\",\n }\n}'\n```\n\nThis endpoint does support using short hash prefixes for the commit\nhash, but it may return a 400 response if the provided prefix is\nambiguous. Using a full commit hash is the preferred approach.\n\nA message for the tag object may optionally be provided. If it is\nomitted or the provided message is empty, a default message of\n\"Added tag for changeset \" will be used.", "summary": "Create a tag", "responses": { "201": { @@ -16530,7 +17706,8 @@ "read:repository:bitbucket" ] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -16600,7 +17777,8 @@ "scheme": "oauth2", "scopes": ["write:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "get": { "tags": ["Refs"], @@ -16655,7 +17833,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -16743,7 +17922,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Source", "Repositories"], @@ -16796,7 +17976,7 @@ { "name": "parents", "in": "query", - "description": "\nA comma-separated list of SHA1s of the commits that should\nbe the parents of the newly created commit.\n\nWhen omitted, the new commit will inherit from and become\na child of the main branch's tip/HEAD commit.\n\nWhen more than one SHA1 is provided, the first SHA1\nidentifies the commit from which the content will be\ninherited.\".", + "description": "\n#### Deprecation Notice:\nSupport for specifying multiple parent\ncommits is deprecated and will be removed in a future release.\nOnly a single SHA1 is accepted.\n\nA SHA1 of the commit that should be the parent of the newly created\ncommit. When omitted, the new commit will inherit from and\nbecome a child of the main branch's tip/HEAD commit.", "required": false, "schema": { "type": "string" @@ -16838,7 +18018,8 @@ "scheme": "oauth2", "scopes": ["write:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -16954,7 +18135,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -17032,7 +18214,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -17092,7 +18283,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:issue:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -17158,7 +18358,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -17184,7 +18385,7 @@ "/snippets": { "get": { "tags": ["Snippets"], - "description": "Returns all snippets. Like pull requests, repositories and workspaces, the\nfull set of snippets is defined by what the current user has access to.\n\nThis includes all snippets owned by any of the workspaces the user is a member of,\nor snippets by other users that the current user is either watching or has collaborated\non (for instance by commenting on it).\n\nTo limit the set of returned snippets, apply the\n`?role=[owner|contributor|member]` query parameter where the roles are\ndefined as follows:\n\n* `owner`: all snippets owned by the current user\n* `contributor`: all snippets owned by, or watched by the current user\n* `member`: created in a workspaces or watched by the current user\n\nWhen no role is specified, all public snippets are returned, as well as all\nprivately owned snippets watched or commented on.\n\nThe returned response is a normal paginated JSON list. This endpoint\nonly supports `application/json` responses and no\n`multipart/form-data` or `multipart/related`. As a result, it is not\npossible to include the file contents.", + "description": "**This endpoint is deprecated. Please use the\n[workspace scoped alternative](/cloud/bitbucket/rest/api-group-snippets/#api-snippets-workspace-get).**\n\nReturns all snippets. Like pull requests, repositories and workspaces, the\nfull set of snippets is defined by what the current user has access to.\n\nThis includes all snippets owned by any of the workspaces the user is a member of,\nor snippets by other users that the current user is either watching or has collaborated\non (for instance by commenting on it).\n\nTo limit the set of returned snippets, apply the\n`?role=[owner|contributor|member]` query parameter where the roles are\ndefined as follows:\n\n* `owner`: all snippets owned by the current user\n* `contributor`: all snippets owned by, or watched by the current user\n* `member`: created in a workspaces or watched by the current user\n\nWhen no role is specified, all public snippets are returned, as well as all\nprivately owned snippets watched or commented on.\n\nThe returned response is a normal paginated JSON list. This endpoint\nonly supports `application/json` responses and no\n`multipart/form-data` or `multipart/related`. As a result, it is not\npossible to include the file contents.", "summary": "List snippets", "responses": { "200": { @@ -17230,7 +18431,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "post": { "tags": ["Snippets"], @@ -17279,7 +18489,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket", "write:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [] }, @@ -17332,7 +18550,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "post": { "tags": ["Snippets"], @@ -17391,7 +18617,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket", "write:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -17455,7 +18689,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["delete:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Snippets"], @@ -17573,7 +18815,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "put": { "tags": ["Snippets"], @@ -17671,7 +18921,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket", "write:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -17741,7 +18999,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "post": { "tags": ["Snippets"], @@ -17808,7 +19074,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket", "write:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -17871,7 +19145,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Snippets"], @@ -17919,7 +19201,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "put": { "tags": ["Snippets"], @@ -17978,7 +19268,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket", "write:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -17987,7 +19285,8 @@ "description": "The id of the comment.", "required": true, "schema": { - "type": "integer" + "type": "integer", + "format": "int64" } }, { @@ -18057,7 +19356,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -18127,7 +19434,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -18207,7 +19522,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -18279,7 +19602,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Snippets"], @@ -18310,7 +19641,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "put": { "tags": ["Snippets"], @@ -18351,7 +19690,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -18495,7 +19842,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Snippets"], @@ -18593,7 +19948,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "put": { "tags": ["Snippets"], @@ -18711,7 +20074,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket", "write:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -18797,7 +20168,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -18888,7 +20267,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -18960,7 +20347,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:snippet:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -19288,8 +20683,9 @@ "/teams/{username}/search/code": { "get": { "tags": ["Search"], + "deprecated": true, "summary": "Search for code in a team's repositories", - "description": "Search for code in the repositories of the specified team.\n\nNote that searches can match in the file's text (`content_matches`),\nthe path (`path_matches`), or both.\n\nYou can use the same syntax for the search query as in the UI.\nE.g. to search for \"foo\" only within the repository \"demo\",\nuse the query parameter `search_query=foo+repo:demo`.\n\nSimilar to other APIs, you can request more fields using a\n`fields` query parameter. E.g. to get some more information about\nthe repository of matched files, use the query parameter\n`search_query=foo&fields=%2Bvalues.file.commit.repository`\n(the `%2B` is a URL-encoded `+`).\n\nTry `fields=%2Bvalues.*.*.*.*` to get an idea what's possible.\n", + "description": "This API will be deprecated on November 1, 2026.\n\nSearch for code in the repositories of the specified team.\n\nNote that searches can match in the file's text (`content_matches`),\nthe path (`path_matches`), or both.\n\nYou can use the same syntax for the search query as in the UI.\nE.g. to search for \"foo\" only within the repository \"demo\",\nuse the query parameter `search_query=foo+repo:demo`.\n\nSimilar to other APIs, you can request more fields using a\n`fields` query parameter. E.g. to get some more information about\nthe repository of matched files, use the query parameter\n`search_query=foo&fields=%2Bvalues.file.commit.repository`\n(the `%2B` is a URL-encoded `+`).\n\nTry `fields=%2Bvalues.*.*.*.*` to get an idea what's possible.\n", "operationId": "searchTeam", "parameters": [ { @@ -19459,7 +20855,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:repository:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] } }, "/user": { @@ -19499,7 +20903,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:user:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [] }, @@ -19530,7 +20942,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:user:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [] }, @@ -19561,7 +20981,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:user:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -19578,7 +21006,7 @@ "/user/permissions/repositories": { "get": { "tags": ["Repositories"], - "description": "Returns an object for each repository the caller has explicit access\nto and their effective permission — the highest level of permission the\ncaller has. This does not return public repositories that the user was\nnot granted any specific permission in, and does not distinguish between\nexplicit and implicit privileges.\n\nPermissions can be:\n\n* `admin`\n* `write`\n* `read`\n\nResults may be further [filtered or sorted](/cloud/bitbucket/rest/intro/#filtering) by\nrepository or permission by adding the following query string\nparameters:\n\n* `q=repository.name=\"geordi\"` or `q=permission>\"read\"`\n* `sort=repository.name`\n\nNote that the query parameter values need to be URL escaped so that `=`\nwould become `%3D`.", + "description": "**This endpoint is deprecated. Please use the\n[workspace scoped alternative](/cloud/bitbucket/rest/api-group-repositories/#api-user-workspaces-workspace-permissions-repositories-get).**\n\nReturns an object for each repository the caller has explicit access\nto and their effective permission — the highest level of permission the\ncaller has. This does not return public repositories that the user was\nnot granted any specific permission in, and does not distinguish between\nexplicit and implicit privileges.\n\nPermissions can be:\n\n* `admin`\n* `write`\n* `read`\n\nResults may be further [filtered or sorted](/cloud/bitbucket/rest/intro/#filtering) by\nrepository or permission by adding the following query string\nparameters:\n\n* `q=repository.name=\"geordi\"` or `q=permission>\"read\"`\n* `sort=repository.name`\n\nNote that the query parameter values need to be URL escaped so that `=`\nwould become `%3D`.", "summary": "List repository permissions for a user", "responses": { "200": { @@ -19649,99 +21077,419 @@ { "api_key": [] } - ] - }, - "parameters": [] - }, - "/user/permissions/workspaces": { - "get": { - "tags": ["Workspaces"], - "description": "Returns an object for each workspace the caller is a member of, and\ntheir effective role - the highest level of privilege the caller has.\nIf a user is a member of multiple groups with distinct roles, only the\nhighest level is returned.\n\nPermissions can be:\n\n* `owner`\n* `collaborator`\n* `member`\n\n**The `collaborator` role is being removed from the Bitbucket Cloud API. For more information,\nsee the [deprecation announcement](/cloud/bitbucket/deprecation-notice-collaborator-role/).**\n\n**When you move your administration from Bitbucket Cloud to admin.atlassian.com, the following fields on\n`workspace_membership` will no longer be present: `last_accessed` and `added_on`. See the\n[deprecation announcement](/cloud/bitbucket/announcement-breaking-change-workspace-membership/).**\n\nResults may be further [filtered or sorted](/cloud/bitbucket/rest/intro/#filtering) by\nworkspace or permission by adding the following query string parameters:\n\n* `q=workspace.slug=\"bbworkspace1\"` or `q=permission=\"owner\"`\n* `sort=workspace.slug`\n\nNote that the query parameter values need to be URL escaped so that `=`\nwould become `%3D`.", - "summary": "List workspaces for the current user", - "responses": { - "200": { - "description": "All of the workspace memberships for the authenticated user.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/paginated_workspace_memberships" - }, - "examples": { - "response": { - "value": { - "pagelen": 10, - "page": 1, - "size": 1, - "values": [ - { - "type": "workspace_membership", - "permission": "owner", - "last_accessed": "2019-03-07T12:35:02.900024+00:00", - "added_on": "2018-10-11T17:42:02.961424+00:00", - "user": { - "type": "user", - "uuid": "{470c176d-3574-44ea-bb41-89e8638bcca4}", - "nickname": "evzijst", - "display_name": "Erik van Zijst" - }, - "workspace": { - "type": "workspace", - "uuid": "{a15fb181-db1f-48f7-b41f-e1eff06929d6}", - "slug": "bbworkspace1", - "name": "Atlassian Bitbucket" - } - } - ] - } - } - } - } - } - }, - "401": { - "description": "The request wasn't authenticated.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - } - }, - "parameters": [ - { - "name": "q", - "in": "query", - "description": "\nQuery string to narrow down the response. See\n[filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for details.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "sort", - "in": "query", - "description": "\nName of a response property to sort results. See\n[filtering and sorting](/cloud/bitbucket/rest/intro/#sorting-query-results)\nfor details.\n", - "required": false, - "schema": { - "type": "string" - } - } ], - "security": [ - { - "oauth2": ["account"] - }, - { - "basic": [] - }, + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:repository:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] + }, + "parameters": [] + }, + "/user/permissions/workspaces": { + "get": { + "tags": ["Workspaces"], + "description": "**This endpoint is deprecated. Please use the supported alternatives:**\n* [List workspaces for user](/cloud/bitbucket/rest/api-group-workspaces/#api-user-workspaces-get)\n* [Get user permission on a workspace](/cloud/bitbucket/rest/api-group-workspaces/#api-user-workspaces-workspace-permission-get)\n\nReturns an object for each workspace the caller is a member of, and\ntheir effective role - the highest level of privilege the caller has.\nIf a user is a member of multiple groups with distinct roles, only the\nhighest level is returned.\n\nPermissions can be:\n\n* `owner`\n* `collaborator`\n* `member`\n\n**The `collaborator` role is being removed from the Bitbucket Cloud API. For more information,\nsee the [deprecation announcement](/cloud/bitbucket/deprecation-notice-collaborator-role/).**\n\n**When you move your administration from Bitbucket Cloud to admin.atlassian.com, the following fields on\n`workspace_membership` will no longer be present: `last_accessed` and `added_on`. See the\n[deprecation announcement](/cloud/bitbucket/announcement-breaking-change-workspace-membership/).**\n\nResults may be further [filtered or sorted](/cloud/bitbucket/rest/intro/#filtering) by\nworkspace or permission by adding the following query string parameters:\n\n* `q=workspace.slug=\"bbworkspace1\"` or `q=permission=\"owner\"`\n* `sort=workspace.slug`\n\nNote that the query parameter values need to be URL escaped so that `=`\nwould become `%3D`.", + "summary": "List workspaces for the current user", + "responses": { + "200": { + "description": "All of the workspace memberships for the authenticated user.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/paginated_workspace_memberships" + }, + "examples": { + "response": { + "value": { + "pagelen": 10, + "page": 1, + "size": 1, + "values": [ + { + "type": "workspace_membership", + "permission": "owner", + "last_accessed": "2019-03-07T12:35:02.900024+00:00", + "added_on": "2018-10-11T17:42:02.961424+00:00", + "user": { + "type": "user", + "uuid": "{470c176d-3574-44ea-bb41-89e8638bcca4}", + "nickname": "evzijst", + "display_name": "Erik van Zijst" + }, + "workspace": { + "type": "workspace", + "uuid": "{a15fb181-db1f-48f7-b41f-e1eff06929d6}", + "slug": "bbworkspace1", + "name": "Atlassian Bitbucket" + } + } + ] + } + } + } + } + } + }, + "401": { + "description": "The request wasn't authenticated.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "parameters": [ + { + "name": "q", + "in": "query", + "description": "\nQuery string to narrow down the response. See\n[filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for details.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "sort", + "in": "query", + "description": "\nName of a response property to sort results. See\n[filtering and sorting](/cloud/bitbucket/rest/intro/#sorting-query-results)\nfor details.\n", + "required": false, + "schema": { + "type": "string" + } + } + ], + "security": [ + { + "oauth2": ["account"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:workspace:bitbucket", "read:user:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] + }, + "parameters": [] + }, + "/user/workspaces": { + "get": { + "tags": ["Workspaces"], + "description": "Returns an object for each workspace accessible to the caller. This object\nalso contains details on whether the caller has admin permissions on the workspace\n(`\"administrator\" = true`) or not (`\"administrator\" = false`).\n\nQueries support filtering based on administrator permissions,\n[sorting](/cloud/bitbucket/rest/intro/#sorting-query-results) or\n[filtering](/cloud/bitbucket/rest/intro/#filtering) by `slug`. Results can\nbe [paginated](/cloud/bitbucket/rest/intro/#pagination).", + "summary": "List workspaces for the current user", + "responses": { + "200": { + "description": "The list of workspaces accessible by the authenticated user.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/paginated_workspace_access" + }, + "examples": { + "response": { + "value": { + "pagelen": 25, + "page": 1, + "size": 1, + "values": [ + { + "administrator": true, + "type": "workspace_access", + "workspace": { + "links": { + "avatar": { + "href": "https://api.bitbucket.org/workspaces/bbworkspace1/avatar/" + }, + "self": { + "href": "https://api.bitbucket.org/2.0/workspaces/bbworkspace1" + } + }, + "slug": "bbworkspace1", + "type": "workspace_base", + "uuid": "{470c176d-3574-44ea-bb41-89e8638bcca4}" + } + } + ] + } + } + } + } + } + }, + "400": { + "description": "The request was invalid.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "401": { + "description": "The request wasn't authenticated.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "parameters": [ + { + "name": "sort", + "in": "query", + "description": "Name of a response property to sort results (only slug is supported).", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "administrator", + "in": "query", + "description": "Filter workspaces based on which ones the caller has admin permissions or not.", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "security": [ + { + "oauth2": ["account"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:workspace:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + }, + "parameters": [] + }, + "/user/workspaces/{workspace}/permission": { + "get": { + "tags": ["Workspaces"], + "description": "Returns the caller's effective role; as in, the highest level of privilege\nthe caller has for the workspace.\nIf the calling user is a member of multiple groups with distinct roles, only the\nhighest level is returned.\n\nPermissions can be:\n\n* `owner`\n* `create-project`\n* `collaborator` (deprecated; see this\n[deprecation announcement](/cloud/bitbucket/deprecation-notice-collaborator-role/) for more details)\n* `member`", + "summary": "Get user permission on a workspace", + "responses": { + "200": { + "description": "The user that is part of a workspace.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/workspace_membership" + } + } + } + }, + "401": { + "description": "The request wasn't authenticated.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "403": { + "description": "The requesting user does not have access to the workspace.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["account"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:workspace:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + }, + "parameters": [ + { + "name": "workspace", + "in": "path", + "description": "This can either be the workspace ID (slug) or the workspace UUID\nsurrounded by curly-braces, for example: `{workspace UUID}`.\n", + "required": true, + "schema": { + "type": "string" + } + } + ] + }, + "/user/workspaces/{workspace}/permissions/repositories": { + "get": { + "tags": ["Repositories"], + "description": "Returns an object for each repository the caller has explicit access to in the\nspecified workspace and their effective permission — the highest level of\npermission the caller has. This does not return public repositories that the\nuser was not granted any specific permission in, and does not distinguish between\nexplicit and implicit privileges.\n\nPermissions can be:\n\n* `admin`\n* `write`\n* `read`\n\nResults may be further [filtered or sorted](/cloud/bitbucket/rest/intro/#filtering) by\nrepository or permission by adding the following query string\nparameters:\n\n* `q=repository.name=\"bits\"` or `q=permission>\"read\"`\n* `sort=repository.name`\n\nNote that the query parameter values need to be URL escaped so that `=`\nwould become `%3D`.", + "summary": "List repository permissions in a workspace for a user", + "responses": { + "200": { + "description": "The list of repository permissions for the authenticated user in the specified workspace.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/paginated_repository_permissions" + }, + "examples": { + "response": { + "value": { + "pagelen": 10, + "values": [ + { + "type": "repository_permission", + "user": { + "type": "user", + "nickname": "jessyeh", + "display_name": "Jessica Yeh", + "uuid": "{d301abfa-d676-4ee0-88be-962ce7443567}" + }, + "repository": { + "type": "repository", + "name": "bits", + "full_name": "bitbucket/bits", + "uuid": "{85d67b4e-571d-44e9-a507-fa476935aa98}" + }, + "permission": "admin" + } + ], + "page": 1, + "size": 1 + } + } + } + } + } + }, + "400": { + "description": "The request was invalid.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "401": { + "description": "The request wasn't authenticated.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "403": { + "description": "The requesting user does not have access to the workspace.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "parameters": [ + { + "name": "q", + "in": "query", + "description": "\nQuery string to narrow down the response as per\n[filtering and sorting](/cloud/bitbucket/rest/intro/#filtering).", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "sort", + "in": "query", + "description": "\nName of a response property sort the result by as per\n[filtering and sorting](/cloud/bitbucket/rest/intro/#filtering).", + "required": false, + "schema": { + "type": "string" + } + } + ], + "security": [ + { + "oauth2": ["account", "repository"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ { - "api_key": [] + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, - "parameters": [] + "parameters": [ + { + "name": "workspace", + "in": "path", + "description": "This can either be the workspace ID (slug) or the workspace UUID\nsurrounded by curly-braces, for example: `{workspace UUID}`.\n", + "required": true, + "schema": { + "type": "string" + } + } + ] }, "/users/{selected_user}": { "get": { @@ -19780,7 +21528,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:user:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -19879,7 +21635,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:gpg-key:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "post": { "tags": ["GPG"], @@ -19978,7 +21742,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:gpg-key:bitbucket", "write:gpg-key:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -20035,7 +21807,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["delete:gpg-key:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["GPG"], @@ -20114,7 +21894,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:gpg-key:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -20592,14 +22380,23 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:workspace:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/users/{selected_user}/search/code": { "get": { "tags": ["Search"], + "deprecated": true, "summary": "Search for code in a user's repositories", - "description": "Search for code in the repositories of the specified user.\n\nNote that searches can match in the file's text (`content_matches`),\nthe path (`path_matches`), or both.\n\nYou can use the same syntax for the search query as in the UI.\nE.g. to search for \"foo\" only within the repository \"demo\",\nuse the query parameter `search_query=foo+repo:demo`.\n\nSimilar to other APIs, you can request more fields using a\n`fields` query parameter. E.g. to get some more information about\nthe repository of matched files, use the query parameter\n`search_query=foo&fields=%2Bvalues.file.commit.repository`\n(the `%2B` is a URL-encoded `+`).\n", + "description": "This API will be deprecated on November 1, 2026.\n\nSearch for code in the repositories of the specified user.\n\nNote that searches can match in the file's text (`content_matches`),\nthe path (`path_matches`), or both.\n\nYou can use the same syntax for the search query as in the UI.\nE.g. to search for \"foo\" only within the repository \"demo\",\nuse the query parameter `search_query=foo+repo:demo`.\n\nSimilar to other APIs, you can request more fields using a\n`fields` query parameter. E.g. to get some more information about\nthe repository of matched files, use the query parameter\n`search_query=foo&fields=%2Bvalues.file.commit.repository`\n(the `%2B` is a URL-encoded `+`).\n", "operationId": "searchAccount", "parameters": [ { @@ -20769,7 +22566,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:repository:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] } }, "/users/{selected_user}/ssh-keys": { @@ -20857,7 +22662,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:ssh-key:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "post": { "tags": ["SSH"], @@ -20967,7 +22780,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:ssh-key:bitbucket", "write:ssh-key:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -21024,7 +22845,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["delete:ssh-key:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["SSH"], @@ -21103,7 +22932,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:ssh-key:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "put": { "tags": ["SSH"], @@ -21202,7 +23039,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:ssh-key:bitbucket", "write:ssh-key:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -21228,7 +23073,7 @@ "/workspaces": { "get": { "tags": ["Workspaces"], - "description": "Returns a list of workspaces accessible by the authenticated user.\n\nResults may be further [filtered or sorted](/cloud/bitbucket/rest/intro/#filtering) by\nworkspace or permission by adding the following query string parameters:\n\n* `q=slug=\"bbworkspace1\"` or `q=is_private=true`\n* `sort=created_on`\n\nNote that the query parameter values need to be URL escaped so that `=`\nwould become `%3D`.\n\n**The `collaborator` role is being removed from the Bitbucket Cloud API. For more information,\nsee the [deprecation announcement](/cloud/bitbucket/deprecation-notice-collaborator-role/).**", + "description": "**This endpoint is deprecated. Please use the\n[supported alternative](/cloud/bitbucket/rest/api-group-workspaces/#api-user-workspaces-get).**\n\nReturns a list of workspaces accessible by the authenticated user.\n\nResults may be further [filtered or sorted](/cloud/bitbucket/rest/intro/#filtering) by\nworkspace or permission by adding the following query string parameters:\n\n* `q=slug=\"bbworkspace1\"` or `q=is_private=true`\n* `sort=created_on`\n\nNote that the query parameter values need to be URL escaped so that `=`\nwould become `%3D`.\n\n**The `collaborator` role is being removed from the Bitbucket Cloud API. For more information,\nsee the [deprecation announcement](/cloud/bitbucket/deprecation-notice-collaborator-role/).**", "summary": "List workspaces for user", "responses": { "200": { @@ -21337,7 +23182,16 @@ { "api_key": [] } - ] + ], + "deprecated": true, + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:user:bitbucket", "read:workspace:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [] }, @@ -21378,7 +23232,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:workspace:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -21439,7 +23301,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:webhook:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "post": { "tags": ["Workspaces", "Webhooks"], @@ -21495,7 +23365,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:webhook:bitbucket", "write:webhook:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -21549,7 +23427,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["delete:webhook:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Workspaces", "Webhooks"], @@ -21587,7 +23473,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:webhook:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "put": { "tags": ["Workspaces", "Webhooks"], @@ -21635,7 +23529,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:webhook:bitbucket", "write:webhook:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -21712,7 +23614,8 @@ "scheme": "oauth2", "scopes": ["read:workspace:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -21780,7 +23683,8 @@ "scheme": "oauth2", "scopes": ["read:workspace:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -21900,7 +23804,8 @@ "scheme": "oauth2", "scopes": ["read:workspace:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -22034,7 +23939,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -22153,7 +24059,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -22266,6 +24173,320 @@ ] } }, + "/workspaces/{workspace}/pipelines-config/runners": { + "get": { + "tags": ["Pipelines"], + "summary": "Get workspace runners", + "description": "Retrieve workspace runners.", + "operationId": "getWorkspaceRunners", + "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" + } + } + ], + "responses": { + "200": { + "description": "The workspace runners.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/paginated_pipeline_runners" + } + } + } + } + }, + "security": [ + { + "oauth2": ["runner"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:runner:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + }, + "post": { + "tags": ["Pipelines"], + "summary": "Create workspace runner", + "description": "Create workspace runner.", + "operationId": "createWorkspaceRunner", + "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" + } + } + ], + "responses": { + "200": { + "description": "The workspace runner.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_runner" + } + } + } + }, + "400": { + "description": "The request body contained invalid properties or runner limit exceeded.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "409": { + "description": "The workspace runner with the provided UUID already exists.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["runner:write"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:runner:bitbucket", "read:runner:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + } + }, + "/workspaces/{workspace}/pipelines-config/runners/{runner_uuid}": { + "get": { + "tags": ["Pipelines"], + "summary": "Get workspace runner", + "description": "Get workspace runner by uuid.", + "operationId": "getWorkspaceRunner", + "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": "runner_uuid", + "description": "The runner uuid.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "The workspace runner.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_runner" + } + } + } + }, + "404": { + "description": "The workspace runner was not found.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["runner"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:runner:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + }, + "put": { + "tags": ["Pipelines"], + "summary": "Update workspace runner", + "description": "Update workspace runner.", + "operationId": "updateWorkspaceRunner", + "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": "runner_uuid", + "description": "The runner uuid.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "The workspace runner.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pipeline_runner" + } + } + } + }, + "404": { + "description": "The workspace runner was not found.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["runner:write"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:runner:bitbucket", "write:runner:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + }, + "delete": { + "tags": ["Pipelines"], + "summary": "Delete workspace runner", + "description": "Delete workspace runner by uuid.", + "operationId": "deleteWorkspaceRunner", + "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": "runner_uuid", + "description": "The runner uuid.", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "The workspace runner was deleted." + }, + "404": { + "description": "The workspace runner was not found.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["runner:write"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["write:runner:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + } + }, "/workspaces/{workspace}/pipelines-config/variables": { "get": { "tags": ["Pipelines"], @@ -22312,7 +24533,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Pipelines"], @@ -22390,7 +24612,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/workspaces/{workspace}/pipelines-config/variables/{variable_uuid}": { @@ -22458,7 +24681,8 @@ "scheme": "oauth2", "scopes": ["read:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Pipelines"], @@ -22527,7 +24751,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "delete": { "tags": ["Pipelines"], @@ -22586,7 +24811,8 @@ "scheme": "oauth2", "scopes": ["admin:pipeline:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] } }, "/workspaces/{workspace}/projects": { @@ -22633,7 +24859,8 @@ "scheme": "oauth2", "scopes": ["read:project:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "post": { "tags": ["Projects"], @@ -22699,7 +24926,8 @@ "scheme": "oauth2", "scopes": ["admin:project:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -22760,7 +24988,8 @@ "scheme": "oauth2", "scopes": ["admin:project:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "get": { "tags": ["Projects", "Workspaces"], @@ -22825,7 +25054,8 @@ "scheme": "oauth2", "scopes": ["read:project:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Projects"], @@ -22909,7 +25139,8 @@ "scheme": "oauth2", "scopes": ["admin:project:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -23034,7 +25265,8 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -23165,7 +25397,8 @@ "scheme": "oauth2", "scopes": ["admin:project:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Branching model"], @@ -23275,7 +25508,8 @@ "scheme": "oauth2", "scopes": ["admin:project:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -23379,7 +25613,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -23459,7 +25694,8 @@ "scheme": "oauth2", "scopes": ["admin:project:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "get": { "tags": ["Projects"], @@ -23533,7 +25769,8 @@ "scheme": "oauth2", "scopes": ["read:pullrequest:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Projects"], @@ -23620,7 +25857,8 @@ "scheme": "oauth2", "scopes": ["admin:project:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -23735,7 +25973,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:project:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "post": { "tags": ["Deployments"], @@ -23822,7 +26068,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:project:bitbucket", "write:ssh-key:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -23885,7 +26139,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:project:bitbucket", "delete:ssh-key:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Deployments"], @@ -23967,7 +26229,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:project:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -24102,7 +26372,8 @@ "scheme": "oauth2", "scopes": ["read:project:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -24175,7 +26446,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:project:bitbucket", "delete:permission:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "get": { "tags": ["Projects"], @@ -24258,7 +26537,8 @@ "scheme": "oauth2", "scopes": ["read:project:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "put": { "tags": ["Projects"], @@ -24357,7 +26637,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:project:bitbucket", "write:permission:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -24494,7 +26782,8 @@ "scheme": "oauth2", "scopes": ["read:project:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] }, "parameters": [ { @@ -24557,82 +26846,198 @@ } } }, - "security": [ - { - "oauth2": ["project:admin"] - }, - { - "basic": [] - }, - { - "api_key": [] - } - ] - }, - "get": { - "tags": ["Projects"], - "description": "Returns the explicit user permission for a given user and project.\n\nOnly users with admin permission for the project may access this resource.\n\nPermissions can be:\n\n* `admin`\n* `create-repo`\n* `write`\n* `read`\n* `none`", - "summary": "Get an explicit user permission for a project", - "responses": { - "200": { - "description": "Explicit user permission for user and project", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/project_user_permission" - }, - "examples": { - "response": { - "value": { - "type": "project_user_permission", - "user": { - "type": "user", - "display_name": "Colin Cameron", - "uuid": "{d301aafa-d676-4ee0-88be-962be7417567}", - "account_id": "557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a" - }, - "permission": "admin", - "links": { - "self": { - "href": "https://api.bitbucket.org/2.0/workspaces/atlassian_tutorial/projects/PRJ/permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a" - } - } - } - } - } - } - } - }, - "401": { - "description": "The user couldn't be authenticated.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - }, - "403": { - "description": "The requesting user isn't an admin of the project.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - }, - "404": { - "description": "One or more of the workspace, project, and selected user doesn't exist for the given identifiers or the requesting user is not authenticated", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - } + "security": [ + { + "oauth2": ["project:admin"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["admin:project:bitbucket", "delete:permission:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] + }, + "get": { + "tags": ["Projects"], + "description": "Returns the explicit user permission for a given user and project.\n\nOnly users with admin permission for the project may access this resource.\n\nPermissions can be:\n\n* `admin`\n* `create-repo`\n* `write`\n* `read`\n* `none`", + "summary": "Get an explicit user permission for a project", + "responses": { + "200": { + "description": "Explicit user permission for user and project", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/project_user_permission" + }, + "examples": { + "response": { + "value": { + "type": "project_user_permission", + "user": { + "type": "user", + "display_name": "Colin Cameron", + "uuid": "{d301aafa-d676-4ee0-88be-962be7417567}", + "account_id": "557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a" + }, + "permission": "admin", + "links": { + "self": { + "href": "https://api.bitbucket.org/2.0/workspaces/atlassian_tutorial/projects/PRJ/permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a" + } + } + } + } + } + } + } + }, + "401": { + "description": "The user couldn't be authenticated.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "403": { + "description": "The requesting user isn't an admin of the project.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "404": { + "description": "One or more of the workspace, project, and selected user doesn't exist for the given identifiers or the requesting user is not authenticated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["project:admin"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:project:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + }, + "put": { + "tags": ["Projects"], + "description": "Updates the explicit user permission for a given user and project. The selected\nuser must be a member of the workspace, and cannot be the workspace owner.\n\nOnly users with admin permission for the project may access this resource.\n\nDue to security concerns, the JWT and OAuth authentication methods are unsupported.\nThis is to ensure integrations and add-ons are not allowed to change permissions.\n\nPermissions can be:\n\n* `admin`\n* `create-repo`\n* `write`\n* `read`", + "summary": "Update an explicit user permission for a project", + "responses": { + "200": { + "description": "Explicit user permission updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/project_user_permission" + }, + "examples": { + "response": { + "value": { + "type": "project_user_permission", + "user": { + "type": "user", + "display_name": "Colin Cameron", + "uuid": "{d301aafa-d676-4ee0-88be-962be7417567}", + "account_id": "557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a" + }, + "permission": "write", + "links": { + "self": { + "href": "https://api.bitbucket.org/2.0/workspaces/atlassian_tutorial/projects/PRJ/permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a" + } + } + } + } + } + } + } + }, + "400": { + "description": "No permission value was provided or the value is invalid (not one of read, write, create-repo, or admin)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "401": { + "description": "The user couldn't be authenticated.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "402": { + "description": "You have reached your plan's user limit and must upgrade before giving access to additional users.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "403": { + "description": "The requesting user isn't an admin of the project, or the authentication method was not via app password.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "404": { + "description": "One or more of the workspace, project, and selected user doesn't exist for the given identifiers or the requesting user is not authenticated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "requestBody": { + "$ref": "#/components/requestBodies/bitbucket.apps.permissions.serializers.ProjectPermissionUpdateSchema" }, "security": [ { @@ -24649,109 +27054,10 @@ { "state": "Current", "scheme": "oauth2", - "scopes": ["read:project:bitbucket"] + "scopes": ["admin:project:bitbucket", "write:permission:bitbucket"] } - ] - }, - "put": { - "tags": ["Projects"], - "description": "Updates the explicit user permission for a given user and project. The selected\nuser must be a member of the workspace, and cannot be the workspace owner.\n\nOnly users with admin permission for the project may access this resource.\n\nDue to security concerns, the JWT and OAuth authentication methods are unsupported.\nThis is to ensure integrations and add-ons are not allowed to change permissions.\n\nPermissions can be:\n\n* `admin`\n* `create-repo`\n* `write`\n* `read`", - "summary": "Update an explicit user permission for a project", - "responses": { - "200": { - "description": "Explicit user permission updated", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/project_user_permission" - }, - "examples": { - "response": { - "value": { - "type": "project_user_permission", - "user": { - "type": "user", - "display_name": "Colin Cameron", - "uuid": "{d301aafa-d676-4ee0-88be-962be7417567}", - "account_id": "557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a" - }, - "permission": "write", - "links": { - "self": { - "href": "https://api.bitbucket.org/2.0/workspaces/atlassian_tutorial/projects/PRJ/permissions-config/users/557058:ba8948b2-49da-43a9-9e8b-e7249b8e324a" - } - } - } - } - } - } - } - }, - "400": { - "description": "No permission value was provided or the value is invalid (not one of read, write, create-repo, or admin)", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - }, - "401": { - "description": "The user couldn't be authenticated.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - }, - "402": { - "description": "You have reached your plan's user limit and must upgrade before giving access to additional users.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - }, - "403": { - "description": "The requesting user isn't an admin of the project, or the authentication method was not via app password.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - }, - "404": { - "description": "One or more of the workspace, project, and selected user doesn't exist for the given identifiers or the requesting user is not authenticated", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/error" - } - } - } - } - }, - "requestBody": { - "$ref": "#/components/requestBodies/bitbucket.apps.permissions.serializers.ProjectPermissionUpdateSchema" - }, - "security": [ - { - "oauth2": ["project:admin"] - }, - { - "basic": [] - }, - { - "api_key": [] - } - ] + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -24831,7 +27137,15 @@ { "api_key": [] } - ] + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:pullrequest:bitbucket"] + } + ], + "x-atlassian-auth-types": ["api-token"] }, "parameters": [ { @@ -24857,8 +27171,9 @@ "/workspaces/{workspace}/search/code": { "get": { "tags": ["Search"], + "deprecated": true, "summary": "Search for code in a workspace", - "description": "Search for code in the repositories of the specified workspace.\n\nNote that searches can match in the file's text (`content_matches`),\nthe path (`path_matches`), or both.\n\nYou can use the same syntax for the search query as in the UI.\nE.g. to search for \"foo\" only within the repository \"demo\",\nuse the query parameter `search_query=foo+repo:demo`.\n\nSimilar to other APIs, you can request more fields using a\n`fields` query parameter. E.g. to get some more information about\nthe repository of matched files, use the query parameter\n`search_query=foo&fields=%2Bvalues.file.commit.repository`\n(the `%2B` is a URL-encoded `+`).\n\nTry `fields=%2Bvalues.*.*.*.*` to get an idea what's possible.\n", + "description": "This API will be deprecated on November 1, 2026.\n\nSearch for code in the repositories of the specified workspace.\n\nNote that searches can match in the file's text (`content_matches`),\nthe path (`path_matches`), or both.\n\nYou can use the same syntax for the search query as in the UI.\nE.g. to search for \"foo\" only within the repository \"demo\",\nuse the query parameter `search_query=foo+repo:demo`.\n\nSimilar to other APIs, you can request more fields using a\n`fields` query parameter. E.g. to get some more information about\nthe repository of matched files, use the query parameter\n`search_query=foo&fields=%2Bvalues.file.commit.repository`\n(the `%2B` is a URL-encoded `+`).\n\nTry `fields=%2Bvalues.*.*.*.*` to get an idea what's possible.\n", "operationId": "searchWorkspace", "parameters": [ { @@ -25035,8 +27350,81 @@ "scheme": "oauth2", "scopes": ["read:repository:bitbucket"] } - ] + ], + "x-atlassian-auth-types": ["api-token"] } + }, + "/workspaces/{workspace}/settings/gpg/public-key": { + "get": { + "tags": ["Workspaces"], + "description": "Returns the system public GPG key(s). In most cases a single key is returned.\nDuring a key rotation period, two keys may be returned.", + "summary": "Get the workspace system GPG public key(s)", + "responses": { + "200": { + "description": "The system public GPG key(s)." + }, + "401": { + "description": "The request wasn't authenticated.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "403": { + "description": "The requesting user is not a workspace member.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + }, + "404": { + "description": "The workspace does not exist.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/error" + } + } + } + } + }, + "security": [ + { + "oauth2": ["account"] + }, + { + "basic": [] + }, + { + "api_key": [] + } + ], + "x-atlassian-oauth2-scopes": [ + { + "state": "Current", + "scheme": "oauth2", + "scopes": ["read:workspace:bitbucket"] + } + ], + "x-atlassian-auth-types": ["forge-oauth2", "api-token"] + }, + "parameters": [ + { + "name": "workspace", + "in": "path", + "description": "This can either be the workspace ID (slug) or the workspace UUID\nsurrounded by curly-braces, for example: `{workspace UUID}`.\n", + "required": true, + "schema": { + "type": "string" + } + } + ] } }, "tags": [ @@ -25133,7 +27521,7 @@ "description": "A workspace is where you create repositories, collaborate on\nyour code, and organize different streams of work in your Bitbucket\nCloud account. Workspaces replace the use of teams and users in API\ncalls.\n" } ], - "x-revision": "fa7e8ae6f41f", + "x-revision": "f67ad95ad6f2", "x-atlassian-narrative": { "documents": [ { @@ -25141,7 +27529,7 @@ "title": "Authentication methods", "description": "How to authenticate API actions", "icon": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxOTcuNjQ3MyAxODYuODEzOCI+CiAgPGRlZnM+CiAgICA8c3R5bGU+CiAgICAgIC5jbHMtMSB7CiAgICAgICAgaXNvbGF0aW9uOiBpc29sYXRlOwogICAgICB9CgogICAgICAuY2xzLTIgewogICAgICAgIGZpbGw6ICNkZTM1MGI7CiAgICAgIH0KCiAgICAgIC5jbHMtMyB7CiAgICAgICAgZmlsbDogI2ZmNTYzMDsKICAgICAgfQoKICAgICAgLmNscy00IHsKICAgICAgICBmaWxsOiAjZGZlMWU1OwogICAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTsKICAgICAgfQoKICAgICAgLmNscy01IHsKICAgICAgICBmaWxsOiAjZmFmYmZjOwogICAgICB9CgogICAgICAuY2xzLTYgewogICAgICAgIGZpbGw6ICNlYmVjZjA7CiAgICAgIH0KCiAgICAgIC5jbHMtNyB7CiAgICAgICAgZmlsbDogbm9uZTsKICAgICAgICBzdHJva2U6ICMwMDY1ZmY7CiAgICAgICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwOwogICAgICAgIHN0cm9rZS13aWR0aDogMnB4OwogICAgICB9CgogICAgICAuY2xzLTggewogICAgICAgIGZpbGw6ICM1ZTZjODQ7CiAgICAgIH0KCiAgICAgIC5jbHMtOSB7CiAgICAgICAgZmlsbDogIzI1Mzg1ODsKICAgICAgfQoKICAgICAgLmNscy0xMCB7CiAgICAgICAgZmlsbDogIzI2ODRmZjsKICAgICAgfQoKICAgICAgLmNscy0xMSB7CiAgICAgICAgZmlsbDogIzAwNjVmZjsKICAgICAgfQogICAgPC9zdHlsZT4KICA8L2RlZnM+CiAgPHRpdGxlPlNlY3VyaXR5IHdpdGggS2V5PC90aXRsZT4KICA8ZyBjbGFzcz0iY2xzLTEiPgogICAgPGcgaWQ9IkxheWVyXzIiIGRhdGEtbmFtZT0iTGF5ZXIgMiI+CiAgICAgIDxnIGlkPSJPYmplY3RzIj4KICAgICAgICA8cGF0aCBjbGFzcz0iY2xzLTIiIGQ9Ik00Mi4wNjcyLDBoLjYxMTRhOCw4LDAsMCwxLDgsOFYyMy4yMzM4YTAsMCwwLDAsMSwwLDBIMzQuMDY3MmEwLDAsMCwwLDEsMCwwVjhBOCw4LDAsMCwxLDQyLjA2NzIsMFoiLz4KICAgICAgICA8cGF0aCBjbGFzcz0iY2xzLTIiIGQ9Ik0xMDguMjIsMGguNjExNGE4LDgsMCwwLDEsOCw4VjIzLjIzMzhhMCwwLDAsMCwxLDAsMEgxMDAuMjJhMCwwLDAsMCwxLDAsMFY4QTgsOCwwLDAsMSwxMDguMjIsMFoiLz4KICAgICAgICA8cGF0aCBjbGFzcz0iY2xzLTIiIGQ9Ik0xNzQuMzcyMiwwaC42MTE0YTgsOCwwLDAsMSw4LDhWMjMuMjMzOGEwLDAsMCwwLDEsMCwwSDE2Ni4zNzIyYTAsMCwwLDAsMSwwLDBWOEE4LDgsMCwwLDEsMTc0LjM3MjIsMFoiLz4KICAgICAgICA8cmVjdCBjbGFzcz0iY2xzLTIiIHg9IjM0LjA2NzIiIHk9IjIzLjIzMzgiIHdpZHRoPSIxNjMuNTgiIGhlaWdodD0iMTYzLjU4Ii8+CiAgICAgICAgPHBhdGggY2xhc3M9ImNscy0yIiBkPSJNNDIuMDY3MiwwSDU5LjI5YTgsOCwwLDAsMSw4LDhWMjMuMjIyOGEwLDAsMCwwLDEsMCwwSDM0LjA2NzJhMCwwLDAsMCwxLDAsMFY4YTgsOCwwLDAsMSw4LThaIi8+CiAgICAgICAgPHBhdGggY2xhc3M9ImNscy0yIiBkPSJNMTA3LjI0NTgsMGgxNy4yMjI4YTgsOCwwLDAsMSw4LDhWMjMuMjIyOGEwLDAsMCwwLDEsMCwwSDk5LjI0NThhMCwwLDAsMCwxLDAsMFY4YTgsOCwwLDAsMSw4LThaIi8+CiAgICAgICAgPHBhdGggY2xhc3M9ImNscy0yIiBkPSJNMTcyLjQyNDQsMGgxNy4yMjI4YTgsOCwwLDAsMSw4LDhWMjMuMjIyOGEwLDAsMCwwLDEsMCwwSDE2NC40MjQ0YTAsMCwwLDAsMSwwLDBWOGE4LDgsMCwwLDEsOC04WiIvPgogICAgICAgIDxyZWN0IGNsYXNzPSJjbHMtMyIgeD0iMTcuNDU1OCIgeT0iMjMuMjMzOCIgd2lkdGg9IjE2My41OCIgaGVpZ2h0PSIxNjMuNTgiLz4KICAgICAgICA8cGF0aCBjbGFzcz0iY2xzLTMiIGQ9Ik0yNS40NTU4LDBINDIuNjc4NmE4LDgsMCwwLDEsOCw4VjIzLjIyMjhhMCwwLDAsMCwxLDAsMEgxNy40NTU4YTAsMCwwLDAsMSwwLDBWOEE4LDgsMCwwLDEsMjUuNDU1OCwwWiIvPgogICAgICAgIDxwYXRoIGNsYXNzPSJjbHMtMyIgZD0iTTkwLjYzNDQsMGgxNy4yMjI4YTgsOCwwLDAsMSw4LDhWMjMuMjIyOGEwLDAsMCwwLDEsMCwwSDgyLjYzNDRhMCwwLDAsMCwxLDAsMFY4QTgsOCwwLDAsMSw5MC42MzQ0LDBaIi8+CiAgICAgICAgPHBhdGggY2xhc3M9ImNscy0zIiBkPSJNMTU1LjgxMywwaDE3LjIyMjhhOCw4LDAsMCwxLDgsOFYyMy4yMjI4YTAsMCwwLDAsMSwwLDBIMTQ3LjgxM2EwLDAsMCwwLDEsMCwwVjhBOCw4LDAsMCwxLDE1NS44MTMsMFoiLz4KICAgICAgICA8cGF0aCBjbGFzcz0iY2xzLTMiIGQ9Ik0yNS40NTU4LDBINDIuNjc4NmE4LDgsMCwwLDEsOCw4VjIzLjIyMjhhMCwwLDAsMCwxLDAsMEgxNy40NTU4YTAsMCwwLDAsMSwwLDBWOEE4LDgsMCwwLDEsMjUuNDU1OCwwWiIvPgogICAgICAgIDxwYXRoIGNsYXNzPSJjbHMtMyIgZD0iTTkwLjYzNDQsMGgxNy4yMjI4YTgsOCwwLDAsMSw4LDhWMjMuMjIyOGEwLDAsMCwwLDEsMCwwSDgyLjYzNDRhMCwwLDAsMCwxLDAsMFY4QTgsOCwwLDAsMSw5MC42MzQ0LDBaIi8+CiAgICAgICAgPHBhdGggY2xhc3M9ImNscy0zIiBkPSJNMTU1LjgxMywwaDE3LjIyMjhhOCw4LDAsMCwxLDgsOFYyMy4yMjI4YTAsMCwwLDAsMSwwLDBIMTQ3LjgxM2EwLDAsMCwwLDEsMCwwVjhBOCw4LDAsMCwxLDE1NS44MTMsMFoiLz4KICAgICAgICA8cmVjdCBjbGFzcz0iY2xzLTIiIHg9IjM1Ljc1OTYiIHk9IjU2LjgwNjUiIHdpZHRoPSIzMy4yMjI4IiBoZWlnaHQ9IjE1LjYwMzgiLz4KICAgICAgICA8cmVjdCBjbGFzcz0iY2xzLTIiIHg9IjEzMS4yMDE2IiB5PSIxMzYuOTYxNSIgd2lkdGg9IjMzLjIyMjgiIGhlaWdodD0iMTUuNjAzOCIvPgogICAgICAgIDxwYXRoIGNsYXNzPSJjbHMtNCIgZD0iTTU3LjM3MDksNzEuNjAzNmg3MC43NWE5LDksMCwwLDEsOSw5djM1LjM3NDlhNDQuMzc0OCw0NC4zNzQ4LDAsMCwxLTQ0LjM3NDgsNDQuMzc0OGgwYTQ0LjM3NDgsNDQuMzc0OCwwLDAsMS00NC4zNzQ4LTQ0LjM3NDhWODAuNjAzNkE5LDksMCwwLDEsNTcuMzcwOSw3MS42MDM2WiIvPgogICAgICAgIDxwYXRoIGNsYXNzPSJjbHMtNSIgZD0iTTY2LjM3MSw2Ni42NjE3aDcwLjc1YTksOSwwLDAsMSw5LDl2MzUuMzc0OWE0NC4zNzQ4LDQ0LjM3NDgsMCwwLDEtNDQuMzc0OCw0NC4zNzQ4aDBBNDQuMzc0OCw0NC4zNzQ4LDAsMCwxLDU3LjM3MSwxMTEuMDM2NlY3NS42NjE3YTksOSwwLDAsMSw5LTlaIi8+CiAgICAgICAgPHBhdGggaWQ9Il9SZWN0YW5nbGVfIiBkYXRhLW5hbWU9IiZsdDtSZWN0YW5nbGUmZ3Q7IiBjbGFzcz0iY2xzLTYiIGQ9Ik02MS4zNzEsNjYuNjYxN2g3MC43NWE5LDksMCwwLDEsOSw5djM1LjM3NDlhNDQuMzc0OCw0NC4zNzQ4LDAsMCwxLTQ0LjM3NDgsNDQuMzc0OGgwQTQ0LjM3NDgsNDQuMzc0OCwwLDAsMSw1Mi4zNzEsMTExLjAzNjZWNzUuNjYxN0E5LDksMCwwLDEsNjEuMzcxLDY2LjY2MTdaIi8+CiAgICAgICAgPHBhdGggY2xhc3M9ImNscy03IiBkPSJNOTYuNzQ1OSwxNDcuNzQ0MWEzNi43NDg3LDM2Ljc0ODcsMCwwLDEtMzYuNzA3NC0zNi43MDc0Vjc4LjA1ODRhMy43MzMzLDMuNzMzMywwLDAsMSwzLjcyOS0zLjcyOWg2NS45NTYzYTMuNzMzMywzLjczMzMsMCwwLDEsMy43MjksMy43Mjl2MzIuOTc4NEEzNi43NDg2LDM2Ljc0ODYsMCwwLDEsOTYuNzQ1OSwxNDcuNzQ0MVoiLz4KICAgICAgICA8cGF0aCBjbGFzcz0iY2xzLTQiIGQ9Ik0xMDAuNjg5MywxNjMuMzE2N1YxMTEuMDk3M2EzLjk0NDMsMy45NDQzLDAsMCwwLTcuODg4NywwdjUyLjIyYTIyLjUyNTIsMjIuNTI1MiwwLDAsMC0xOC41NDc5LDIyLjE0YzAsLjQ1Ni4wMTc4LjkwNzguMDQ0NywxLjM1NzFIODIuMjFjLS4wNDE0LS40NDc0LS4wNjg4LS44OTktLjA2ODgtMS4zNTcxYTE0LjYyLDE0LjYyLDAsMCwxLDE0LjU5NzQtMTQuNjA0MWwuMDA2MS4wMDA2LjAwNjgtLjAwMDdBMTQuNjIxMSwxNC42MjExLDAsMCwxLDExMS4zNSwxODUuNDU2NmMwLC40NTgxLS4wMjczLjkxLS4wNjg4LDEuMzU3MWg3LjkxMjhjLjAyNjktLjQ0OTMuMDQ0Ny0uOTAxMS4wNDQ3LTEuMzU3MUEyMi41MjU5LDIyLjUyNTksMCwwLDAsMTAwLjY4OTMsMTYzLjMxNjdaIi8+CiAgICAgICAgPHJlY3QgY2xhc3M9ImNscy0yIiB4PSIxNy40NTU4IiB5PSIzNi40NzAyIiB3aWR0aD0iMzMuMjIyOCIgaGVpZ2h0PSIxNS42MDM4Ii8+CiAgICAgICAgPHJlY3QgY2xhc3M9ImNscy0yIiB4PSIxNy40NTU4IiB5PSIxNTguMTIxNyIgd2lkdGg9IjMzLjIyMjgiIGhlaWdodD0iMTUuNjAzOCIvPgogICAgICAgIDxyZWN0IGNsYXNzPSJjbHMtMiIgeD0iMTQ3LjgxMyIgeT0iMzYuNDcwMiIgd2lkdGg9IjMzLjIyMjgiIGhlaWdodD0iMTUuNjAzOCIvPgogICAgICAgIDxyZWN0IGNsYXNzPSJjbHMtMiIgeD0iMTUwLjA2NDMiIHk9IjE1Ny41NTEzIiB3aWR0aD0iMzMuMjIyOCIgaGVpZ2h0PSIxNS42MDM4Ii8+CiAgICAgICAgPHBhdGggaWQ9Il9QYXRoXyIgZGF0YS1uYW1lPSImbHQ7UGF0aCZndDsiIGNsYXNzPSJjbHMtOCIgZD0iTTEwNy41MjU0LDEwMS4wMDI3YTExLjc3OTQsMTEuNzc5NCwwLDEsMC0xOS44Niw4LjU1NDhBNC4wNDE3LDQuMDQxNywwLDAsMSw4OC44NSwxMTMuNjJsLTIuMTA0LDcuMjY4MWEzLDMsMCwwLDAsMi44ODE3LDMuODM0MmgxMi4yMzcxYTMsMywwLDAsMCwyLjg4MTctMy44MzQybC0yLjA5NTktNy4yNGE0LjA3NDMsNC4wNzQzLDAsMCwxLDEuMTgwOC00LjA5NDVBMTEuNzE3MiwxMS43MTcyLDAsMCwwLDEwNy41MjU0LDEwMS4wMDI3WiIvPgogICAgICAgIDxwYXRoIGNsYXNzPSJjbHMtOSIgZD0iTTEwNC43NDYxLDEyMC44ODc3bC0yLjA5NTktNy4yNGE0LjA3NDQsNC4wNzQ0LDAsMCwxLDEuMTgwOC00LjA5NDUsMTEuNzYyOSwxMS43NjI5LDAsMCwwLTUuMDYtMTkuOTMxMywxMS45MSwxMS45MSwwLDAsMC04Ljc5OCwxMC45OTQ5LDExLjcxODUsMTEuNzE4NSwwLDAsMCwzLjY5MjksOC45NDFBNC4wNDE2LDQuMDQxNiwwLDAsMSw5NC44NSwxMTMuNjJsLTMuMjE0LDExLjEwMjNoMTAuMjI4OEEzLDMsMCwwLDAsMTA0Ljc0NjEsMTIwLjg4NzdaIi8+CiAgICAgICAgPHBhdGggY2xhc3M9ImNscy0xMCIgZD0iTTgxLjc5NzUsMTAwLjMxYTMuOTQzOSwzLjk0MzksMCwwLDAtMy45NDQzLTMuOTQ0M0g0MS4wNDE3YTMuOTQ0MywzLjk0NDMsMCwwLDAsMCw3Ljg4ODdINzcuODUzMkEzLjk0MzksMy45NDM5LDAsMCwwLDgxLjc5NzUsMTAwLjMxWiIvPgogICAgICAgIDxwYXRoIGlkPSJfUGF0aF8yIiBkYXRhLW5hbWU9IiZsdDtQYXRoJmd0OyIgY2xhc3M9ImNscy0xMSIgZD0iTTQxLjA0MTYsMTA0LjI1MzlIOTYuODUzMmEzLjk0NDMsMy45NDQzLDAsMCwwLDAtNy44ODg3SDQxLjA0MTZhMy45NDQzLDMuOTQ0MywwLDAsMCwwLDcuODg4N1oiLz4KICAgICAgICA8cGF0aCBjbGFzcz0iY2xzLTEwIiBkPSJNODEuNzk3NSwxMDAuMzFhMy45NDM5LDMuOTQzOSwwLDAsMC0zLjk0NDMtMy45NDQzSDQxLjA0MTdhMy45NDQzLDMuOTQ0MywwLDAsMCwwLDcuODg4N0g3Ny44NTMyQTMuOTQzOSwzLjk0MzksMCwwLDAsODEuNzk3NSwxMDAuMzFaIi8+CiAgICAgICAgPHBhdGggY2xhc3M9ImNscy0xMCIgZD0iTTIyLjQ5MzIsMTIyLjgwMjlBMjIuNDkyOSwyMi40OTI5LDAsMSwxLDQ0Ljk4NTgsMTAwLjMxLDIyLjUxODUsMjIuNTE4NSwwLDAsMSwyMi40OTMyLDEyMi44MDI5Wm0wLTM3LjA5NzJBMTQuNjA0MiwxNC42MDQyLDAsMSwwLDM3LjA5NzIsMTAwLjMxLDE0LjYyMDcsMTQuNjIwNywwLDAsMCwyMi40OTMyLDg1LjcwNTdaIi8+CiAgICAgIDwvZz4KICAgIDwvZz4KICA8L2c+Cjwvc3ZnPgo=", - "body": "\nThe purpose of this section is to describe how to authenticate when making API calls using the Bitbucket REST API.\n\n-----\n\n* [Basic auth](#basic-auth)\n* [Access Tokens](#access-tokens)\n * [Repository Access Tokens](#repository-access-tokens)\n * [Project Access Tokens](#project-access-tokens)\n * [Workspace Access Tokens](#workspace-access-tokens)\n* [App passwords](#app-passwords)\n* [OAuth 2.0](#oauth-2-0)\n * [Making requests](#making-requests)\n * [Repository cloning](#repository-cloning)\n * [Refresh tokens](#refresh-tokens)\n* [Bitbucket OAuth 2.0 Scopes](#bitbucket-oauth-2-0-scopes)\n* [Forge App Scopes](#forge-app-scopes)\n\n---\n\n### Basic auth\n\nBasic HTTP Authentication as per [RFC-2617](https://tools.ietf.org/html/rfc2617) (Digest not supported).\nNote that Basic Auth is available only with username and [app password](https://bitbucket.org/account/settings/app-passwords/) as credentials.\n\n### Access Tokens\n\nAccess Tokens are passwords (or tokens) that provide access to a _single_ repository, project or workspace.\nThese tokens can authenticate with Bitbucket APIs for scripting, CI/CD tools, Bitbucket Cloud-connected apps,\nand Bitbucket Cloud integrations.\n\nAccess Tokens are linked to a repository, project, or workspace, not a user account.\nThe level of access provided by the token is set when a repository, or workspace admin creates it,\nby setting permission scopes.\n\nThere are three types of Access Token:\n\n* **Repository Access Tokens** can connect to a single repository, preventing them from accessing any other repositories or workspaces.\n* **Project Access Tokens** can connect to a single project, providing access to any repositories within the project.\n* **Workspace Access Tokens** can connect to a single workspace and have access to any projects and repositories within that workspace.\n\nWhen using Bitbucket APIs with an Access Token, the token will be treated as the \"user\" in the\nBitbucket UI and Bitbucket logs. This includes when using the Access Token to leave a comment on a pull request,\npush a commit, or merge a pull request. The Bitbucket UI and API responses will show the\nRepository/Project/Workspace Access Token as a user. The username shown in the Bitbucket UI is the Access\nToken _name_, and a custom icon is used to differentiate it from a regular user in the UI.\n\n#### Considerations for using Access Tokens\n\n* After creation, an Access Token can't be viewed or modified. The token's name, created date,\nlast accessed date, and scopes are visible on the repository, project, or workspace **Access Tokens** page.\n* Access Tokens can access a limited set of Bitbucket's permission scopes.\n* Provided you set the correct permission scopes, you can use an Access Token to clone (`repository`)\nand push (`repository:write`) code to the token's repository or the repositories the token can access.\n* You can't use an Access Token to log into the Bitbucket website.\n* Access Tokens don't require two-step verification.\n* You can set permission scopes (specific access rights) for each Access Token.\n* You can't use an Access Token to manipulate or query repository, project, or workspace permissions.\n* Access Tokens are not listed in any repository or workspace permission API response.\n* Access Tokens are deactivated when deleting the resource tied to it (a repository, project, or workspace).\nRepository Access Tokens are also revoked when transferring the repository to another workspace.\n* Any content created by the Access Token will persist after the Access Token has been revoked.\n* Access Tokens can interact with branch restriction APIs, but the token can't be configured as a user with merge access when using branch restrictions.\n\nThere are some APIs which are inaccessible for Access Tokens, these are:\n\n* [Add a repository deploy key](/cloud/bitbucket/rest/api-group-deployments/#api-repositories-workspace-repo-slug-deploy-keys-post)\n* [Update a repository deploy key](/cloud/bitbucket/rest/api-group-deployments/#api-repositories-workspace-repo-slug-deploy-keys-key-id-put)\n* [Delete a repository deploy key](/cloud/bitbucket/rest/api-group-deployments/#api-repositories-workspace-repo-slug-deploy-keys-key-id-delete)\n\n#### Repository Access Tokens\n\nFor details on creating, managing, and using Repository Access Tokens, visit\n[Repository Access Tokens](https://support.atlassian.com/bitbucket-cloud/docs/repository-access-tokens/).\n\nThe available scopes for Repository Access Tokens are:\n\n- [`repository`](#repository)\n- [`repository:write`](#repository-write)\n- [`repository:admin`](#repository-admin)\n- [`repository:delete`](#repository-delete)\n- [`pullrequest`](#pullrequest)\n- [`pullrequest:write`](#pullrequest-write)\n- [`webhook`](#webhook)\n- [`pipeline`](#pipeline)\n- [`pipeline:write`](#pipeline-write)\n- [`pipeline:variable`](#pipeline-variable)\n- [`runner`](#runner)\n- [`runner:write`](#runner-write)\n\n#### Project Access Tokens\n\nFor details on creating, managing, and using Project Access Tokens, visit\n[Project Access Tokens](https://support.atlassian.com/bitbucket-cloud/docs/project-access-tokens/).\n\nThe available scopes for Project Access Tokens are:\n\n- [`project`](#project)\n- [`repository`](#repository)\n- [`repository:write`](#repository-write)\n- [`repository:admin`](#repository-admin)\n- [`repository:delete`](#repository-delete)\n- [`pullrequest`](#pullrequest)\n- [`pullrequest:write`](#pullrequest-write)\n- [`webhook`](#webhook)\n- [`pipeline`](#pipeline)\n- [`pipeline:write`](#pipeline-write)\n- [`pipeline:variable`](#pipeline-variable)\n- [`runner`](#runner)\n- [`runner:write`](#runner-write)\n\n#### Workspace Access Tokens\n\nFor details on creating, managing, and using Workspace Access Tokens, visit\n[Workspace Access Tokens](https://support.atlassian.com/bitbucket-cloud/docs/workspace-access-tokens/).\n\nThe available scopes for Workspace Access Tokens are:\n\n- [`project`](#project)\n- [`project:admin`](#project-admin)\n- [`repository`](#repository)\n- [`repository:write`](#repository-write)\n- [`repository:admin`](#repository-admin)\n- [`repository:delete`](#repository-delete)\n- [`pullrequest`](#pullrequest)\n- [`pullrequest:write`](#pullrequest-write)\n- [`webhook`](#webhook)\n- [`account`](#account)\n- [`pipeline`](#pipeline)\n- [`pipeline:write`](#pipeline-write)\n- [`pipeline:variable`](#pipeline-variable)\n- [`runner`](#runner)\n- [`runner:write`](#runner-write)\n\n### App passwords\n\nApp passwords allow users to make API calls to their Bitbucket account through apps such as Sourcetree.\n\nSome important points about app passwords:\n\n* You cannot view an app password or adjust permissions after you create the app password. Because app passwords are encrypted on our database and cannot be viewed by anyone. They are essentially designed to be disposable. If you need to change the scopes or lost the password just create a new one.\n* You cannot use them to log into your Bitbucket account.\n* You cannot use app passwords to manage team actions.\n\n App passwords are tied to an individual account's credentials and should not be shared. If you're sharing your app password you're essentially giving direct, authenticated, access to everything that password has been scoped to do with the Bitbucket API's.\n\n* You can use them for API call authentication, even if you don't have two-step verification enabled.\n* You can set permission scopes (specific access rights) for each app password.\n\nFor details on creating, managing, and using App passwords, visit\n[App passwords](https://support.atlassian.com/bitbucket-cloud/docs/app-passwords/).\n\n### OAuth 2.0\n\nOur OAuth 2 implementation is merged in with our existing OAuth 1 in\nsuch a way that existing OAuth 1 consumers automatically become\nvalid OAuth 2 clients. The only thing you need to do is edit your\nexisting consumer and configure a callback URL.\n\nOnce that is in place, you'll have the following 2 URLs:\n\n https://bitbucket.org/site/oauth2/authorize\n https://bitbucket.org/site/oauth2/access_token\n\nFor obtaining access/bearer tokens, we support three of RFC-6749's grant\nflows, plus a custom Bitbucket flow for exchanging JWT tokens for access tokens.\nNote that Resource Owner Password Credentials Grant (4.3) is no longer supported.\n\n\n#### 1. Authorization Code Grant (4.1)\n\nThe full-blown 3-LO flow. Request authorization from the end user by\nsending their browser to:\n\n https://bitbucket.org/site/oauth2/authorize?client_id={client_id}&response_type=code\n\nThe callback includes the `?code={}` query parameter that you can swap\nfor an access token:\n\n $ curl -X POST -u \"client_id:secret\" \\\n https://bitbucket.org/site/oauth2/access_token \\\n -d grant_type=authorization_code -d code={code}\n\n\n#### 2. Implicit Grant (4.2)\n\nThis flow is useful for browser-based add-ons that operate without server-side backends.\n\nRequest the end user for authorization by directing the browser to:\n\n https://bitbucket.org/site/oauth2/authorize?client_id={client_id}&response_type=token\n\nThat will redirect to your preconfigured callback URL with a fragment\ncontaining the access token\n(`#access_token={token}&token_type=bearer`) where your page's js can\npull it out of the URL.\n\n\n#### 3. Client Credentials Grant (4.4)\n\nSomewhat like our existing \"2-LO\" flow for OAuth 1. Obtain an access\ntoken that represents not an end user, but the owner of the\nclient/consumer:\n\n $ curl -X POST -u \"client_id:secret\" \\\n https://bitbucket.org/site/oauth2/access_token \\\n -d grant_type=client_credentials\n\n\n#### 4. Bitbucket Cloud JWT Grant (urn:bitbucket:oauth2:jwt)\n\nIf your Atlassian Connect add-on uses JWT authentication, you can swap a\nJWT for an OAuth access token. The resulting access token represents the\naccount for which the add-on is installed.\n\nMake sure you send the JWT token in the Authorization request header\nusing the \"JWT\" scheme (case sensitive). Note that this custom scheme\nmakes this different from HTTP Basic Auth (and so you cannot use \"curl\n-u\").\n\n $ curl -X POST -H \"Authorization: JWT {jwt_token}\" \\\n https://bitbucket.org/site/oauth2/access_token \\\n -d grant_type=urn:bitbucket:oauth2:jwt\n\n\n#### Making Requests\n\nOnce you have an access token, as per RFC-6750, you can use it in a request in any of\nthe following ways (in decreasing order of desirability):\n\n1. Send it in a request header: `Authorization: Bearer {access_token}`\n2. Include it in a (application/x-www-form-urlencoded) POST body as `access_token={access_token}`\n3. Put it in the query string of a non-POST: `?access_token={access_token}`\n\n\n#### Repository Cloning\n\nSince add-ons will not be able to upload their own SSH keys to clone\nwith, access tokens can be used as Basic HTTP Auth credentials to\nclone securely over HTTPS. This is much like GitHub, yet slightly\ndifferent:\n\n $ git clone https://x-token-auth:{access_token}@bitbucket.org/user/repo.git\n\nThe literal string `x-token-auth` as a substitute for username is\nrequired (note the difference with GitHub where the actual token is in\nthe username field).\n\n\n#### Refresh Tokens\n\nOur access tokens expire in one hour. When this happens you'll get 401\nresponses.\n\nMost access tokens grant responses (Implicit and JWT excluded). Therefore, you should include a\nrefresh token that can then be used to generate a new access token,\nwithout the need for end user participation:\n\n $ curl -X POST -u \"client_id:secret\" \\\n https://bitbucket.org/site/oauth2/access_token \\\n -d grant_type=refresh_token -d refresh_token={refresh_token}\n\n\n### Bitbucket OAuth 2.0 scopes\n\nBitbucket's API applies a number of privilege scopes to endpoints. In order to access an endpoint, a request will need to have the necessary scopes.\n\nOAuth 2.0 Scopes are applicable for OAuth 2, Access Tokens, and App passwords auth mechanisms as well as Bitbucket Connect apps.\n\nScopes are declared in the descriptor as a list of strings, with each string being the name of a unique scope.\n\nA descriptor lacking the `scopes` element is implicitly assumed to require all scopes and as a result, Bitbucket will require end users authorizing/installing the add-on\nto explicitly accept all scopes.\n\nOur best practice suggests you add only the scopes your add-on needs, but no more than it needs.\n\nInvalid scope strings will cause the descriptor to be rejected and the installation to fail.\n\nThe available scopes are:\n\n- [project](#project)\n- [project:write](#project-write)\n- [project:admin](#project-admin)\n- [repository](#repository)\n- [repository:write](#repository-write)\n- [repository:admin](#repository-admin)\n- [repository:delete](#repository-delete)\n- [pullrequest](#pullrequest)\n- [pullrequest:write](#pullrequest-write)\n- [issue](#issue)\n- [issue:write](#issue-write)\n- [wiki](#wiki)\n- [webhook](#webhook)\n- [snippet](#snippet)\n- [snippet:write](#snippet-write)\n- [email](#email)\n- [account](#account)\n- [account:write](#account-write)\n- [pipeline](#pipeline)\n- [pipeline:write](#pipeline-write)\n- [pipeline:variable](#pipeline-variable)\n- [runner](#runner)\n- [runner:write](#runner-write)\n\n#### project\n\nProvides access to view the project or projects.\nThis scope implies the [`repository`](#repository) scope, giving read access to all the repositories in a project or projects.\n\n#### project:write\n\nThis scope is deprecated, and has been made obsolete by `project:admin`. Please see the deprecation notice [here](/cloud/bitbucket/deprecation-notice-project-write-scope).\n\n#### project:admin\n\nProvides admin access to a project or projects. No distinction is made between public and private projects. This scope doesn't implicitly grant the [`project`](#project) scope or the [`repository:write`](#repository-write) scope on any repositories under the project. It gives access to the admin features of a project only, not direct access to its repositories' contents.\n\n* ability to create the project\n* ability to update the project\n* ability to delete the project\n\n#### repository\n\nProvides read access to a repository or repositories.\nNote that this scope does not give access to a repository's pull requests.\n\n* access to the repo's source code\n* clone over HTTPS\n* access the file browsing API\n* download zip archives of the repo's contents\n* the ability to view and use the issue tracker on any repo (created issues, comment, vote, etc)\n* the ability to view and use the wiki on any repo (create/edit pages)\n\n#### repository:write\n\nProvides write (not admin) access to a repository or repositories. No distinction is made between public and private repositories. This scope implicitly grants the [`repository`](#repository) scope, which does not need to be requested separately.\nThis scope alone does not give access to the pull requests API.\n\n* push access over HTTPS\n* fork repos\n\n#### repository:admin\n\nProvides admin access to a repository or repositories. No distinction is made between public and private repositories. This scope doesn't implicitly grant the [`repository`](#repository) or the [`repository:write`](#repository-write) scopes. It gives access to the admin features of a repo only, not direct access to its contents. This scope can be used or misused to grant read access to other users, who can then clone the repo, but users that need to read and write source code would also request explicit read or write.\nThis scope comes with access to the following functionality:\n\n* View and manipulate committer mappings\n* List and edit deploy keys\n* Ability to delete the repo\n* View and edit repo permissions\n* View and edit branch permissions\n* Import and export the issue tracker\n* Enable and disable the issue tracker\n* List and edit issue tracker version, milestones and components\n* Enable and disable the wiki\n* List and edit default reviewers\n* List and edit repo links (Jira/Bamboo/Custom)\n* List and edit the repository webhooks\n* Initiate a repo ownership transfer\n\n#### repository:delete\n\nProvides access to delete a repository or repositories.\n\n#### pullrequest\n\nProvides read access to pull requests.\nThis scope implies the [`repository`](#repository) scope, giving read access to the pull request's destination repository.\n\n* see and list pull requests\n* create and resolve tasks\n* comment on pull requests\n\n#### pullrequest:write\n\nImplicitly grants the [`pullrequest`](#pullrequest) scope and adds the ability to create, merge and decline pull requests.\nThis scope also implicitly grants the [`repository:write`](#repository-write) scope, giving write access to the pull request's destination repository. This is necessary to allow merging.\n\n* merge pull requests\n* decline pull requests\n* create pull requests\n* approve pull requests\n\n#### issue\n\nAbility to interact with issue trackers the way non-repo members can.\nThis scope doesn't implicitly grant any other scopes and doesn't give implicit access to the repository.\n\n* view, list and search issues\n* create new issues\n* comment on issues\n* watch issues\n* vote for issues\n\n#### issue:write\n\nThis scope implicitly grants the [`issue`](#issue) scope and adds the ability to transition and delete issues.\nThis scope doesn't implicitly grant any other scopes and doesn't give implicit access to the repository.\n\n* transition issues\n* delete issues\n\n#### wiki\n\nProvides access to wikis. This scope provides both read and write access (wikis are always editable by anyone with access to them).\nThis scope doesn't implicitly grant any other scopes and doesn't give implicit access to the repository.\n\n* view wikis\n* create pages\n* edit pages\n* push to wikis\n* clone wikis\n\n#### webhook\n\nGives access to webhooks. This scope is required for any webhook-related operation.\n\nThis scope gives read access to existing webhook subscriptions on all\nresources the authorization mechanism can access, without needing further scopes.\nFor example:\n\n- A client can list all existing webhook subscriptions on a repository. The [`repository`](#repository) scope is not required.\n- Existing webhook subscriptions for the issue tracker on a repo can be retrieved without the [`issue`](#issue) scope. All that is required is the `webhook` scope.\n\nTo create webhooks, the client will need read access to the resource. Such as: for [`issue:created`](#issue-created), the client will need to\nhave both the `webhook` and the [`issue`](#issue) scope.\n\n* list webhook subscriptions on any accessible repository, user, team, or snippet\n* create/update/delete webhook subscriptions.\n\n#### snippet\n\nProvides read access to snippets.\nNo distinction is made between public and private snippets (public snippets are accessible without any form of authentication).\n\n* view any snippet\n* create snippet comments\n\n#### snippet:write\n\nProvides write access to snippets.\nNo distinction is made between public and private snippets (public snippets are accessible without any form of authentication).\nThis scope implicitly grants the [`snippet`](#snippet) scope which does not need to be requested separately.\n\n* create snippets\n* edit snippets\n* delete snippets\n\n#### email\n\nAbility to see the user's primary email address. This should make it easier to use Bitbucket Cloud as a login provider for apps or external applications.\n\n#### account\n\nWhen used for:\n* **user-related APIs** — Gives read-only access to the user's account information.\nNote that this doesn't include any ability to change any of the data. This scope allows you to view the user's:\n * email addresses\n * language\n * location\n * website\n * full name\n * SSH keys\n * user groups\n* **workspace-related APIs** — Grants access to view the workspace's:\n * users\n * user permissions\n * projects\n\n#### account:write\n\nAbility to change properties on the user's account.\n\n* delete the authorizing user's account\n* manage the user's groups\n* change a user's email addresses\n* change username, display name and avatar\n\n#### pipeline\n\nGives read-only access to pipelines, steps, deployment environments and variables.\n\n#### pipeline:write\n\nGives write access to pipelines. This scope allows a user to:\n* Stop pipelines\n* Rerun failed pipelines\n* Resume halted pipelines\n* Trigger manual pipelines.\n\nThis scope is not needed to trigger a build using a push. Performing a `git push` (or equivalent actions) will trigger the build. The token doing the push only needs the [`repository:write`](#repository-write) scope.\n\nThis doesn't give write access to create variables.\n\n#### pipeline:variable\n\nGives write access to create variables in pipelines at the various levels:\n* Workspace\n* Repository\n* Deployment\n\n#### runner\n\nGives read-only access to pipelines runners setup against a workspace or repository.\n\n#### runner:write\n\nGives write access to create/edit/disable/delete pipelines runners setup against a workspace or repository.\n### Forge app scopes\n\nIn order for a Forge app integration to access Bitbucket API endpoints, it needs to include certain privilege scopes in the app manifest. These are different from Bitbucket OAuth 2.0 scopes.\n\nUnlike OAuth 2.0 scopes, Forge app scopes do not implicitly grant other scopes, for example, `write:repository:bitbucket` does not implicitly grant `read:repository:bitbucket`.\n\nOnly a subset of Bitbucket API endpoints are currently available for Forge app integrations. These will be labeled with Forge app scopes.\n\nOur best practice suggests you only add the scopes your app needs, but no more than it needs.\n\nThe available scopes are:\n\n- [`read:repository:bitbucket`](#read-repository-bitbucket)\n- [`write:repository:bitbucket`](#write-repository-bitbucket)\n- [`admin:repository:bitbucket`](#admin-repository-bitbucket)\n- [`delete:repository:bitbucket`](#delete-repository-bitbucket)\n- [`read:pullrequest:bitbucket`](#read-pullrequest-bitbucket)\n- [`write:pullrequest:bitbucket`](#write-pullrequest-bitbucket)\n- [`read:project:bitbucket`](#read-project-bitbucket)\n- [`admin:project:bitbucket`](#admin-project-bitbucket)\n- [`read:workspace:bitbucket`](#read-workspace-bitbucket)\n- [`read:user:bitbucket`](#read-user-bitbucket)\n- [`read:pipeline:bitbucket`](#read-pipeline-bitbucket)\n- [`write:pipeline:bitbucket`](#write-pipeline-bitbucket)\n- [`admin:pipeline:bitbucket`](#admin-pipeline-bitbucket)\n- [`read:runner:bitbucket`](#read-runner-bitbucket)\n- [`write:runner:bitbucket`](#write-runner-bitbucket)\n\n#### read:repository:bitbucket\n\nAllows viewing of repository data. Note that this scope does not give access to a repository's pull requests.\n* access to the repository's source code\n* access the file browsing API\n* access to certain repository configurations such as branching model, default reviewers, etc.\n\n#### write:repository:bitbucket\n\nAllows modification of repository data. No distinction is made between public and private repositories. This scope does not imply the `read:repository:bitbucket` scope, so you need to request that separately if required. This scope alone does not give access to the pull request API.\n* update/delete source, branches, tags, etc.\n* fork repositories\n\n#### admin:repository:bitbucket\n\nAllows admin activities on repositories. No distinction is made between public and private repositories. This scope does not implicitly grant the `read:repository:bitbucket` or the `write:repository:bitbucket` scopes. It gives access to the admin features of a repository only, not direct access to its contents. This scope does not allow modification of repository permissions. This scope comes with access to the following functionality:\n* create repository\n* view repository permissions\n* view and edit branch restrictions\n* edit branching model settings\n* edit default reviewers\n* view and edit inheritance state for repository settings\n\n#### delete:repository:bitbucket\nAllows deletion of repositories.\n\n#### read:pullrequest:bitbucket\nAllows viewing of pull requests, plus the ability to comment on pull requests.\n\nThis scope does not imply the `read:repository:bitbucket` scope. With this scope, you could retrieve some data specific to the source/destination repositories of a pull request using pull request endpoints, but it does not give access to repository API endpoints.\n\n#### write:pullrequest:bitbucket\nAllows the ability to create, update, approve, decline, and merge pull requests.\n\nThis scope does not imply the `write:repository:bitbucket` scope.\n\n#### read:project:bitbucket\nAllows viewing of project and project permission data.\n\n#### admin:project:bitbucket\nAllows the ability to create, update, and delete project. No distinction is made between public and private projects.\n\nThis scope does not implicitly grant the `read:project:bitbucket` scope or any repository scopes. It gives access to the admin features of a project only, not direct access to its repositories' contents.\n\n#### read:workspace:bitbucket\nAllows viewing of workspace and workspace permission data.\n\n#### read:user:bitbucket\nAllows viewing of data related to the current user.\n\n#### read:pipeline:bitbucket\nAllows read access to all pipeline information (pipelines, steps, caches, artifacts, logs, tests, code-insights).\n\n#### write:pipeline:bitbucket\nAllows running pipelines (i.e., start/stop/create pipeline) and uploading tests/code-insights.\n\nThis scope does not imply the `read:pipeline:bitbucket` scope.\n\n#### admin:pipeline:bitbucket\nAllows admin activities, such as creating pipeline variables.\n\nThis scope does not implicitly grant the `read:pipeline:bitbucket` or the `write:pipeline:bitbucket` scopes.\n\n#### read:runner:bitbucket\nAllows viewing of runners information.\n\n#### write:runner:bitbucket\nAllows runners management.\n\nThis scope does not imply the `read:runners:bitbucket` scope.\n" + "body": "\nThe purpose of this section is to describe how to authenticate when making API calls using the Bitbucket REST API.\n\n-----\n\n* [Access tokens](#access-tokens)\n * [Repository access tokens](#repository-access-tokens)\n * [Project access tokens](#project-access-tokens)\n * [Workspace access tokens](#workspace-access-tokens)\n* [App passwords](#app-passwords)\n* [API tokens](#api-tokens)\n* [OAuth 2.0](#oauth-2-0)\n * [Making requests](#making-requests)\n * [Repository cloning](#repository-cloning)\n * [Refresh tokens](#refresh-tokens)\n* [Bitbucket OAuth 2.0 Scopes](#bitbucket-oauth-2-0-scopes)\n* [Forge app and API token scopes](#forge-app-and-api-token-scopes)\n\n---\n\n### Access tokens\n\nAccess tokens are passwords (or tokens) that provide access to a _single_ repository, project or workspace.\nThese tokens can authenticate with Bitbucket APIs for scripting, CI/CD tools, Bitbucket Cloud-connected apps,\nand Bitbucket Cloud integrations.\n\nAccess tokens are linked to a repository, project, or workspace, not a user account.\nThe level of access provided by the token is set when a repository, or workspace admin creates it,\nby setting privilege scopes.\n\nThere are three types of access token:\n\n* **Repository access tokens** can connect to a single repository, preventing them from accessing any other repositories or workspaces.\n* **Project access tokens** can connect to a single project, providing access to any repositories within the project.\n* **Workspace access tokens** can connect to a single workspace and have access to any projects and repositories within that workspace.\n\nWhen using Bitbucket APIs with an access token, the token will be treated as the \"user\" in the\nBitbucket UI and Bitbucket logs. This includes when using the access token to leave a comment on a pull request,\npush a commit, or merge a pull request. The Bitbucket UI and API responses will show the\nrepository/project/workspace access token as a user. The username shown in the Bitbucket UI is the Access\nToken _name_, and a custom icon is used to differentiate it from a regular user in the UI.\n\n#### Considerations for using access tokens\n\n* After creation, an access token can't be viewed or modified. The token's name, created date,\nlast accessed date, and scopes are visible on the repository, project, or workspace **access tokens** page.\n* Access tokens can access a limited set of Bitbucket's privilege scopes.\n* Provided you set the correct privilege scopes, you can use an access token to clone (`repository`)\nand push (`repository:write`) code to the token's repository or the repositories the token can access.\n* You can't use an access token to log into the Bitbucket website.\n* Access tokens don't require two-step verification.\n* You can set privilege scopes (specific access rights) for each access token.\n* You can't use an access token to manipulate or query repository, project, or workspace permissions.\n* Access tokens are not listed in any repository or workspace permission API response.\n* Access tokens are deactivated when deleting the resource tied to it (a repository, project, or workspace).\n* Repository access tokens are also revoked when transferring the repository to another workspace.\n* Any content created by the access token will persist after the access token has been revoked.\n* Access tokens can interact with branch restriction APIs, but the token can't be configured as a user with merge access when using branch restrictions.\n\nThere are some APIs which are inaccessible for Access tokens, these are:\n\n* [Add a repository deploy key](/cloud/bitbucket/rest/api-group-deployments/#api-repositories-workspace-repo-slug-deploy-keys-post)\n* [Update a repository deploy key](/cloud/bitbucket/rest/api-group-deployments/#api-repositories-workspace-repo-slug-deploy-keys-key-id-put)\n* [Delete a repository deploy key](/cloud/bitbucket/rest/api-group-deployments/#api-repositories-workspace-repo-slug-deploy-keys-key-id-delete)\n\n#### Repository access tokens\n\nFor details on creating, managing, and using repository access tokens, visit\n[Repository access tokens](https://support.atlassian.com/bitbucket-cloud/docs/repository-access-tokens/).\n\nThe available scopes for repository access tokens are:\n\n- [`repository`](#repository)\n- [`repository:write`](#repository-write)\n- [`repository:admin`](#repository-admin)\n- [`repository:delete`](#repository-delete)\n- [`pullrequest`](#pullrequest)\n- [`pullrequest:write`](#pullrequest-write)\n- [`webhook`](#webhook)\n- [`pipeline`](#pipeline)\n- [`pipeline:write`](#pipeline-write)\n- [`pipeline:variable`](#pipeline-variable)\n- [`runner`](#runner)\n- [`runner:write`](#runner-write)\n\n#### Project access tokens\n\nFor details on creating, managing, and using project access tokens, visit\n[Project access tokens](https://support.atlassian.com/bitbucket-cloud/docs/project-access-tokens/).\n\nThe available scopes for project access tokens are:\n\n- [`project`](#project)\n- [`repository`](#repository)\n- [`repository:write`](#repository-write)\n- [`repository:admin`](#repository-admin)\n- [`repository:delete`](#repository-delete)\n- [`pullrequest`](#pullrequest)\n- [`pullrequest:write`](#pullrequest-write)\n- [`webhook`](#webhook)\n- [`pipeline`](#pipeline)\n- [`pipeline:write`](#pipeline-write)\n- [`pipeline:variable`](#pipeline-variable)\n- [`runner`](#runner)\n- [`runner:write`](#runner-write)\n\n#### Workspace access tokens\n\nFor details on creating, managing, and using workspace access tokens, visit\n[Workspace access tokens](https://support.atlassian.com/bitbucket-cloud/docs/workspace-access-tokens/).\n\nThe available scopes for workspace access tokens are:\n\n- [`project`](#project)\n- [`project:admin`](#project-admin)\n- [`repository`](#repository)\n- [`repository:write`](#repository-write)\n- [`repository:admin`](#repository-admin)\n- [`repository:delete`](#repository-delete)\n- [`pullrequest`](#pullrequest)\n- [`pullrequest:write`](#pullrequest-write)\n- [`webhook`](#webhook)\n- [`account`](#account)\n- [`pipeline`](#pipeline)\n- [`pipeline:write`](#pipeline-write)\n- [`pipeline:variable`](#pipeline-variable)\n- [`runner`](#runner)\n- [`runner:write`](#runner-write)\n\n### App passwords\n\nApp passwords are deprecated. Use [API tokens](#api-tokens).\n\n### API tokens\n\nAPI Tokens are personal access tokens that users can create to authenticate with Bitbucket's REST APIs\nor interact with Git. They are designed as a long term replacement for app passwords, while retaining a\nlot of the functionality you are already familiar with.\n\nSome important points about API tokens:\n\n* To authenticate with an API token, use Basic HTTP Authentication as per [RFC-2617](https://tools.ietf.org/html/rfc2617), where\n the username is your Atlassian email and password is the API token.\n* You cannot view an API token or adjust permissions after you create the API token. They are\n designed to be disposable. If you need to change the scopes or you've lost the token, you should just create a new one.\n* API token require an expiry date at creation, with a maximum duration of 1 year.\n* You cannot use them to log into Bitbucket website.\n* API tokens are tied to an individual account's credentials and should not be shared. If you're sharing your API token\n you're giving direct, authenticated access to everything that the token has been scoped\n to do with Bitbucket's APIs.\n* You can set privilege scopes (specific access rights) for each API token.\n\nFor details on creating, managing, and using API tokens, visit\n[API tokens](https://support.atlassian.com/bitbucket-cloud/docs/api-tokens/).\n\n### OAuth 2.0\n\nOur OAuth 2 implementation is merged in with our existing OAuth 1 in\nsuch a way that existing OAuth 1 consumers automatically become\nvalid OAuth 2 clients. The only thing you need to do is edit your\nexisting consumer and configure a callback URL.\n\nOnce that is in place, you'll have the following 2 URLs:\n\n https://bitbucket.org/site/oauth2/authorize\n https://bitbucket.org/site/oauth2/access_token\n\nFor obtaining access/bearer tokens, we support two of RFC-6749's grant flows, plus a custom Bitbucket flow\nfor exchanging JWT tokens for access tokens.\nNote that Implicit Grant (4.2) and Resource Owner Password Credentials Grant (4.3) are no longer supported.\n\n\n#### 1. Authorization Code Grant (4.1)\n\nThe full-blown 3-LO flow. Request authorization from the end user by\nsending their browser to:\n\n https://bitbucket.org/site/oauth2/authorize?client_id={client_id}&response_type=code\n\nThe callback includes the `?code={}` query parameter that you can swap\nfor an access token:\n\n $ curl -X POST -u \"client_id:secret\" \\\n https://bitbucket.org/site/oauth2/access_token \\\n -d grant_type=authorization_code -d code={code}\n\n#### 2. Client Credentials Grant (4.4)\n\nObtain an access token that represents not an end user, but the owner of the\nclient/consumer:\n\n $ curl -X POST -u \"client_id:secret\" \\\n https://bitbucket.org/site/oauth2/access_token \\\n -d grant_type=client_credentials\n\n\n#### 3. Bitbucket Cloud JWT Grant (urn:bitbucket:oauth2:jwt)\n\nIf your Atlassian Connect add-on uses JWT authentication, you can swap a\nJWT for an OAuth access token. The resulting access token represents the\naccount for which the add-on is installed.\n\nMake sure you send the JWT token in the Authorization request header\nusing the \"JWT\" scheme (case sensitive). Note that this custom scheme\nmakes this different from HTTP Basic Auth (and so you cannot use \"curl\n-u\").\n\n $ curl -X POST -H \"Authorization: JWT {jwt_token}\" \\\n https://bitbucket.org/site/oauth2/access_token \\\n -d grant_type=urn:bitbucket:oauth2:jwt\n\n\n#### Making Requests\n\n\nAs of May 4th, 2026, all OAuth 2.0 authenticated API requests must be directed at\nhttps://api.bitbucket.org with the `access token` placed as a `Bearer` token in the\nrequest `Authorization` header as per RFC-6750 (2.1)\n\n``` bash\n$ curl -H \"Authorization: Bearer {access_token}\" \\\n https://api.bitbucket.org/2.0/user\n```\n\n#### Repository Cloning\n\nSince add-ons will not be able to upload their own SSH keys to clone\nwith, access tokens can be used as Basic HTTP Auth credentials to\nclone securely over HTTPS. This is much like GitHub, yet slightly\ndifferent:\n\n $ git clone https://x-token-auth:{access_token}@bitbucket.org/user/repo.git\n\nThe literal string `x-token-auth` as a substitute for username is\nrequired (note the difference with GitHub where the actual token is in\nthe username field).\n\n\n#### Refresh Tokens\n\nOur access tokens expire in one hour. When this happens you'll get 401\nresponses.\n\nBoth the `authorization_code` and `refresh_token` access token grant\nresponses include a refresh token that can be used to generate a new access\ntoken, without the need for end user participation:\n\n``` bash\n$ curl -X POST -u \"client_id:secret\" \\\n https://bitbucket.org/site/oauth2/access_token \\\n -d grant_type=refresh_token -d refresh_token={refresh_token}\n```\n\nOnce a refresh token has been used to issue a new access token, a new refresh\ntoken will be issued as part of the response. The existing refresh token will\nexpire shortly after and should not be used again.\n\nA refresh token which is not used to generate an access token will expire after\n3 months. After this point the end user will be required to complete the full\n`authorization_code` grant flow again.\n\n### Bitbucket OAuth 2.0 scopes\n\nBitbucket's API applies a number of privilege scopes to endpoints. In order to access an\nendpoint, a request will need to have the necessary scopes.\n\nOAuth 2.0 Scopes are applicable for OAuth 2 and access tokens\nauth mechanisms as well as Bitbucket Connect apps.\n\nScopes are declared in the descriptor as a list of strings, with each string being the name of a unique scope.\n\nA descriptor lacking the `scopes` element is implicitly assumed to require all scopes and as a result,\nBitbucket will require end users authorizing/installing the add-on to explicitly accept all scopes.\n\nOur best practice suggests you add only the scopes your add-on needs, but no more than it needs.\n\nInvalid scope strings will cause the descriptor to be rejected and the installation to fail.\n\nThe available scopes are:\n\n- [project](#project)\n- [project:write](#project-write)\n- [project:admin](#project-admin)\n- [repository](#repository)\n- [repository:write](#repository-write)\n- [repository:admin](#repository-admin)\n- [repository:delete](#repository-delete)\n- [pullrequest](#pullrequest)\n- [pullrequest:write](#pullrequest-write)\n- [issue](#issue)\n- [issue:write](#issue-write)\n- [wiki](#wiki)\n- [webhook](#webhook)\n- [snippet](#snippet)\n- [snippet:write](#snippet-write)\n- [email](#email)\n- [account](#account)\n- [account:write](#account-write)\n- [pipeline](#pipeline)\n- [pipeline:write](#pipeline-write)\n- [pipeline:variable](#pipeline-variable)\n- [runner](#runner)\n- [runner:write](#runner-write)\n\n#### project\n\nProvides access to view the project or projects.\nThis scope implies the [`repository`](#repository) scope, giving read access to all the repositories in a project or projects.\n\n#### project:write\n\nThis scope is deprecated, and has been made obsolete by `project:admin`. Please see the deprecation notice [here](/cloud/bitbucket/deprecation-notice-project-write-scope).\n\n#### project:admin\n\nProvides admin access to a project or projects. No distinction is made between public and private projects. This scope doesn't implicitly grant the [`project`](#project) scope or the [`repository:write`](#repository-write) scope on any repositories under the project. It gives access to the admin features of a project only, not direct access to its repositories' contents.\n\n* ability to create the project\n* ability to update the project\n* ability to delete the project\n\n#### repository\n\nProvides read access to a repository or repositories.\nNote that this scope does not give access to a repository's pull requests.\n\n* access to the repo's source code\n* clone over HTTPS\n* access the file browsing API\n* download zip archives of the repo's contents\n* the ability to view and use the issue tracker on any repo (created issues, comment, vote, etc)\n* the ability to view and use the wiki on any repo (create/edit pages)\n\n#### repository:write\n\nProvides write (not admin) access to a repository or repositories. No distinction is made between public and private repositories. This scope implicitly grants the [`repository`](#repository) scope, which does not need to be requested separately.\nThis scope alone does not give access to the pull requests API.\n\n* push access over HTTPS\n* fork repos\n\n#### repository:admin\n\nProvides admin access to a repository or repositories. No distinction is made between public and private repositories. This scope doesn't implicitly grant the [`repository`](#repository) or the [`repository:write`](#repository-write) scopes. It gives access to the admin features of a repo only, not direct access to its contents. This scope can be used or misused to grant read access to other users, who can then clone the repo, but users that need to read and write source code would also request explicit read or write.\nThis scope comes with access to the following functionality:\n\n* View and manipulate committer mappings\n* List and edit deploy keys\n* Ability to delete the repo\n* View and edit repo permissions\n* View and edit branch permissions\n* Import and export the issue tracker\n* Enable and disable the issue tracker\n* List and edit issue tracker version, milestones and components\n* Enable and disable the wiki\n* List and edit default reviewers\n* List and edit repo links (Jira/Bamboo/Custom)\n* List and edit the repository webhooks\n* Initiate a repo ownership transfer\n\n#### repository:delete\n\nProvides access to delete a repository or repositories.\n\n#### pullrequest\n\nProvides read access to pull requests.\nThis scope implies the [`repository`](#repository) scope, giving read access to the pull request's destination repository.\n\n* see and list pull requests\n* create and resolve tasks\n* comment on pull requests\n\n#### pullrequest:write\n\nImplicitly grants the [`pullrequest`](#pullrequest) scope and adds the ability to create, merge and decline pull requests.\nThis scope also implicitly grants the [`repository:write`](#repository-write) scope, giving write access to the pull request's destination repository. This is necessary to allow merging.\n\n* merge pull requests\n* decline pull requests\n* create pull requests\n* approve pull requests\n\n#### issue\n\nAbility to interact with issue trackers the way non-repo members can.\nThis scope doesn't implicitly grant any other scopes and doesn't give implicit access to the repository.\n\n* view, list and search issues\n* create new issues\n* comment on issues\n* watch issues\n* vote for issues\n\n#### issue:write\n\nThis scope implicitly grants the [`issue`](#issue) scope and adds the ability to transition and delete issues.\nThis scope doesn't implicitly grant any other scopes and doesn't give implicit access to the repository.\n\n* transition issues\n* delete issues\n\n#### wiki\n\nProvides access to wikis. This scope provides both read and write access (wikis are always editable by anyone with access to them).\nThis scope doesn't implicitly grant any other scopes and doesn't give implicit access to the repository.\n\n* view wikis\n* create pages\n* edit pages\n* push to wikis\n* clone wikis\n\n#### webhook\n\nGives access to webhooks. This scope is required for any webhook-related operation.\n\nThis scope gives read access to existing webhook subscriptions on all\nresources the authorization mechanism can access, without needing further scopes.\nFor example:\n\n- A client can list all existing webhook subscriptions on a repository. The [`repository`](#repository) scope is not required.\n- Existing webhook subscriptions for the issue tracker on a repo can be retrieved without the [`issue`](#issue) scope. All that is required is the `webhook` scope.\n\nTo create webhooks, the client will need read access to the resource. Such as: for [`issue:created`](#issue-created), the client will need to\nhave both the `webhook` and the [`issue`](#issue) scope.\n\n* list webhook subscriptions on any accessible repository, user, team, or snippet\n* create/update/delete webhook subscriptions.\n\n#### snippet\n\nProvides read access to snippets.\nNo distinction is made between public and private snippets (public snippets are accessible without any form of authentication).\n\n* view any snippet\n* create snippet comments\n\n#### snippet:write\n\nProvides write access to snippets.\nNo distinction is made between public and private snippets (public snippets are accessible without any form of authentication).\nThis scope implicitly grants the [`snippet`](#snippet) scope which does not need to be requested separately.\n\n* create snippets\n* edit snippets\n* delete snippets\n\n#### email\n\nAbility to see the user's primary email address. This should make it easier to use Bitbucket Cloud as a login provider for apps or external applications.\n\n#### account\n\nWhen used for:\n* **user-related APIs** — Gives read-only access to the user's account information.\nNote that this doesn't include any ability to change any of the data. This scope allows you to view the user's:\n * email addresses\n * language\n * location\n * website\n * full name\n * SSH keys\n * user groups\n* **workspace-related APIs** — Grants access to view the workspace's:\n * users\n * user permissions\n * projects\n\n#### account:write\n\nAbility to change properties on the user's account.\n\n* delete the authorizing user's account\n* manage the user's groups\n* change a user's email addresses\n* change username, display name and avatar\n\n#### pipeline\n\nGives read-only access to pipelines, steps, deployment environments and variables.\n\n#### pipeline:write\n\nGives write access to pipelines. This scope allows a user to:\n* Stop pipelines\n* Rerun failed pipelines\n* Resume halted pipelines\n* Trigger manual pipelines.\n\nThis scope is not needed to trigger a build using a push. Performing a `git push` (or equivalent actions) will trigger the build. The token doing the push only needs the [`repository:write`](#repository-write) scope.\n\nThis doesn't give write access to create variables.\n\n#### pipeline:variable\n\nGives write access to create variables in pipelines at the various levels:\n* Workspace\n* Repository\n* Deployment\n\n#### runner\n\nGives read-only access to pipelines runners setup against a workspace or repository.\n\n#### runner:write\n\nGives write access to create/edit/disable/delete pipelines runners setup against a workspace or repository.\n\n### Forge app and API token scopes\n\nIn order for a Forge app integration or an API token to access Bitbucket API endpoints, it needs to include certain privilege scopes. These are different from Bitbucket OAuth 2.0 scopes.\n\nIn the case of a Forge app, the privilege scopes need to be included in the app manifest.\n\nUnlike OAuth 2.0 scopes, Forge app and API token scopes do not implicitly grant access to other scopes, for example, `write:repository:bitbucket` does not implicitly grant access to `read:repository:bitbucket`.\n\nIt's important to note that only a subset of all API endpoints are currently available for Forge app integrations. Each endpoint is clearly labeled, indicating whether it is available for Forge apps.\n\nOur best practice recommends adhering to the principle of least privilege. You should only add the scopes that are necessary for your needs.\n\nThe available scopes are:\n\n- [`read:repository:bitbucket`](#read-repository-bitbucket)\n- [`write:repository:bitbucket`](#write-repository-bitbucket)\n- [`admin:repository:bitbucket`](#admin-repository-bitbucket)\n- [`delete:repository:bitbucket`](#delete-repository-bitbucket)\n- [`read:pullrequest:bitbucket`](#read-pullrequest-bitbucket)\n- [`write:pullrequest:bitbucket`](#write-pullrequest-bitbucket)\n- [`read:project:bitbucket`](#read-project-bitbucket)\n- [`admin:project:bitbucket`](#admin-project-bitbucket)\n- [`read:workspace:bitbucket`](#read-workspace-bitbucket)\n- [`admin:workspace:bitbucket`](#admin-workspace-bitbucket)\n- [`read:user:bitbucket`](#read-user-bitbucket)\n- [`write:user:bitbucket`](#write-user-bitbucket)\n- [`read:pipeline:bitbucket`](#read-pipeline-bitbucket)\n- [`write:pipeline:bitbucket`](#write-pipeline-bitbucket)\n- [`admin:pipeline:bitbucket`](#admin-pipeline-bitbucket)\n- [`read:runner:bitbucket`](#read-runner-bitbucket)\n- [`write:runner:bitbucket`](#write-runner-bitbucket)\n- [`read:issue:bitbucket`](#read-issue-bitbucket)\n- [`write:issue:bitbucket`](#write-issue-bitbucket)\n- [`delete:issue:bitbucket`](#delete-issue-bitbucket)\n- [`read:webhook:bitbucket`](#read-webhook-bitbucket)\n- [`write:webhook:bitbucket`](#write-webhook-bitbucket)\n- [`delete:webhook:bitbucket`](#delete-webhook-bitbucket)\n- [`read:snippet:bitbucket`](#read-snippet-bitbucket)\n- [`write:snippet:bitbucket`](#write-snippet-bitbucket)\n- [`delete:snippet:bitbucket`](#delete-snippet-bitbucket)\n- [`read:ssh-key:bitbucket`](#read-ssh-key-bitbucket)\n- [`write:ssh-key:bitbucket`](#write-ssh-key-bitbucket)\n- [`delete:ssh-key:bitbucket`](#delete-ssh-key-bitbucket)\n- [`read:gpg-key:bitbucket`](#read-gpg-key-bitbucket)\n- [`write:gpg-key:bitbucket`](#write-gpg-key-bitbucket)\n- [`delete:gpg-key:bitbucket`](#delete-gpg-key-bitbucket)\n- [`read:permission:bitbucket`](#read-permission-bitbucket)\n- [`write:permission:bitbucket`](#write-permission-bitbucket)\n- [`delete:permission:bitbucket`](#delete-permission-bitbucket)\n\n#### read:repository:bitbucket\n\nAllows viewing of repository data. Note that this scope does not give access to a repository's pull requests.\n* access to the repository's source code\n* access the file browsing API\n* access to certain repository configurations such as branching model, default reviewers, etc.\n\n#### write:repository:bitbucket\n\nAllows modification of repository data. No distinction is made between public and private repositories. This scope does not imply the `read:repository:bitbucket` scope, so you need to request that separately if required. This scope alone does not give access to the pull request API.\n* update/delete source, branches, tags, etc.\n* fork repositories\n\n#### admin:repository:bitbucket\n\nAllows admin activities on repositories. No distinction is made between public and private repositories. This scope does not implicitly grant the `read:repository:bitbucket` or the `write:repository:bitbucket` scopes. It gives access to the admin features of a repository only, not direct access to its contents. This scope does not allow modification of repository permissions. This scope comes with access to the following functionality:\n* create repository\n* view repository permissions\n* view and edit branch restrictions\n* edit branching model settings\n* edit default reviewers\n* view and edit inheritance state for repository settings\n\n#### delete:repository:bitbucket\nAllows deletion of repositories.\n\n#### read:pullrequest:bitbucket\nAllows viewing of pull requests, plus the ability to comment on pull requests.\n\nThis scope does not imply the `read:repository:bitbucket` scope. With this scope, you could retrieve some data specific to the source/destination repositories of a pull request using pull request endpoints, but it does not give access to repository API endpoints.\n\n#### write:pullrequest:bitbucket\nAllows the ability to create, update, approve, decline, and merge pull requests.\n\nThis scope does not imply the `write:repository:bitbucket` scope.\n\n#### read:project:bitbucket\nAllows viewing of project and project permission data.\n\n#### admin:project:bitbucket\nAllows the ability to create, update, and delete project. No distinction is made between public and private projects.\n\nThis scope does not implicitly grant the `read:project:bitbucket` scope or any repository scopes. It gives access to the admin features of a project only, not direct access to its repositories' contents.\n\n#### read:workspace:bitbucket\nAllows viewing of workspace and workspace permission data.\n\n#### admin:workspace:bitbucket\nAllows the ability to create, update and delete the workspace. This scope does not implicitly grant the `read:workspace:bitbucket` scope or any repository scopes. It gives access to the admin features of a workspace only, not direct access to its workspaces' contents.\n\n#### read:user:bitbucket\nAllows viewing of data related to the current user.\n\n#### write:user:bitbucket\nAllows the ability to update data related to the current user.\n\nThis scope does not imply the `read:user:bitbucket` scope.\n\n#### read:pipeline:bitbucket\nAllows read access to all pipeline information (pipelines, steps, caches, artifacts, logs, tests, code-insights).\n\n#### write:pipeline:bitbucket\nAllows running pipelines (i.e., start/stop/create pipeline) and uploading tests/code-insights.\n\nThis scope does not imply the `read:pipeline:bitbucket` scope.\n\n#### admin:pipeline:bitbucket\nAllows admin activities, such as creating pipeline variables.\n\nThis scope does not implicitly grant the `read:pipeline:bitbucket` or the `write:pipeline:bitbucket` scopes.\n\n#### read:runner:bitbucket\nAllows viewing of runners information.\n\n#### write:runner:bitbucket\nAllows runners management.\n\nThis scope does not imply the `read:runners:bitbucket` scope.\n\n#### read:issue:bitbucket\nAllows the viewing of issues.\n\n#### write:issue:bitbucket\nAllows the ability to create and update issues.\n\nThis scope does not implicitly grant the `read:issue:bitbucket` scope.\n\n#### delete:issue:bitbucket\nAllows the deletion of issues.\n\n#### read:webhook:bitbucket\nAllows read access to webhooks information.\n\n#### write:webhook:bitbucket\nAllows the ability to create and update webhooks.\n\nThis scope does not implicitly grant the `read:webhook:bitbucket` scope.\n\n#### delete:webhook:bitbucket\nAllows the deletion of webhooks.\n\n#### read:snippet:bitbucket\nAllows the viewing of snippets.\n\n#### write:snippet:bitbucket\nAllows the ability to create and update snippets.\n\nThis scope does not implicitly grant the `read:snippet:bitbucket` scope.\n\n#### delete:snippet:bitbucket\nAllows the deletion of snippets.\n\n#### read:ssh-key:bitbucket\nAllows read access to information related to deploy keys and SSH keys.\n\n#### write:ssh-key:bitbucket\nAllows the ability to create and update deploy keys and SSH keys.\n\nThis scope does not implicitly grant the `read:ssh-key:bitbucket` scope.\n\n#### delete:ssh-key:bitbucket\nAllows the deletion of deploy keys and SSH keys.\n\n#### read:gpg-key:bitbucket\nAllows read access to information related to GPG keys.\n\n#### write:gpg-key:bitbucket\nAllows the ability to create and update GPG keys.\n\nThis scope does not implicitly grant the `read:gpg-key:bitbucket` scope.\n\n#### delete:gpg-key:bitbucket\nAllows the deletion of GPG keys.\n\n#### read:permission:bitbucket\nAllows read access to permissions data.\n\n#### write:permission:bitbucket\nAllows the ability to create and modify permissions related data.\n\nThis scope does not implicitly grant the `read:permission:bitbucket` scope.\n\n#### delete:permission:bitbucket\nAllows the deletion of permissions related data.\n" }, { "anchor": "filtering", @@ -25307,13 +27695,15 @@ "pipeline:variable": "Access your repositories' build pipelines and configure their variables", "runner": "Access your workspaces/repositories' runners", "runner:write": "Access and edit your workspaces/repositories' runners", - "pullrequest": "Read your repositories and their pull requests", - "pullrequest:write": "Read and modify your repositories and their pull requests", - "webhook": "Read and modify your repositories' webhooks", + "test": "Access your workspaces/repositories' test", + "test:write": "Access and edit your workspaces/repositories' test", "issue": "Read your repositories' issues", "issue:write": "Read and modify your repositories' issues", + "pullrequest": "Read your repositories and their pull requests", + "pullrequest:write": "Read and modify your repositories and their pull requests", "snippet": "Read your snippets", "snippet:write": "Read and modify your snippets", + "webhook": "Read and modify your repositories' webhooks", "wiki": "Read and modify your repositories' wikis" } } @@ -25794,7 +28184,7 @@ }, "remote_link_enabled": { "type": "boolean", - "description": "If enabled, a remote link is created in Jira for the issue associated with the commit the report belongs to." + "description": "If enabled, a remote link is created in Jira for the work item associated with the commit the report belongs to." }, "logo_url": { "type": "string", @@ -26099,7 +28489,8 @@ } } } - ] + ], + "x-bb-batch-url": "/rest/1.0/accounts/{target_user.uuid}/repositories/{repository.uuid}/pipelines/pipelines_batch" }, "pipelines_links_section_href": { "allOf": [ @@ -27492,6 +29883,181 @@ }, "required": ["source", "uri"] }, + "pipeline_runner": { + "allOf": [ + { + "$ref": "#/components/schemas/object" + }, + { + "additionalProperties": true, + "type": "object", + "title": "Runner", + "description": "A Bitbucket Pipelines runner for self-hosted builds.", + "properties": { + "uuid": { + "type": "string", + "description": "The UUID identifying the runner." + }, + "name": { + "type": "string", + "description": "The name of the runner." + }, + "labels": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Labels assigned to the runner for identification and routing." + }, + "state": { + "$ref": "#/components/schemas/pipeline_runner_state" + }, + "created_on": { + "type": "string", + "format": "date-time", + "description": "The timestamp when the runner was created." + }, + "updated_on": { + "type": "string", + "format": "date-time", + "description": "The timestamp when the runner was last updated." + }, + "oauth_client": { + "$ref": "#/components/schemas/pipeline_runner_oauth_client" + } + } + } + ] + }, + "pipeline_runner_state": { + "allOf": [ + { + "$ref": "#/components/schemas/object" + }, + { + "additionalProperties": true, + "type": "object", + "title": "Runner State", + "description": "The state information of a runner.", + "properties": { + "status": { + "type": "string", + "enum": [ + "UNREGISTERED", + "ONLINE", + "OFFLINE", + "DISABLED", + "ENABLED", + "UNHEALTHY" + ], + "description": "The current status of the runner." + }, + "version": { + "$ref": "#/components/schemas/pipeline_runner_version" + }, + "updated_on": { + "type": "string", + "format": "date-time", + "description": "The timestamp when the runner state was last updated." + }, + "cordoned": { + "type": "boolean", + "description": "Whether the runner is cordoned (prevented from accepting new steps)." + } + } + } + ] + }, + "pipeline_runner_version": { + "allOf": [ + { + "$ref": "#/components/schemas/object" + }, + { + "additionalProperties": true, + "type": "object", + "title": "Runner Version", + "description": "Version information for a runner.", + "properties": { + "version": { + "type": "string", + "description": "The currently installed version of the runner." + }, + "current": { + "type": "string", + "description": "The current recommended version of the runner." + } + } + } + ] + }, + "pipeline_runner_oauth_client": { + "allOf": [ + { + "$ref": "#/components/schemas/object" + }, + { + "additionalProperties": true, + "type": "object", + "title": "Runner OAuth Client", + "description": "OAuth client configuration for runner authentication.", + "properties": { + "id": { + "type": "string", + "description": "The OAuth client ID." + }, + "secret": { + "type": "string", + "description": "The OAuth client secret. This is an optional element that is only provided once." + }, + "token_endpoint": { + "type": "string", + "format": "uri", + "description": "The OAuth token endpoint URL." + }, + "audience": { + "type": "string", + "description": "The intended audience for the OAuth token." + } + } + } + ] + }, + "paginated_pipeline_runners": { + "type": "object", + "title": "Paginated Runners", + "description": "A paged list of runners.", + "properties": { + "page": { + "type": "integer", + "description": "Page number of the current results. This is an optional element that is not provided in all responses." + }, + "values": { + "type": "array", + "minItems": 0, + "items": { + "$ref": "#/components/schemas/pipeline_runner" + }, + "description": "The values of the current page." + }, + "size": { + "type": "integer", + "description": "Total number of objects in the response. This is an optional element that is not provided in all responses, as it can be expensive to compute." + }, + "pagelen": { + "type": "integer", + "description": "Current number of objects on the existing page. The default value is 10 with 100 being the maximum allowed value. Individual APIs may enforce different values." + }, + "next": { + "type": "string", + "description": "Link to the next page if it exists. The last page of a collection does not have this value. Use this link to navigate the result set and refrain from constructing your own URLs." + }, + "previous": { + "type": "string", + "description": "Link to previous page if it exists. A collections first page does not have this value. This is an optional element that is not provided in all responses. Some result sets strictly support forward navigation and never provide previous links. Clients must anticipate that backwards navigation is not always available. Use this link to navigate the result set and refrain from constructing your own URLs." + } + } + }, "search_code_search_result": { "type": "object", "properties": { @@ -27776,7 +30342,8 @@ "description": "A task object.", "properties": { "id": { - "type": "integer" + "type": "integer", + "format": "int64" }, "created_on": { "type": "string", @@ -28663,7 +31230,8 @@ "description": "The base type for all comments. This type should be considered abstract. Each of the \"commentable\" resources defines its own subtypes (e.g. `issue_comment`).", "properties": { "id": { - "type": "integer" + "type": "integer", + "format": "int64" }, "created_on": { "type": "string", @@ -28706,12 +31274,22 @@ "properties": { "from": { "type": "integer", - "description": "The comment's anchor line in the old version of the file.", + "description": "The comment's anchor line in the old version of the file. If the comment is a multi-line comment, this is the ending line number in the old version of the file.", "minimum": 1 }, "to": { "type": "integer", - "description": "The comment's anchor line in the new version of the file. If the 'from' line is also provided, this value will be removed.", + "description": "The comment's anchor line in the new version of the file. If the comment is a multi-line comment, this is the ending line number in the new version of the file.", + "minimum": 1 + }, + "start_from": { + "type": "integer", + "description": "The starting line number in the old version of the file, if the comment is a multi-line comment. This is null otherwise.", + "minimum": 1 + }, + "start_to": { + "type": "integer", + "description": "The starting line number in the new version of the file, if the comment is a multi-line comment. This is null otherwise.", "minimum": 1 }, "path": { @@ -28824,10 +31402,6 @@ }, "additionalProperties": false }, - "uuid": { - "type": "string", - "description": "The commit status' id." - }, "key": { "type": "string", "description": "An identifier for the status that's unique to\n its type (current \"build\" is the only supported type) and the vendor,\n e.g. BB-DEPLOY" @@ -28862,6 +31436,7 @@ "format": "date-time" } }, + "required": ["key", "state"], "additionalProperties": true } ] @@ -30777,7 +33352,14 @@ "state": { "type": "string", "description": "The pull request's current status.", - "enum": ["OPEN", "MERGED", "DECLINED", "SUPERSEDED"] + "enum": [ + "OPEN", + "DRAFT", + "QUEUED", + "MERGED", + "DECLINED", + "SUPERSEDED" + ] }, "author": { "$ref": "#/components/schemas/account" @@ -30851,6 +33433,10 @@ "queued": { "type": "boolean", "description": "A boolean flag indicating whether the pull request is queued" + }, + "mergeable": { + "type": "boolean", + "description": "A boolean flag indicating whether the pull request passes all merge checks" } }, "additionalProperties": true @@ -30908,6 +33494,87 @@ } ] }, + "file_conflict": { + "type": "object", + "title": "File Conflict", + "description": "A file conflict object.", + "properties": { + "type": { + "type": "string" + }, + "path": { + "type": "string" + }, + "scenario": { + "type": "string", + "enum": [ + "delete_modify", + "modify_delete", + "content", + "binary", + "flags", + "mode", + "type", + "symlink", + "directory_file", + "file_directory", + "add_rename", + "rename_add", + "delete_rename", + "rename_delete", + "rename", + "subrepo", + "unknown" + ] + }, + "message": { + "type": "string" + } + }, + "required": ["type"], + "additionalProperties": true + }, + "paginated_file_conflicts": { + "type": "object", + "title": "Paginated File Conflicts", + "description": "A paginated list of file conflicts.", + "properties": { + "size": { + "type": "integer", + "description": "Total number of objects in the response. This is an optional element that is not provided in all responses, as it can be expensive to compute.", + "minimum": 0 + }, + "page": { + "type": "integer", + "description": "Page number of the current results. This is an optional element that is not provided in all responses.", + "minimum": 1 + }, + "pagelen": { + "type": "integer", + "description": "Current number of objects on the existing page. The default value is 10 with 100 being the maximum allowed value. Individual APIs may enforce different values.", + "minimum": 1 + }, + "next": { + "type": "string", + "description": "Link to the next page if it exists. The last page of a collection does not have this value. Use this link to navigate the result set and refrain from constructing your own URLs.", + "format": "uri" + }, + "previous": { + "type": "string", + "description": "Link to previous page if it exists. A collections first page does not have this value. This is an optional element that is not provided in all responses. Some result sets strictly support forward navigation and never provide previous links. Clients must anticipate that backwards navigation is not always available. Use this link to navigate the result set and refrain from constructing your own URLs.", + "format": "uri" + }, + "values": { + "type": "array", + "items": { + "$ref": "#/components/schemas/file_conflict" + }, + "minItems": 0, + "uniqueItems": true + } + }, + "additionalProperties": false + }, "author": { "allOf": [ { @@ -31711,10 +34378,6 @@ "type": "string", "description": "The fingerprint of the parent key. This value is null unless the current key is a subkey." }, - "comment": { - "type": "string", - "description": "The comment parsed from the GPG key (if present)" - }, "name": { "type": "string", "description": "The user-defined label for the GPG key" @@ -32067,6 +34730,7 @@ "issue:comment_created", "issue:created", "issue:updated", + "pipeline:span_created", "project:updated", "pullrequest:approved", "pullrequest:changes_request_created", @@ -32197,6 +34861,7 @@ "issue:comment_created", "issue:created", "issue:updated", + "pipeline:span_created", "project:updated", "pullrequest:approved", "pullrequest:changes_request_created", @@ -32283,6 +34948,128 @@ }, "additionalProperties": false }, + "workspace_access": { + "allOf": [ + { + "$ref": "#/components/schemas/object" + }, + { + "type": "object", + "title": "Workspace Permission", + "description": "A Bitbucket workspace permission for a user.", + "properties": { + "administrator": { + "type": "boolean", + "description": "The permission level the user has for the workspace. True if the user is an administrator, otherwise False." + }, + "workspace": { + "$ref": "#/components/schemas/workspace_base" + } + }, + "additionalProperties": true + } + ] + }, + "workspace_base": { + "allOf": [ + { + "$ref": "#/components/schemas/object" + }, + { + "type": "object", + "title": "Workspace Base", + "description": "A Bitbucket workspace.\n Workspaces are used to organize repositories.", + "properties": { + "links": { + "type": "object", + "properties": { + "avatar": { + "type": "object", + "title": "Link", + "description": "A link to a resource related to this object.", + "properties": { + "href": { + "type": "string", + "format": "uri" + }, + "name": { + "type": "string" + } + }, + "additionalProperties": false + }, + "self": { + "type": "object", + "title": "Link", + "description": "A link to a resource related to this object.", + "properties": { + "href": { + "type": "string", + "format": "uri" + }, + "name": { + "type": "string" + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false + }, + "uuid": { + "type": "string", + "description": "The workspace's immutable id." + }, + "slug": { + "type": "string", + "description": "The short label that identifies this workspace." + } + }, + "additionalProperties": true + } + ] + }, + "paginated_workspace_access": { + "type": "object", + "title": "Paginated Workspace Permissions", + "description": "A paginated list of workspace permissions.", + "properties": { + "size": { + "type": "integer", + "description": "Total number of objects in the response. This is an optional element that is not provided in all responses, as it can be expensive to compute.", + "minimum": 0 + }, + "page": { + "type": "integer", + "description": "Page number of the current results. This is an optional element that is not provided in all responses.", + "minimum": 1 + }, + "pagelen": { + "type": "integer", + "description": "Current number of objects on the existing page. The default value is 10 with 100 being the maximum allowed value. Individual APIs may enforce different values.", + "minimum": 1 + }, + "next": { + "type": "string", + "description": "Link to the next page if it exists. The last page of a collection does not have this value. Use this link to navigate the result set and refrain from constructing your own URLs.", + "format": "uri" + }, + "previous": { + "type": "string", + "description": "Link to previous page if it exists. A collections first page does not have this value. This is an optional element that is not provided in all responses. Some result sets strictly support forward navigation and never provide previous links. Clients must anticipate that backwards navigation is not always available. Use this link to navigate the result set and refrain from constructing your own URLs.", + "format": "uri" + }, + "values": { + "type": "array", + "items": { + "$ref": "#/components/schemas/workspace_access" + }, + "minItems": 0, + "uniqueItems": true + } + }, + "additionalProperties": false + }, "paginated_workspace_memberships": { "type": "object", "title": "Paginated Workspace Memberships", diff --git a/src/cloud/tsconfig.json b/src/cloud/tsconfig.json new file mode 100644 index 0000000..ac2511d --- /dev/null +++ b/src/cloud/tsconfig.json @@ -0,0 +1,6 @@ +{ + "extends": "../../tsconfig.json", + "include": ["."], + "exclude": [], + "references": [] +} diff --git a/src/server/openapi/openapi-typescript.ts b/src/server/openapi/openapi-typescript.ts index e4d80ad..9198faa 100644 --- a/src/server/openapi/openapi-typescript.ts +++ b/src/server/openapi/openapi-typescript.ts @@ -1682,7 +1682,7 @@ export interface paths { } /** * Get root log level - * @description Retrieve the current log level for the root logger. + * @description Retrieve the current log level for the root logger. * * The authenticated user must have ADMIN permission or higher to call this resource. */ @@ -2563,7 +2563,7 @@ export interface paths { readonly post?: never /** * Revoke group project permission - * @description Revoke all permissions for the specified project for a group. + * @description Revoke all permissions for the specified project for a group. * * The authenticated user must have PROJECT_ADMIN permission for the specified project or a higher global permission to call this resource. * @@ -4092,7 +4092,6 @@ export interface paths { * - username.N - the "root" of a single participant filter, where "N" is a natural number starting from 1. This allows clients to specify multiple participant filters, by providing consecutive filters as username.1, username.2 etc. Note that the filters numbering has to start with 1 and be continuous for all filters to be processed. The total allowed number of participant filters is 10 and all filters exceeding that limit will be dropped. * - role.N(optional) the role associated with username.N. This must be one of AUTHOR, REVIEWER, or PARTICIPANT * - approved.N (optional) the approved status associated with username.N. That is whether username.N has approved the PR. Either true, or false - * */ readonly get: operations["getPage"] readonly put?: never @@ -5499,9 +5498,6 @@ export interface paths { * - requiredAllTasksComplete - whether or not all tasks on a pull request need to be completed for it to be mergeable * - requiredSuccessfulBuilds - (Deprecated, please use com.atlassian.bitbucket.server.bitbucket-build.requiredBuildsMergeCheck instead) the number of successful builds on a pull request for it to be mergeable, or 0 if the merge check is disabled * - com.atlassian.bitbucket.server.bitbucket-build.requiredBuildsMergeCheck - the merge check configuration for required builds - * - * - * */ readonly get: operations["getPullRequestSettings_1"] readonly put?: never @@ -5542,9 +5538,6 @@ export interface paths { * - The configuration set for this repository's SCM type as set at the project level, if present, otherwise * - the configuration set for this repository's SCM type as set at the instance level, if present, otherwise * - the default configuration for this repository's SCM type - * - * - * */ readonly post: operations["updatePullRequestSettings_1"] readonly delete?: never @@ -7038,7 +7031,7 @@ export interface paths { readonly put?: never /** * Create branch - * @description Creates a branch in the specified repository. + * @description Creates a branch in the specified repository. * * * The authenticated user must have an effective REPO_WRITE permission to call this resource. If @@ -7048,7 +7041,7 @@ export interface paths { readonly post: operations["createBranch"] /** * Delete branch - * @description Deletes a branch in the specified repository. + * @description Deletes a branch in the specified repository. * * * If the branch does not exist, this operation will not raise an error. In other words after calling this resource @@ -7816,8 +7809,6 @@ export interface paths { * @description Retrieves the enchanced primary entitylink * * The authenticated user must have PROJECT_READ permission for the project having the primary enhanced entitylink. - * - * */ readonly get: operations["getEnhancedEntityLinkForProject"] readonly put?: never @@ -8234,7 +8225,7 @@ export interface paths { } /** * Get synchronization progress state - * @description Retrieves synchronization progress state.If there's no progress to report, this resource will return
 {"discovering":false,"syncedRepos":0,"totalRepos":0}
If there are repositories in the process of synchronizing, but the precise number hasn't been discovered yet, this resource will return:
 {"discovering":true,"syncedRepos":3,"totalRepos":100}
If there is progress to report and the total number of repositories is known, this resource will return:
  {"discovering":false,"syncedRepos":242,"totalRepos":1071} 
+ * @description Retrieves synchronization progress state.If there's no progress to report, this resource will return
 {"discovering":false,"syncedRepos":0,"totalRepos":0}
If there are repositories in the process of synchronizing, but the precise number hasn't been discovered yet, this resource will return:
 {"discovering":true,"syncedRepos":3,"totalRepos":100}
If there is progress to report and the total number of repositories is known, this resource will return:
  {"discovering":false,"syncedRepos":242,"totalRepos":1071} 
*/ readonly get: operations["getSynchronizationProgress"] readonly put?: never @@ -8813,9 +8804,6 @@ export interface paths { * * - **exemptRefMatcher.id** The value to exempt refs in the source branch from this check * - **exemptRefMatcher.type.id**: The type of exempt ref matcher, one of: "ANY_REF", "BRANCH", "PATTERN", "MODEL_CATEGORY" or "MODEL_BRANCH" - * - * - * */ readonly post: operations["createRequiredBuildsMergeCheck"] readonly delete?: never @@ -8851,9 +8839,6 @@ export interface paths { * * - **exemptRefMatcher.id** The value to exempt refs in the source branch from this check * - **exemptRefMatcher.type.id**: The type of exempt ref matcher, one of: "ANY_REF", "BRANCH", "PATTERN", "MODEL_CATEGORY" or "MODEL_BRANCH" - * - * - * */ readonly put: operations["updateRequiredBuildsMergeCheck"] readonly post?: never @@ -9461,10 +9446,12 @@ export interface components { readonly GroupAndUsers: { /** @example group */ readonly group?: string - /** @example [ + /** + * @example [ * "user1", * "user2" - * ] */ + * ] + */ readonly users: readonly string[] } readonly GroupPickerContext: { @@ -9591,10 +9578,12 @@ export interface components { readonly expiryDays?: number /** @example My access token */ readonly name?: string - /** @example [ + /** + * @example [ * "REPO_ADMIN", * "PROJECT_READ" - * ] */ + * ] + */ readonly permissions?: readonly string[] } readonly RestAggregateRejectCounter: { @@ -10311,11 +10300,13 @@ export interface components { readonly conflict?: { readonly ourChange?: { readonly path?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -10325,11 +10316,13 @@ export interface components { readonly parent?: string } readonly srcPath?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -10349,11 +10342,13 @@ export interface components { } readonly theirChange?: { readonly path?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -10363,11 +10358,13 @@ export interface components { readonly parent?: string } readonly srcPath?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -10395,11 +10392,13 @@ export interface components { /** @enum {string} */ readonly nodeType?: "DIRECTORY" | "FILE" | "SUBMODULE" readonly path?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -10415,11 +10414,13 @@ export interface components { readonly percentUnchanged?: number readonly srcExecutable?: boolean readonly srcPath?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -10655,11 +10656,13 @@ export interface components { readonly startLineType: "ADDED" | "CONTEXT" | "REMOVED" } readonly path?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -10932,11 +10935,13 @@ export interface components { readonly version?: number } readonly srcPath?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -11009,11 +11014,13 @@ export interface components { readonly startLineType: "ADDED" | "CONTEXT" | "REMOVED" } readonly path?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -11286,11 +11293,13 @@ export interface components { readonly version?: number } readonly srcPath?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -11515,11 +11524,13 @@ export interface components { readonly startLineType: "ADDED" | "CONTEXT" | "REMOVED" } readonly path?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -11792,11 +11803,13 @@ export interface components { readonly version?: number } readonly srcPath?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -11850,11 +11863,13 @@ export interface components { readonly RestConflict: { readonly ourChange?: { readonly path?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -11864,11 +11879,13 @@ export interface components { readonly parent?: string } readonly srcPath?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -11888,11 +11905,13 @@ export interface components { } readonly theirChange?: { readonly path?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -11902,11 +11921,13 @@ export interface components { readonly parent?: string } readonly srcPath?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -11927,11 +11948,13 @@ export interface components { } readonly RestConflictChange: { readonly path?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -11941,11 +11964,13 @@ export interface components { readonly parent?: string } readonly srcPath?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -12325,11 +12350,13 @@ export interface components { readonly RestDiff: { readonly binary?: boolean readonly destination?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -12342,11 +12369,13 @@ export interface components { readonly lineComments?: readonly components["schemas"]["RestComment"][] readonly properties?: Record readonly source?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -12468,7 +12497,8 @@ export interface components { readonly id?: string /** @example [] */ readonly subKeys?: readonly components["schemas"]["RestGpgSubKey"][] - /** @example -----BEGIN PGP SIGNATURE----- + /** + * @example -----BEGIN PGP SIGNATURE----- * * iQEzBAABCAAdFiEEM8MrWnoxlp3K1lFY5BMGiWNefn4FAlkqKE4ACgkQ5BMGiWNe * fn6/kggAyzKhDDqdVb3Rq02hiSqeqKa1JuKRqDmzIpa6Pxa+1CpCnxwaIVrGgIii @@ -12479,7 +12509,7 @@ export interface components { * Pbs7BpD28w4lKlzb2EQ0n0C9rrxdPA== * =VZpm * -----END PGP SIGNATURE----- - * */ + */ readonly text?: string } readonly RestGpgSubKey: { @@ -13190,11 +13220,13 @@ export interface components { readonly values?: Record } readonly RestPath: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -14253,10 +14285,12 @@ export interface components { } readonly RestRefRestriction: { readonly accessKeys?: readonly components["schemas"]["RestSshAccessKey"][] - /** @example [ + /** + * @example [ * "group_a", * "group_b" - * ] */ + * ] + */ readonly groups?: readonly string[] /** * Format: int32 @@ -14821,21 +14855,27 @@ export interface components { } } readonly RestRestrictionRequest: { - /** @example [ + /** + * @example [ * 1, * 2, * 3 - * ] */ + * ] + */ readonly accessKeyIds?: readonly number[] readonly accessKeys?: readonly components["schemas"]["RestSshAccessKey"][] - /** @example [ + /** + * @example [ * "bitbucket-developers" - * ] */ + * ] + */ readonly groupNames?: readonly string[] - /** @example [ + /** + * @example [ * "group_a", * "group_b" - * ] */ + * ] + */ readonly groups?: readonly string[] /** * Format: int32 @@ -14871,11 +14911,13 @@ export interface components { /** @example pull-request-only */ readonly type?: string readonly users?: readonly components["schemas"]["RestApplicationUser"][] - /** @example [ + /** + * @example [ * "bman", * "tstark", * "hulk" - * ] */ + * ] + */ readonly userSlugs?: readonly string[] } readonly RestReviewerGroup: { @@ -15454,11 +15496,13 @@ export interface components { readonly startLineType: "ADDED" | "CONTEXT" | "REMOVED" } readonly path?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -15731,11 +15775,13 @@ export interface components { readonly version?: number } readonly srcPath?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -15808,11 +15854,13 @@ export interface components { readonly startLineType: "ADDED" | "CONTEXT" | "REMOVED" } readonly path?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -16085,11 +16133,13 @@ export interface components { readonly version?: number } readonly srcPath?: { - /** @example [ + /** + * @example [ * "path", * "to", * "file.txt" - * ] */ + * ] + */ readonly components?: readonly string[] /** @example txt */ readonly extension?: string @@ -16348,10 +16398,12 @@ export interface components { readonly value?: string } readonly UserAndGroups: { - /** @example [ + /** + * @example [ * "group_a", * "group_b" - * ] */ + * ] + */ readonly groups: readonly string[] /** @example user */ readonly user?: string @@ -16870,13 +16922,14 @@ export interface operations { readonly "application/json": components["schemas"]["RestRawAccessToken"] } } - /** @description One of the following error cases occurred (check the error message for more details). + /** + * @description One of the following error cases occurred (check the error message for more details). * * - The request does not contain a token name * - The request does not contain a list of permissions, or the list of permissions is empty * - One of the provided permission levels are unknown * - The project already has the maximum number of tokens - * */ + */ readonly 400: { headers: Readonly> content: { @@ -17120,9 +17173,11 @@ export interface operations { readonly "application/json": components["schemas"]["RestRawAccessToken"] } } - /** @description One of the following error cases occurred (check the error message for more details). + /** + * @description One of the following error cases occurred (check the error message for more details). * - * - The request does not contain a token name- The request does not contain a list of permissions, or the list of permissions is empty- One of the provided permission levels are unknown- The repository already has the maximum number of tokens */ + * - The request does not contain a token name- The request does not contain a list of permissions, or the list of permissions is empty- One of the provided permission levels are unknown- The repository already has the maximum number of tokens + */ readonly 400: { headers: Readonly> content: { @@ -17368,13 +17423,14 @@ export interface operations { readonly "application/json": components["schemas"]["RestRawAccessToken"] } } - /** @description One of the following error cases occurred (check the error message for more details). + /** + * @description One of the following error cases occurred (check the error message for more details). * * - The request does not contain a token name * - The request does not contain a list of permissions, or the list of permissions is empty * - One of the provided permission levels are unknown * - The user already has their maximum number of tokens - * */ + */ readonly 400: { headers: Readonly> content: { @@ -17575,7 +17631,8 @@ export interface operations { headers: Readonly> content?: never } - /** @description The request was invalid, which may be due to: + /** + * @description The request was invalid, which may be due to: * * * - attempted to set expiry to less than 1 day @@ -17583,7 +17640,8 @@ export interface operations { * - attempted to set a restriction on a key type which was invalid * * - * The exact reason for the error will be provided in the error message. */ + * The exact reason for the error will be provided in the error message. + */ readonly 400: { headers: Readonly> content: { @@ -18923,8 +18981,10 @@ export interface operations { } } } - /** @description The currently authenticated user is not an administrator or doesn't have the - * specified permission they are attempting to grant. */ + /** + * @description The currently authenticated user is not an administrator or doesn't have the + * specified permission they are attempting to grant. + */ readonly 401: { headers: Readonly> content: { @@ -18951,9 +19011,11 @@ export interface operations { } } } - /** @description The action was disallowed as it would reduce the currently authenticated user's + /** + * @description The action was disallowed as it would reduce the currently authenticated user's * permission level or the currently authenticated user has a lower permission - * level than the group they are attempting to modify. */ + * level than the group they are attempting to modify. + */ readonly 409: { headers: Readonly> content: { @@ -18999,9 +19061,11 @@ export interface operations { } } } - /** @description The action was disallowed as it would reduce the currently authenticated user's + /** + * @description The action was disallowed as it would reduce the currently authenticated user's * permission level or the currently authenticated user has a lower permission - * level than the group they are attempting to modify. */ + * level than the group they are attempting to modify. + */ readonly 409: { headers: Readonly> content: { @@ -19146,8 +19210,10 @@ export interface operations { } } } - /** @description The currently authenticated user is not an administrator or doesn't have the - * specified permission they are attempting to grant. */ + /** + * @description The currently authenticated user is not an administrator or doesn't have the + * specified permission they are attempting to grant. + */ readonly 401: { headers: Readonly> content: { @@ -19174,9 +19240,11 @@ export interface operations { } } } - /** @description The action was disallowed as it would reduce the currently authenticated user's + /** + * @description The action was disallowed as it would reduce the currently authenticated user's * permission level or the currently authenticated user has a lower permission - * level than the user they are attempting to modify. */ + * level than the user they are attempting to modify. + */ readonly 409: { headers: Readonly> content: { @@ -19222,9 +19290,11 @@ export interface operations { } } } - /** @description The action was disallowed as it would reduce the currently authenticated user's + /** + * @description The action was disallowed as it would reduce the currently authenticated user's * permission level or the currently authenticated user has a lower permission - * level than the user they are attempting to modify. */ + * level than the user they are attempting to modify. + */ readonly 409: { headers: Readonly> content: { @@ -19481,9 +19551,11 @@ export interface operations { readonly path?: never readonly cookie?: never } - /** @description Sets the rate limit settings for the instance. + /** + * @description Sets the rate limit settings for the instance. * - * The authenticated user must have ADMIN permission to call this resource. */ + * The authenticated user must have ADMIN permission to call this resource. + */ readonly requestBody?: { readonly content: { readonly "application/json": components["schemas"]["RestRateLimitSettings"] @@ -19497,15 +19569,14 @@ export interface operations { readonly "application/json": components["schemas"]["RestRateLimitSettings"] } } - /** @description One of the following error cases occurred (check the error message for more details): + /** + * @description One of the following error cases occurred (check the error message for more details): * * - The request is empty * - The enabled field of the request is not a boolean * - The defaultSettings field of the request does not contain both capacity and fillRate * - The capacity and fillRate are not positive integers - * - * - * */ + */ readonly 400: { headers: Readonly> content: { @@ -19596,7 +19667,8 @@ export interface operations { readonly "application/json": components["schemas"]["RestUserRateLimitSettings"] } } - /** @description One of the following valid state error cases occurred (check the error message for more details): + /** + * @description One of the following valid state error cases occurred (check the error message for more details): * * - The request is empty * - No users are provided in the request @@ -19605,7 +19677,7 @@ export interface operations { * - Whitelisted is false or not provided, settings are provided, but do not contain both capacity and fillRate * - Whitelisted is false or not provided, settings are provided, but capacity and fillRate are not positive integers * - Whitelisted is true, and settings are provided (only one must be provided) - * */ + */ readonly 400: { headers: Readonly> content: { @@ -19687,16 +19759,15 @@ export interface operations { readonly "application/json": components["schemas"]["RestUserRateLimitSettings"] } } - /** @description One of the following valid state error cases occurred (check the error message for more details): + /** + * @description One of the following valid state error cases occurred (check the error message for more details): * * - The request is empty * - Whitelisted is false or not provided, and no settings are provided either * - Whitelisted is false or not provided, settings are provided, but do not contain both capacity and fillRate * - Whitelisted is false or not provided, settings are provided, but capacity and fillRate are not positive integers * - Whitelisted is true, and settings are provided (only one must be provided) - * - * - * */ + */ readonly 400: { headers: Readonly> content: { @@ -21168,7 +21239,7 @@ export interface operations { * @example 0 */ readonly start?: number - /** @description the type of labelables to be returned. Supported values: REPOSITORY */ + /** @description the type of labelables to be returned. Supported values: REPOSITORY */ readonly type?: string } readonly header?: never @@ -22939,14 +23010,13 @@ export interface operations { readonly query?: never readonly header?: never readonly path: { - /** @description The permission to grant. Available project permissions are: + /** + * @description The permission to grant. Available project permissions are: * * - PROJECT_READ * - PROJECT_WRITE * - PROJECT_ADMIN - * - * - * */ + */ readonly permission: string /** @description The project key */ readonly projectKey: string @@ -23008,14 +23078,13 @@ export interface operations { } readonly header?: never readonly path: { - /** @description The permission to grant. Available project permissions are: + /** + * @description The permission to grant. Available project permissions are: * * - PROJECT_READ * - PROJECT_WRITE * - PROJECT_ADMIN - * - * - * */ + */ readonly permission: string /** @description The project key */ readonly projectKey: string @@ -23126,14 +23195,13 @@ export interface operations { readonly query?: { /** @description The names of the groups */ readonly name?: string - /** @description The permission to grant.See the [permissions documentation](https://confluence.atlassian.com/display/BitbucketServer/Using+project+permissions)for a detailed explanation of what each permission entails. Available project permissions are: + /** + * @description The permission to grant.See the [permissions documentation](https://confluence.atlassian.com/display/BitbucketServer/Using+project+permissions)for a detailed explanation of what each permission entails. Available project permissions are: * * - PROJECT_READ * - PROJECT_WRITE * - PROJECT_ADMIN - * - * - * */ + */ readonly permission?: string } readonly header?: never @@ -23226,7 +23294,7 @@ export interface operations { } } } - /** @description The action was disallowed as it would reduce the currently authenticated user'spermission level. */ + /** @description The action was disallowed as it would reduce the currently authenticated user'spermission level. */ readonly 409: { headers: Readonly> content: { @@ -23305,13 +23373,13 @@ export interface operations { readonly query?: { /** @description Name of the user or group to filter the name of */ readonly filterText?: string - /** @description Permissions to filter by. See the [permissions documentation](https://confluence.atlassian.com/display/BitbucketServer/Using+project+permissions)for a detailed explanation of what each permission entails. This parameter can be specified multiple times to filter by more than one permission, and can contain global and project permissions. - * - * */ + /** @description Permissions to filter by. See the [permissions documentation](https://confluence.atlassian.com/display/BitbucketServer/Using+project+permissions)for a detailed explanation of what each permission entails. This parameter can be specified multiple times to filter by more than one permission, and can contain global and project permissions. */ readonly permission?: string - /** @description Type of entity (user or group)Valid entity types are: + /** + * @description Type of entity (user or group)Valid entity types are: * - * - USER- GROUP */ + * - USER- GROUP + */ readonly type?: string } readonly header?: never @@ -23400,14 +23468,13 @@ export interface operations { readonly query?: { /** @description The names of the users */ readonly name?: string - /** @description The permission to grant.See the [permissions documentation](https://confluence.atlassian.com/display/BitbucketServer/Using+project+permissions)for a detailed explanation of what each permission entails. Available project permissions are: + /** + * @description The permission to grant.See the [permissions documentation](https://confluence.atlassian.com/display/BitbucketServer/Using+project+permissions)for a detailed explanation of what each permission entails. Available project permissions are: * * - PROJECT_READ * - PROJECT_WRITE * - PROJECT_ADMIN - * - * - * */ + */ readonly permission?: string } readonly header?: never @@ -23500,7 +23567,7 @@ export interface operations { } } } - /** @description The action was disallowed as it would reduce the currently authenticated user'spermission level. */ + /** @description The action was disallowed as it would reduce the currently authenticated user'spermission level. */ readonly 409: { headers: Readonly> content: { @@ -24882,7 +24949,8 @@ export interface operations { } readonly cookie?: never } - /** @description The contents of the build status request are: + /** + * @description The contents of the build status request are: * These fields are **required**: * * @@ -24902,7 +24970,7 @@ export interface operations { * - **parent** (optional): The identifier for the plan or job that ran the branch plan that produced this build status. * - **ref** (optional): The fully qualified git reference e.g. refs/heads/master. * - **testResults** (optional): A summary of the passed, failed and skipped tests. - * */ + */ readonly requestBody?: { readonly content: { readonly "*/*": components["schemas"]["RestBuildStatusSetRequest"] @@ -24914,7 +24982,8 @@ export interface operations { headers: Readonly> content?: never } - /** @description The build status was not added as the request was invalid. This could be because of a number of things: + /** + * @description The build status was not added as the request was invalid. This could be because of a number of things: * * * - an invalid commit hash was provided @@ -24923,7 +24992,8 @@ export interface operations { * - invalid state was provided * - build status url was blank or longer than 450 characters * - * The specifics will be included in the error message. */ + * The specifics will be included in the error message. + */ readonly 400: { headers: Readonly> content: { @@ -27504,13 +27574,13 @@ export interface operations { readonly query?: { /** @description Name of the user or group to filter the name of */ readonly filterText?: string - /** @description Permissions to filter by. See the [permissions documentation](https://confluence.atlassian.com/display/BitbucketServer/Using+repository+permissions)for a detailed explanation of what each permission entails. This parameter can be specified multiple times to filter by more than one permission, and can contain repository, project, and global permissions. - * - * */ + /** @description Permissions to filter by. See the [permissions documentation](https://confluence.atlassian.com/display/BitbucketServer/Using+repository+permissions)for a detailed explanation of what each permission entails. This parameter can be specified multiple times to filter by more than one permission, and can contain repository, project, and global permissions. */ readonly permission?: string - /** @description Type of entity (user or group)Valid entity types are: + /** + * @description Type of entity (user or group)Valid entity types are: * - * - USER- GROUP */ + * - USER- GROUP + */ readonly type?: string } readonly header?: never @@ -27917,14 +27987,15 @@ export interface operations { } } } - /** @description One of the following error cases occurred (check the error message for more details): + /** + * @description One of the following error cases occurred (check the error message for more details): * * - There was a problem resolving one or more reviewers. * - The specified branches were the same. * - The to branch is already up-to-date with all the commits on the from branch. * - A pull request between the two branches already exists. * - The to repository is archived. - * */ + */ readonly 409: { headers: Readonly> content: { @@ -28006,13 +28077,14 @@ export interface operations { readonly "application/json": components["schemas"]["RestPullRequest"] } } - /** @description One of the following error cases occurred (check the error message for more details): + /** + * @description One of the following error cases occurred (check the error message for more details): * * - The request tried to modify the author or participants. * - The pull request's version attribute was not specified. * - A reviewer's username was not specified. * - The toRef ID value was incorrectly left blank - * */ + */ readonly 400: { headers: Readonly> content: { @@ -28039,7 +28111,8 @@ export interface operations { } } } - /** @description One of the following error cases occurred (check the error message for more details): + /** + * @description One of the following error cases occurred (check the error message for more details): * * - The specified version is out of date. * - One of the reviewers could not be added to the pull request. @@ -28047,7 +28120,7 @@ export interface operations { * - The from and new to branch are the same * - The new destination branch up-to-date is up-to-date with all of changes from the from branch, resulting in a pull request with nothing to merge * - The to repository is archived. - * */ + */ readonly 409: { headers: Readonly> content: { @@ -29692,14 +29765,15 @@ export interface operations { } } } - /** @description One of the following error cases occurred (check the error message for more details): + /** + * @description One of the following error cases occurred (check the error message for more details): * * - The pull request has conflicts. * - A merge check vetoed the merge. * - The specified version is out of date. * - The specified pull request is not open. * - The to repository is archived. - * */ + */ readonly 409: { headers: Readonly> content: { @@ -30116,12 +30190,13 @@ export interface operations { } } } - /** @description One of the following error cases occurred (check the error message for more details): + /** + * @description One of the following error cases occurred (check the error message for more details): * * - The pull request is not in a declined state. * - The specified version is out of date. * - The to repository is archived. - * */ + */ readonly 409: { headers: Readonly> content: { @@ -32999,7 +33074,7 @@ export interface operations { readonly query?: { /** @description List of com.atlassian.webhooks.WebhookEvent ids to filter for */ readonly event?: string - /** @description Scopes to filter by. This parameter can be specified once e.g. "scopeType=repository", or twice e.g. "scopeType=repository&scopeType=project", to filter by more than one scope level. */ + /** @description Scopes to filter by. This parameter can be specified once e.g. "scopeType=repository", or twice e.g. "scopeType=repository&scopeType=project", to filter by more than one scope level. */ readonly scopeType?: string /** @description true if statistics should be provided for all found webhooks */ readonly statistics?: boolean @@ -33674,11 +33749,13 @@ export interface operations { readonly "application/json": components["schemas"]["RestProjectSettingsRestriction"] } } - /** @description The settings restriction could not be retrieved because the provided parameters were invalid. Possible issues include: + /** + * @description The settings restriction could not be retrieved because the provided parameters were invalid. Possible issues include: * * - The namespace was not provided, or longer than 255 characters * - The featureKey was not provided, or longer than 255 characters - * - The provided componentKey was fewer than 2 characters, or longer than 255 characters */ + * - The provided componentKey was fewer than 2 characters, or longer than 255 characters + */ readonly 400: { headers: Readonly> content: { @@ -33731,11 +33808,13 @@ export interface operations { readonly "application/json": components["schemas"]["RestProjectSettingsRestriction"] } } - /** @description The settings restriction was not created because the request was invalid. Possible issues include: + /** + * @description The settings restriction was not created because the request was invalid. Possible issues include: * * - The namespace was not provided, or longer than 255 characters * - The featureKey was not provided, or longer than 255 characters - * - The provided componentKey was fewer than 2 characters, or longer than 255 characters */ + * - The provided componentKey was fewer than 2 characters, or longer than 255 characters + */ readonly 400: { headers: Readonly> content: { @@ -33797,11 +33876,13 @@ export interface operations { headers: Readonly> content?: never } - /** @description The settings restriction was not deleted because the request was invalid. Possible issues include: + /** + * @description The settings restriction was not deleted because the request was invalid. Possible issues include: * * - The namespace was not provided, or longer than 255 characters * - The featureKey was not provided, or longer than 255 characters - * - The provided componentKey was fewer than 2 characters, or longer than 255 characters */ + * - The provided componentKey was fewer than 2 characters, or longer than 255 characters + */ readonly 400: { headers: Readonly> content: { @@ -33875,10 +33956,12 @@ export interface operations { } } } - /** @description The settings restrictions could not be retrieved because the provided parameters were invalid. Possible issues include: + /** + * @description The settings restrictions could not be retrieved because the provided parameters were invalid. Possible issues include: * * - The namespace was not provided, or longer than 255 characters - * - The featureKey was not provided, or longer than 255 characters */ + * - The featureKey was not provided, or longer than 255 characters + */ readonly 400: { headers: Readonly> content: { @@ -35855,7 +35938,8 @@ export interface operations { readonly "application/json": components["schemas"]["RestApplicationUser"] } } - /** @description The search request was invalid, which may happen for multiple reasons, among + /** + * @description The search request was invalid, which may happen for multiple reasons, among * others: * * @@ -35865,7 +35949,8 @@ export interface operations { * * * The exact reason for the error and - in most cases - the request parameter name that had invalid value - will be - * provided in the error message. */ + * provided in the error message. + */ readonly 400: { headers: Readonly> content: { @@ -35938,8 +36023,10 @@ export interface operations { } readonly requestBody?: never readonly responses: { - /** @description The user matching the supplied userSlug. Note, this may - * not be the user's username, always use the user.slug property. */ + /** + * @description The user matching the supplied userSlug. Note, this may + * not be the user's username, always use the user.slug property. + */ readonly 200: { headers: Readonly> content: { @@ -36662,9 +36749,11 @@ export interface operations { readonly "application/json": components["schemas"]["RestBranch"] } } - /** @description The branch was not created because the request was invalid, e.g. the provided + /** + * @description The branch was not created because the request was invalid, e.g. the provided * ref name already existed in the repository, or was not a valid ref name in the - * repository */ + * repository + */ readonly 400: { headers: Readonly> content: { @@ -36717,9 +36806,11 @@ export interface operations { headers: Readonly> content?: never } - /** @description The branch was not deleted because the request was invalid, e.g. no ref name + /** + * @description The branch was not deleted because the request was invalid, e.g. no ref name * to delete was provided, or the provided ref name points to the default branch - * in the repository that cannot be deleted */ + * in the repository that cannot be deleted + */ readonly 400: { headers: Readonly> content: { @@ -36728,9 +36819,11 @@ export interface operations { } } } - /** @description The currently authenticated user has insufficient permissions to delete a + /** + * @description The currently authenticated user has insufficient permissions to delete a * branch. This could be due to insufficient repository permissions, or lack of - * branch permission for the provided ref name. */ + * branch permission for the provided ref name. + */ readonly 401: { headers: Readonly> content: { @@ -37501,10 +37594,12 @@ export interface operations { readonly "application/json": components["schemas"]["RestDefaultTask"] } } - /** @description One or more of the following error cases occurred (check the error message for more details): + /** + * @description One or more of the following error cases occurred (check the error message for more details): * * - * - the description is empty- the sourceMatcher or targetMatcher is invalid */ + * - the description is empty- the sourceMatcher or targetMatcher is invalid + */ readonly 400: { headers: Readonly> content: { @@ -37600,10 +37695,12 @@ export interface operations { readonly "application/json": components["schemas"]["RestDefaultTask"] } } - /** @description One or more of the following error cases occurred (check the error message for more details): + /** + * @description One or more of the following error cases occurred (check the error message for more details): * * - * - the provided taskId does not exist- the description is empty- the sourceMatcher or targetMatcher is invalid */ + * - the provided taskId does not exist- the description is empty- the sourceMatcher or targetMatcher is invalid + */ readonly 400: { headers: Readonly> content: { @@ -37760,10 +37857,12 @@ export interface operations { readonly "application/json": components["schemas"]["RestDefaultTask"] } } - /** @description One or more of the following error cases occurred (check the error message for more details): + /** + * @description One or more of the following error cases occurred (check the error message for more details): * * - * - the description is empty- the sourceMatcher or targetMatcher is invalid */ + * - the description is empty- the sourceMatcher or targetMatcher is invalid + */ readonly 400: { headers: Readonly> content: { @@ -37855,10 +37954,12 @@ export interface operations { readonly "application/json": components["schemas"]["RestDefaultTask"] } } - /** @description One or more of the following error cases occurred (check the error message for more details): + /** + * @description One or more of the following error cases occurred (check the error message for more details): * * - * - the provided taskId does not exist- the description is empty- the sourceMatcher or targetMatcher is invalid */ + * - the provided taskId does not exist- the description is empty- the sourceMatcher or targetMatcher is invalid + */ readonly 400: { headers: Readonly> content: { @@ -38015,14 +38116,16 @@ export interface operations { } } } - /** @description Any of the following error cases occurred (check the error message for more details): + /** + * @description Any of the following error cases occurred (check the error message for more details): * * - The rebase encountered conflicts. * - The rebase discarded all of the incoming commits and would have left the pull request empty * - A PreRepositoryHook vetoed the rebase. * - The specified version is out of date. * - The specified pull request is not open. - * - The target repository is archived. */ + * - The target repository is archived. + */ readonly 409: { headers: Readonly> content: { @@ -38483,13 +38586,14 @@ export interface operations { readonly "application/json": components["schemas"]["RestInsightReport"] } } - /** @description One of the following error cases occurred (check the error message for more details): + /** + * @description One of the following error cases occurred (check the error message for more details): * * - The request does not contain a report title. * - The data field contains unsupported objects. * - The request does not contain a report key/ * - The provided commit hash is invalid, according to the validation rules mentioned for the commitId above. - * */ + */ readonly 400: { headers: Readonly> content: { @@ -39580,7 +39684,7 @@ export interface operations { } } } - /** @description The currently authenticated user is not permitted to authenticate on behalf of users or authentication with the supplied user credentials failed for some reason */ + /** @description The currently authenticated user is not permitted to authenticate on behalf of users or authentication with the supplied user credentials failed for some reason */ readonly 401: { headers: Readonly> content: { @@ -40975,14 +41079,13 @@ export interface operations { readonly "application/json": components["schemas"]["RestRequiredBuildCondition"] } } - /** @description The request was malformed. This could be caused because: + /** + * @description The request was malformed. This could be caused because: * * - The build parent key list is empty * - Either of the provided ref matchers is of an unrecognized type * - Either of the provided ref matchers could not be created with the provided type and id - * - * - * */ + */ readonly 400: { headers: Readonly> content: { @@ -41029,14 +41132,13 @@ export interface operations { readonly "application/json": components["schemas"]["RestRequiredBuildCondition"] } } - /** @description The request was malformed. This could be caused because: + /** + * @description The request was malformed. This could be caused because: * * - The build parent key list is empty * - Either of the provided ref matchers is of an unrecognized type * - Either of the provided ref matchers could not be created with the provided type and id - * - * - * */ + */ readonly 400: { headers: Readonly> content: { diff --git a/src/server/tsconfig.json b/src/server/tsconfig.json new file mode 100644 index 0000000..ac2511d --- /dev/null +++ b/src/server/tsconfig.json @@ -0,0 +1,6 @@ +{ + "extends": "../../tsconfig.json", + "include": ["."], + "exclude": [], + "references": [] +} diff --git a/src/types/undici-types.d.ts b/src/types/undici-types.d.ts deleted file mode 100644 index fb12213..0000000 --- a/src/types/undici-types.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -declare module "undici-types" { - type Request = globalThis.Request -} diff --git a/tests/server/projects.test.ts b/tests/server/projects.test.ts index a362bab..7d52d5d 100644 --- a/tests/server/projects.test.ts +++ b/tests/server/projects.test.ts @@ -1,4 +1,5 @@ import { describe, test } from "vitest" +import type { SchemaRestProject } from "../../src/server/openapi/index.ts" import { BITBUCKET_SERVER_TEST_PROJECT_KEY, BITBUCKET_SERVER_TEST_PROJECT_NAME, @@ -19,7 +20,8 @@ describe.skipIf(SKIP_BITBUCKET_SERVER)("Projects", () => { }) expect(page.data?.size).toBeTypeOf("number") - const found = page.data?.values?.find(p => p.key === key) + const values: ArrayLike = page.data?.values ?? [] + const found = Array.from(values).find(p => p.key === key) expect(found).toMatchObject({ key, name }) }) diff --git a/tsconfig.json b/tsconfig.json index 5161a59..554a7a0 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -15,6 +15,7 @@ "rootDir": "./src", "moduleResolution": "NodeNext", "typeRoots": ["./node_modules/@types", "./src/types"], + "types": ["node"], "rewriteRelativeImportExtensions": true, "resolvePackageJsonExports": true, "resolvePackageJsonImports": true, @@ -61,5 +62,9 @@ "skipLibCheck": true }, "include": ["src"], - "exclude": ["eslint.config.ts", "tests"] + "exclude": ["eslint.config.ts", "src/cloud", "src/server", "tests"], + "references": [ + { "path": "src/cloud/tsconfig.json" }, + { "path": "src/server/tsconfig.json" } + ] } From 664a73d677a16acc56729dc4fd142ce338b8e0f8 Mon Sep 17 00:00:00 2001 From: Nathan Gendron Date: Tue, 16 Jun 2026 01:01:36 -0400 Subject: [PATCH 2/6] =?UTF-8?q?=F0=9F=9A=80=20Update=20publish=20template?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Nathan Gendron --- .github/workflows/pnpm-publish.yaml | 108 ++++++++++++++++++++++++---- 1 file changed, 93 insertions(+), 15 deletions(-) diff --git a/.github/workflows/pnpm-publish.yaml b/.github/workflows/pnpm-publish.yaml index 0da83ca..574cf13 100644 --- a/.github/workflows/pnpm-publish.yaml +++ b/.github/workflows/pnpm-publish.yaml @@ -6,18 +6,16 @@ on: - v* jobs: - publish: - runs-on: ubuntu-latest - + build: permissions: - contents: write # Upload the release files - id-token: write # Add `--provenance` - packages: write # Publish the package + contents: read - if: github.actor != 'nektos/act' + runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 + with: + persist-credentials: false - uses: pnpm/action-setup@v6 with: version: latest @@ -27,25 +25,105 @@ jobs: node-version: latest - run: pnpm install - run: pnpm build + - run: pnpm pack --pack-gzip-level 9 + + - if: github.actor != 'nektos/act' + uses: actions/upload-artifact@v7 + with: + name: coderabbitai-bitbucket-${{ github.ref_name }}.tgz + path: coderabbitai-bitbucket-*.tgz + compression-level: 9 + if-no-files-found: error + + publish-npm: + permissions: + id-token: write # Add `--provenance` + + needs: build + if: github.actor != 'nektos/act' + runs-on: ubuntu-latest + + environment: + name: npm-public-registry + url: ${{ steps.url.outputs.url }} + steps: + - uses: pnpm/action-setup@v6 + with: + version: latest - uses: actions/setup-node@v6 with: - registry-url: https://npm.pkg.github.com + registry-url: https://registry.npmjs.org scope: "@coderabbitai" - - run: pnpm publish --access public --no-git-checks --provenance + + - uses: actions/download-artifact@v8 + with: + name: coderabbitai-bitbucket-${{ github.ref_name }}.tgz + + - run: pnpm publish coderabbitai-bitbucket-*.tgz --access public --no-git-checks --provenance + + - id: url + run: echo "url=https://www.npmjs.com/package/@coderabbitai/bitbucket/v/${VERSION#v}" >> "$GITHUB_OUTPUT" env: - NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + VERSION: ${{ github.ref_name }} + publish-github: + permissions: + id-token: write # Add `--provenance` + packages: write # Publish the package + + needs: build + if: github.actor != 'nektos/act' + runs-on: ubuntu-latest + + environment: + name: github-packages-registry + url: ${{ steps.url.outputs.url }} + + steps: + - uses: pnpm/action-setup@v6 + with: + version: latest - uses: actions/setup-node@v6 with: - registry-url: https://registry.npmjs.org + registry-url: https://npm.pkg.github.com scope: "@coderabbitai" - - run: pnpm publish --access public --no-git-checks --provenance + + - uses: actions/download-artifact@v8 + with: + name: coderabbitai-bitbucket-${{ github.ref_name }}.tgz + + - run: pnpm publish coderabbitai-bitbucket-*.tgz --access public --no-git-checks --provenance env: - NODE_AUTH_TOKEN: ${{ secrets.CODERABBIT_NPM_TOKEN }} + NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - run: pnpm pack --pack-gzip-level 9 - - run: gh release create "$VERSION" --generate-notes --title "$VERSION" --verify-tag coderabbitai-bitbucket-*.tgz + - id: url + run: | + url=$(gh api '/users/coderabbitai/packages/npm/bitbucket/versions' | jq -r --arg NAME "${VERSION#v}" '.[] | select(.name == $NAME) | .html_url') + echo "url=$url" >> "$GITHUB_OUTPUT" + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + VERSION: ${{ github.ref_name }} + + release: + permissions: + contents: write # Upload the release files + + needs: build + if: github.actor != 'nektos/act' + runs-on: ubuntu-latest + + environment: + name: github-releases + url: ${{ github.server_url }}/${{ github.repository }}/releases/tag/${{ github.ref_name }} + + steps: + - uses: actions/download-artifact@v8 + with: + name: coderabbitai-bitbucket-${{ github.ref_name }}.tgz + + - run: gh release create "$VERSION" --generate-notes --repo "$REPO" --title "$VERSION" --verify-tag coderabbitai-bitbucket-*.tgz env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + REPO: ${{ github.repository }} VERSION: ${{ github.ref_name }} From 74140667f256d6cf5e6ae204480cc2091bb6302f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 16 Jun 2026 05:05:13 +0000 Subject: [PATCH 3/6] =?UTF-8?q?=F0=9F=93=8C=20pnpm=20install=20--fix-lockf?= =?UTF-8?q?ile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [dependabot skip] --- pnpm-lock.yaml | 103 ++++++++++++++++++++----------------------------- 1 file changed, 41 insertions(+), 62 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 625534c..0625d43 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -17,7 +17,7 @@ importers: devDependencies: '@eslint/js': specifier: ^10.0.1 - version: 10.0.1(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2)) + version: 10.0.1(eslint@10.5.0(jiti@2.7.0)) '@natoboram/load_env': specifier: ^2.0.0 version: 2.0.0 @@ -32,10 +32,10 @@ importers: version: 17.4.2 eslint: specifier: ^10.5.0 - version: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) + version: 10.5.0(jiti@2.7.0) eslint-config-prettier: specifier: ^10.1.8 - version: 10.1.8(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2)) + version: 10.1.8(eslint@10.5.0(jiti@2.7.0)) globals: specifier: ^17.6.0 version: 17.6.0 @@ -44,7 +44,7 @@ importers: version: 2.7.0 markdownlint-cli2: specifier: ^0.22.1 - version: 0.22.1(supports-color@10.2.2) + version: 0.22.1 openapi-typescript: specifier: ^7.13.0 version: 7.13.0(typescript@6.0.3) @@ -62,7 +62,7 @@ importers: version: 6.0.3 typescript-eslint: specifier: ^8.61.0 - version: 8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) + version: 8.61.0(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3) vitest: specifier: ^4.1.8 version: 4.1.8(@types/node@25.9.3)(vite@7.3.1(@types/node@25.9.3)(jiti@2.7.0)(tsx@4.19.2)(yaml@2.9.0)) @@ -780,7 +780,6 @@ packages: '@typescript/native-preview@7.0.0-dev.20260614.1': resolution: {integrity: sha512-4N1ZBHJUcsjKJQnUCxKUemV3jnm0PKZIZ4xh7dXN/3/AfmckE8Z1llyqOFfDwGOf8oQpdgkwQ6JUm7pqI3bGPg==} engines: {node: '>=16.20.0'} - hasBin: true '@vitest/expect@4.1.8': resolution: {integrity: sha512-h3nDO677RDLEGlBxyQ5CW8RlMThSKSRLUePLOx09gNIWRL40edgA1GCZSZgf1W55MFAG6/Sw14KeaAnqv0NKdQ==} @@ -819,7 +818,6 @@ packages: acorn@8.17.0: resolution: {integrity: sha512-xRQbDb9BnwDafYNn6Vwl839DYVjqXYb1XVGtWAZ1kcDc6iwAL4hg3B1dZlRiuENFeO2H53gFG3in621AdERVAg==} engines: {node: '>=0.4.0'} - hasBin: true agent-base@7.1.4: resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==} @@ -970,7 +968,6 @@ packages: eslint-config-prettier@10.1.8: resolution: {integrity: sha512-82GZUjRS0p/jganf6q1rEO25VSoHH0hKPCTrgillPjdI/3bgBhAE1QzHrHTizjpRvy6pGAvKjDJtk2pF9NDq8w==} - hasBin: true peerDependencies: eslint: '>=7.0.0' @@ -989,7 +986,6 @@ packages: eslint@10.5.0: resolution: {integrity: sha512-1y+7C+vi12bUK1IpZeaV3gsH9fHLBmPvYmPx42pvT/E9yG0IC8g3PUZZgp0+JLJl7ZDK0flc2gc+Aw9dpCvIsQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - hasBin: true peerDependencies: jiti: '*' peerDependenciesMeta: @@ -1152,7 +1148,6 @@ packages: jiti@2.7.0: resolution: {integrity: sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==} - hasBin: true js-levenshtein@1.1.6: resolution: {integrity: sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==} @@ -1163,7 +1158,6 @@ packages: js-yaml@4.1.1: resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} - hasBin: true json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} @@ -1186,7 +1180,6 @@ packages: katex@0.16.47: resolution: {integrity: sha512-Eeo8Ys1doU1z+x8AZsPpQu+p/QcZBI5PeOo7QGQdy2x2m0MU/hYagBbGOmXwr5KVbEfVuWv9LpnQWeehogurjg==} - hasBin: true keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} @@ -1210,11 +1203,9 @@ packages: markdown-it@14.1.1: resolution: {integrity: sha512-BuU2qnTti9YKgK5N+IeMubp14ZUKUUw7yeJbkjtosvHiP0AZ5c8IAgEMk79D0eC8F23r4Ac/q8cAIFdm2FtyoA==} - hasBin: true markdown-it@14.2.0: resolution: {integrity: sha512-1TGiQiJVRQ3NPmZH6sx5Cfnmg6GQm9jvC1ch4TK511NjSJvjzKLzn5pPfZRNZkRPZP0HqCioSndqH8v2nRaWVQ==} - hasBin: true markdownlint-cli2-formatter-default@0.0.6: resolution: {integrity: sha512-VVDGKsq9sgzu378swJ0fcHfSicUnMxnL8gnLm/Q4J/xsNJ4e5bA6lvAz7PCzIl0/No0lHyaWdqVD2jotxOSFMQ==} @@ -1224,7 +1215,6 @@ packages: markdownlint-cli2@0.22.1: resolution: {integrity: sha512-X14ZbytybDCXAViDmtN4DKLt9ZTrRn+oOrxTYlg3a65jS6QcYYbAkGPh/En2L/GDNbFYJ6lKaQSUNrrbN1bPrw==} engines: {node: '>=20'} - hasBin: true markdownlint@0.40.0: resolution: {integrity: sha512-UKybllYNheWac61Ia7T6fzuQNDZimFIpCg2w6hHjgV1Qu0w1TV0LlSgryUGzM0bkKQCBhy2FDhEELB73Kb0kAg==} @@ -1347,7 +1337,6 @@ packages: openapi-typescript@7.13.0: resolution: {integrity: sha512-EFP392gcqXS7ntPvbhBzbF8TyBA+baIYEm791Hy5YkjDYKTnk/Tn5OQeKm5BIZvJihpp8Zzr4hzx0Irde1LNGQ==} - hasBin: true peerDependencies: typescript: ^5.x @@ -1407,7 +1396,6 @@ packages: prettier@3.8.4: resolution: {integrity: sha512-N2MylSdi48+5N/6S5j+maeHbUSIzzZ5uOcX5Hm4QpV8Dkb1HFjfAKTKX6yNPJQD9AhcT3ifHNB66tWTTJDi11Q==} engines: {node: '>=14'} - hasBin: true punycode.js@2.3.1: resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} @@ -1442,7 +1430,6 @@ packages: semver@7.8.4: resolution: {integrity: sha512-rUCObTnP32Q08R2uuIrt7r9PlEonuTmtuXYcW6s5kjdlj3xbnwe+21yXptAUYcMAABLkYYTtnmzb3w3EDZfueA==} engines: {node: '>=10'} - hasBin: true shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} @@ -1520,7 +1507,6 @@ packages: ts-autofix@1.0.0: resolution: {integrity: sha512-U35/EZm3p7d9lrq6+i6lLBhqBOEZ8LsFXSYHdUgQzcpTc/jQ8XVavD77j0IWNi3ASK3pnv2TCmN1Rx+uXO/lKw==} - hasBin: true tsx@4.19.2: resolution: {integrity: sha512-pOUl6Vo2LUq/bSa8S5q7b91cgNSjctn9ugq/+Mvow99qW6x/UZYwzxy/3NmqoT66eHYfCVvFvACC58UBPFf28g==} @@ -1538,7 +1524,6 @@ packages: typedoc@0.28.19: resolution: {integrity: sha512-wKh+lhdmMFivMlc6vRRcMGXeGEHGU2g8a2CkPTJjJlwRf1iXbimWIPcFolCqe4E0d/FRtGszpIrsp3WLpDB8Pw==} engines: {node: '>= 18', pnpm: '>= 10'} - hasBin: true peerDependencies: typescript: 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x || 5.9.x || 6.0.x @@ -1552,12 +1537,10 @@ packages: typescript@4.9.5: resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} engines: {node: '>=4.2.0'} - hasBin: true typescript@6.0.3: resolution: {integrity: sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==} engines: {node: '>=14.17'} - hasBin: true uc.micro@2.1.0: resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==} @@ -1618,7 +1601,6 @@ packages: vitest@4.1.8: resolution: {integrity: sha512-flY6ScbCIt9HThs+C5HS7jvGOB560DJtk/Z15IQROTA6zEy49Nh8T/dofWTQL+n3vswqn87sbJNiuqw1SDp5Ig==} engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} - hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@opentelemetry/api': ^1.9.0 @@ -1662,12 +1644,10 @@ packages: which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} - hasBin: true why-is-node-running@2.3.0: resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} engines: {node: '>=8'} - hasBin: true word-wrap@1.2.5: resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} @@ -1679,7 +1659,6 @@ packages: yaml@2.9.0: resolution: {integrity: sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==} engines: {node: '>= 14.6'} - hasBin: true yargs-parser@21.1.1: resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} @@ -1855,14 +1834,14 @@ snapshots: '@esbuild/win32-x64@0.27.7': optional: true - '@eslint-community/eslint-utils@4.9.1(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))': + '@eslint-community/eslint-utils@4.9.1(eslint@10.5.0(jiti@2.7.0))': dependencies: - eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) + eslint: 10.5.0(jiti@2.7.0) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.2': {} - '@eslint/config-array@0.23.5(supports-color@10.2.2)': + '@eslint/config-array@0.23.5': dependencies: '@eslint/object-schema': 3.0.5 debug: 4.4.3(supports-color@10.2.2) @@ -1878,9 +1857,9 @@ snapshots: dependencies: '@types/json-schema': 7.0.15 - '@eslint/js@10.0.1(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))': + '@eslint/js@10.0.1(eslint@10.5.0(jiti@2.7.0))': optionalDependencies: - eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) + eslint: 10.5.0(jiti@2.7.0) '@eslint/object-schema@3.0.5': {} @@ -2084,15 +2063,15 @@ snapshots: '@types/unist@3.0.3': {} - '@typescript-eslint/eslint-plugin@8.61.0(@typescript-eslint/parser@8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3))(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3)': + '@typescript-eslint/eslint-plugin@8.61.0(@typescript-eslint/parser@8.61.0(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) + '@typescript-eslint/parser': 8.61.0(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3) '@typescript-eslint/scope-manager': 8.61.0 - '@typescript-eslint/type-utils': 8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) - '@typescript-eslint/utils': 8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(typescript@6.0.3) + '@typescript-eslint/type-utils': 8.61.0(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/utils': 8.61.0(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3) '@typescript-eslint/visitor-keys': 8.61.0 - eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) + eslint: 10.5.0(jiti@2.7.0) ignore: 7.0.5 natural-compare: 1.4.0 ts-api-utils: 2.5.0(typescript@6.0.3) @@ -2100,14 +2079,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3)': + '@typescript-eslint/parser@8.61.0(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3)': dependencies: '@typescript-eslint/scope-manager': 8.61.0 '@typescript-eslint/types': 8.61.0 '@typescript-eslint/typescript-estree': 8.61.0(typescript@6.0.3) '@typescript-eslint/visitor-keys': 8.61.0 debug: 4.4.3(supports-color@10.2.2) - eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) + eslint: 10.5.0(jiti@2.7.0) typescript: 6.0.3 transitivePeerDependencies: - supports-color @@ -2130,13 +2109,13 @@ snapshots: dependencies: typescript: 6.0.3 - '@typescript-eslint/type-utils@8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3)': + '@typescript-eslint/type-utils@8.61.0(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3)': dependencies: '@typescript-eslint/types': 8.61.0 '@typescript-eslint/typescript-estree': 8.61.0(typescript@6.0.3) - '@typescript-eslint/utils': 8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(typescript@6.0.3) + '@typescript-eslint/utils': 8.61.0(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3) debug: 4.4.3(supports-color@10.2.2) - eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) + eslint: 10.5.0(jiti@2.7.0) ts-api-utils: 2.5.0(typescript@6.0.3) typescript: 6.0.3 transitivePeerDependencies: @@ -2159,13 +2138,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(typescript@6.0.3)': + '@typescript-eslint/utils@8.61.0(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3)': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.5.0(jiti@2.7.0)) '@typescript-eslint/scope-manager': 8.61.0 '@typescript-eslint/types': 8.61.0 '@typescript-eslint/typescript-estree': 8.61.0(typescript@6.0.3) - eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) + eslint: 10.5.0(jiti@2.7.0) typescript: 6.0.3 transitivePeerDependencies: - supports-color @@ -2421,9 +2400,9 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-prettier@10.1.8(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2)): + eslint-config-prettier@10.1.8(eslint@10.5.0(jiti@2.7.0)): dependencies: - eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) + eslint: 10.5.0(jiti@2.7.0) eslint-scope@9.1.2: dependencies: @@ -2436,11 +2415,11 @@ snapshots: eslint-visitor-keys@5.0.1: {} - eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2): + eslint@10.5.0(jiti@2.7.0): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.5.0(jiti@2.7.0)) '@eslint-community/regexpp': 4.12.2 - '@eslint/config-array': 0.23.5(supports-color@10.2.2) + '@eslint/config-array': 0.23.5 '@eslint/config-helpers': 0.6.0 '@eslint/core': 1.2.1 '@eslint/plugin-kit': 0.7.2 @@ -2675,27 +2654,27 @@ snapshots: punycode.js: 2.3.1 uc.micro: 2.1.0 - markdownlint-cli2-formatter-default@0.0.6(markdownlint-cli2@0.22.1(supports-color@10.2.2)): + markdownlint-cli2-formatter-default@0.0.6(markdownlint-cli2@0.22.1): dependencies: - markdownlint-cli2: 0.22.1(supports-color@10.2.2) + markdownlint-cli2: 0.22.1 - markdownlint-cli2@0.22.1(supports-color@10.2.2): + markdownlint-cli2@0.22.1: dependencies: globby: 16.2.0 js-yaml: 4.1.1 jsonc-parser: 3.3.1 jsonpointer: 5.0.1 markdown-it: 14.1.1 - markdownlint: 0.40.0(supports-color@10.2.2) - markdownlint-cli2-formatter-default: 0.0.6(markdownlint-cli2@0.22.1(supports-color@10.2.2)) + markdownlint: 0.40.0 + markdownlint-cli2-formatter-default: 0.0.6(markdownlint-cli2@0.22.1) micromatch: 4.0.8 smol-toml: 1.6.1 transitivePeerDependencies: - supports-color - markdownlint@0.40.0(supports-color@10.2.2): + markdownlint@0.40.0: dependencies: - micromark: 4.0.2(supports-color@10.2.2) + micromark: 4.0.2 micromark-core-commonmark: 2.0.3 micromark-extension-directive: 4.0.0 micromark-extension-gfm-autolink-literal: 2.1.0 @@ -2861,7 +2840,7 @@ snapshots: micromark-util-types@2.0.2: {} - micromark@4.0.2(supports-color@10.2.2): + micromark@4.0.2: dependencies: '@types/debug': 4.1.13 debug: 4.4.3(supports-color@10.2.2) @@ -3113,13 +3092,13 @@ snapshots: typescript: 6.0.3 yaml: 2.9.0 - typescript-eslint@8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3): + typescript-eslint@8.61.0(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3): dependencies: - '@typescript-eslint/eslint-plugin': 8.61.0(@typescript-eslint/parser@8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3))(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) - '@typescript-eslint/parser': 8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) + '@typescript-eslint/eslint-plugin': 8.61.0(@typescript-eslint/parser@8.61.0(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3))(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/parser': 8.61.0(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3) '@typescript-eslint/typescript-estree': 8.61.0(typescript@6.0.3) - '@typescript-eslint/utils': 8.61.0(eslint@10.5.0(jiti@2.7.0)(supports-color@10.2.2))(typescript@6.0.3) - eslint: 10.5.0(jiti@2.7.0)(supports-color@10.2.2) + '@typescript-eslint/utils': 8.61.0(eslint@10.5.0(jiti@2.7.0))(typescript@6.0.3) + eslint: 10.5.0(jiti@2.7.0) typescript: 6.0.3 transitivePeerDependencies: - supports-color From 80c26f00054296109c5c9d8c9026ab4a93405e06 Mon Sep 17 00:00:00 2001 From: Nathan Gendron Date: Tue, 16 Jun 2026 01:08:49 -0400 Subject: [PATCH 4/6] =?UTF-8?q?=F0=9F=92=9A=20Composite=20project=20may=20?= =?UTF-8?q?not=20disable=20emit.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Nathan Gendron --- .github/workflows/node.js.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/node.js.yaml b/.github/workflows/node.js.yaml index dd9bdb5..f6a613b 100644 --- a/.github/workflows/node.js.yaml +++ b/.github/workflows/node.js.yaml @@ -43,7 +43,7 @@ jobs: run: twingate status - run: pnpm install --frozen-lockfile --strict-peer-dependencies - - run: pnpm run build --noEmit + - run: pnpm run build - run: pnpm run lint - run: pnpm run test From 3fd14a8ad1d520d93ed18d2bb4582d1631281283 Mon Sep 17 00:00:00 2001 From: Nathan Gendron Date: Tue, 16 Jun 2026 01:09:28 -0400 Subject: [PATCH 5/6] =?UTF-8?q?=F0=9F=93=9D=20Add=20CONTRIBUTING.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Nathan Gendron --- CONTRIBUTING.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..98a0350 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,30 @@ +# Contributing + +## Publishing + +This project offers a GitHub Workflow to automatically publish a version to NPM, to GitHub Packages and to GitHub Releases on the push of a tag. + +Start by updating the version number: + +```sh +git checkout main +git pull --autostash --prune --rebase + +VERSION=$(pnpm version patch --no-git-tag-version) +pnpm run format + +git checkout -b "release/$VERSION" +git commit --all --message "🔖 $VERSION" +git push --set-upstream origin "release/$VERSION" + +gh pr create --assignee @me --base main --draft --fill-verbose --head "release/$VERSION" --title "🔖 $VERSION" +``` + +Once the CI passes, merge the pull request, wait for the CI to pass again then push a new tag: + +```sh +git checkout main +git pull --autostash --prune --rebase +git tag "$VERSION" --annotate --message "🔖 $VERSION" --sign +git push --tags +``` From 3e25a5b06f2e316d115cbefa848dc8c3fb02fa8f Mon Sep 17 00:00:00 2001 From: Nathan Gendron Date: Wed, 17 Jun 2026 16:52:26 -0400 Subject: [PATCH 6/6] =?UTF-8?q?=F0=9F=8F=B7=EF=B8=8F=20Fix=20type=20for=20?= =?UTF-8?q?fromBase64?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Nathan Gendron --- src/base64.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/base64.ts b/src/base64.ts index 0b3776f..a9a5bc6 100644 --- a/src/base64.ts +++ b/src/base64.ts @@ -1,4 +1,4 @@ -export function fromBase64(base64: string): Uint8Array | string { +export function fromBase64(base64: string): string { const string = atob(base64) const bytes = Uint8Array.from(string, v => v.codePointAt(0) ?? 0) return new TextDecoder().decode(bytes)