diff --git a/.nvm b/.nvm
deleted file mode 100644
index 209e3ef4b..000000000
--- a/.nvm
+++ /dev/null
@@ -1 +0,0 @@
-20
diff --git a/.nvmrc b/.nvmrc
new file mode 100644
index 000000000..2bd5a0a98
--- /dev/null
+++ b/.nvmrc
@@ -0,0 +1 @@
+22
diff --git a/biome.json b/biome.json
index 56dea8598..2f25399f8 100644
--- a/biome.json
+++ b/biome.json
@@ -1,5 +1,5 @@
{
- "$schema": "https://biomejs.dev/schemas/1.7.0/schema.json",
+ "$schema": "https://biomejs.dev/schemas/1.8.1/schema.json",
"organizeImports": {
"enabled": false
},
diff --git a/docs/introduction.md b/docs/introduction.md
index 2a7915483..59bf46c16 100644
--- a/docs/introduction.md
+++ b/docs/introduction.md
@@ -5,12 +5,6 @@ description: Quickstart
-::: warning
-
-The 7.x docs are for a beta release that’s not production-ready yet. See the [6.x docs](/6.x/introduction) for the stable version.
-
-:::
-
openapi-typescript turns [OpenAPI 3.0 & 3.1](https://spec.openapis.org/oas/latest.html) schemas into TypeScript quickly using Node.js. No Java/node-gyp/running OpenAPI servers necessary.
The code is [MIT-licensed](https://github.com/openapi-ts/openapi-typescript/blob/main/packages/openapi-typescript/LICENSE") and free for use.
@@ -39,7 +33,7 @@ _Note: OpenAPI 2.x is supported with versions `5.x` and previous_
This library requires the latest version of [Node.js](https://nodejs.org) installed (20.x or higher recommended). With that present, run the following in your project:
```bash
-npm i -D openapi-typescript@next typescript
+npm i -D openapi-typescript typescript
```
And in your `tsconfig.json`, to load the types properly:
diff --git a/docs/node.md b/docs/node.md
index c9944c071..714ed8664 100644
--- a/docs/node.md
+++ b/docs/node.md
@@ -10,7 +10,7 @@ The Node API may be useful if dealing with dynamically-created schemas, or you
## Setup
```bash
-npm i --save-dev openapi-typescript@next typescript
+npm i --save-dev openapi-typescript typescript
```
::: tip Recommended
diff --git a/docs/openapi-fetch/api.md b/docs/openapi-fetch/api.md
index ed4d03707..0a337aaae 100644
--- a/docs/openapi-fetch/api.md
+++ b/docs/openapi-fetch/api.md
@@ -165,12 +165,12 @@ import createClient from "openapi-fetch";
import type { paths } from "./my-openapi-3-schema"; // generated by openapi-typescript
const myMiddleware: Middleware = {
- async onRequest(req, options) {
+ async onRequest({ request, options }) {
// set "foo" header
- req.headers.set("foo", "bar");
- return req;
+ request.headers.set("foo", "bar");
+ return request;
},
- async onResponse(res, options) {
+ async onResponse({ request, response, options }) {
const { body, ...resOptions } = res;
// change status of response
return new Response(body, { ...resOptions, status: 200 });
@@ -183,60 +183,27 @@ const client = createClient({ baseUrl: "https://myapi.dev/v1/" });
client.use(myMiddleware);
```
-### onRequest
+### API
-```ts
-onRequest(req, options) {
- // …
-}
-```
-
-`onRequest()` takes 2 params:
-
-| Name | Type | Description |
-| :-------- | :-----------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `req` | `MiddlewareRequest` | A standard [Request](https://developer.mozilla.org/en-US/docs/Web/API/Request) with `schemaPath` (OpenAPI pathname) and `params` ([params](/openapi-fetch/api#fetch-options) object) |
-| `options` | `MergedOptions` | Combination of [createClient](/openapi-fetch/api#create-client) options + [fetch overrides](/openapi-fetch/api#fetch-options) |
+#### Parameters
-And it expects either:
+Each middleware callback receives the following `options` object with the following:
-- **If modifying the request:** A [Request](https://developer.mozilla.org/en-US/docs/Web/API/Request)
-- **If not modifying:** `undefined` (void)
+| Name | Type | Description |
+| :----------- | :-------------- | :------------------------------------------------------------------------------------------ |
+| `request` | `Request` | The current `Request` to be sent to the endpoint. |
+| `response` | `Response` | The `Response` returned from the endpoint (note: this will be `undefined` for `onRequest`). |
+| `schemaPath` | `string` | The original OpenAPI path called (e.g. `/users/{user_id}`) |
+| `params` | `Object` | The original `params` object passed to `GET()` / `POST()` / etc. |
+| `id` | `string` | A random, unique ID for this request. |
+| `options` | `ClientOptions` | The readonly options passed to `createClient()`. |
-### onResponse
-
-```ts
-onResponse(res, options, req) {
- // …
-}
-```
+#### Response
-`onResponse()` also takes 3 params:
-| Name | Type | Description |
-| :-------- | :-----------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `req` | `Response` | A standard [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response). |
-| `options` | `MergedOptions` | Combination of [createClient](/openapi-fetch/api#create-client) options + [fetch overrides](/openapi-fetch/api#fetch-options) |
-| `req` | `MiddlewareRequest` | A standard [Request](https://developer.mozilla.org/en-US/docs/Web/API/Request) with `schemaPath` (OpenAPI pathname) and `params` ([params](/openapi-fetch/api#fetch-options) object) |
-
-And it expects either:
-
-- **If modifying the response:** A [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response)
-- **If not modifying:** `undefined` (void)
-
-### Skipping
-
-If you want to skip the middleware under certain conditions, just `return` as early as possible:
-
-```ts
-onRequest(req) {
- if (req.schemaPath !== "/projects/{project_id}") {
- return undefined;
- }
- // …
-}
-```
+Each middleware callback can return:
-This will leave the request/response unmodified, and pass things off to the next middleware handler (if any). There’s no internal callback or observer library needed.
+- **onRequest**: Either a `Request` to modify the request, or `undefined` to leave it untouched (skip)
+- **onResponse** Either a `Response` to modify the response, or `undefined` to leave it untouched (skip)
### Ejecting middleware
diff --git a/docs/openapi-fetch/index.md b/docs/openapi-fetch/index.md
index 506658023..1a0819733 100644
--- a/docs/openapi-fetch/index.md
+++ b/docs/openapi-fetch/index.md
@@ -59,12 +59,6 @@ Notice there are no generics, and no manual typing. Your endpoint’s request an
## Setup
-::: warning
-
-openapi-fetch currently requires openapi-typescript@6.x (latest). An upcoming breaking release will support openapi-typescript@7.x.
-
-:::
-
Install this library along with [openapi-typescript](/introduction):
```bash
diff --git a/docs/openapi-fetch/middleware-auth.md b/docs/openapi-fetch/middleware-auth.md
index 983d38432..d1cb76677 100644
--- a/docs/openapi-fetch/middleware-auth.md
+++ b/docs/openapi-fetch/middleware-auth.md
@@ -17,13 +17,13 @@ import createClient from "openapi-fetch";
import type { paths } from "./my-openapi-3-schema"; // generated by openapi-typescript
const myMiddleware: Middleware = {
- async onRequest(req, options) {
+ async onRequest({ request, options }) {
// set "foo" header
- req.headers.set("foo", "bar");
- return req;
+ request.headers.set("foo", "bar");
+ return request;
},
- async onResponse(res, options) {
- const { body, ...resOptions } = res;
+ async onResponse({ request, response, options }) {
+ const { body, ...resOptions } = response;
// change status of response
return new Response(body, { ...resOptions, status: 200 });
},
@@ -48,8 +48,8 @@ The order in which middleware are registered matters. For requests, `onRequest()
If you want to skip the middleware under certain conditions, just `return` as early as possible:
```ts
-onRequest(req) {
- if (req.schemaPath !== "/projects/{project_id}") {
+onRequest({ schemaPath }) {
+ if (schemaPath !== "/projects/{project_id}") {
return undefined;
}
// …
@@ -63,9 +63,9 @@ This will leave the request/response unmodified, and pass things off to the next
Middleware can also be used to throw an error that `fetch()` wouldn’t normally, useful in libraries like [TanStack Query](https://tanstack.com/query/latest):
```ts
-onResponse(res) {
- if (res.error) {
- throw new Error(res.error.message);
+onResponse({ response }) {
+ if (response.error) {
+ throw new Error(response.error.message);
}
}
```
@@ -98,12 +98,10 @@ By default, `openapi-fetch` will **NOT** arbitrarily clone requests/responses fo
```ts
const myMiddleware: Middleware = {
- onResponse(res) {
- if (res) {
- const data = await res.json(); // [!code --]
- const data = await res.clone().json(); // [!code ++]
- return undefined;
- }
+ onResponse({ response }) {
+ const data = await response.json(); // [!code --]
+ const data = await response.clone().json(); // [!code ++]
+ return undefined;
},
};
```
@@ -125,7 +123,7 @@ import type { paths } from "./my-openapi-3-schema";
let accessToken: string | undefined = undefined;
const authMiddleware: Middleware = {
- async onRequest(req) {
+ async onRequest({ request }) {
// fetch token, if it doesn’t exist
if (!accessToken) {
const authRes = await someAuthFunc();
@@ -139,8 +137,8 @@ const authMiddleware: Middleware = {
// (optional) add logic here to refresh token when it expires
// add Authorization header to every request
- req.headers.set("Authorization", `Bearer ${accessToken}`);
- return req;
+ request.headers.set("Authorization", `Bearer ${accessToken}`);
+ return request;
},
};
@@ -162,14 +160,14 @@ If authorization isn’t needed for certain routes, you could also handle that w
const UNPROTECTED_ROUTES = ["/v1/login", "/v1/logout", "/v1/public/"];
const authMiddleware = {
- onRequest(req) {
- if (UNPROTECTED_ROUTES.some((pathname) => req.url.startsWith(pathname))) {
+ onRequest({ url, request }) {
+ if (UNPROTECTED_ROUTES.some((pathname) => url.startsWith(pathname))) {
return undefined; // don’t modify request for certain paths
}
// for all other paths, set Authorization header as expected
- req.headers.set("Authorization", `Bearer ${accessToken}`);
- return req;
+ request.headers.set("Authorization", `Bearer ${accessToken}`);
+ return request;
},
};
```
diff --git a/docs/zh/introduction.md b/docs/zh/introduction.md
index 6a455c782..80b98ae54 100644
--- a/docs/zh/introduction.md
+++ b/docs/zh/introduction.md
@@ -33,7 +33,7 @@ _注意:OpenAPI 2.x 在版本 `5.x` 及更早版本中受支持_
此库需要安装最新版本的 [Node.js](https://nodejs.org)(建议使用 20.x 或更高版本)。安装完成后,在项目中运行以下命令:
```bash
-npm i -D openapi-typescript@next typescript
+npm i -D openapi-typescript typescript
```
::: tip 强烈推荐
diff --git a/docs/zh/node.md b/docs/zh/node.md
index 5e9201c61..b90b50968 100644
--- a/docs/zh/node.md
+++ b/docs/zh/node.md
@@ -10,7 +10,7 @@ Node.js API 对于处理动态创建的模式或在较大应用程序上下文
## 安装
```bash
-npm i --save-dev openapi-typescript@next typescript
+npm i --save-dev openapi-typescript typescript
```
::: tip 推荐
diff --git a/packages/openapi-fetch/CHANGELOG.md b/packages/openapi-fetch/CHANGELOG.md
index 6ff5a4dd3..738fcdac3 100644
--- a/packages/openapi-fetch/CHANGELOG.md
+++ b/packages/openapi-fetch/CHANGELOG.md
@@ -1,5 +1,16 @@
# openapi-fetch
+## 0.10.0
+
+### Minor Changes
+
+- ⚠️ **Breaking Change**: `openapi-typescript@7` is needed to work. You’ll get type errors with `openapi-typescript@6` and below.
+- ⚠️ **Breaking Change**: The Middleware API has changed to be an object rather than `(request, options)` or `(response, options)`. [See Middleware docs](https://openapi-ts.dev/openapi-fetch/middleware-auth) for updated API.
+- ⚠️ **Breaking Change**: The `Content-Type` header is no longer sent by default if a body payload is attached.
+- ⚠️ **Breaking Change**: The `customFetch` type now calls `fetch(input: string, init: RequestInit)` and the types have been updated, rather than `fetch(input: Request)` introduced in `0.9.0`.
+
+- Added `id` to middleware handlers that create a unique ID per-fetch
+
## 0.9.8
### Patch Changes
diff --git a/packages/openapi-fetch/biome.json b/packages/openapi-fetch/biome.json
index 1737c6cf4..c7765558f 100644
--- a/packages/openapi-fetch/biome.json
+++ b/packages/openapi-fetch/biome.json
@@ -1,8 +1,18 @@
{
- "$schema": "https://biomejs.dev/schemas/1.7.0/schema.json",
+ "$schema": "https://biomejs.dev/schemas/1.8.1/schema.json",
"extends": ["../../biome.json"],
"files": {
"include": ["./src/", "./test/"],
"ignore": ["**/fixtures/**/*"]
+ },
+ "linter": {
+ "rules": {
+ "complexity": {
+ "noBannedTypes": "off"
+ },
+ "suspicious": {
+ "noConfusingVoidType": "off"
+ }
+ }
}
}
diff --git a/packages/openapi-fetch/examples/nextjs/package.json b/packages/openapi-fetch/examples/nextjs/package.json
index 546ba0672..be34ccc5b 100644
--- a/packages/openapi-fetch/examples/nextjs/package.json
+++ b/packages/openapi-fetch/examples/nextjs/package.json
@@ -12,7 +12,7 @@
"react-dom": "18.3.1"
},
"devDependencies": {
- "@types/node": "20.12.12",
+ "@types/node": "20.14.6",
"@types/react": "18.3.1",
"@types/react-dom": "18.3.0",
"openapi-typescript": "workspace:^",
diff --git a/packages/openapi-fetch/examples/vue-3/package.json b/packages/openapi-fetch/examples/vue-3/package.json
index 64fc83112..1dcc89632 100644
--- a/packages/openapi-fetch/examples/vue-3/package.json
+++ b/packages/openapi-fetch/examples/vue-3/package.json
@@ -16,7 +16,7 @@
},
"devDependencies": {
"@tsconfig/node20": "^20.1.4",
- "@types/node": "^20.12.12",
+ "@types/node": "^20.14.6",
"@vitejs/plugin-vue": "^5.0.4",
"@vue/tsconfig": "^0.5.1",
"openapi-typescript": "workspace:^",
diff --git a/packages/openapi-fetch/package.json b/packages/openapi-fetch/package.json
index 869060290..9215e6ec3 100644
--- a/packages/openapi-fetch/package.json
+++ b/packages/openapi-fetch/package.json
@@ -54,7 +54,7 @@
"build:cjs": "esbuild --bundle src/index.js --format=cjs --outfile=dist/cjs/index.cjs && cp dist/index.d.ts dist/cjs/index.d.cts",
"format": "biome format . --write",
"lint": "biome check .",
- "generate-types": "node ./scripts/generate-types.js",
+ "generate-types": "openapi-typescript test/fixtures/api.yaml -o test/fixtures/api.d.ts",
"pretest": "pnpm run generate-types",
"test": "pnpm run \"/^test:/\"",
"test:js": "vitest run",
@@ -62,15 +62,16 @@
"version": "pnpm run prepare && pnpm run build"
},
"dependencies": {
+ "nanoid": "^5.0.7",
"openapi-typescript-helpers": "workspace:^"
},
"devDependencies": {
- "axios": "^1.6.8",
+ "axios": "^1.7.2",
"del-cli": "^5.1.0",
"esbuild": "^0.20.2",
"execa": "^8.0.1",
- "msw": "^2.3.0",
- "openapi-typescript": "^6.x",
+ "msw": "^2.3.1",
+ "openapi-typescript": "workspace:^",
"openapi-typescript-codegen": "^0.25.0",
"openapi-typescript-fetch": "^2.0.0",
"superagent": "^9.0.2",
diff --git a/packages/openapi-fetch/scripts/generate-types.js b/packages/openapi-fetch/scripts/generate-types.js
deleted file mode 100644
index aeed35be3..000000000
--- a/packages/openapi-fetch/scripts/generate-types.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import { execa } from "execa";
-import { fileURLToPath } from "node:url";
-
-const root = new URL("../", import.meta.url);
-
-const SCHEMA = "./test/fixtures/api.yaml";
-const V6_OUTPUT = "./test/fixtures/api.d.ts";
-const V7_OUTPUT = "./test/fixtures/v7-beta.d.ts";
-
-async function generate() {
- const cwd = fileURLToPath(root);
-
- await Promise.all([
- // note: the version inside node_modules is 6.x
- execa("pnpm", ["exec", "openapi-typescript", SCHEMA, "-o", V6_OUTPUT], { cwd }),
- // note: the version locally is 7.x
- execa("../openapi-typescript/bin/cli.js", [SCHEMA, "-o", V7_OUTPUT], { cwd }),
- ]);
-}
-
-generate();
diff --git a/packages/openapi-fetch/src/index.d.ts b/packages/openapi-fetch/src/index.d.ts
index 9a2344542..fc0b03ae6 100644
--- a/packages/openapi-fetch/src/index.d.ts
+++ b/packages/openapi-fetch/src/index.d.ts
@@ -1,7 +1,6 @@
import type {
ErrorResponse,
FilterKeys,
- GetValueWithDefault,
HasRequiredKeys,
HttpMethod,
MediaType,
@@ -16,7 +15,7 @@ export interface ClientOptions extends Omit {
/** set the common root URL for all API requests */
baseUrl?: string;
/** custom fetch (defaults to globalThis.fetch) */
- fetch?: (request: Request) => ReturnType;
+ fetch?: (input: string, init?: RequestInit) => Promise;
/** global querySerializer */
querySerializer?: QuerySerializer | QuerySerializerOptions;
/** global bodySerializer */
@@ -68,10 +67,10 @@ type BodyType = {
stream: Response["body"];
};
export type ParseAs = keyof BodyType;
-export type ParseAsResponse = O extends {
+export type ParseAsResponse = Options extends {
parseAs: ParseAs;
}
- ? BodyType[O["parseAs"]]
+ ? BodyType[Options["parseAs"]]
: T;
export interface DefaultParamsOption {
@@ -96,18 +95,15 @@ export type RequestBodyOption = OperationRequestBodyContent extends never
export type FetchOptions = RequestOptions & Omit;
-export type FetchResponse =
+export type FetchResponse =
| {
- data: ParseAsResponse<
- GetValueWithDefault>, Media, Record>,
- O
- >;
+ data: ParseAsResponse, Media>, Options>;
error?: never;
response: Response;
}
| {
data?: never;
- error: GetValueWithDefault>, Media, Record>;
+ error: ErrorResponse, Media>;
response: Response;
};
@@ -128,50 +124,50 @@ export type MergedOptions = {
fetch: typeof globalThis.fetch;
};
-export interface MiddlewareRequest extends Request {
+export interface MiddlewareCallbackParams {
+ /** Final URL for this request */
+ readonly url: string;
+ /** Current Request object */
+ request: Request;
/** The original OpenAPI schema path (including curly braces) */
- schemaPath: string;
+ readonly schemaPath: string;
/** OpenAPI parameters as provided from openapi-fetch */
- params: {
+ readonly params: {
query?: Record;
header?: Record;
path?: Record;
cookie?: Record;
};
+ /** Unique ID for this request */
+ readonly id: string;
+ /** createClient options (read-only) */
+ readonly options: MergedOptions;
}
-export function onRequest(
- req: MiddlewareRequest,
- options: MergedOptions,
-): Request | undefined | Promise;
-export function onResponse(
- res: Response,
- options: MergedOptions,
- req: MiddlewareRequest,
-): Response | undefined | Promise;
-
export interface Middleware {
- onRequest?: typeof onRequest;
- onResponse?: typeof onResponse;
+ onRequest?: (options: MiddlewareCallbackParams) => void | Request | undefined | Promise;
+ onResponse?: (
+ options: MiddlewareCallbackParams & { response: Response },
+ ) => void | Response | undefined | Promise;
}
-// biome-ignore lint/complexity/noBannedTypes: though extending "{}" is a bad practice in general, this library relies on complex layers of inference, and extending off generic objects is necessary
-type PathMethods = Partial>;
-
/** This type helper makes the 2nd function param required if params/requestBody are required; otherwise, optional */
-export type MaybeOptionalInit = HasRequiredKeys<
- FetchOptions>
+export type MaybeOptionalInit, Location extends keyof Params> = HasRequiredKeys<
+ FetchOptions>
> extends never
- ? FetchOptions> | undefined
- : FetchOptions>;
-
-export type ClientMethod, M extends HttpMethod, Media extends MediaType> = <
- P extends PathsWithMethod,
- I extends MaybeOptionalInit,
->(
- url: P,
- ...init: HasRequiredKeys extends never ? [(I & { [key: string]: unknown })?] : [I]
-) => Promise>;
+ ? FetchOptions> | undefined
+ : FetchOptions>;
+
+export type ClientMethod<
+ Paths extends Record>,
+ Method extends HttpMethod,
+ Media extends MediaType,
+> = , Init extends MaybeOptionalInit>(
+ url: Path,
+ ...init: HasRequiredKeys extends never
+ ? [(Init & { [key: string]: unknown })?] // note: the arbitrary [key: string]: addition MUST happen here after all the inference happens (otherwise TS can’t infer if it’s required or not)
+ : [Init & { [key: string]: unknown }]
+) => Promise>;
export default function createClient(
clientOptions?: ClientOptions,
diff --git a/packages/openapi-fetch/src/index.js b/packages/openapi-fetch/src/index.js
index c0c82e5a8..20f316fdc 100644
--- a/packages/openapi-fetch/src/index.js
+++ b/packages/openapi-fetch/src/index.js
@@ -1,3 +1,5 @@
+import { nanoid } from "nanoid";
+
// settings & const
const DEFAULT_HEADERS = {
"Content-Type": "application/json",
@@ -5,9 +7,7 @@ const DEFAULT_HEADERS = {
const PATH_PARAM_RE = /\{[^{}]+\}/g;
-/**
- * Add custom parameters to Request object
- */
+/** Add custom parameters to Request object */
class CustomRequest extends Request {
constructor(input, init) {
super(input, init);
@@ -45,7 +45,7 @@ export default function createClient(clientOptions) {
* @param {T} url
* @param {import('./index.js').FetchOptions} fetchOptions
*/
- async function coreFetch(url, fetchOptions) {
+ async function coreFetch(schemaPath, fetchOptions) {
const {
fetch = baseFetch,
headers,
@@ -83,23 +83,30 @@ export default function createClient(clientOptions) {
if (requestInit.body instanceof FormData) {
requestInit.headers.delete("Content-Type");
}
- let request = new CustomRequest(createFinalURL(url, { baseUrl, params, querySerializer }), requestInit);
+
+ const id = nanoid();
+ let request = new CustomRequest(createFinalURL(schemaPath, { baseUrl, params, querySerializer }), requestInit);
+
// middleware (request)
- const mergedOptions = {
+ const options = Object.freeze({
baseUrl,
fetch,
parseAs,
querySerializer,
bodySerializer,
- };
+ });
for (const m of middlewares) {
if (m && typeof m === "object" && typeof m.onRequest === "function") {
- request.schemaPath = url; // (re)attach original URL
- request.params = params; // (re)attach params
- const result = await m.onRequest(request, mergedOptions);
+ const result = await m.onRequest({
+ request,
+ schemaPath,
+ params,
+ options,
+ id,
+ });
if (result) {
if (!(result instanceof Request)) {
- throw new Error("Middleware must return new Request() when modifying the request");
+ throw new Error("onRequest: must return new Request() when modifying the request");
}
request = result;
}
@@ -107,19 +114,24 @@ export default function createClient(clientOptions) {
}
// fetch!
- let response = await fetch(request);
+ let response = await fetch(request.url, request);
// middleware (response)
// execute in reverse-array order (first priority gets last transform)
for (let i = middlewares.length - 1; i >= 0; i--) {
const m = middlewares[i];
if (m && typeof m === "object" && typeof m.onResponse === "function") {
- request.schemaPath = url; // (re)attach original URL
- request.params = params; // (re)attach params
- const result = await m.onResponse(response, mergedOptions, request);
+ const result = await m.onResponse({
+ request,
+ response,
+ schemaPath,
+ params,
+ options,
+ id,
+ });
if (result) {
if (!(result instanceof Response)) {
- throw new Error("Middleware must return new Response() when modifying the response");
+ throw new Error("onResponse: must return new Response() when modifying the response");
}
response = result;
}
diff --git a/packages/openapi-fetch/test/fixtures/api.d.ts b/packages/openapi-fetch/test/fixtures/api.d.ts
index d37bd2e9f..cad5160d4 100644
--- a/packages/openapi-fetch/test/fixtures/api.d.ts
+++ b/packages/openapi-fetch/test/fixtures/api.d.ts
@@ -3,602 +3,1053 @@
* Do not make direct changes to the file.
*/
-
export interface paths {
- "/comment": {
- put: {
- requestBody: components["requestBodies"]["CreateReply"];
- responses: {
- 201: components["responses"]["CreateReply"];
- 500: components["responses"]["Error"];
- };
- };
- };
- "/blogposts": {
- get: {
- parameters: {
- query?: {
- tags?: string[];
- published?: boolean;
- };
- };
- responses: {
- 200: components["responses"]["AllPostsGet"];
- 401: components["responses"]["EmptyError"];
- 500: components["responses"]["Error"];
- };
- };
- put: {
- requestBody: components["requestBodies"]["CreatePost"];
- responses: {
- 201: components["responses"]["CreatePost"];
- 500: components["responses"]["Error"];
- };
- };
- patch: {
- requestBody: components["requestBodies"]["PatchPost"];
- responses: {
- 201: components["responses"]["PatchPost"];
- };
- };
- };
- "/blogposts/{post_id}": {
- get: {
- parameters: {
- query?: {
- version?: number;
- format?: string;
- };
- path: {
- post_id: string;
- };
- };
- responses: {
- 200: components["responses"]["PostGet"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
- };
- delete: {
- parameters: {
- path: {
- post_id: string;
- };
- };
- responses: {
- 200: components["responses"]["PostDelete"];
- 500: components["responses"]["Error"];
- };
- };
- patch: {
- parameters: {
- path: {
- post_id: string;
- };
- };
- requestBody: components["requestBodies"]["PatchPost"];
- responses: {
- 200: components["responses"]["PatchPost"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
- };
- parameters: {
- path: {
- post_id: string;
- };
- };
- };
- "/blogposts-optional": {
- put: {
- requestBody: components["requestBodies"]["CreatePostOptional"];
- responses: {
- 201: components["responses"]["CreatePost"];
- 500: components["responses"]["Error"];
- };
- };
- };
- "/blogposts-optional-inline": {
- put: {
- requestBody?: {
- content: {
- "application/json": components["schemas"]["Post"];
- };
- };
- responses: {
- 201: components["responses"]["CreatePost"];
- 500: components["responses"]["Error"];
- };
- };
- };
- "/header-params": {
- get: operations["getHeaderParams"];
- };
- "/media": {
- put: {
- requestBody: {
- content: {
- "application/json": {
- /** Format: blob */
- media: string;
- name: string;
- };
- };
- };
- responses: {
- "2XX": {
- content: {
- "application/json": {
- status: string;
- };
- };
- };
- "4XX": components["responses"]["Error"];
- };
- };
- };
- "/self": {
- get: {
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
- };
- };
- "/string-array": {
- get: {
- responses: {
- 200: components["responses"]["StringArray"];
- 500: components["responses"]["Error"];
- };
- };
- };
- "/tag/{name}": {
- get: {
- parameters: {
- path: {
- name: string;
- };
- };
- responses: {
- 200: components["responses"]["Tag"];
- 500: components["responses"]["Error"];
- };
- };
- put: {
- parameters: {
- path: {
- name: string;
- };
- };
- requestBody: components["requestBodies"]["CreateTag"];
- responses: {
- 201: components["responses"]["CreateTag"];
- 500: components["responses"]["Error"];
- };
+ "/comment": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get?: never;
+ put: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody: components["requestBodies"]["CreateReply"];
+ responses: {
+ 201: components["responses"]["CreateReply"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- delete: {
- parameters: {
- path: {
- name: string;
- };
- };
- responses: {
- /** @description No Content */
- 204: {
- content: never;
- };
- 500: components["responses"]["Error"];
- };
+ "/blogposts": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get: {
+ parameters: {
+ query?: {
+ tags?: string[];
+ published?: boolean;
+ };
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["AllPostsGet"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ put: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody: components["requestBodies"]["CreatePost"];
+ responses: {
+ 201: components["responses"]["CreatePost"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody: components["requestBodies"]["PatchPost"];
+ responses: {
+ 201: components["responses"]["PatchPost"];
+ };
+ };
+ trace?: never;
};
- parameters: {
- path: {
- name: string;
- };
+ "/blogposts/{post_id}": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ post_id: string;
+ };
+ cookie?: never;
+ };
+ get: {
+ parameters: {
+ query?: {
+ version?: number;
+ format?: string;
+ };
+ header?: never;
+ path: {
+ post_id: string;
+ };
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["PostGet"];
+ 404: components["responses"]["Error"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ put?: never;
+ post?: never;
+ delete: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ post_id: string;
+ };
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["PostDelete"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ options?: never;
+ head?: never;
+ patch: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ post_id: string;
+ };
+ cookie?: never;
+ };
+ requestBody: components["requestBodies"]["PatchPost"];
+ responses: {
+ 200: components["responses"]["PatchPost"];
+ 404: components["responses"]["Error"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ trace?: never;
};
- };
- "/query-params": {
- get: {
- parameters: {
- query?: {
- string?: string;
- number?: number;
- boolean?: boolean;
- array?: string[];
- object?: {
- foo: string;
- bar: string;
- };
- };
- };
- responses: {
- 200: {
- content: {
- "application/json": {
- status: string;
- };
- };
- };
- default: components["responses"]["Error"];
- };
+ "/blogposts-optional": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get?: never;
+ put: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: components["requestBodies"]["CreatePostOptional"];
+ responses: {
+ 201: components["responses"]["CreatePost"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- parameters: {
- query?: {
- string?: string;
- number?: number;
- boolean?: boolean;
- array?: string[];
- object?: {
- foo: string;
- bar: string;
- };
- };
+ "/blogposts-optional-inline": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get?: never;
+ put: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: {
+ content: {
+ "application/json": components["schemas"]["Post"];
+ };
+ };
+ responses: {
+ 201: components["responses"]["CreatePost"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- };
- "/path-params/{simple_primitive}/{simple_obj_flat}/{simple_arr_flat}/{simple_obj_explode*}/{simple_arr_explode*}/{.label_primitive}/{.label_obj_flat}/{.label_arr_flat}/{.label_obj_explode*}/{.label_arr_explode*}/{;matrix_primitive}/{;matrix_obj_flat}/{;matrix_arr_flat}/{;matrix_obj_explode*}/{;matrix_arr_explode*}": {
- get: {
- parameters: {
- path: {
- simple_primitive: string;
- simple_obj_flat: {
- a: string;
- c: string;
- };
- simple_arr_flat: number[];
- simple_obj_explode: {
- e: string;
- g: string;
- };
- simple_arr_explode: number[];
- label_primitive: string;
- label_obj_flat: {
- a: string;
- c: string;
- };
- label_arr_flat: number[];
- label_obj_explode: {
- e: string;
- g: string;
- };
- label_arr_explode: number[];
- matrix_primitive: string;
- matrix_obj_flat: {
- a: string;
- c: string;
- };
- matrix_arr_flat: number[];
- matrix_obj_explode: {
- e: string;
- g: string;
- };
- matrix_arr_explode: number[];
- };
- };
- responses: {
- 200: {
- content: {
- "application/json": {
- status: string;
- };
- };
- };
- default: components["responses"]["Error"];
- };
+ "/header-params": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get: operations["getHeaderParams"];
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- parameters: {
- path: {
- simple_primitive: string;
- simple_obj_flat: {
- a: string;
- c: string;
- };
- simple_arr_flat: number[];
- simple_obj_explode: {
- e: string;
- g: string;
- };
- simple_arr_explode: number[];
- label_primitive: string;
- label_obj_flat: {
- a: string;
- c: string;
- };
- label_arr_flat: number[];
- label_obj_explode: {
- e: string;
- g: string;
- };
- label_arr_explode: number[];
- matrix_primitive: string;
- matrix_obj_flat: {
- a: string;
- c: string;
- };
- matrix_arr_flat: number[];
- matrix_obj_explode: {
- e: string;
- g: string;
- };
- matrix_arr_explode: number[];
- };
+ "/media": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get?: never;
+ put: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody: {
+ content: {
+ "application/json": {
+ /** Format: blob */
+ media: string;
+ name: string;
+ };
+ };
+ };
+ responses: {
+ "2XX": {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": {
+ status: string;
+ };
+ };
+ };
+ "4XX": components["responses"]["Error"];
+ };
+ };
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- };
- "/default-as-error": {
- get: {
- responses: {
- default: components["responses"]["Error"];
- };
+ "/mismatched-data": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["User"];
+ 201: components["responses"]["PostGet"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- };
- "/anyMethod": {
- get: {
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
+ "/mismatched-errors": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["User"];
+ 401: components["responses"]["EmptyError"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- put: {
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
+ "/self": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["User"];
+ 404: components["responses"]["Error"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- post: {
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
+ "/string-array": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["StringArray"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- delete: {
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
+ "/tag/{name}": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ name: string;
+ };
+ cookie?: never;
+ };
+ get: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ name: string;
+ };
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["Tag"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ put: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ name: string;
+ };
+ cookie?: never;
+ };
+ requestBody: components["requestBodies"]["CreateTag"];
+ responses: {
+ 201: components["responses"]["CreateTag"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ post?: never;
+ delete: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ name: string;
+ };
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ /** @description No Content */
+ 204: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content?: never;
+ };
+ 500: components["responses"]["Error"];
+ };
+ };
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- options: {
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
+ "/query-params": {
+ parameters: {
+ query?: {
+ string?: string;
+ number?: number;
+ boolean?: boolean;
+ array?: string[];
+ object?: {
+ foo: string;
+ bar: string;
+ };
+ };
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get: {
+ parameters: {
+ query?: {
+ string?: string;
+ number?: number;
+ boolean?: boolean;
+ array?: string[];
+ object?: {
+ foo: string;
+ bar: string;
+ };
+ };
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": {
+ status: string;
+ };
+ };
+ };
+ default: components["responses"]["Error"];
+ };
+ };
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- head: {
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
+ "/path-params/{simple_primitive}/{simple_obj_flat}/{simple_arr_flat}/{simple_obj_explode*}/{simple_arr_explode*}/{.label_primitive}/{.label_obj_flat}/{.label_arr_flat}/{.label_obj_explode*}/{.label_arr_explode*}/{;matrix_primitive}/{;matrix_obj_flat}/{;matrix_arr_flat}/{;matrix_obj_explode*}/{;matrix_arr_explode*}": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ simple_primitive: string;
+ simple_obj_flat: {
+ a: string;
+ c: string;
+ };
+ simple_arr_flat: number[];
+ simple_obj_explode: {
+ e: string;
+ g: string;
+ };
+ simple_arr_explode: number[];
+ label_primitive: string;
+ label_obj_flat: {
+ a: string;
+ c: string;
+ };
+ label_arr_flat: number[];
+ label_obj_explode: {
+ e: string;
+ g: string;
+ };
+ label_arr_explode: number[];
+ matrix_primitive: string;
+ matrix_obj_flat: {
+ a: string;
+ c: string;
+ };
+ matrix_arr_flat: number[];
+ matrix_obj_explode: {
+ e: string;
+ g: string;
+ };
+ matrix_arr_explode: number[];
+ };
+ cookie?: never;
+ };
+ get: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ simple_primitive: string;
+ simple_obj_flat: {
+ a: string;
+ c: string;
+ };
+ simple_arr_flat: number[];
+ simple_obj_explode: {
+ e: string;
+ g: string;
+ };
+ simple_arr_explode: number[];
+ label_primitive: string;
+ label_obj_flat: {
+ a: string;
+ c: string;
+ };
+ label_arr_flat: number[];
+ label_obj_explode: {
+ e: string;
+ g: string;
+ };
+ label_arr_explode: number[];
+ matrix_primitive: string;
+ matrix_obj_flat: {
+ a: string;
+ c: string;
+ };
+ matrix_arr_flat: number[];
+ matrix_obj_explode: {
+ e: string;
+ g: string;
+ };
+ matrix_arr_explode: number[];
+ };
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": {
+ status: string;
+ };
+ };
+ };
+ default: components["responses"]["Error"];
+ };
+ };
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- patch: {
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
+ "/default-as-error": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ default: components["responses"]["Error"];
+ };
+ };
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- trace: {
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
+ "/anyMethod": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["User"];
+ 404: components["responses"]["Error"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ put: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["User"];
+ 404: components["responses"]["Error"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ post: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["User"];
+ 404: components["responses"]["Error"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ delete: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["User"];
+ 404: components["responses"]["Error"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ options: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["User"];
+ 404: components["responses"]["Error"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ head: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["User"];
+ 404: components["responses"]["Error"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ patch: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["User"];
+ 404: components["responses"]["Error"];
+ 500: components["responses"]["Error"];
+ };
+ };
+ trace: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["User"];
+ 404: components["responses"]["Error"];
+ 500: components["responses"]["Error"];
+ };
+ };
};
- };
- "/contact": {
- put: {
- requestBody: components["requestBodies"]["Contact"];
- responses: {
- 200: components["responses"]["Contact"];
- };
+ "/contact": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get?: never;
+ put: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody: components["requestBodies"]["Contact"];
+ responses: {
+ 200: components["responses"]["Contact"];
+ };
+ };
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- };
- "/multiple-response-content": {
- get: {
- responses: {
- 200: components["responses"]["MultipleResponse"];
- };
+ "/multiple-response-content": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: components["responses"]["MultipleResponse"];
+ };
+ };
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
};
- };
}
-
export type webhooks = Record;
-
export interface components {
- schemas: {
- Post: {
- title: string;
- body: string;
- publish_date?: number;
- };
- StringArray: string[];
- User: {
- email: string;
- age?: number;
- avatar?: string;
- /** Format: date */
- created_at: number;
- /** Format: date */
- updated_at: number;
- };
- };
- responses: {
- AllPostsGet: {
- content: {
- "application/json": components["schemas"]["Post"][];
- };
- };
- CreatePost: {
- content: {
- "application/json": {
- status: string;
+ schemas: {
+ Post: {
+ title: string;
+ body: string;
+ publish_date?: number;
};
- };
- };
- CreateTag: {
- content: {
- "application/json": {
- status: string;
+ StringArray: string[];
+ User: {
+ email: string;
+ age?: number;
+ avatar?: string;
+ /** Format: date */
+ created_at: number;
+ /** Format: date */
+ updated_at: number;
};
- };
};
- CreateReply: {
- content: {
- "application/json;charset=utf-8": {
- message: string;
+ responses: {
+ AllPostsGet: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["Post"][];
+ };
};
- };
- };
- Contact: {
- content: {
- "text/html": string;
- };
- };
- EmptyError: {
- content: {
- };
- };
- Error: {
- content: {
- "application/json": {
- code: number;
- message: string;
+ CreatePost: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": {
+ status: string;
+ };
+ };
};
- };
- };
- PatchPost: {
- content: {
- "application/json": {
- status: string;
+ CreateTag: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": {
+ status: string;
+ };
+ };
};
- };
- };
- PostDelete: {
- content: {
- "application/json": {
- status: string;
+ CreateReply: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json;charset=utf-8": {
+ message: string;
+ };
+ };
};
- };
- };
- PostGet: {
- content: {
- "application/json": components["schemas"]["Post"];
- };
- };
- StringArray: {
- content: {
- "application/json": components["schemas"]["StringArray"];
- };
- };
- Tag: {
- content: {
- "application/json": string;
- };
- };
- User: {
- content: {
- "application/json": components["schemas"]["User"];
- };
- };
- MultipleResponse: {
- content: {
- "application/json": {
- id: string;
- email: string;
- name?: string;
- };
- "application/ld+json": {
- "@id": string;
- email: string;
- name?: string;
- };
- };
- };
- };
- parameters: never;
- requestBodies: {
- CreatePost: {
- content: {
- "application/json": {
- title: string;
- body: string;
- publish_date: number;
- };
- };
- };
- CreatePostOptional?: {
- content: {
- "application/json": {
- title: string;
- body: string;
- publish_date: number;
- };
- };
- };
- CreateTag: {
- content: {
- "application/json": {
- description?: string;
+ Contact: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "text/html": string;
+ };
};
- };
- };
- CreateReply: {
- content: {
- "application/json;charset=utf-8": {
- message: string;
- replied_at: number;
+ EmptyError: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content?: never;
+ };
+ Error: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": {
+ code: number;
+ message: string;
+ };
+ };
+ };
+ PatchPost: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": {
+ status: string;
+ };
+ };
+ };
+ PostDelete: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": {
+ status: string;
+ };
+ };
+ };
+ PostGet: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["Post"];
+ };
+ };
+ StringArray: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["StringArray"];
+ };
+ };
+ Tag: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": string;
+ };
+ };
+ User: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["User"];
+ };
+ };
+ MultipleResponse: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": {
+ id: string;
+ email: string;
+ name?: string;
+ };
+ "application/ld+json": {
+ "@id": string;
+ email: string;
+ name?: string;
+ };
+ };
};
- };
- };
- Contact: {
- content: {
- "multipart/form-data": {
- name: string;
- email: string;
- subject: string;
- message: string;
- };
- };
};
- PatchPost: {
- content: {
- "application/json": {
- title?: string;
- body?: string;
- publish_date?: number;
- };
- };
+ parameters: never;
+ requestBodies: {
+ CreatePost: {
+ content: {
+ "application/json": {
+ title: string;
+ body: string;
+ publish_date: number;
+ };
+ };
+ };
+ CreatePostOptional: {
+ content: {
+ "application/json": {
+ title: string;
+ body: string;
+ publish_date: number;
+ };
+ };
+ };
+ CreateTag: {
+ content: {
+ "application/json": {
+ description?: string;
+ };
+ };
+ };
+ CreateReply: {
+ content: {
+ "application/json;charset=utf-8": {
+ message: string;
+ replied_at: number;
+ };
+ };
+ };
+ Contact: {
+ content: {
+ "multipart/form-data": {
+ name: string;
+ email: string;
+ subject: string;
+ message: string;
+ };
+ };
+ };
+ PatchPost: {
+ content: {
+ "application/json": {
+ title?: string;
+ body?: string;
+ publish_date?: number;
+ };
+ };
+ };
};
- };
- headers: never;
- pathItems: never;
+ headers: never;
+ pathItems: never;
}
-
export type $defs = Record;
-
-export type external = Record;
-
export interface operations {
-
- getHeaderParams: {
- parameters: {
- header: {
- "x-required-header": string;
- };
- };
- responses: {
- 200: {
- content: {
- "application/json": {
- status: string;
- };
- };
- };
- 500: components["responses"]["Error"];
+ getHeaderParams: {
+ parameters: {
+ query?: never;
+ header: {
+ "x-required-header": string;
+ };
+ path?: never;
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ 200: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": {
+ status: string;
+ };
+ };
+ };
+ 500: components["responses"]["Error"];
+ };
};
- };
}
diff --git a/packages/openapi-fetch/test/fixtures/api.yaml b/packages/openapi-fetch/test/fixtures/api.yaml
index 0310d7532..8994e1ba8 100644
--- a/packages/openapi-fetch/test/fixtures/api.yaml
+++ b/packages/openapi-fetch/test/fixtures/api.yaml
@@ -1,17 +1,17 @@
openapi: 3.1.0
info:
title: Test Specification
- version: '1.0'
+ version: "1.0"
paths:
/comment:
put:
requestBody:
- $ref: '#/components/requestBodies/CreateReply'
+ $ref: "#/components/requestBodies/CreateReply"
responses:
201:
- $ref: '#/components/responses/CreateReply'
+ $ref: "#/components/responses/CreateReply"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
/blogposts:
get:
parameters:
@@ -27,25 +27,23 @@ paths:
type: boolean
responses:
200:
- $ref: '#/components/responses/AllPostsGet'
- 401:
- $ref: '#/components/responses/EmptyError'
+ $ref: "#/components/responses/AllPostsGet"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
put:
requestBody:
- $ref: '#/components/requestBodies/CreatePost'
+ $ref: "#/components/requestBodies/CreatePost"
responses:
201:
- $ref: '#/components/responses/CreatePost'
+ $ref: "#/components/responses/CreatePost"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
patch:
requestBody:
- $ref: '#/components/requestBodies/PatchPost'
+ $ref: "#/components/requestBodies/PatchPost"
responses:
201:
- $ref: '#/components/responses/PatchPost'
+ $ref: "#/components/responses/PatchPost"
/blogposts/{post_id}:
parameters:
- in: path
@@ -65,48 +63,48 @@ paths:
type: string
responses:
200:
- $ref: '#/components/responses/PostGet'
+ $ref: "#/components/responses/PostGet"
404:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
patch:
requestBody:
- $ref: '#/components/requestBodies/PatchPost'
+ $ref: "#/components/requestBodies/PatchPost"
responses:
200:
- $ref: '#/components/responses/PatchPost'
+ $ref: "#/components/responses/PatchPost"
404:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
delete:
responses:
200:
- $ref: '#/components/responses/PostDelete'
+ $ref: "#/components/responses/PostDelete"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
/blogposts-optional:
put:
requestBody:
- $ref: '#/components/requestBodies/CreatePostOptional'
+ $ref: "#/components/requestBodies/CreatePostOptional"
responses:
201:
- $ref: '#/components/responses/CreatePost'
+ $ref: "#/components/responses/CreatePost"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
/blogposts-optional-inline:
put:
requestBody:
content:
application/json:
schema:
- $ref: '#/components/schemas/Post'
+ $ref: "#/components/schemas/Post"
responses:
201:
- $ref: '#/components/responses/CreatePost'
+ $ref: "#/components/responses/CreatePost"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
/header-params:
get:
operationId: getHeaderParams
@@ -128,7 +126,7 @@ paths:
required:
- status
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
/media:
put:
requestBody:
@@ -158,23 +156,41 @@ paths:
required:
- status
4XX:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
+ /mismatched-data:
+ get:
+ responses:
+ 200:
+ $ref: "#/components/responses/User"
+ 201:
+ $ref: "#/components/responses/PostGet"
+ 500:
+ $ref: "#/components/responses/Error"
+ /mismatched-errors:
+ get:
+ responses:
+ 200:
+ $ref: "#/components/responses/User"
+ 401:
+ $ref: "#/components/responses/EmptyError"
+ 500:
+ $ref: "#/components/responses/Error"
/self:
get:
responses:
200:
- $ref: '#/components/responses/User'
+ $ref: "#/components/responses/User"
404:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
/string-array:
get:
responses:
200:
- $ref: '#/components/responses/StringArray'
+ $ref: "#/components/responses/StringArray"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
/tag/{name}:
parameters:
- in: path
@@ -185,23 +201,23 @@ paths:
get:
responses:
200:
- $ref: '#/components/responses/Tag'
+ $ref: "#/components/responses/Tag"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
put:
requestBody:
- $ref: '#/components/requestBodies/CreateTag'
+ $ref: "#/components/requestBodies/CreateTag"
responses:
201:
- $ref: '#/components/responses/CreateTag'
+ $ref: "#/components/responses/CreateTag"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
delete:
responses:
204:
description: No Content
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
/query-params:
parameters:
- in: query
@@ -247,7 +263,7 @@ paths:
required:
- status
default:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
/path-params/{simple_primitive}/{simple_obj_flat}/{simple_arr_flat}/{simple_obj_explode*}/{simple_arr_explode*}/{.label_primitive}/{.label_obj_flat}/{.label_arr_flat}/{.label_obj_explode*}/{.label_arr_explode*}/{;matrix_primitive}/{;matrix_obj_flat}/{;matrix_arr_flat}/{;matrix_obj_explode*}/{;matrix_arr_explode*}:
parameters:
- in: path
@@ -371,89 +387,89 @@ paths:
required:
- status
default:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
/default-as-error:
get:
responses:
default:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
/anyMethod:
get:
responses:
200:
- $ref: '#/components/responses/User'
+ $ref: "#/components/responses/User"
404:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
put:
responses:
200:
- $ref: '#/components/responses/User'
+ $ref: "#/components/responses/User"
404:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
post:
responses:
200:
- $ref: '#/components/responses/User'
+ $ref: "#/components/responses/User"
404:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
delete:
responses:
200:
- $ref: '#/components/responses/User'
+ $ref: "#/components/responses/User"
404:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
options:
responses:
200:
- $ref: '#/components/responses/User'
+ $ref: "#/components/responses/User"
404:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
head:
responses:
200:
- $ref: '#/components/responses/User'
+ $ref: "#/components/responses/User"
404:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
patch:
responses:
200:
- $ref: '#/components/responses/User'
+ $ref: "#/components/responses/User"
404:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
trace:
responses:
200:
- $ref: '#/components/responses/User'
+ $ref: "#/components/responses/User"
404:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
500:
- $ref: '#/components/responses/Error'
+ $ref: "#/components/responses/Error"
/contact:
put:
requestBody:
- $ref: '#/components/requestBodies/Contact'
+ $ref: "#/components/requestBodies/Contact"
responses:
200:
- $ref: '#/components/responses/Contact'
+ $ref: "#/components/responses/Contact"
/multiple-response-content:
get:
responses:
200:
- $ref: '#/components/responses/MultipleResponse'
+ $ref: "#/components/responses/MultipleResponse"
components:
schemas:
Post:
@@ -538,7 +554,7 @@ components:
CreateReply:
required: true
content:
- 'application/json;charset=utf-8':
+ "application/json;charset=utf-8":
schema:
type: object
properties:
@@ -589,7 +605,7 @@ components:
schema:
type: array
items:
- $ref: '#/components/schemas/Post'
+ $ref: "#/components/schemas/Post"
CreatePost:
content:
application/json:
@@ -612,7 +628,7 @@ components:
- status
CreateReply:
content:
- 'application/json;charset=utf-8':
+ "application/json;charset=utf-8":
schema:
type: object
properties:
@@ -664,23 +680,22 @@ components:
content:
application/json:
schema:
- $ref: '#/components/schemas/Post'
+ $ref: "#/components/schemas/Post"
StringArray:
content:
application/json:
schema:
- $ref: '#/components/schemas/StringArray'
+ $ref: "#/components/schemas/StringArray"
Tag:
content:
application/json:
schema:
- type:
- string
+ type: string
User:
content:
application/json:
schema:
- $ref: '#/components/schemas/User'
+ $ref: "#/components/schemas/User"
MultipleResponse:
content:
application/json:
@@ -700,12 +715,12 @@ components:
schema:
type: object
properties:
- '@id':
+ "@id":
type: string
email:
type: string
name:
type: string
required:
- - '@id'
+ - "@id"
- email
diff --git a/packages/openapi-fetch/test/fixtures/v7-beta.d.ts b/packages/openapi-fetch/test/fixtures/v7-beta.d.ts
deleted file mode 100644
index 5691769df..000000000
--- a/packages/openapi-fetch/test/fixtures/v7-beta.d.ts
+++ /dev/null
@@ -1,998 +0,0 @@
-/**
- * This file was auto-generated by openapi-typescript.
- * Do not make direct changes to the file.
- */
-
-export interface paths {
- "/comment": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- get?: never;
- put: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody: components["requestBodies"]["CreateReply"];
- responses: {
- 201: components["responses"]["CreateReply"];
- 500: components["responses"]["Error"];
- };
- };
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
- "/blogposts": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- get: {
- parameters: {
- query?: {
- tags?: string[];
- published?: boolean;
- };
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["AllPostsGet"];
- 401: components["responses"]["EmptyError"];
- 500: components["responses"]["Error"];
- };
- };
- put: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody: components["requestBodies"]["CreatePost"];
- responses: {
- 201: components["responses"]["CreatePost"];
- 500: components["responses"]["Error"];
- };
- };
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody: components["requestBodies"]["PatchPost"];
- responses: {
- 201: components["responses"]["PatchPost"];
- };
- };
- trace?: never;
- };
- "/blogposts/{post_id}": {
- parameters: {
- query?: never;
- header?: never;
- path: {
- post_id: string;
- };
- cookie?: never;
- };
- get: {
- parameters: {
- query?: {
- version?: number;
- format?: string;
- };
- header?: never;
- path: {
- post_id: string;
- };
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["PostGet"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
- };
- put?: never;
- post?: never;
- delete: {
- parameters: {
- query?: never;
- header?: never;
- path: {
- post_id: string;
- };
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["PostDelete"];
- 500: components["responses"]["Error"];
- };
- };
- options?: never;
- head?: never;
- patch: {
- parameters: {
- query?: never;
- header?: never;
- path: {
- post_id: string;
- };
- cookie?: never;
- };
- requestBody: components["requestBodies"]["PatchPost"];
- responses: {
- 200: components["responses"]["PatchPost"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
- };
- trace?: never;
- };
- "/blogposts-optional": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- get?: never;
- put: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: components["requestBodies"]["CreatePostOptional"];
- responses: {
- 201: components["responses"]["CreatePost"];
- 500: components["responses"]["Error"];
- };
- };
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
- "/blogposts-optional-inline": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- get?: never;
- put: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: {
- content: {
- "application/json": components["schemas"]["Post"];
- };
- };
- responses: {
- 201: components["responses"]["CreatePost"];
- 500: components["responses"]["Error"];
- };
- };
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
- "/header-params": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- get: operations["getHeaderParams"];
- put?: never;
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
- "/media": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- get?: never;
- put: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody: {
- content: {
- "application/json": {
- /** Format: blob */
- media: string;
- name: string;
- };
- };
- };
- responses: {
- "2XX": {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": {
- status: string;
- };
- };
- };
- "4XX": components["responses"]["Error"];
- };
- };
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
- "/self": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- get: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
- };
- put?: never;
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
- "/string-array": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- get: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["StringArray"];
- 500: components["responses"]["Error"];
- };
- };
- put?: never;
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
- "/tag/{name}": {
- parameters: {
- query?: never;
- header?: never;
- path: {
- name: string;
- };
- cookie?: never;
- };
- get: {
- parameters: {
- query?: never;
- header?: never;
- path: {
- name: string;
- };
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["Tag"];
- 500: components["responses"]["Error"];
- };
- };
- put: {
- parameters: {
- query?: never;
- header?: never;
- path: {
- name: string;
- };
- cookie?: never;
- };
- requestBody: components["requestBodies"]["CreateTag"];
- responses: {
- 201: components["responses"]["CreateTag"];
- 500: components["responses"]["Error"];
- };
- };
- post?: never;
- delete: {
- parameters: {
- query?: never;
- header?: never;
- path: {
- name: string;
- };
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- /** @description No Content */
- 204: {
- headers: {
- [name: string]: unknown;
- };
- content?: never;
- };
- 500: components["responses"]["Error"];
- };
- };
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
- "/query-params": {
- parameters: {
- query?: {
- string?: string;
- number?: number;
- boolean?: boolean;
- array?: string[];
- object?: {
- foo: string;
- bar: string;
- };
- };
- header?: never;
- path?: never;
- cookie?: never;
- };
- get: {
- parameters: {
- query?: {
- string?: string;
- number?: number;
- boolean?: boolean;
- array?: string[];
- object?: {
- foo: string;
- bar: string;
- };
- };
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": {
- status: string;
- };
- };
- };
- default: components["responses"]["Error"];
- };
- };
- put?: never;
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
- "/path-params/{simple_primitive}/{simple_obj_flat}/{simple_arr_flat}/{simple_obj_explode*}/{simple_arr_explode*}/{.label_primitive}/{.label_obj_flat}/{.label_arr_flat}/{.label_obj_explode*}/{.label_arr_explode*}/{;matrix_primitive}/{;matrix_obj_flat}/{;matrix_arr_flat}/{;matrix_obj_explode*}/{;matrix_arr_explode*}": {
- parameters: {
- query?: never;
- header?: never;
- path: {
- simple_primitive: string;
- simple_obj_flat: {
- a: string;
- c: string;
- };
- simple_arr_flat: number[];
- simple_obj_explode: {
- e: string;
- g: string;
- };
- simple_arr_explode: number[];
- label_primitive: string;
- label_obj_flat: {
- a: string;
- c: string;
- };
- label_arr_flat: number[];
- label_obj_explode: {
- e: string;
- g: string;
- };
- label_arr_explode: number[];
- matrix_primitive: string;
- matrix_obj_flat: {
- a: string;
- c: string;
- };
- matrix_arr_flat: number[];
- matrix_obj_explode: {
- e: string;
- g: string;
- };
- matrix_arr_explode: number[];
- };
- cookie?: never;
- };
- get: {
- parameters: {
- query?: never;
- header?: never;
- path: {
- simple_primitive: string;
- simple_obj_flat: {
- a: string;
- c: string;
- };
- simple_arr_flat: number[];
- simple_obj_explode: {
- e: string;
- g: string;
- };
- simple_arr_explode: number[];
- label_primitive: string;
- label_obj_flat: {
- a: string;
- c: string;
- };
- label_arr_flat: number[];
- label_obj_explode: {
- e: string;
- g: string;
- };
- label_arr_explode: number[];
- matrix_primitive: string;
- matrix_obj_flat: {
- a: string;
- c: string;
- };
- matrix_arr_flat: number[];
- matrix_obj_explode: {
- e: string;
- g: string;
- };
- matrix_arr_explode: number[];
- };
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": {
- status: string;
- };
- };
- };
- default: components["responses"]["Error"];
- };
- };
- put?: never;
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
- "/default-as-error": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- get: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- default: components["responses"]["Error"];
- };
- };
- put?: never;
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
- "/anyMethod": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- get: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
- };
- put: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
- };
- post: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
- };
- delete: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
- };
- options: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
- };
- head: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
- };
- patch: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
- };
- trace: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["User"];
- 404: components["responses"]["Error"];
- 500: components["responses"]["Error"];
- };
- };
- };
- "/contact": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- get?: never;
- put: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody: components["requestBodies"]["Contact"];
- responses: {
- 200: components["responses"]["Contact"];
- };
- };
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
- "/multiple-response-content": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- get: {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: components["responses"]["MultipleResponse"];
- };
- };
- put?: never;
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
-}
-export type webhooks = Record;
-export interface components {
- schemas: {
- Post: {
- title: string;
- body: string;
- publish_date?: number;
- };
- StringArray: string[];
- User: {
- email: string;
- age?: number;
- avatar?: string;
- /** Format: date */
- created_at: number;
- /** Format: date */
- updated_at: number;
- };
- };
- responses: {
- AllPostsGet: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": components["schemas"]["Post"][];
- };
- };
- CreatePost: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": {
- status: string;
- };
- };
- };
- CreateTag: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": {
- status: string;
- };
- };
- };
- CreateReply: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json;charset=utf-8": {
- message: string;
- };
- };
- };
- Contact: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "text/html": string;
- };
- };
- EmptyError: {
- headers: {
- [name: string]: unknown;
- };
- content?: never;
- };
- Error: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": {
- code: number;
- message: string;
- };
- };
- };
- PatchPost: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": {
- status: string;
- };
- };
- };
- PostDelete: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": {
- status: string;
- };
- };
- };
- PostGet: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": components["schemas"]["Post"];
- };
- };
- StringArray: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": components["schemas"]["StringArray"];
- };
- };
- Tag: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": string;
- };
- };
- User: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": components["schemas"]["User"];
- };
- };
- MultipleResponse: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": {
- id: string;
- email: string;
- name?: string;
- };
- "application/ld+json": {
- "@id": string;
- email: string;
- name?: string;
- };
- };
- };
- };
- parameters: never;
- requestBodies: {
- CreatePost: {
- content: {
- "application/json": {
- title: string;
- body: string;
- publish_date: number;
- };
- };
- };
- CreatePostOptional: {
- content: {
- "application/json": {
- title: string;
- body: string;
- publish_date: number;
- };
- };
- };
- CreateTag: {
- content: {
- "application/json": {
- description?: string;
- };
- };
- };
- CreateReply: {
- content: {
- "application/json;charset=utf-8": {
- message: string;
- replied_at: number;
- };
- };
- };
- Contact: {
- content: {
- "multipart/form-data": {
- name: string;
- email: string;
- subject: string;
- message: string;
- };
- };
- };
- PatchPost: {
- content: {
- "application/json": {
- title?: string;
- body?: string;
- publish_date?: number;
- };
- };
- };
- };
- headers: never;
- pathItems: never;
-}
-export type $defs = Record;
-export interface operations {
- getHeaderParams: {
- parameters: {
- query?: never;
- header: {
- "x-required-header": string;
- };
- path?: never;
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- 200: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": {
- status: string;
- };
- };
- };
- 500: components["responses"]["Error"];
- };
- };
-}
diff --git a/packages/openapi-fetch/test/index.test-d.ts b/packages/openapi-fetch/test/index.test-d.ts
deleted file mode 100644
index 924305446..000000000
--- a/packages/openapi-fetch/test/index.test-d.ts
+++ /dev/null
@@ -1,25 +0,0 @@
-import { test, expectTypeOf } from "vitest";
-
-import createClient from "../src/index.js";
-import type { paths } from "./fixtures/api.js";
-
-const { GET } = createClient();
-
-interface Blogpost {
- title: string;
- body: string;
- publish_date?: number | undefined;
-}
-
-// This is a type test that will not be executed
-test("the error type works properly", async () => {
- const value = await GET("/blogposts");
-
- if (value.data) {
- expectTypeOf(value.data).toEqualTypeOf>();
- } else {
- expectTypeOf(value.data).toBeUndefined();
- expectTypeOf(value.error).extract<{ code: number }>().toEqualTypeOf<{ code: number; message: string }>();
- expectTypeOf(value.error).exclude<{ code: number }>().toEqualTypeOf>();
- }
-});
diff --git a/packages/openapi-fetch/test/index.test.ts b/packages/openapi-fetch/test/index.test.ts
index bc8748fba..102a97e7d 100644
--- a/packages/openapi-fetch/test/index.test.ts
+++ b/packages/openapi-fetch/test/index.test.ts
@@ -1,7 +1,12 @@
import { HttpResponse, type StrictResponse } from "msw";
-import createClient, { type Middleware, type MiddlewareRequest, type QuerySerializerOptions } from "../src/index.js";
-import type { paths } from "./fixtures/api.js";
+import { afterAll, beforeAll, describe, expect, expectTypeOf, it } from "vitest";
+import createClient, {
+ type Middleware,
+ type MiddlewareCallbackParams,
+ type QuerySerializerOptions,
+} from "../src/index.js";
import { server, baseUrl, useMockRequestHandler, toAbsoluteURL } from "./fixtures/mock-server.js";
+import type { paths } from "./fixtures/api.js";
beforeAll(() => {
server.listen({
@@ -53,12 +58,17 @@ describe("client", () => {
// … is present if error is undefined
if (!dataRes.error) {
expect(dataRes.data[0]).toBe("one");
+ } else {
+ expect(() => dataRes.error.code).toThrow(); // type test: assert inverse of above infers type correctly
}
// … means data is undefined
if (dataRes.data) {
// @ts-expect-error
expect(() => dataRes.error.message).toThrow();
+ } else {
+ // @ts-expect-error
+ expect(() => dataRes.data[0]).toThrow(); // type test: assert inverse of above infers type correctly
}
// error
@@ -87,6 +97,48 @@ describe("client", () => {
}
});
+ test("infers correct data type on mismatched media", async () => {
+ const client = createClient({ baseUrl });
+ const result = await client.GET("/mismatched-data");
+ if (result.data) {
+ expectTypeOf(result.data).toEqualTypeOf<
+ | {
+ email: string;
+ age?: number;
+ avatar?: string;
+ created_at: number;
+ updated_at: number;
+ }
+ | {
+ title: string;
+ body: string;
+ publish_date?: number;
+ }
+ >();
+ } else {
+ expectTypeOf(result.error).extract<{ code: number }>().toEqualTypeOf<{ code: number; message: string }>();
+ expectTypeOf(result.error).exclude<{ code: number }>().toEqualTypeOf();
+ }
+ });
+
+ test("infers correct error type on mismatched media", async () => {
+ const client = createClient({ baseUrl });
+ const result = await client.GET("/mismatched-errors");
+ if (result.data) {
+ expectTypeOf(result.data).toEqualTypeOf<{
+ email: string;
+ age?: number;
+ avatar?: string;
+ created_at: number;
+ updated_at: number;
+ }>();
+ } else {
+ expectTypeOf(result.data).toBeUndefined();
+ expectTypeOf(result.error).extract<{ code: number }>().toEqualTypeOf<{ code: number; message: string }>();
+ expectTypeOf(result.error).exclude<{ code: number }>().toEqualTypeOf();
+ }
+ });
+
describe("params", () => {
describe("path", () => {
it("typechecks", async () => {
@@ -122,8 +174,10 @@ describe("client", () => {
// expect error on unknown property in 'params'
await client.GET("/blogposts/{post_id}", {
- // @ts-expect-error
- TODO: "this should be an error",
+ params: {
+ // @ts-expect-error
+ TODO: "this should be an error",
+ },
});
// (no error)
@@ -826,12 +880,40 @@ describe("client", () => {
});
describe("middleware", () => {
+ it("receives a UUID per-request", async () => {
+ const client = createClient({ baseUrl });
+
+ const requestIDs: string[] = [];
+ const responseIDs: string[] = [];
+
+ client.use({
+ async onRequest({ id }) {
+ requestIDs.push(id);
+ },
+ async onResponse({ id }) {
+ responseIDs.push(id);
+ },
+ });
+
+ await client.GET("/self");
+ await client.GET("/self");
+ await client.GET("/self");
+
+ // assert IDs matched between requests and responses
+ expect(requestIDs[0]).toBe(responseIDs[0]);
+ expect(requestIDs[1]).toBe(responseIDs[1]);
+ expect(requestIDs[2]).toBe(responseIDs[2]);
+
+ // assert IDs were unique
+ expect(requestIDs[0] !== requestIDs[1] && requestIDs[1] !== requestIDs[2]).toBe(true);
+ });
+
it("can modify request", async () => {
const client = createClient({ baseUrl });
client.use({
- async onRequest(req) {
+ async onRequest({ request }) {
return new Request("https://foo.bar/api/v1", {
- ...req,
+ ...request,
method: "OPTIONS",
headers: { foo: "bar" },
});
@@ -854,29 +936,6 @@ describe("client", () => {
expect(req.headers.get("foo")).toBe("bar");
});
- it("can attach custom properties to request", async () => {
- function createCustomFetch(data: any) {
- const response = {
- clone: () => ({ ...response }),
- headers: new Headers(),
- json: async () => data,
- status: 200,
- ok: true,
- } as Response;
- return async (input: Request) => {
- expect(input).toHaveProperty("customProperty", "value");
- return Promise.resolve(response);
- };
- }
-
- const customFetch = createCustomFetch({});
- const client = createClient({ fetch: customFetch, baseUrl });
-
- client.GET("/self", {
- customProperty: "value",
- });
- });
-
it("can modify response", async () => {
const toUnix = (date: string) => new Date(date).getTime();
@@ -898,14 +957,14 @@ describe("client", () => {
const client = createClient({ baseUrl });
client.use({
// convert date string to unix time
- async onResponse(res) {
- const body = await res.json();
+ async onResponse({ response }) {
+ const body = await response.json();
body.created_at = toUnix(body.created_at);
body.updated_at = toUnix(body.updated_at);
- const headers = new Headers(res.headers);
+ const headers = new Headers(response.headers);
headers.set("middleware", "value");
return new Response(JSON.stringify(body), {
- ...res,
+ ...response,
status: 201,
headers,
});
@@ -942,39 +1001,39 @@ describe("client", () => {
// it received the end result of the previous middleware step
client.use(
{
- async onRequest(req) {
- req.headers.set("step", "A");
- return req;
+ async onRequest({ request }) {
+ request.headers.set("step", "A");
+ return request;
},
- async onResponse(res) {
- if (res.headers.get("step") === "B") {
- const headers = new Headers(res.headers);
+ async onResponse({ response }) {
+ if (response.headers.get("step") === "B") {
+ const headers = new Headers(response.headers);
headers.set("step", "A");
- return new Response(res.body, { ...res, headers });
+ return new Response(response.body, { ...response, headers });
}
},
},
{
- async onRequest(req) {
- req.headers.set("step", "B");
- return req;
+ async onRequest({ request }) {
+ request.headers.set("step", "B");
+ return request;
},
- async onResponse(res) {
- const headers = new Headers(res.headers);
+ async onResponse({ response }) {
+ const headers = new Headers(response.headers);
headers.set("step", "B");
- if (res.headers.get("step") === "C") {
- return new Response(res.body, { ...res, headers });
+ if (response.headers.get("step") === "C") {
+ return new Response(response.body, { ...response, headers });
}
},
},
{
- onRequest(req) {
- req.headers.set("step", "C");
- return req;
+ onRequest({ request }) {
+ request.headers.set("step", "C");
+ return request;
},
- onResponse(res) {
- res.headers.set("step", "C");
- return res;
+ onResponse({ response }) {
+ response.headers.set("step", "C");
+ return response;
},
},
);
@@ -1003,7 +1062,7 @@ describe("client", () => {
baseUrl: "https://api.foo.bar/v1/",
});
client.use({
- onRequest(_, options) {
+ onRequest({ options }) {
requestBaseUrl = options.baseUrl;
return undefined;
},
@@ -1026,9 +1085,8 @@ describe("client", () => {
baseUrl: "https://api.foo.bar/v1/",
});
client.use({
- onResponse(res, options, req) {
- expect(req).toBeInstanceOf(Request);
-
+ onResponse({ request }) {
+ expect(request).toBeInstanceOf(Request);
return undefined;
},
});
@@ -1060,15 +1118,15 @@ describe("client", () => {
};
let receivedPath = "";
- let receivedParams: MiddlewareRequest["params"] = {};
+ let receivedParams: MiddlewareCallbackParams["params"] = {};
const client = createClient({
baseUrl: "https://api.foo.bar/v1/",
});
client.use({
- onRequest(req) {
- receivedPath = req.schemaPath;
- receivedParams = req.params;
+ onRequest({ schemaPath, params }) {
+ receivedPath = schemaPath;
+ receivedParams = params;
return undefined;
},
});
@@ -1183,6 +1241,29 @@ describe("client", () => {
const cookies = getRequestCookies();
expect(cookies).toEqual({ session: "1234" });
});
+
+ it("can attach custom properties to request", async () => {
+ function createCustomFetch(data: any) {
+ const response = {
+ clone: () => ({ ...response }),
+ headers: new Headers(),
+ json: async () => data,
+ status: 200,
+ ok: true,
+ } as Response;
+ return async (input: string, requestInit?: RequestInit) => {
+ expect(requestInit).toHaveProperty("customProperty", "value");
+ return Promise.resolve(response);
+ };
+ }
+
+ const customFetch = createCustomFetch({});
+ const client = createClient({ fetch: customFetch, baseUrl });
+
+ client.GET("/self", {
+ customProperty: "value",
+ });
+ });
});
describe("responses", () => {
@@ -1681,10 +1762,10 @@ describe("examples", () => {
it("auth middleware", async () => {
let accessToken: string | undefined = undefined;
const authMiddleware: Middleware = {
- async onRequest(req) {
+ async onRequest({ request }) {
if (accessToken) {
- req.headers.set("Authorization", `Bearer ${accessToken}`);
- return req;
+ request.headers.set("Authorization", `Bearer ${accessToken}`);
+ return request;
}
},
};
diff --git a/packages/openapi-fetch/test/v7-beta.test.ts b/packages/openapi-fetch/test/v7-beta.test.ts
deleted file mode 100644
index f6729989d..000000000
--- a/packages/openapi-fetch/test/v7-beta.test.ts
+++ /dev/null
@@ -1,1673 +0,0 @@
-import { HttpResponse, type StrictResponse } from "msw";
-import createClient, { type Middleware, type MiddlewareRequest, type QuerySerializerOptions } from "../src/index.js";
-import { server, baseUrl, useMockRequestHandler, toAbsoluteURL } from "./fixtures/mock-server.js";
-import type { paths } from "./fixtures/v7-beta.js";
-
-// Note
-// This is a copy of index.test.ts, but uses generated types from openapi-typescript@7 (beta).
-// This tests upcoming compatibility until openapi-typescript@7 is stable and the two tests
-// merged together.
-
-beforeAll(() => {
- server.listen({
- onUnhandledRequest: (request) => {
- throw new Error(`No request handler found for ${request.method} ${request.url}`);
- },
- });
-});
-
-afterEach(() => server.resetHandlers());
-
-afterAll(() => server.close());
-
-describe("client", () => {
- it("generates all proper functions", () => {
- const client = createClient();
-
- expect(client).toHaveProperty("GET");
- expect(client).toHaveProperty("PUT");
- expect(client).toHaveProperty("POST");
- expect(client).toHaveProperty("DELETE");
- expect(client).toHaveProperty("OPTIONS");
- expect(client).toHaveProperty("HEAD");
- expect(client).toHaveProperty("PATCH");
- expect(client).toHaveProperty("TRACE");
- });
-
- describe("TypeScript checks", () => {
- it("marks data or error as undefined, but never both", async () => {
- const client = createClient({
- baseUrl,
- });
-
- // data
- useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/string-array",
- status: 200,
- body: ["one", "two", "three"],
- });
-
- const dataRes = await client.GET("/string-array");
-
- // … is initially possibly undefined
- // @ts-expect-error
- expect(dataRes.data[0]).toBe("one");
-
- // … is present if error is undefined
- if (!dataRes.error) {
- expect(dataRes.data[0]).toBe("one");
- }
-
- // … means data is undefined
- if (dataRes.data) {
- // @ts-expect-error
- expect(() => dataRes.error.message).toThrow();
- }
-
- // error
- useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/string-array",
- status: 500,
- body: { code: 500, message: "Something went wrong" },
- });
- const errorRes = await client.GET("/string-array");
-
- // … is initially possibly undefined
- // @ts-expect-error
- expect(errorRes.error.message).toBe("Something went wrong");
-
- // … is present if error is undefined
- if (!errorRes.data) {
- expect(errorRes.error.message).toBe("Something went wrong");
- }
-
- // … means data is undefined
- if (errorRes.error) {
- // @ts-expect-error
- expect(() => errorRes.data[0]).toThrow();
- }
- });
-
- describe("params", () => {
- describe("path", () => {
- it("typechecks", async () => {
- const client = createClient({
- baseUrl,
- });
-
- useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/blogposts/:post_id",
- status: 200,
- body: { message: "OK" },
- });
-
- // expect error on missing 'params'
- // @ts-expect-error
- await client.GET("/blogposts/{post_id}");
-
- // expect error on empty params
- // @ts-expect-error
- await client.GET("/blogposts/{post_id}", { params: {} });
-
- // expect error on empty params.path
- // @ts-expect-error
- await client.GET("/blogposts/{post_id}", { params: { path: {} } });
-
- // expect error on mismatched type (number v string)
- await client.GET("/blogposts/{post_id}", {
- // @ts-expect-error
- params: { path: { post_id: 1234 } },
- });
-
- // expect error on unknown property in 'params'
- await client.GET("/blogposts/{post_id}", {
- // @ts-expect-error
- TODO: "this should be an error",
- });
-
- // (no error)
- let calledPostId = "";
- useMockRequestHandler<{ post_id: string }>({
- baseUrl,
- method: "get",
- path: "/blogposts/:post_id",
- handler: ({ params }) => {
- calledPostId = params.post_id;
- return HttpResponse.json({ message: "OK" }, { status: 200 });
- },
- });
-
- await client.GET("/blogposts/{post_id}", {
- params: { path: { post_id: "1234" } },
- });
-
- // expect param passed correctly
- expect(calledPostId).toBe("1234");
- });
-
- it("serializes", async () => {
- const client = createClient({
- baseUrl,
- });
-
- const { getRequestUrl } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/path-params/*",
- });
-
- await client.GET(
- "/path-params/{simple_primitive}/{simple_obj_flat}/{simple_arr_flat}/{simple_obj_explode*}/{simple_arr_explode*}/{.label_primitive}/{.label_obj_flat}/{.label_arr_flat}/{.label_obj_explode*}/{.label_arr_explode*}/{;matrix_primitive}/{;matrix_obj_flat}/{;matrix_arr_flat}/{;matrix_obj_explode*}/{;matrix_arr_explode*}",
- {
- params: {
- path: {
- simple_primitive: "simple",
- simple_obj_flat: { a: "b", c: "d" },
- simple_arr_flat: [1, 2, 3],
- simple_obj_explode: { e: "f", g: "h" },
- simple_arr_explode: [4, 5, 6],
- label_primitive: "label",
- label_obj_flat: { a: "b", c: "d" },
- label_arr_flat: [1, 2, 3],
- label_obj_explode: { e: "f", g: "h" },
- label_arr_explode: [4, 5, 6],
- matrix_primitive: "matrix",
- matrix_obj_flat: { a: "b", c: "d" },
- matrix_arr_flat: [1, 2, 3],
- matrix_obj_explode: { e: "f", g: "h" },
- matrix_arr_explode: [4, 5, 6],
- },
- },
- },
- );
-
- expect(getRequestUrl().pathname).toBe(
- `/path-params/${[
- // simple
- "simple",
- "a,b,c,d",
- "1,2,3",
- "e=f,g=h",
- "4,5,6",
- // label
- ".label",
- ".a,b,c,d",
- ".1,2,3",
- ".e=f.g=h",
- ".4.5.6",
- // matrix
- ";matrix_primitive=matrix",
- ";matrix_obj_flat=a,b,c,d",
- ";matrix_arr_flat=1,2,3",
- ";e=f;g=h",
- ";matrix_arr_explode=4;matrix_arr_explode=5;matrix_arr_explode=6",
- ].join("/")}`,
- );
- });
-
- it("allows UTF-8 characters", async () => {
- const client = createClient({ baseUrl });
- const { getRequestUrl } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/blogposts/*",
- });
-
- await client.GET("/blogposts/{post_id}", {
- params: { path: { post_id: "post?id = 🥴" } },
- });
-
- // expect post_id to be encoded properly
- const url = getRequestUrl();
- expect(url.searchParams.get("id ")).toBe(" 🥴");
- expect(url.pathname + url.search).toBe("/blogposts/post?id%20=%20%F0%9F%A5%B4");
- });
- });
-
- it("header", async () => {
- const client = createClient({ baseUrl });
-
- useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/header-params",
- handler: ({ request }) => {
- const header = request.headers.get("x-required-header");
- if (header !== "correct") {
- return HttpResponse.json(
- { code: 500, message: "missing correct header" },
- { status: 500 },
- ) as StrictResponse;
- }
- return HttpResponse.json({ status: header }, { status: 200, headers: request.headers });
- },
- });
-
- // expect error on missing header
- // @ts-expect-error
- await client.GET("/header-params");
-
- // expect error on incorrect header
- await client.GET("/header-params", {
- // @ts-expect-error
- params: { header: { foo: "bar" } },
- });
-
- // expect error on mismatched type
- await client.GET("/header-params", {
- // @ts-expect-error
- params: { header: { "x-required-header": true } },
- });
-
- // (no error)
- const response = await client.GET("/header-params", {
- params: { header: { "x-required-header": "correct" } },
- });
-
- // expect param passed correctly
- expect(response.response.headers.get("x-required-header")).toBe("correct");
- });
-
- describe("query", () => {
- describe("querySerializer", () => {
- it("primitives", async () => {
- const client = createClient({ baseUrl });
-
- const { getRequestUrl } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/query-params*",
- });
-
- await client.GET("/query-params", {
- params: {
- query: { string: "string", number: 0, boolean: false },
- },
- });
-
- expect(getRequestUrl().search).toBe("?string=string&number=0&boolean=false");
- });
-
- it("array params (empty)", async () => {
- const client = createClient({ baseUrl });
-
- const { getRequestUrl } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/query-params*",
- });
-
- await client.GET("/query-params", {
- params: {
- query: { array: [] },
- },
- });
-
- const url = getRequestUrl();
- expect(url.pathname).toBe("/query-params");
- expect(url.search).toBe("");
- });
-
- it("empty/null params", async () => {
- const client = createClient({ baseUrl });
-
- const { getRequestUrl } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/query-params*",
- });
-
- await client.GET("/query-params", {
- params: {
- query: { string: undefined, number: null as any },
- },
- });
-
- const url = getRequestUrl();
- expect(url.pathname).toBe("/query-params");
- expect(url.search).toBe("");
- });
-
- describe("array", () => {
- it.each([
- [
- "form",
- {
- given: { style: "form", explode: false },
- want: "array=1,2,3&boolean=true",
- },
- ],
- [
- "form (explode)",
- {
- given: { style: "form", explode: true },
- want: "array=1&array=2&array=3&boolean=true",
- },
- ],
- [
- "spaceDelimited",
- {
- given: { style: "spaceDelimited", explode: false },
- want: "array=1%202%203&boolean=true",
- },
- ],
- [
- "spaceDelimited (explode)",
- {
- given: { style: "spaceDelimited", explode: true },
- want: "array=1&array=2&array=3&boolean=true",
- },
- ],
- [
- "pipeDelimited",
- {
- given: { style: "pipeDelimited", explode: false },
- want: "array=1|2|3&boolean=true",
- },
- ],
- [
- "pipeDelimited (explode)",
- {
- given: { style: "pipeDelimited", explode: true },
- want: "array=1&array=2&array=3&boolean=true",
- },
- ],
- ] as [
- string,
- {
- given: NonNullable;
- want: string;
- },
- ][])("%s", async (_, { given, want }) => {
- const client = createClient({
- baseUrl,
- querySerializer: { array: given },
- });
-
- const { getRequestUrl } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/query-params*",
- });
-
- await client.GET("/query-params", {
- params: {
- query: { array: ["1", "2", "3"], boolean: true },
- },
- });
-
- const url = getRequestUrl();
- // skip leading '?'
- expect(url.search.substring(1)).toBe(want);
- });
- });
-
- describe("object", () => {
- it.each([
- [
- "form",
- {
- given: { style: "form", explode: false },
- want: "object=foo,bar,bar,baz&boolean=true",
- },
- ],
- [
- "form (explode)",
- {
- given: { style: "form", explode: true },
- want: "foo=bar&bar=baz&boolean=true",
- },
- ],
- [
- "deepObject",
- {
- given: { style: "deepObject", explode: false }, // note: `false` not supported; same as `true`
- want: "object[foo]=bar&object[bar]=baz&boolean=true",
- },
- ],
- [
- "deepObject (explode)",
- {
- given: { style: "deepObject", explode: true },
- want: "object[foo]=bar&object[bar]=baz&boolean=true",
- },
- ],
- ] as [
- string,
- {
- given: NonNullable;
- want: string;
- },
- ][])("%s", async (_, { given, want }) => {
- const client = createClient({
- baseUrl,
- querySerializer: { object: given },
- });
- const { getRequestUrl } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/query-params*",
- });
-
- await client.GET("/query-params", {
- params: {
- query: { object: { foo: "bar", bar: "baz" }, boolean: true },
- },
- });
-
- const url = getRequestUrl();
- // skip leading '?'
- expect(url.search.substring(1)).toBe(want);
- });
- });
-
- it("allowReserved", async () => {
- const client = createClient({
- baseUrl,
- querySerializer: { allowReserved: true },
- });
- const { getRequestUrl } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/query-params*",
- });
- await client.GET("/query-params", {
- params: {
- query: {
- string: "bad/character🐶",
- },
- },
- });
-
- expect(getRequestUrl().search).toBe("?string=bad/character%F0%9F%90%B6");
- expect(getRequestUrl().searchParams.get("string")).toBe("bad/character🐶");
-
- await client.GET("/query-params", {
- params: {
- query: {
- string: "bad/character🐶",
- },
- },
- querySerializer: {
- allowReserved: false,
- },
- });
-
- expect(getRequestUrl().search).toBe("?string=bad%2Fcharacter%F0%9F%90%B6");
- expect(getRequestUrl().searchParams.get("string")).toBe("bad/character🐶");
- });
-
- describe("function", () => {
- it("global default", async () => {
- const client = createClient({
- baseUrl,
- querySerializer: (q) => `alpha=${q.version}&beta=${q.format}`,
- });
-
- const { getRequestUrl } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/blogposts/:post_id",
- });
-
- await client.GET("/blogposts/{post_id}", {
- params: {
- path: { post_id: "my-post" },
- query: { version: 2, format: "json" },
- },
- });
-
- const url = getRequestUrl();
- expect(url.pathname + url.search).toBe("/blogposts/my-post?alpha=2&beta=json");
- });
-
- it("per-request", async () => {
- const client = createClient({
- baseUrl,
- querySerializer: () => "query",
- });
-
- const { getRequestUrl } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/blogposts/:post_id",
- });
-
- await client.GET("/blogposts/{post_id}", {
- params: {
- path: { post_id: "my-post" },
- query: { version: 2, format: "json" },
- },
- querySerializer: (q) => `alpha=${q.version}&beta=${q.format}`,
- });
-
- const url = getRequestUrl();
- expect(url.pathname + url.search).toBe("/blogposts/my-post?alpha=2&beta=json");
- });
- });
-
- it("ignores leading ? characters", async () => {
- const client = createClient({
- baseUrl,
- querySerializer: () => "?query",
- });
- const { getRequestUrl } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/blogposts/:post_id",
- });
- await client.GET("/blogposts/{post_id}", {
- params: {
- path: { post_id: "my-post" },
- query: { version: 2, format: "json" },
- },
- });
- const url = getRequestUrl();
- expect(url.pathname + url.search).toBe("/blogposts/my-post?query");
- });
- });
- });
- });
-
- describe("body", () => {
- // these are pure type tests; no runtime assertions needed
- it("requires necessary requestBodies", async () => {
- const client = createClient({ baseUrl });
-
- useMockRequestHandler({
- baseUrl,
- method: "put",
- path: "/blogposts",
- });
-
- // expect error on missing `body`
- // @ts-expect-error
- await client.PUT("/blogposts");
-
- // expect error on missing fields
- // @ts-expect-error
- await client.PUT("/blogposts", { body: { title: "Foo" } });
-
- // expect present body to be good enough (all fields optional)
- // (no error)
- await client.PUT("/blogposts", {
- body: {
- title: "Foo",
- body: "Bar",
- publish_date: new Date("2023-04-01T12:00:00Z").getTime(),
- },
- });
- });
-
- it("requestBody (inline)", async () => {
- const client = createClient({ baseUrl });
-
- useMockRequestHandler({
- baseUrl,
- method: "put",
- path: "/blogposts-optional-inline",
- status: 201,
- });
-
- // expect error on wrong body type
- await client.PUT("/blogposts-optional-inline", {
- // @ts-expect-error
- body: { error: true },
- });
-
- // (no error)
- await client.PUT("/blogposts-optional-inline", {
- body: {
- title: "",
- publish_date: 3,
- body: "",
- },
- });
- });
-
- it("requestBody with required: false", async () => {
- const client = createClient({ baseUrl });
-
- useMockRequestHandler({
- baseUrl,
- method: "put",
- path: "/blogposts-optional",
- status: 201,
- });
-
- // assert missing `body` doesn’t raise a TS error
- await client.PUT("/blogposts-optional");
-
- // assert error on type mismatch
- // @ts-expect-error
- await client.PUT("/blogposts-optional", { body: { error: true } });
-
- // (no error)
- await client.PUT("/blogposts-optional", {
- body: {
- title: "",
- publish_date: 3,
- body: "",
- },
- });
- });
- });
- });
-
- describe("options", () => {
- it("baseUrl", async () => {
- let client = createClient({ baseUrl });
-
- const { getRequestUrl } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/self",
- status: 200,
- body: { message: "OK" },
- });
-
- await client.GET("/self");
-
- // assert baseUrl and path mesh as expected
- expect(getRequestUrl().href).toBe(toAbsoluteURL("/self"));
-
- client = createClient({ baseUrl });
- await client.GET("/self");
- // assert trailing '/' was removed
- expect(getRequestUrl().href).toBe(toAbsoluteURL("/self"));
- });
-
- describe("headers", () => {
- it("persist", async () => {
- const headers: HeadersInit = { Authorization: "Bearer secrettoken" };
-
- const client = createClient({ headers, baseUrl });
-
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/self",
- status: 200,
- body: { email: "user@user.com" },
- });
-
- await client.GET("/self");
-
- // assert default headers were passed
- expect(getRequest().headers).toEqual(
- new Headers({
- ...headers, // assert new header got passed
- "Content-Type": "application/json", // probably doesn’t need to get tested, but this was simpler than writing lots of code to ignore these
- }),
- );
- });
-
- it("can be overridden", async () => {
- const client = createClient({
- baseUrl,
- headers: { "Cache-Control": "max-age=10000000" },
- });
-
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/self",
- status: 200,
- body: { email: "user@user.com" },
- });
-
- await client.GET("/self", {
- params: {},
- headers: { "Cache-Control": "no-cache" },
- });
-
- // assert default headers were passed
- expect(getRequest().headers).toEqual(
- new Headers({
- "Cache-Control": "no-cache",
- "Content-Type": "application/json",
- }),
- );
- });
-
- it("can be unset", async () => {
- const client = createClient({
- baseUrl,
- headers: { "Content-Type": null },
- });
-
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/self",
- status: 200,
- body: { email: "user@user.com" },
- });
-
- await client.GET("/self", { params: {} });
-
- // assert default headers were passed
- expect(getRequest().headers).toEqual(new Headers());
- });
-
- it("supports arrays", async () => {
- const client = createClient({ baseUrl });
-
- const list = ["one", "two", "three"];
-
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/self",
- status: 200,
- body: {},
- });
-
- await client.GET("/self", { headers: { list } });
-
- expect(getRequest().headers.get("list")).toEqual(list.join(", "));
- });
- });
-
- describe("fetch", () => {
- it("createClient", async () => {
- function createCustomFetch(data: any) {
- const response = {
- clone: () => ({ ...response }),
- headers: new Headers(),
- json: async () => data,
- status: 200,
- ok: true,
- } as Response;
- return async () => Promise.resolve(response);
- }
-
- const customFetch = createCustomFetch({ works: true });
-
- const client = createClient({ fetch: customFetch, baseUrl });
- const { data } = await client.GET("/self");
-
- // assert data was returned from custom fetcher
- expect(data).toEqual({ works: true });
-
- // TODO: do we need to assert nothing was called?
- // msw should throw an error if there was an unused handler
- });
-
- it("per-request", async () => {
- function createCustomFetch(data: any) {
- const response = {
- clone: () => ({ ...response }),
- headers: new Headers(),
- json: async () => data,
- status: 200,
- ok: true,
- } as Response;
- return async () => Promise.resolve(response);
- }
-
- const fallbackFetch = createCustomFetch({ fetcher: "fallback" });
- const overrideFetch = createCustomFetch({ fetcher: "override" });
-
- const client = createClient({ fetch: fallbackFetch, baseUrl });
-
- // assert override function was called
- const fetch1 = await client.GET("/self", { fetch: overrideFetch });
- expect(fetch1.data).toEqual({ fetcher: "override" });
-
- // assert fallback function still persisted (and wasn’t overridden)
- const fetch2 = await client.GET("/self");
- expect(fetch2.data).toEqual({ fetcher: "fallback" });
-
- // TODO: do we need to assert nothing was called?
- // msw should throw an error if there was an unused handler
- });
- });
-
- describe("middleware", () => {
- it("can modify request", async () => {
- const client = createClient({ baseUrl });
- client.use({
- async onRequest(req) {
- return new Request("https://foo.bar/api/v1", {
- ...req,
- method: "OPTIONS",
- headers: { foo: "bar" },
- });
- },
- });
-
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "options",
- path: "https://foo.bar/api/v1",
- status: 200,
- body: {},
- });
-
- await client.GET("/self");
-
- const req = getRequest();
- expect(req.url).toBe("https://foo.bar/api/v1");
- expect(req.method).toBe("OPTIONS");
- expect(req.headers.get("foo")).toBe("bar");
- });
-
- it("can modify response", async () => {
- const toUnix = (date: string) => new Date(date).getTime();
-
- const rawBody = {
- email: "user123@gmail.com",
- created_at: "2024-01-01T00:00:00Z",
- updated_at: "2024-01-20T00:00:00Z",
- };
-
- useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/self",
- status: 200,
- body: rawBody,
- headers: { foo: "bar" },
- });
-
- const client = createClient({ baseUrl });
- client.use({
- // convert date string to unix time
- async onResponse(res) {
- const body = await res.json();
- body.created_at = toUnix(body.created_at);
- body.updated_at = toUnix(body.updated_at);
- const headers = new Headers(res.headers);
- headers.set("middleware", "value");
- return new Response(JSON.stringify(body), {
- ...res,
- status: 201,
- headers,
- });
- },
- });
-
- const { data, response } = await client.GET("/self");
-
- // assert body was modified
- expect(data?.created_at).toBe(toUnix(rawBody.created_at));
- expect(data?.updated_at).toBe(toUnix(rawBody.updated_at));
- // assert rest of body was preserved
- expect(data?.email).toBe(rawBody.email);
- // assert status changed
- expect(response.status).toBe(201);
- // assert server headers were preserved
- expect(response.headers.get("foo")).toBe("bar");
- // assert middleware heaers were added
- expect(response.headers.get("middleware")).toBe("value");
- });
-
- it("executes in expected order", async () => {
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/self",
- status: 200,
- body: {},
- });
-
- const client = createClient({ baseUrl });
- // this middleware passes along the “step” header
- // for both requests and responses, but first checks if
- // it received the end result of the previous middleware step
- client.use(
- {
- async onRequest(req) {
- req.headers.set("step", "A");
- return req;
- },
- async onResponse(res) {
- if (res.headers.get("step") === "B") {
- const headers = new Headers(res.headers);
- headers.set("step", "A");
- return new Response(res.body, { ...res, headers });
- }
- },
- },
- {
- async onRequest(req) {
- req.headers.set("step", "B");
- return req;
- },
- async onResponse(res) {
- if (res.headers.get("step") === "C") {
- const headers = new Headers(res.headers);
- headers.set("step", "B");
- return new Response(res.body, { ...res, headers });
- }
- },
- },
- {
- onRequest(req) {
- req.headers.set("step", "C");
- return req;
- },
- onResponse(res) {
- res.headers.set("step", "C");
- return res;
- },
- },
- );
-
- const { response } = await client.GET("/self");
-
- // assert requests ended up on step C (array order)
- expect(getRequest().headers.get("step")).toBe("C");
-
- // assert responses ended up on step A (reverse order)
- expect(response.headers.get("step")).toBe("A");
- });
-
- it("receives correct options", async () => {
- useMockRequestHandler({
- baseUrl: "https://api.foo.bar/v1/",
- method: "get",
- path: "/self",
- status: 200,
- body: {},
- });
-
- let requestBaseUrl = "";
-
- const client = createClient({
- baseUrl: "https://api.foo.bar/v1/",
- });
- client.use({
- onRequest(_, options) {
- requestBaseUrl = options.baseUrl;
- return undefined;
- },
- });
-
- await client.GET("/self");
- expect(requestBaseUrl).toBe("https://api.foo.bar/v1");
- });
-
- it("receives OpenAPI options passed in from parent", async () => {
- useMockRequestHandler({
- method: "put",
- path: "https://api.foo.bar/v1/tag*",
- status: 200,
- body: {},
- });
-
- const pathname = "/tag/{name}";
- const tagData = {
- params: {
- path: {
- name: "New Tag",
- },
- },
- body: {
- description: "Tag Description",
- },
- query: {
- foo: "bar",
- },
- };
-
- let receivedPath = "";
- let receivedParams: MiddlewareRequest["params"] = {};
-
- const client = createClient({
- baseUrl: "https://api.foo.bar/v1/",
- });
- client.use({
- onRequest(req) {
- receivedPath = req.schemaPath;
- receivedParams = req.params;
- return undefined;
- },
- });
- await client.PUT(pathname, tagData);
-
- expect(receivedPath).toBe(pathname);
- expect(receivedParams).toEqual(tagData.params);
- });
-
- it("can be skipped without interrupting request", async () => {
- useMockRequestHandler({
- baseUrl: "https://api.foo.bar/v1/",
- method: "get",
- path: "/blogposts",
- status: 200,
- body: { success: true },
- });
-
- const client = createClient({
- baseUrl: "https://api.foo.bar/v1/",
- });
- client.use({
- onRequest() {
- return undefined;
- },
- });
- const { data } = await client.GET("/blogposts");
-
- expect(data).toEqual({ success: true });
- });
-
- it("can be ejected", async () => {
- useMockRequestHandler({
- baseUrl: "https://api.foo.bar/v1",
- method: "get",
- path: "/blogposts",
- status: 200,
- body: { success: true },
- });
-
- let called = false;
- const errorMiddleware = {
- onRequest() {
- called = true;
- throw new Error("oops");
- },
- };
-
- const client = createClient({
- baseUrl: "https://api.foo.bar/v1",
- });
- client.use(errorMiddleware);
- client.eject(errorMiddleware);
-
- expect(() => client.GET("/blogposts")).not.toThrow();
- expect(called).toBe(false);
- });
- });
- });
-
- describe("requests", () => {
- it("multipart/form-data", async () => {
- const client = createClient({ baseUrl });
-
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "put",
- path: "/contact",
- });
-
- const reqBody = {
- name: "John Doe",
- email: "test@email.email",
- subject: "Test Message",
- message: "This is a test message",
- };
- await client.PUT("/contact", {
- body: reqBody,
- bodySerializer(body) {
- const fd = new FormData();
- for (const name in body) {
- fd.append(name, body[name as keyof typeof body]);
- }
- return fd;
- },
- });
-
- // expect request to contain correct headers and body
- const req = getRequest();
- expect(req.body).toBeInstanceOf(ReadableStream);
- const body = await req.formData();
- expect(body.get("name")).toBe("John Doe");
- expect(req.headers.get("Content-Type")).toMatch(/multipart\/form-data;/);
- });
-
- it("respects cookie", async () => {
- const client = createClient({ baseUrl });
-
- const { getRequestCookies } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/blogposts",
- });
-
- await client.GET("/blogposts", {
- credentials: "include",
- headers: {
- Cookie: "session=1234",
- },
- });
-
- const cookies = getRequestCookies();
- expect(cookies).toEqual({ session: "1234" });
- });
- });
-
- describe("responses", () => {
- it("returns empty object on 204", async () => {
- const client = createClient({ baseUrl });
- useMockRequestHandler({
- baseUrl,
- method: "delete",
- path: "/tag/*",
- handler: () => new HttpResponse(null, { status: 204 }),
- });
-
- const { data, error, response } = await client.DELETE("/tag/{name}", {
- params: { path: { name: "New Tag" } },
- });
-
- // assert correct data was returned
- expect(data).toEqual({});
- expect(response.status).toBe(204);
-
- // assert error is empty
- expect(error).toBeUndefined();
- });
-
- it("treats `default` as an error", async () => {
- const client = createClient({
- baseUrl,
- headers: { "Cache-Control": "max-age=10000000" },
- });
- useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/default-as-error",
- status: 500,
- body: {
- code: 500,
- message: "An unexpected error occurred",
- },
- });
- const { error } = await client.GET("/default-as-error");
-
- // discard `data` object
- if (!error) {
- throw new Error("treats `default` as an error: error response should be present");
- }
-
- // assert `error.message` doesn’t throw TS error
- expect(error.message).toBe("An unexpected error occurred");
- });
-
- describe("parseAs", () => {
- it("text", async () => {
- const client = createClient({ baseUrl });
- useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/anyMethod",
- body: {},
- });
- const { data, error } = (await client.GET("/anyMethod", {
- parseAs: "text",
- })) satisfies { data?: string };
- if (error) {
- throw new Error("parseAs text: error");
- }
- expect(data).toBe("{}");
- });
-
- it("arrayBuffer", async () => {
- const client = createClient({ baseUrl });
- useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/anyMethod",
- body: {},
- });
- const { data, error } = (await client.GET("/anyMethod", {
- parseAs: "arrayBuffer",
- })) satisfies { data?: ArrayBuffer };
- if (error) {
- throw new Error("parseAs arrayBuffer: error");
- }
- expect(data.byteLength).toBe(2);
- });
-
- it("blob", async () => {
- const client = createClient({ baseUrl });
- useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/anyMethod",
- body: {},
- });
- const { data, error } = (await client.GET("/anyMethod", {
- parseAs: "blob",
- })) satisfies { data?: Blob };
- if (error) {
- throw new Error("parseAs blob: error");
- }
-
- expect(data.constructor.name).toBe("Blob");
- });
-
- it("stream", async () => {
- const client = createClient({ baseUrl });
- useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/anyMethod",
- body: {},
- });
- const { data } = (await client.GET("/anyMethod", {
- parseAs: "stream",
- })) satisfies { data?: ReadableStream | null };
- if (!data) {
- throw new Error("parseAs stream: error");
- }
-
- expect(data).toBeInstanceOf(ReadableStream);
- const reader = data.getReader();
- const result = await reader.read();
- expect(result.value?.length).toBe(2);
- });
-
- it("use the selected content", async () => {
- const client = createClient({ baseUrl });
-
- useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/multiple-response-content",
- status: 200,
- headers: { "Content-Type": "application/ld+json" },
- body: {
- "@id": "some-resource-identifier",
- email: "foo@bar.fr",
- name: null,
- },
- });
-
- const { data } = await client.GET("/multiple-response-content", {
- headers: {
- Accept: "application/ld+json",
- },
- });
-
- data satisfies
- | {
- "@id": string;
- email: string;
- name?: string;
- }
- | undefined;
-
- if (!data) {
- throw new Error("Missing response");
- }
-
- expect(data).toEqual({
- "@id": "some-resource-identifier",
- email: "foo@bar.fr",
- name: null,
- });
- });
- });
- });
-
- describe("GET()", () => {
- it("sends the correct method", async () => {
- const client = createClient({ baseUrl });
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/anyMethod",
- });
- await client.GET("/anyMethod");
- expect(getRequest().method).toBe("GET");
- });
-
- it("sends correct options, returns success", async () => {
- const mockData = {
- title: "My Post",
- body: "This is a very good post
",
- publish_date: new Date("2023-03-01T12:00:00Z").getTime(),
- };
- const client = createClient({ baseUrl });
-
- const { getRequestUrl } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/blogposts/:post_id",
- status: 200,
- body: mockData,
- });
- const { data, error, response } = await client.GET("/blogposts/{post_id}", {
- params: { path: { post_id: "my-post" } },
- });
-
- // assert correct URL was called
- expect(getRequestUrl().pathname).toBe("/blogposts/my-post");
-
- // assert correct data was returned
- expect(data).toEqual(mockData);
- expect(response.status).toBe(200);
-
- // assert error is empty
- expect(error).toBeUndefined();
- });
-
- it("sends correct options, returns error", async () => {
- const mockError = { code: 404, message: "Post not found" };
- const client = createClient({ baseUrl });
-
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/blogposts/:post_id",
- status: 404,
- body: mockError,
- });
-
- const { data, error, response } = await client.GET("/blogposts/{post_id}", {
- params: { path: { post_id: "my-post" } },
- });
-
- // assert correct URL was called
- expect(getRequest().url).toBe(`${baseUrl}/blogposts/my-post`);
-
- // assert correct method was called
- expect(getRequest().method).toBe("GET");
-
- // assert correct error was returned
- expect(error).toEqual(mockError);
- expect(response.status).toBe(404);
-
- // assert data is empty
- expect(data).toBeUndefined();
- });
-
- // note: this was a previous bug in the type inference
- it("handles array-type responses", async () => {
- const client = createClient({ baseUrl });
-
- useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/blogposts",
- status: 200,
- body: [],
- });
-
- const { data } = await client.GET("/blogposts", { params: {} });
- if (!data) {
- throw new Error("data empty");
- }
-
- // assert array type (and only array type) was inferred
- expect(data.length).toBe(0);
- });
-
- it("handles literal 2XX and 4XX codes", async () => {
- const client = createClient({ baseUrl });
-
- useMockRequestHandler({
- baseUrl,
- method: "put",
- path: "/media",
- status: 201,
- body: { status: "success" },
- });
-
- const { data, error } = await client.PUT("/media", {
- body: { media: "base64", name: "myImage" },
- });
-
- if (data) {
- // assert 2XX type inferred correctly
- expect(data.status).toBe("success");
- } else {
- // assert 4XX type inferred correctly
- // (this should be a dead code path but tests TS types)
- expect(error.message).toBe("Error");
- }
- });
-
- it("gracefully handles invalid JSON for errors", async () => {
- const client = createClient({ baseUrl });
-
- useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/blogposts",
- status: 401,
- body: "Unauthorized",
- });
-
- const { data, error } = await client.GET("/blogposts");
-
- expect(data).toBeUndefined();
- expect(error).toBe("Unauthorized");
- });
- });
-
- describe("POST()", () => {
- it("sends the correct method", async () => {
- const client = createClient({ baseUrl });
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "post",
- path: "/anyMethod",
- });
- await client.POST("/anyMethod");
- expect(getRequest().method).toBe("POST");
- });
-
- it("sends correct options, returns success", async () => {
- const mockData = { status: "success" };
-
- const client = createClient({ baseUrl });
- const { getRequestUrl } = useMockRequestHandler({
- baseUrl,
- method: "put",
- path: "/blogposts",
- status: 201,
- body: mockData,
- });
-
- const { data, error, response } = await client.PUT("/blogposts", {
- body: {
- title: "New Post",
- body: "Best post yet
",
- publish_date: new Date("2023-03-31T12:00:00Z").getTime(),
- },
- });
-
- // assert correct URL was called
- expect(getRequestUrl().pathname).toBe("/blogposts");
-
- // assert correct data was returned
- expect(data).toEqual(mockData);
- expect(response.status).toBe(201);
-
- // assert error is empty
- expect(error).toBeUndefined();
- });
-
- it("supports sepecifying utf-8 encoding", async () => {
- const mockData = { message: "My reply" };
- const client = createClient({ baseUrl });
- useMockRequestHandler({
- baseUrl,
- method: "put",
- path: "/comment",
- status: 201,
- body: mockData,
- });
-
- const { data, error, response } = await client.PUT("/comment", {
- params: {},
- body: {
- message: "My reply",
- replied_at: new Date("2023-03-31T12:00:00Z").getTime(),
- },
- });
-
- // assert correct data was returned
- expect(data).toEqual(mockData);
- expect(response.status).toBe(201);
-
- // assert error is empty
- expect(error).toBeUndefined();
- });
- });
-
- describe("DELETE()", () => {
- it("sends the correct method", async () => {
- const client = createClient({ baseUrl });
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "delete",
- path: "/anyMethod",
- });
- await client.DELETE("/anyMethod");
- expect(getRequest().method).toBe("DELETE");
- });
-
- it("returns empty object on 204", async () => {
- const client = createClient({ baseUrl });
- useMockRequestHandler({
- baseUrl,
- method: "delete",
- path: "/blogposts/:post_id",
- handler: () => new HttpResponse(null, { status: 204 }),
- });
- const { data, error } = await client.DELETE("/blogposts/{post_id}", {
- params: {
- path: { post_id: "123" },
- },
- });
-
- // assert correct data was returned
- expect(data).toEqual({});
-
- // assert error is empty
- expect(error).toBeUndefined();
- });
-
- it("returns empty object on Content-Length: 0", async () => {
- const client = createClient({ baseUrl });
- useMockRequestHandler({
- baseUrl,
- method: "delete",
- path: "/blogposts/:post_id",
- handler: () =>
- new HttpResponse(null, {
- status: 200,
- headers: {
- "Content-Length": "0",
- },
- }),
- });
-
- const { data, error } = await client.DELETE("/blogposts/{post_id}", {
- params: {
- path: { post_id: "123" },
- },
- });
-
- // assert correct data was returned
- expect(data).toEqual({});
-
- // assert error is empty
- expect(error).toBeUndefined();
- });
- });
-
- describe("OPTIONS()", () => {
- it("sends the correct method", async () => {
- const client = createClient({ baseUrl });
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "options",
- path: "/anyMethod",
- });
- await client.OPTIONS("/anyMethod");
- expect(getRequest().method).toBe("OPTIONS");
- });
- });
-
- describe("HEAD()", () => {
- it("sends the correct method", async () => {
- const client = createClient({ baseUrl });
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "head",
- path: "/anyMethod",
- });
- await client.HEAD("/anyMethod");
- expect(getRequest().method).toBe("HEAD");
- });
- });
-
- describe("PATCH()", () => {
- it("sends the correct method", async () => {
- const client = createClient({ baseUrl });
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "patch",
- path: "/anyMethod",
- });
- await client.PATCH("/anyMethod");
- expect(getRequest().method).toBe("PATCH");
- });
- });
-
- // NOTE: msw does not support TRACE method
- // so instead we verify that calling TRACE() with msw throws an error
- describe("TRACE()", () => {
- it("sends the correct method", async () => {
- const client = createClient({ baseUrl });
- useMockRequestHandler({
- baseUrl,
- method: "all", // note: msw doesn’t support TRACE method
- path: "/anyMethod",
- });
-
- await expect(async () => await client.TRACE("/anyMethod")).rejects.toThrowError(
- "'TRACE' HTTP method is unsupported",
- );
- });
- });
-});
-
-// test that the library behaves as expected inside commonly-used patterns
-describe("examples", () => {
- it("auth middleware", async () => {
- let accessToken: string | undefined = undefined;
- const authMiddleware: Middleware = {
- async onRequest(req) {
- if (accessToken) {
- req.headers.set("Authorization", `Bearer ${accessToken}`);
- return req;
- }
- },
- };
-
- const client = createClient({ baseUrl });
- client.use(authMiddleware);
-
- const { getRequest } = useMockRequestHandler({
- baseUrl,
- method: "get",
- path: "/blogposts/:post_id",
- });
-
- // assert initial call is unauthenticated
- await client.GET("/blogposts/{post_id}", {
- params: { path: { post_id: "1234" } },
- });
- expect(getRequest().headers.get("authorization")).toBeNull();
-
- // assert after setting token, client is authenticated
- accessToken = "real_token";
- await client.GET("/blogposts/{post_id}", {
- params: { path: { post_id: "1234" } },
- });
- expect(getRequest().headers.get("authorization")).toBe(`Bearer ${accessToken}`);
- });
-});
diff --git a/packages/openapi-typescript-helpers/CHANGELOG.md b/packages/openapi-typescript-helpers/CHANGELOG.md
index 4a92caa3d..00940be84 100644
--- a/packages/openapi-typescript-helpers/CHANGELOG.md
+++ b/packages/openapi-typescript-helpers/CHANGELOG.md
@@ -1,5 +1,12 @@
# openapi-typescript-helpers
+## 0.0.9
+
+### Patch Changes
+
+- Improved handling of `SuccessResponse` and `ErrorResponse`
+- Changed handling of `ErrorResponse` to produce one and only one error type (rather than an impossible union)
+
## 0.0.8
### Patch Changes
diff --git a/packages/openapi-typescript-helpers/biome.json b/packages/openapi-typescript-helpers/biome.json
index 11f4ba8e9..b6ff2b00b 100644
--- a/packages/openapi-typescript-helpers/biome.json
+++ b/packages/openapi-typescript-helpers/biome.json
@@ -1,5 +1,5 @@
{
- "$schema": "https://biomejs.dev/schemas/1.7.0/schema.json",
+ "$schema": "https://biomejs.dev/schemas/1.8.1/schema.json",
"extends": ["../../biome.json"],
"files": {
"include": ["*"]
diff --git a/packages/openapi-typescript-helpers/index.d.ts b/packages/openapi-typescript-helpers/index.d.ts
index 14a95097f..edd96dabe 100644
--- a/packages/openapi-typescript-helpers/index.d.ts
+++ b/packages/openapi-typescript-helpers/index.d.ts
@@ -5,7 +5,65 @@ export type HttpMethod = "get" | "put" | "post" | "delete" | "options" | "head"
export type OkStatus = 200 | 201 | 202 | 203 | 204 | 206 | 207 | "2XX";
/** 4XX and 5XX statuses */
// biome-ignore format: keep on one line
-export type ErrorStatus = 500 | 501 | 502 | 503 | 504 | 505 | 506 | 507 | 508 | 510 | 511 | '5XX' | 400 | 401 | 402 | 403 | 404 | 405 | 406 | 407 | 408 | 409 | 410 | 411 | 412 | 413 | 414 | 415 | 416 | 417 | 418 | 420 | 421 | 422 | 423 | 424 | 425 | 426 | 429 | 431 | 444 | 450 | 451 | 497 | 498 | 499 | '4XX' | "default";
+export type ErrorStatus = 500 | 501 | 502 | 503 | 504 | 505 | 506 | 507 | 508 | 510 | 511 | '5XX' | 400 | 401 | 402 | 403 | 404 | 405 | 406 | 407 | 408 | 409 | 410 | 411 | 412 | 413 | 414 | 415 | 416 | 417 | 418 | 420 | 421 | 422 | 423 | 424 | 425 | 426 | 427 | 428 | 429 | 430 | 431 | 444 | 450 | 451 | 497 | 498 | 499 | '4XX' | "default";
+
+/** Get a union of OK Statuses */
+export type OKStatusUnion = FilterKeys;
+
+/** Get first error status, in order */
+// biome-ignore format: this is dumb but reliable
+export type FirstErrorStatus =
+ T extends { 500: any } ? T[500] :
+ T extends { 501: any } ? T[501] :
+ T extends { 502: any } ? T[502] :
+ T extends { 503: any } ? T[503] :
+ T extends { 504: any } ? T[504] :
+ T extends { 505: any } ? T[505] :
+ T extends { 506: any } ? T[506] :
+ T extends { 507: any } ? T[507] :
+ T extends { 508: any } ? T[508] :
+ T extends { 510: any } ? T[510] :
+ T extends { 511: any } ? T[511] :
+ T extends { "5XX": any } ? T["5XX"] :
+ T extends { 400: any } ? T[400] :
+ T extends { 401: any } ? T[401] :
+ T extends { 402: any } ? T[402] :
+ T extends { 403: any } ? T[403] :
+ T extends { 404: any } ? T[404] :
+ T extends { 405: any } ? T[405] :
+ T extends { 406: any } ? T[406] :
+ T extends { 407: any } ? T[407] :
+ T extends { 408: any } ? T[408] :
+ T extends { 409: any } ? T[409] :
+ T extends { 410: any } ? T[410] :
+ T extends { 411: any } ? T[411] :
+ T extends { 412: any } ? T[412] :
+ T extends { 413: any } ? T[413] :
+ T extends { 414: any } ? T[414] :
+ T extends { 415: any } ? T[415] :
+ T extends { 416: any } ? T[416] :
+ T extends { 417: any } ? T[417] :
+ T extends { 418: any } ? T[418] :
+ T extends { 420: any } ? T[420] :
+ T extends { 421: any } ? T[421] :
+ T extends { 422: any } ? T[422] :
+ T extends { 423: any } ? T[423] :
+ T extends { 424: any } ? T[424] :
+ T extends { 425: any } ? T[425] :
+ T extends { 426: any } ? T[426] :
+ T extends { 427: any } ? T[427] :
+ T extends { 428: any } ? T[428] :
+ T extends { 429: any } ? T[429] :
+ T extends { 430: any } ? T[430] :
+ T extends { 431: any } ? T[431] :
+ T extends { 444: any } ? T[444] :
+ T extends { 450: any } ? T[450] :
+ T extends { 451: any } ? T[451] :
+ T extends { 497: any } ? T[497] :
+ T extends { 498: any } ? T[498] :
+ T extends { 499: any } ? T[499] :
+ T extends { "4XX": any } ? T["4XX"] :
+ T extends { default: any } ? T["default"] : never;
// OpenAPI type helpers
@@ -17,46 +75,73 @@ export type PathsWithMethod
? Pathname
: never;
}[keyof Paths];
-/** DO NOT USE! Only used only for OperationObject type inference */
+
+/**
+ * DO NOT USE!
+ * Only used only for OperationObject type inference
+ */
export interface OperationObject {
parameters: any;
requestBody: any; // note: "any" will get overridden in inference
responses: any;
}
+
/** Internal helper used in PathsWithMethod */
export type PathItemObject = {
[M in HttpMethod]: OperationObject;
} & { parameters?: any };
+
/** Return `responses` for an Operation Object */
export type ResponseObjectMap = T extends { responses: any } ? T["responses"] : unknown;
+
/** Return `content` for a Response Object */
export type ResponseContent = T extends { content: any } ? T["content"] : unknown;
+
/** Return `requestBody` for an Operation Object */
export type OperationRequestBody = T extends { requestBody?: any } ? T["requestBody"] : never;
+
/** Internal helper used in OperationRequestBodyContent */
export type OperationRequestBodyMediaContent = undefined extends OperationRequestBody
- ? FilterKeys>, "content"> | undefined
- : FilterKeys, "content">;
+ ? ResponseContent>> | undefined
+ : ResponseContent>;
+
/** Return first `content` from a Request Object Mapping, allowing any media type */
export type OperationRequestBodyContent = FilterKeys, MediaType> extends never
? FilterKeys>, MediaType> | undefined
: FilterKeys, MediaType>;
+
/** Return first 2XX response from a Response Object Map */
-export type SuccessResponse = ResponseContent>;
-/** Return first 5XX or 4XX response (in that order) from a Response Object Map */
-export type ErrorResponse = ResponseContent>;
+export type SuccessResponse = FilterKeys<
+ ResponseContent>,
+ Media
+>;
+
+/**
+ * Return first 5XX or 4XX response (in that order) from a Response Object Map
+ */
+export type ErrorResponse = FilterKeys<
+ ResponseContent>,
+ Media
+>;
+
/** Return first JSON-like 2XX response from a path + HTTP method */
export type SuccessResponseJSON = JSONLike>>;
+
/** Return first JSON-like 5XX or 4XX response from a path + HTTP method */
export type ErrorResponseJSON = JSONLike>>;
+
/** Return JSON-like request body from a path + HTTP method */
-export type RequestBodyJSON = JSONLike>>;
+export type RequestBodyJSON = JSONLike, "content">>;
// Generic TS utils
/** Find first match of multiple keys */
export type FilterKeys = Obj[keyof Obj & Matchers];
-/** Get the type of a value of an input object with a given key. If the key is not found, return a default type. Works with unions of objects too. */
+/**
+ * @deprecated Use `FilterKeys` instead
+ * Get the type of a value of an input object with a given key. If the key is
+ * not found, return a default type. Works with unions of objects too.
+ */
export type GetValueWithDefault = Obj extends any
? FilterKeys extends never
? Default
diff --git a/packages/openapi-typescript-helpers/package.json b/packages/openapi-typescript-helpers/package.json
index e04a49040..af35509a2 100644
--- a/packages/openapi-typescript-helpers/package.json
+++ b/packages/openapi-typescript-helpers/package.json
@@ -1,7 +1,7 @@
{
"name": "openapi-typescript-helpers",
"description": "TypeScript helpers for consuming openapi-typescript types",
- "version": "0.0.8",
+ "version": "0.0.9",
"author": {
"name": "Drew Powers",
"email": "drew@pow.rs"
diff --git a/packages/openapi-typescript/biome.json b/packages/openapi-typescript/biome.json
index 1c954280d..cd15331eb 100644
--- a/packages/openapi-typescript/biome.json
+++ b/packages/openapi-typescript/biome.json
@@ -1,5 +1,5 @@
{
- "$schema": "https://biomejs.dev/schemas/1.7.0/schema.json",
+ "$schema": "https://biomejs.dev/schemas/1.8.1/schema.json",
"extends": ["../../biome.json"],
"files": {
"include": ["./bin/", "./src/", "./test/"],
diff --git a/packages/openapi-typescript/examples/digital-ocean-api.ts b/packages/openapi-typescript/examples/digital-ocean-api.ts
index c2b5cc948..248b0a0f0 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api.ts
+++ b/packages/openapi-typescript/examples/digital-ocean-api.ts
@@ -373,7 +373,11 @@ export interface paths {
};
/**
* List App Tiers
+ * @deprecated
* @description List all app tiers.
+ * This endpoint has been deprecated because app tiers are not tied to instance sizes anymore.
+ * The concept of tiers will be retired in the future.
+ *
*/
get: operations["apps_list_tiers"];
put?: never;
@@ -393,7 +397,11 @@ export interface paths {
};
/**
* Retrieve an App Tier
+ * @deprecated
* @description Retrieve information about a specific app tier.
+ * This endpoint has been deprecated because app tiers are not tied to instance sizes anymore.
+ * The concept of tiers will be retired in the future.
+ *
*/
get: operations["apps_get_tier"];
put?: never;
@@ -962,6 +970,7 @@ export interface paths {
* List Database Options
* @description To list all of the options available for the offered database engines, send a GET request to `/v2/databases/options`.
* The result will be a JSON object with an `options` key.
+ * OpenSearch is in closed beta. To request access, [contact support](https://cloudsupport.digitalocean.com).
*/
get: operations["databases_list_options"];
put?: never;
@@ -1000,6 +1009,7 @@ export interface paths {
*
* DigitalOcean managed PostgreSQL and MySQL database clusters take automated daily backups. To create a new database cluster based on a backup of an existing cluster, send a POST request to `/v2/databases`. In addition to the standard database cluster attributes, the JSON body must include a key named `backup_restore` with the name of the original database cluster and the timestamp of the backup to be restored. Creating a database from a backup is the same as forking a database in the control panel.
* Note: Backups are not supported for Redis clusters.
+ * OpenSearch is in closed beta. To request access, [contact support](https://cloudsupport.digitalocean.com).
*/
post: operations["databases_create_cluster"];
delete?: never;
@@ -5936,6 +5946,34 @@ export interface components {
*/
token?: string;
};
+ /** @description Configure Username and/or Password for Basic authentication. */
+ app_log_destination_open_search_spec_basic_auth: {
+ /**
+ * @description Username to authenticate with.
+ * @example apps_user
+ */
+ user: string;
+ /**
+ * @description Password for user defined in User.
+ * @example password1
+ */
+ password: string;
+ };
+ /** @description OpenSearch configuration. */
+ app_log_destination_open_search_spec: {
+ /**
+ * @description OpenSearch API Endpoint. Only HTTPS is supported. Format: `https://:`.
+ * @example https://example.com:9300
+ */
+ endpoint: string;
+ basic_auth?: components["schemas"]["app_log_destination_open_search_spec_basic_auth"];
+ /**
+ * @description The index name to use for the logs. If not set, the default index name is "logs".
+ * @default logs
+ * @example logs
+ */
+ index_name: string;
+ };
/** Configurations for external logging. */
app_log_destination_definition: {
/** @example my_log_destination */
@@ -5943,6 +5981,7 @@ export interface components {
papertrail?: components["schemas"]["app_log_destination_papertrail_spec"];
datadog?: components["schemas"]["app_log_destination_datadog_spec"];
logtail?: components["schemas"]["app_log_destination_logtail_spec"];
+ open_search?: components["schemas"]["app_log_destination_open_search_spec"];
};
app_component_base: {
/**
@@ -5992,12 +6031,12 @@ export interface components {
*/
instance_count: number;
/**
- * @description The instance size to use for this component. Default: `basic-xxs`
- * @default basic-xxs
- * @example basic-xxs
+ * @description The instance size to use for this component. Default: `apps-s-1vcpu-0.5gb`
+ * @default apps-s-1vcpu-0.5gb
+ * @example apps-s-1vcpu-0.5gb
* @enum {string}
*/
- instance_size_slug: "basic-xxs" | "basic-xs" | "basic-s" | "basic-m" | "professional-xs" | "professional-s" | "professional-m" | "professional-1l" | "professional-l" | "professional-xl";
+ instance_size_slug: "apps-s-1vcpu-0.5gb" | "apps-s-1vcpu-1gb-fixed" | "apps-s-1vcpu-1gb" | "apps-s-1vcpu-2gb" | "apps-s-2vcpu-4gb" | "apps-d-1vcpu-0.5gb" | "apps-d-1vcpu-1gb" | "apps-d-1vcpu-2gb" | "apps-d-1vcpu-4gb" | "apps-d-2vcpu-4gb" | "apps-d-2vcpu-8gb" | "apps-d-4vcpu-8gb" | "apps-d-4vcpu-16gb" | "apps-d-8vcpu-32gb";
/** @description Configuration for automatically scaling this component based on metrics. */
autoscaling?: {
/**
@@ -6152,6 +6191,20 @@ export interface components {
*/
preserve_path_prefix?: boolean;
};
+ app_service_spec_termination: {
+ /**
+ * Format: int32
+ * @description The number of seconds to wait between selecting a container instance for termination and issuing the TERM signal. Selecting a container instance for termination begins an asynchronous drain of new requests on upstream load-balancers. (Default 15)
+ * @example 15
+ */
+ drain_seconds?: number;
+ /**
+ * Format: int32
+ * @description The number of seconds to wait between sending a TERM signal to a container and issuing a KILL which causes immediate shutdown. (Default 120)
+ * @example 120
+ */
+ grace_period_seconds?: number;
+ };
app_service_spec: components["schemas"]["app_component_base"] & components["schemas"]["app_component_instance_base"] & {
cors?: components["schemas"]["apps_cors_policy"] & unknown & unknown;
health_check?: components["schemas"]["app_service_spec_health_check"];
@@ -6175,6 +6228,7 @@ export interface components {
* @description (Deprecated - Use Ingress Rules instead). A list of HTTP routes that should be routed to this component.
*/
routes?: components["schemas"]["app_route_spec"][];
+ termination?: components["schemas"]["app_service_spec_termination"];
};
app_static_site_spec: WithRequired & {
/**
@@ -6206,6 +6260,14 @@ export interface components {
*/
routes?: components["schemas"]["app_route_spec"][];
};
+ app_job_spec_termination: {
+ /**
+ * Format: int32
+ * @description The number of seconds to wait between sending a TERM signal to a container and issuing a KILL which causes immediate shutdown. (Default 120)
+ * @example 120
+ */
+ grace_period_seconds?: number;
+ };
app_job_spec: components["schemas"]["app_component_base"] & components["schemas"]["app_component_instance_base"] & {
/**
* @description - UNSPECIFIED: Default job type, will auto-complete to POST_DEPLOY kind.
@@ -6217,8 +6279,19 @@ export interface components {
* @enum {string}
*/
kind: "UNSPECIFIED" | "PRE_DEPLOY" | "POST_DEPLOY" | "FAILED_DEPLOY";
+ termination?: components["schemas"]["app_job_spec_termination"];
+ };
+ app_worker_spec_termination: {
+ /**
+ * Format: int32
+ * @description The number of seconds to wait between sending a TERM signal to a container and issuing a KILL which causes immediate shutdown. (Default 120)
+ * @example 120
+ */
+ grace_period_seconds?: number;
+ };
+ app_worker_spec: WithRequired & components["schemas"]["app_component_instance_base"] & {
+ termination?: components["schemas"]["app_worker_spec_termination"];
};
- app_worker_spec: WithRequired & components["schemas"]["app_component_instance_base"];
/**
* @default UNSPECIFIED_RULE
* @example CPU_UTILIZATION
@@ -6298,11 +6371,13 @@ export interface components {
* @description - MYSQL: MySQL
* - PG: PostgreSQL
* - REDIS: Redis
+ * - MONGODB: MongoDB
+ * - KAFKA: Kafka
* @default UNSET
* @example PG
* @enum {string}
*/
- engine: "UNSET" | "MYSQL" | "PG" | "REDIS";
+ engine: "UNSET" | "MYSQL" | "PG" | "REDIS" | "MONGODB" | "KAFKA";
/**
* @description The name. Must be unique across all components within the same app.
* @example prod-db
@@ -6390,6 +6465,17 @@ export interface components {
/** @description Rules for configuring HTTP ingress for component routes, CORS, rewrites, and redirects. */
rules?: components["schemas"]["app_ingress_spec_rule"][];
};
+ /**
+ * The app egress type.
+ * @default AUTOASSIGN
+ * @example AUTOASSIGN
+ * @enum {string}
+ */
+ app_egress_type_spec: "AUTOASSIGN" | "DEDICATED_IP";
+ /** @description Specification for app egress configurations. */
+ app_egress_spec: {
+ type?: components["schemas"]["app_egress_type_spec"];
+ };
/**
* AppSpec
* @description The desired configuration of an application.
@@ -6422,6 +6508,7 @@ export interface components {
* application. */
databases?: components["schemas"]["app_database_spec"][];
ingress?: components["schemas"]["app_ingress_spec"];
+ egress?: components["schemas"]["app_egress_spec"];
};
apps_deployment_static_site: {
/**
@@ -6588,6 +6675,26 @@ export interface components {
*/
readonly slug?: string;
};
+ /**
+ * The status of the dedicated egress IP.
+ * @default UNKNOWN
+ * @example ASSIGNED
+ * @enum {string}
+ */
+ apps_dedicated_egress_ip_status: "UNKNOWN" | "ASSIGNING" | "ASSIGNED" | "REMOVED";
+ apps_dedicated_egress_ip: {
+ /**
+ * The IP address of the dedicated egress IP.
+ * @example 192.168.1.1
+ */
+ ip?: string;
+ /**
+ * The ID of the dedicated egress IP.
+ * @example 9e7bc2ac-205a-45d6-919c-e1ac5e73f962
+ */
+ id?: string;
+ status?: components["schemas"]["apps_dedicated_egress_ip_status"];
+ };
/** @description An application's configuration and status. */
app: {
active_deployment?: components["schemas"]["apps_deployment"];
@@ -6656,6 +6763,8 @@ export interface components {
*/
readonly updated_at?: string;
pinned_deployment?: unknown & components["schemas"]["apps_deployment"];
+ /** The dedicated egress IP addresses associated with the app. */
+ readonly dedicated_ips?: components["schemas"]["apps_dedicated_egress_ip"][];
};
apps_response: {
/** A list of apps */
@@ -6747,6 +6856,12 @@ export interface components {
*/
instance_size_cpu_type: "UNSPECIFIED" | "SHARED" | "DEDICATED";
apps_instance_size: {
+ /**
+ * The bandwidth allowance in GiB for the instance size
+ * Format: int64
+ * @example 1
+ */
+ bandwidth_allowance_gib?: string;
cpu_type?: components["schemas"]["instance_size_cpu_type"];
/**
* The number of allotted vCPU cores
@@ -6754,6 +6869,11 @@ export interface components {
* @example 3
*/
cpus?: string;
+ /**
+ * Indicates if the instance size is intended for deprecation
+ * @example true
+ */
+ deprecation_intent?: boolean;
/**
* The allotted memory in bytes
* Format: int64
@@ -6765,9 +6885,19 @@ export interface components {
* @example name
*/
name?: string;
+ /**
+ * Indicates if the instance size can enable autoscaling
+ * @example false
+ */
+ scalable?: boolean;
+ /**
+ * Indicates if the instance size allows more than one instance
+ * @example true
+ */
+ single_instance_only?: boolean;
/**
* The slug of the instance size
- * @example basic
+ * @example apps-s-1vcpu-1gb
*/
slug?: string;
/**
@@ -6844,7 +6974,7 @@ export interface components {
spec?: components["schemas"]["app_spec"];
/**
* Format: int32
- * @description The monthly cost of the proposed app in USD using the next pricing plan tier. For example, if you propose an app that uses the Basic tier, the `app_tier_upgrade_cost` field displays the monthly cost of the app if it were to use the Professional tier. If the proposed app already uses the most expensive tier, the field is empty.
+ * @description The monthly cost of the proposed app in USD.
* @example 5
*/
app_cost?: number;
@@ -7957,7 +8087,7 @@ export interface components {
*/
name: string;
/**
- * @description A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Redis, "mongodb" for MongoDB, "kafka" for Kafka and "opensearch" for Opensearch.
+ * @description A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Redis, "mongodb" for MongoDB, "kafka" for Kafka and "opensearch" for OpenSearch. OpenSearch is in closed beta. To request access, [contact support](https://cloudsupport.digitalocean.com).
* @example mysql
* @enum {string}
*/
@@ -15258,7 +15388,7 @@ export interface components {
slug_tier: string;
/**
* @description The slug of the instance size
- * @example basic-xxs
+ * @example apps-s-1vcpu-0.5gb
*/
slug_size: string;
/**
@@ -15937,14 +16067,17 @@ export interface operations {
* "run_command": "bin/api",
* "environment_slug": "node-js",
* "instance_count": 2,
- * "instance_size_slug": "basic-xxs",
+ * "instance_size_slug": "apps-s-1vcpu-0.5gb",
* "routes": [
* {
* "path": "/api"
* }
* ]
* }
- * ]
+ * ],
+ * "egress": {
+ * "type": "DEDICATED_IP"
+ * }
* }
* } */
"application/json": components["schemas"]["apps_create_app_request"];
@@ -16408,7 +16541,7 @@ export interface operations {
path: {
/**
* @description The slug of the instance size
- * @example basic-xxs
+ * @example apps-s-1vcpu-0.5gb
*/
slug: components["parameters"]["slug_size"];
};
@@ -16464,7 +16597,7 @@ export interface operations {
* "run_command": "bin/api",
* "environment_slug": "node-js",
* "instance_count": 2,
- * "instance_size_slug": "basic-xxs",
+ * "instance_size_slug": "apps-s-1vcpu-0.5gb",
* "routes": [
* {
* "path": "/api"
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/description.yml b/packages/openapi-typescript/examples/digital-ocean-api/description.yml
index 72b46515f..ab35c817a 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/description.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/description.yml
@@ -24,7 +24,7 @@ introduction: |
|GET|For simple retrieval of information about your account, Droplets, or environment, you should use the GET method. The information you request will be returned to you as a JSON object. The attributes defined by the JSON object can be used to form additional requests. Any request using the GET method is read-only and will not affect any of the objects you are querying.|
|DELETE|To destroy a resource and remove it from your account and environment, the DELETE method should be used. This will remove the specified object if it is found. If it is not found, the operation will return a response indicating that the object was not found. This idempotency means that you do not have to check for a resource's availability prior to issuing a delete command, the final state will be the same regardless of its existence.|
|PUT|To update the information about a resource in your account, the PUT method is available. Like the DELETE Method, the PUT method is idempotent. It sets the state of the target using the provided values, regardless of their current values. Requests using the PUT method do not need to check the current attributes of the object.|
- |PATCH|Some resources support partial modification. In these cases, the PATCH method is available. Unlike PUT which generally requires a complete representation of a resource, a PATCH request is is a set of instructions on how to modify a resource updating only specific attributes.|
+ |PATCH|Some resources support partial modification. In these cases, the PATCH method is available. Unlike PUT which generally requires a complete representation of a resource, a PATCH request is a set of instructions on how to modify a resource updating only specific attributes.|
|POST|To create a new object, your request should specify the POST method. The POST request includes all of the attributes necessary to create a new object. When you wish to create a new object, send a POST request to the target endpoint.|
|HEAD|Finally, to retrieve metadata information, you should use the HEAD method to get the headers. This returns only the header of what would be returned with an associated GET request. Response headers contain some useful information about your API access and the results that are available for your request. For instance, the headers contain your current rate-limit value and the amount of time available until the limit resets. It also contains metrics about the total number of objects found, pagination information, and the total content length.|
@@ -93,7 +93,7 @@ introduction: |
### Response for a Single Object
- ```
+ ```json
{
"droplet": {
"name": "example.com"
@@ -104,7 +104,7 @@ introduction: |
### Response for an Object Collection
- ```
+ ```json
{
"droplets": [
{
@@ -135,7 +135,7 @@ introduction: |
### Sample Meta Object
- ```
+ ```json
{
. . .
"meta": {
@@ -175,7 +175,7 @@ introduction: |
### Sample Links Object
- ```
+ ```json
{
. . .
"links": {
@@ -233,7 +233,7 @@ introduction: |
`ratelimit-remaining` reaching zero can also indicate that the "burst limit" of 250
requests per minute limit was met, even if the 5,000 requests per hour limit was not.
- In this case, the 429 error response will include a retry-after header to indicate how
+ In this case, the 429 error response will include a `retry-after` header to indicate how
long to wait (in seconds) until the request may be retried.
You can see the format of the response in the examples.
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_create.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_create.yml
index 3710e803f..9a2e90e57 100755
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_create.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_create.yml
@@ -31,9 +31,11 @@ requestBody:
run_command: bin/api
environment_slug: node-js
instance_count: 2
- instance_size_slug: basic-xxs
+ instance_size_slug: apps-s-1vcpu-0.5gb
routes:
- path: /api
+ egress:
+ type: DEDICATED_IP
required: true
responses:
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_get_tier.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_get_tier.yml
index bc681224d..587121cc0 100755
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_get_tier.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_get_tier.yml
@@ -1,8 +1,13 @@
operationId: apps_get_tier
+deprecated: true
+
summary: Retrieve an App Tier
-description: Retrieve information about a specific app tier.
+description: |
+ Retrieve information about a specific app tier.
+ This endpoint has been deprecated because app tiers are not tied to instance sizes anymore.
+ The concept of tiers will be retired in the future.
tags:
- Apps
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_list_tiers.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_list_tiers.yml
index d52113699..bb1a60a0b 100755
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_list_tiers.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_list_tiers.yml
@@ -1,8 +1,13 @@
operationId: apps_list_tiers
+deprecated: true
+
summary: List App Tiers
-description: List all app tiers.
+description: |
+ List all app tiers.
+ This endpoint has been deprecated because app tiers are not tied to instance sizes anymore.
+ The concept of tiers will be retired in the future.
tags:
- Apps
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_toggle_database_trusted_source.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_toggle_database_trusted_source.yml
new file mode 100644
index 000000000..cec3b2533
--- /dev/null
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_toggle_database_trusted_source.yml
@@ -0,0 +1,48 @@
+operationId: apps_toggle_database_trusted_source
+
+summary: Toggle Database Trusted Source
+
+description: Toggles the trusted source status of a database component for a given app.
+
+tags:
+ - Apps
+
+parameters:
+ - $ref: parameters.yml#/app_id
+
+requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: models/toggle_database_trusted_source_request.yml
+ required: true
+
+responses:
+ "200":
+ $ref: responses/toggle_database_trusted_source.yml
+
+ "400":
+ $ref: ../../shared/responses/bad_request.yml
+
+ "401":
+ $ref: ../../shared/responses/unauthorized.yml
+
+ "404":
+ $ref: '../../shared/responses/not_found.yml'
+
+ "429":
+ $ref: "../../shared/responses/too_many_requests.yml"
+
+ "500":
+ $ref: ../../shared/responses/server_error.yml
+
+ default:
+ $ref: ../../shared/responses/unexpected_error.yml
+
+x-codeSamples:
+ - $ref: 'examples/curl/apps_toggle_database_trusted_source.yml'
+ - $ref: 'examples/python/apps_toggle_database_trusted_source.yml'
+
+security:
+ - bearer_auth:
+ - 'app:update'
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_validate_appSpec.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_validate_appSpec.yml
index b66c54608..b0ab64e6a 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_validate_appSpec.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/apps_validate_appSpec.yml
@@ -29,7 +29,7 @@ requestBody:
run_command: bin/api
environment_slug: node-js
instance_count: 2
- instance_size_slug: basic-xxs
+ instance_size_slug: apps-s-1vcpu-0.5gb
routes:
- path: /api
app_id: b6bdf840-2854-4f87-a36c-5f231c617c84
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/curl/apps_create.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/curl/apps_create.yml
index 62a16a158..803d811fc 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/curl/apps_create.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/curl/apps_create.yml
@@ -8,5 +8,5 @@ source: |-
"services":[{"name":"api","github":{"branch":"main",\
"deploy_on_push":true,"repo":"digitalocean/sample-golang"}, \
"run_command":"bin/api","environment_slug":"node-js", \
- "instance_count":2,"instance_size_slug":"basic-xxs", \
+ "instance_count":2,"instance_size_slug":"apps-s-1vcpu-0.5gb", \
"routes":[{"path":"/api"}]}]}}'
\ No newline at end of file
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/curl/apps_toggle_database_trusted_source.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/curl/apps_toggle_database_trusted_source.yml
new file mode 100644
index 000000000..a19139f3a
--- /dev/null
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/curl/apps_toggle_database_trusted_source.yml
@@ -0,0 +1,6 @@
+lang: Curl
+source: |-
+ curl -X POST https://api.digitalocean.com/v2/apps/{app_id}/components/{component_name}/trusted_sources \
+ -H "Content-Type: application/json" \
+ -H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
+ -d '{ "enable": true }'
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_create.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_create.yml
index a1922ee8b..46ebe0f45 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_create.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_create.yml
@@ -17,7 +17,7 @@ source: |-
"run_command": "bin/api",
"environment_slug": "node-js",
"instance_count": 2,
- "instance_size_slug": "basic-xxs",
+ "instance_size_slug": "apps-s-1vcpu-0.5gb",
"routes": [],
}
],
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_get_instanceSize.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_get_instanceSize.yml
index fc0a037bc..e62fef450 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_get_instanceSize.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_get_instanceSize.yml
@@ -5,4 +5,4 @@ source: |-
client = Client(token=os.environ.get("DIGITALOCEAN_TOKEN"))
- get_resp = client.apps.get_instance_size(slug="basic-xxs")
\ No newline at end of file
+ get_resp = client.apps.get_instance_size(slug="apps-s-1vcpu-0.5gb")
\ No newline at end of file
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_toggle_database_trusted_source.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_toggle_database_trusted_source.yml
new file mode 100644
index 000000000..73b81f34e
--- /dev/null
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_toggle_database_trusted_source.yml
@@ -0,0 +1,17 @@
+lang: Python
+source: |-
+ import os
+ from pydo import Client
+
+ client = Client(token=os.environ.get("DIGITALOCEAN_TOKEN"))
+
+ app_id = "123e4567-e89b-12d3-a456-426614174000"
+ component_name = "database"
+
+ req = {
+ "enable": True
+ }
+
+ toggle_resp = client.apps.toggle_database_trusted_source(app_id=app_id, component_name=component_name, body=req)
+
+ print(toggle_resp)
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_update.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_update.yml
index 0fdbbda96..42113ff07 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_update.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/examples/python/apps_update.yml
@@ -1,206 +1,230 @@
lang: Python
source: |-
- import os
- from pydo import Client
+ import os
+ from pydo import Client
- client = Client(token=os.environ.get("DIGITALOCEAN_TOKEN"))
- req = {
- "spec": {
- "name": "web-app-01",
- "region": "nyc",
- "domains": [
- {
- "domain": "app.example.com",
- "type": "DEFAULT",
- "wildcard": True,
- "zone": "example.com",
- "minimum_tls_version": "1.3",
- }
- ],
- "services": [],
- "static_sites": [
- {
- "cors": {
- "allow_origins": [
- {"exact": "https://www.example.com"},
- {"regex": "^.*example.com"},
- ],
- "allow_methods": [
- "GET",
- "OPTIONS",
- "POST",
- "PUT",
- "PATCH",
- "DELETE",
- ],
- "allow_headers": ["Content-Type", "X-Custom-Header"],
- "expose_headers": ["Content-Encoding", "X-Custom-Header"],
- "max_age": "5h30m",
- "allow_credentials": False,
- },
- "routes": [{"path": "/api", "preserve_path_prefix": True}],
- }
- ],
- "jobs": [
- {
- "name": "api",
- "gitlab": {
- "branch": "main",
- "deploy_on_push": True,
- "repo": "digitalocean/sample-golang",
- },
- "image": {
- "registry": "registry.hub.docker.com",
- "registry_type": "DOCR",
- "repository": "origin/master",
- "tag": "latest",
- },
- "dockerfile_path": "path/to/Dockerfile",
- "build_command": "npm run build",
- "run_command": "bin/api",
- "source_dir": "path/to/dir",
- "envs": [
- {
- "key": "BASE_URL",
- "scope": "BUILD_TIME",
- "type": "GENERAL",
- "value": "http://example.com",
- }
- ],
- "environment_slug": "node-js",
- "log_destinations": {
- "name": "my_log_destination",
- "papertrail": {
- "endpoint": "https://mypapertrailendpoint.com"
- },
- "datadog": {
- "endpoint": "https://mydatadogendpoint.com",
- "api_key": "abcdefghijklmnopqrstuvwxyz0123456789",
- },
- "logtail": {
- "token": "abcdefghijklmnopqrstuvwxyz0123456789"
- },
- },
- "instance_count": 2,
- "instance_size_slug": "basic-xxs",
- "kind": "PRE_DEPLOY",
- }
- ],
- "workers": [
- {
- "name": "api",
- "gitlab": {
- "branch": "main",
- "deploy_on_push": True,
- "repo": "digitalocean/sample-golang",
- },
- "image": {
- "registry": "registry.hub.docker.com",
- "registry_type": "DOCR",
- "repository": "origin/master",
- "tag": "latest",
- },
- "dockerfile_path": "path/to/Dockerfile",
- "build_command": "npm run build",
- "run_command": "bin/api",
- "source_dir": "path/to/dir",
- "envs": [
- {
- "key": "BASE_URL",
- "scope": "BUILD_TIME",
- "type": "GENERAL",
- "value": "http://example.com",
- }
- ],
- "environment_slug": "node-js",
- "log_destinations": {
- "name": "my_log_destination",
- "papertrail": {
- "endpoint": "https://mypapertrailendpoint.com"
- },
- "datadog": {
- "endpoint": "https://mydatadogendpoint.com",
- "api_key": "abcdefghijklmnopqrstuvwxyz0123456789",
- },
- "logtail": {
- "token": "abcdefghijklmnopqrstuvwxyz0123456789"
- },
- },
- "instance_count": 2,
- "instance_size_slug": "basic-xxs",
- }
- ],
- "functions": [
- {
- "cors": {
- "allow_origins": [
- {"exact": "https://www.example.com"},
- {"regex": "^.*example.com"},
- ],
- "allow_methods": [
- "GET",
- "OPTIONS",
- "POST",
- "PUT",
- "PATCH",
- "DELETE",
- ],
- "allow_headers": ["Content-Type", "X-Custom-Header"],
- "expose_headers": ["Content-Encoding", "X-Custom-Header"],
- "max_age": "5h30m",
- "allow_credentials": False,
- },
- "routes": [{"path": "/api", "preserve_path_prefix": True}],
- "name": "api",
- "source_dir": "path/to/dir",
- "alerts": [
- {
- "rule": "CPU_UTILIZATION",
- "disabled": False,
- "operator": "GREATER_THAN",
- "value": 2.32,
- "window": "FIVE_MINUTES",
- }
- ],
- "envs": [
- {
- "key": "BASE_URL",
- "scope": "BUILD_TIME",
- "type": "GENERAL",
- "value": "http://example.com",
- }
- ],
- "gitlab": {
- "branch": "main",
- "deploy_on_push": True,
- "repo": "digitalocean/sample-golang",
- },
- "log_destinations": {
- "name": "my_log_destination",
- "papertrail": {
- "endpoint": "https://mypapertrailendpoint.com"
- },
- "datadog": {
- "endpoint": "https://mydatadogendpoint.com",
- "api_key": "abcdefghijklmnopqrstuvwxyz0123456789",
- },
- "logtail": {
- "token": "abcdefghijklmnopqrstuvwxyz0123456789"
- },
- },
- }
- ],
- "databases": [
- {
- "cluster_name": "cluster_name",
- "db_name": "my_db",
- "db_user": "superuser",
- "engine": "PG",
- "name": "prod-db",
- "production": True,
- "version": "12",
- }
- ],
- }
- }
- update_resp = client.apps.update(id="bb245ba", body=req)
+ client = Client(token=os.environ.get("DIGITALOCEAN_TOKEN"))
+ req = {
+ "spec": {
+ "name": "web-app-01",
+ "region": "nyc",
+ "domains": [
+ {
+ "domain": "app.example.com",
+ "type": "DEFAULT",
+ "wildcard": True,
+ "zone": "example.com",
+ "minimum_tls_version": "1.3",
+ }
+ ],
+ "services": [],
+ "static_sites": [
+ {
+ "cors": {
+ "allow_origins": [
+ {"exact": "https://www.example.com"},
+ {"regex": "^.*example.com"},
+ ],
+ "allow_methods": [
+ "GET",
+ "OPTIONS",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ ],
+ "allow_headers": ["Content-Type", "X-Custom-Header"],
+ "expose_headers": ["Content-Encoding", "X-Custom-Header"],
+ "max_age": "5h30m",
+ "allow_credentials": False,
+ },
+ "routes": [{"path": "/api", "preserve_path_prefix": True}],
+ }
+ ],
+ "jobs": [
+ {
+ "name": "api",
+ "gitlab": {
+ "branch": "main",
+ "deploy_on_push": True,
+ "repo": "digitalocean/sample-golang",
+ },
+ "image": {
+ "registry": "registry.hub.docker.com",
+ "registry_type": "DOCR",
+ "repository": "origin/master",
+ "tag": "latest",
+ },
+ "dockerfile_path": "path/to/Dockerfile",
+ "build_command": "npm run build",
+ "run_command": "bin/api",
+ "source_dir": "path/to/dir",
+ "envs": [
+ {
+ "key": "BASE_URL",
+ "scope": "BUILD_TIME",
+ "type": "GENERAL",
+ "value": "http://example.com",
+ }
+ ],
+ "environment_slug": "node-js",
+ "log_destinations": {
+ "name": "my_log_destination",
+ "papertrail": {
+ "endpoint": "https://mypapertrailendpoint.com"
+ },
+ "datadog": {
+ "endpoint": "https://mydatadogendpoint.com",
+ "api_key": "abcdefghijklmnopqrstuvwxyz0123456789",
+ },
+ "logtail": {
+ "token": "abcdefghijklmnopqrstuvwxyz0123456789"
+ },
+ "open_search": {
+ "endpoint": "myopensearchendpoint.com:9300"
+ "index_name": "logs"
+ "basic_auth": {
+ "user": "doadmin",
+ "password": "password"
+ }
+ },
+ },
+ "instance_count": 2,
+ "instance_size_slug": "apps-s-1vcpu-0.5gb",
+ "kind": "PRE_DEPLOY",
+ }
+ ],
+ "workers": [
+ {
+ "name": "api",
+ "gitlab": {
+ "branch": "main",
+ "deploy_on_push": True,
+ "repo": "digitalocean/sample-golang",
+ },
+ "image": {
+ "registry": "registry.hub.docker.com",
+ "registry_type": "DOCR",
+ "repository": "origin/master",
+ "tag": "latest",
+ },
+ "dockerfile_path": "path/to/Dockerfile",
+ "build_command": "npm run build",
+ "run_command": "bin/api",
+ "source_dir": "path/to/dir",
+ "envs": [
+ {
+ "key": "BASE_URL",
+ "scope": "BUILD_TIME",
+ "type": "GENERAL",
+ "value": "http://example.com",
+ }
+ ],
+ "environment_slug": "node-js",
+ "log_destinations": {
+ "name": "my_log_destination",
+ "papertrail": {
+ "endpoint": "https://mypapertrailendpoint.com"
+ },
+ "datadog": {
+ "endpoint": "https://mydatadogendpoint.com",
+ "api_key": "abcdefghijklmnopqrstuvwxyz0123456789",
+ },
+ "logtail": {
+ "token": "abcdefghijklmnopqrstuvwxyz0123456789"
+ },
+ "open_search": {
+ "endpoint": "myopensearchendpoint.com:9300"
+ "index_name": "logs"
+ "basic_auth": {
+ "user": "doadmin",
+ "password": "password"
+ }
+ },
+ },
+ "instance_count": 2,
+ "instance_size_slug": "apps-s-1vcpu-0.5gb",
+ }
+ ],
+ "functions": [
+ {
+ "cors": {
+ "allow_origins": [
+ {"exact": "https://www.example.com"},
+ {"regex": "^.*example.com"},
+ ],
+ "allow_methods": [
+ "GET",
+ "OPTIONS",
+ "POST",
+ "PUT",
+ "PATCH",
+ "DELETE",
+ ],
+ "allow_headers": ["Content-Type", "X-Custom-Header"],
+ "expose_headers": ["Content-Encoding", "X-Custom-Header"],
+ "max_age": "5h30m",
+ "allow_credentials": False,
+ },
+ "routes": [{"path": "/api", "preserve_path_prefix": True}],
+ "name": "api",
+ "source_dir": "path/to/dir",
+ "alerts": [
+ {
+ "rule": "CPU_UTILIZATION",
+ "disabled": False,
+ "operator": "GREATER_THAN",
+ "value": 2.32,
+ "window": "FIVE_MINUTES",
+ }
+ ],
+ "envs": [
+ {
+ "key": "BASE_URL",
+ "scope": "BUILD_TIME",
+ "type": "GENERAL",
+ "value": "http://example.com",
+ }
+ ],
+ "gitlab": {
+ "branch": "main",
+ "deploy_on_push": True,
+ "repo": "digitalocean/sample-golang",
+ },
+ "log_destinations": {
+ "name": "my_log_destination",
+ "papertrail": {
+ "endpoint": "https://mypapertrailendpoint.com"
+ },
+ "datadog": {
+ "endpoint": "https://mydatadogendpoint.com",
+ "api_key": "abcdefghijklmnopqrstuvwxyz0123456789",
+ },
+ "logtail": {
+ "token": "abcdefghijklmnopqrstuvwxyz0123456789"
+ },
+ "open_search": {
+ "endpoint": "https://myopensearchendpoint.com:9300"
+ "index_name": "logs"
+ "basic_auth": {
+ "user": "doadmin",
+ "password": "password"
+ }
+ },
+ },
+ }
+ ],
+ "databases": [
+ {
+ "cluster_name": "cluster_name",
+ "db_name": "my_db",
+ "db_user": "superuser",
+ "engine": "PG",
+ "name": "prod-db",
+ "production": True,
+ "version": "12",
+ }
+ ],
+ }
+ }
+ update_resp = client.apps.update(id="bb245ba", body=req)
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app.yml
index 925b55a2a..d08ab726b 100755
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app.yml
@@ -80,6 +80,12 @@ properties:
allOf:
- description: The deployment that the app is pinned to.
- $ref: apps_deployment.yml
+ dedicated_ips:
+ readOnly: true
+ title: The dedicated egress IP addresses associated with the app.
+ type: array
+ items:
+ $ref: apps_dedicated_egress_ip.yml
required:
- spec
type: object
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_component_instance_base.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_component_instance_base.yml
index 6779982bf..b882c0f89 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_component_instance_base.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_component_instance_base.yml
@@ -10,21 +10,25 @@ properties:
example: 2
instance_size_slug:
- description: 'The instance size to use for this component. Default: `basic-xxs`'
+ description: 'The instance size to use for this component. Default: `apps-s-1vcpu-0.5gb`'
type: string
enum:
- - basic-xxs
- - basic-xs
- - basic-s
- - basic-m
- - professional-xs
- - professional-s
- - professional-m
- - professional-1l
- - professional-l
- - professional-xl
- default: basic-xxs
- example: basic-xxs
+ - apps-s-1vcpu-0.5gb
+ - apps-s-1vcpu-1gb-fixed
+ - apps-s-1vcpu-1gb
+ - apps-s-1vcpu-2gb
+ - apps-s-2vcpu-4gb
+ - apps-d-1vcpu-0.5gb
+ - apps-d-1vcpu-1gb
+ - apps-d-1vcpu-2gb
+ - apps-d-1vcpu-4gb
+ - apps-d-2vcpu-4gb
+ - apps-d-2vcpu-8gb
+ - apps-d-4vcpu-8gb
+ - apps-d-4vcpu-16gb
+ - apps-d-8vcpu-32gb
+ default: apps-s-1vcpu-0.5gb
+ example: apps-s-1vcpu-0.5gb
autoscaling:
description: Configuration for automatically scaling this component based on metrics.
@@ -57,4 +61,4 @@ properties:
minimum: 1
maximum: 100
default: 80
- example: 75
+ example: 75
\ No newline at end of file
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_database_spec.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_database_spec.yml
index 35be32e7a..123ae15eb 100755
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_database_spec.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_database_spec.yml
@@ -25,10 +25,14 @@ properties:
- MYSQL
- PG
- REDIS
+ - MONGODB
+ - KAFKA
description: |-
- MYSQL: MySQL
- PG: PostgreSQL
- REDIS: Redis
+ - MONGODB: MongoDB
+ - KAFKA: Kafka
example: PG
name:
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_egress_spec.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_egress_spec.yml
new file mode 100644
index 000000000..d2b7a8f73
--- /dev/null
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_egress_spec.yml
@@ -0,0 +1,5 @@
+type: object
+description: Specification for app egress configurations.
+properties:
+ type:
+ $ref: app_egress_type_spec.yml
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_egress_type_spec.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_egress_type_spec.yml
new file mode 100644
index 000000000..098b31494
--- /dev/null
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_egress_type_spec.yml
@@ -0,0 +1,7 @@
+title: The app egress type.
+type: string
+default: AUTOASSIGN
+example: AUTOASSIGN
+enum:
+ - AUTOASSIGN
+ - DEDICATED_IP
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_job_spec.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_job_spec.yml
index 223e0866c..c47ad17f4 100755
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_job_spec.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_job_spec.yml
@@ -18,6 +18,7 @@ allOf:
- FAILED_DEPLOY: Indicates a job that runs after a component fails to deploy.
default: UNSPECIFIED
example: PRE_DEPLOY
-
+ termination:
+ $ref: app_job_spec_termination.yml
required:
- name
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_job_spec_termination.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_job_spec_termination.yml
new file mode 100755
index 000000000..446e247b1
--- /dev/null
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_job_spec_termination.yml
@@ -0,0 +1,10 @@
+type: object
+properties:
+ grace_period_seconds:
+ type: integer
+ format: int32
+ description: The number of seconds to wait between sending a TERM signal to a container and issuing
+ a KILL which causes immediate shutdown. (Default 120)
+ example: 120
+ maximum: 600
+ minimum: 1
\ No newline at end of file
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_log_destination_definition.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_log_destination_definition.yml
index 2528d1035..619ffc0b3 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_log_destination_definition.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_log_destination_definition.yml
@@ -14,6 +14,8 @@ properties:
$ref: app_log_destination_datadog_spec.yml
logtail:
$ref: app_log_destination_logtail_spec.yml
+ open_search:
+ $ref: app_log_destination_open_search_spec.yml
title: Configurations for external logging.
required:
- name
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_log_destination_open_search_spec.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_log_destination_open_search_spec.yml
new file mode 100644
index 000000000..b6b6107a7
--- /dev/null
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_log_destination_open_search_spec.yml
@@ -0,0 +1,19 @@
+type: object
+properties:
+ endpoint:
+ type: string
+ description: >-
+ OpenSearch API Endpoint. Only HTTPS is supported. Format: `https://:`.
+ example: "https://example.com:9300"
+ basic_auth:
+ $ref: app_log_destination_open_search_spec_basic_auth.yml
+ index_name:
+ type: string
+ default: logs
+ description: >-
+ The index name to use for the logs. If not set, the default index name
+ is "logs".
+ example: logs
+description: OpenSearch configuration.
+required:
+ - endpoint
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_log_destination_open_search_spec_basic_auth.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_log_destination_open_search_spec_basic_auth.yml
new file mode 100644
index 000000000..aab35bdcd
--- /dev/null
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_log_destination_open_search_spec_basic_auth.yml
@@ -0,0 +1,14 @@
+type: object
+properties:
+ user:
+ type: string
+ description: Username to authenticate with.
+ example: apps_user
+ password:
+ type: string
+ description: Password for user defined in User.
+ example: password1
+description: Configure Username and/or Password for Basic authentication.
+required:
+ - user
+ - password
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_propose_response.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_propose_response.yml
index c4ab49f67..749286392 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_propose_response.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_propose_response.yml
@@ -28,11 +28,7 @@ properties:
app_cost:
type: integer
format: int32
- description: The monthly cost of the proposed app in USD using the next
- pricing plan tier. For example, if you propose an app that uses the Basic
- tier, the `app_tier_upgrade_cost` field displays the monthly cost of the
- app if it were to use the Professional tier. If the proposed app already
- uses the most expensive tier, the field is empty.
+ description: The monthly cost of the proposed app in USD.
example: 5
app_tier_downgrade_cost:
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_service_spec.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_service_spec.yml
index 500560967..73bb70b73 100755
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_service_spec.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_service_spec.yml
@@ -40,5 +40,8 @@ allOf:
items:
$ref: app_route_spec.yml
+ termination:
+ $ref: app_service_spec_termination.yml
+
required:
- name
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_service_spec_termination.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_service_spec_termination.yml
new file mode 100755
index 000000000..fa4a10fe9
--- /dev/null
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_service_spec_termination.yml
@@ -0,0 +1,20 @@
+type: object
+properties:
+ drain_seconds:
+ type: integer
+ format: int32
+ description: The number of seconds to wait between selecting a container instance
+ for termination and issuing the TERM signal. Selecting a container instance for
+ termination begins an asynchronous drain of new requests on upstream load-balancers. (Default 15)
+ example: 15
+ maximum: 110
+ minimum: 1
+
+ grace_period_seconds:
+ type: integer
+ format: int32
+ description: The number of seconds to wait between sending a TERM signal to a container and issuing
+ a KILL which causes immediate shutdown. (Default 120)
+ example: 120
+ maximum: 600
+ minimum: 1
\ No newline at end of file
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_spec.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_spec.yml
index 7a3226175..97675a63e 100755
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_spec.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_spec.yml
@@ -74,5 +74,8 @@ properties:
ingress:
$ref: app_ingress_spec.yml
+ egress:
+ $ref: app_egress_spec.yml
+
required:
- name
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_worker_spec.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_worker_spec.yml
index 80ef6e566..d1e554d61 100755
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_worker_spec.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_worker_spec.yml
@@ -1,6 +1,10 @@
allOf:
- $ref: app_component_base.yml
- $ref: app_component_instance_base.yml
-
+- type: object
+ properties:
+ termination:
+ $ref: app_worker_spec_termination.yml
required:
- name
+
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_worker_spec_termination.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_worker_spec_termination.yml
new file mode 100755
index 000000000..446e247b1
--- /dev/null
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/app_worker_spec_termination.yml
@@ -0,0 +1,10 @@
+type: object
+properties:
+ grace_period_seconds:
+ type: integer
+ format: int32
+ description: The number of seconds to wait between sending a TERM signal to a container and issuing
+ a KILL which causes immediate shutdown. (Default 120)
+ example: 120
+ maximum: 600
+ minimum: 1
\ No newline at end of file
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/apps_dedicated_egress_ip.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/apps_dedicated_egress_ip.yml
new file mode 100755
index 000000000..3d9a96caf
--- /dev/null
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/apps_dedicated_egress_ip.yml
@@ -0,0 +1,13 @@
+type: object
+readOnly: true
+properties:
+ ip:
+ title: The IP address of the dedicated egress IP.
+ type: string
+ example: 192.168.1.1
+ id:
+ title: The ID of the dedicated egress IP.
+ type: string
+ example: 9e7bc2ac-205a-45d6-919c-e1ac5e73f962
+ status:
+ $ref: apps_dedicated_egress_ip_status.yml
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/apps_dedicated_egress_ip_status.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/apps_dedicated_egress_ip_status.yml
new file mode 100755
index 000000000..23282bbbd
--- /dev/null
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/apps_dedicated_egress_ip_status.yml
@@ -0,0 +1,10 @@
+title: The status of the dedicated egress IP.
+type: string
+readOnly: true
+default: UNKNOWN
+enum:
+- UNKNOWN
+- ASSIGNING
+- ASSIGNED
+- REMOVED
+example: ASSIGNED
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/apps_instance_size.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/apps_instance_size.yml
index e52e05942..f18a265f3 100755
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/apps_instance_size.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/apps_instance_size.yml
@@ -1,4 +1,9 @@
properties:
+ bandwidth_allowance_gib:
+ format: int64
+ title: The bandwidth allowance in GiB for the instance size
+ type: string
+ example: "1"
cpu_type:
$ref: instance_size_cpu_type.yml
cpus:
@@ -6,6 +11,10 @@ properties:
title: The number of allotted vCPU cores
type: string
example: "3"
+ deprecation_intent:
+ title: Indicates if the instance size is intended for deprecation
+ type: boolean
+ example: true
memory_bytes:
format: int64
title: The allotted memory in bytes
@@ -15,10 +24,18 @@ properties:
title: A human-readable name of the instance size
type: string
example: name
+ scalable:
+ title: Indicates if the instance size can enable autoscaling
+ type: boolean
+ example: false
+ single_instance_only:
+ title: Indicates if the instance size allows more than one instance
+ type: boolean
+ example: true
slug:
title: The slug of the instance size
type: string
- example: basic
+ example: apps-s-1vcpu-1gb
tier_downgrade_to:
title: The slug of the corresponding downgradable instance size on the lower tier
type: string
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/toggle_database_trusted_source_request.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/toggle_database_trusted_source_request.yml
new file mode 100644
index 000000000..506886a4f
--- /dev/null
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/models/toggle_database_trusted_source_request.yml
@@ -0,0 +1,16 @@
+type: object
+properties:
+ appId:
+ type: string
+ format: uuid
+ description: The ID of the app
+ componentName:
+ type: string
+ description: The name of the component to toggle
+ enable:
+ type: boolean
+ description: Whether to enable or disable the trusted source status
+required:
+ - appId
+ - componentName
+ - enable
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/parameters.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/parameters.yml
index 9697ded87..47be6d308 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/parameters.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/parameters.yml
@@ -64,7 +64,7 @@ slug_size:
required: true
schema:
type: string
- example: basic-xxs
+ example: apps-s-1vcpu-0.5gb
component:
description: An optional component name. If set, logs will be limited to this component
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/responses/examples.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/responses/examples.yml
index 838acf7ae..94fdccfa7 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/responses/examples.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/responses/examples.yml
@@ -12,7 +12,7 @@ apps:
branch: main
run_command: heroku-php-apache2
environment_slug: php
- instance_size_slug: basic-xxs
+ instance_size_slug: apps-s-1vcpu-0.5gb
instance_count: 1
http_port: 8080
routes:
@@ -36,7 +36,7 @@ apps:
branch: main
run_command: heroku-php-apache2
environment_slug: php
- instance_size_slug: basic-xxs
+ instance_size_slug: apps-s-1vcpu-0.5gb
instance_count: 1
http_port: 8080
routes:
@@ -65,7 +65,7 @@ apps:
branch: main
run_command: heroku-php-apache2
environment_slug: php
- instance_size_slug: basic-xxs
+ instance_size_slug: apps-s-1vcpu-0.5gb
instance_count: 1
http_port: 8080
routes:
@@ -192,6 +192,13 @@ apps:
name: configuration-alert
started_at: '2023-01-30T22:15:46.278987808Z'
status: SUCCESS
+ dedicated_ips:
+ - ip: 192.168.1.1
+ id: c24d8f48-3bc4-49f5-8ca0-58e8164427ac
+ status: ASSIGNED
+ - ip: 192.168.1.2
+ id: 4768fb15-2837-4dda-9be5-3951df4bc3d0
+ status: ASSIGNED
links:
pages: {}
meta:
@@ -212,7 +219,7 @@ app:
branch: main
run_command: bin/sample-golang
environment_slug: go
- instance_size_slug: basic-xxs
+ instance_size_slug: apps-s-1vcpu-0.5gb
instance_count: 1
http_port: 8080
routes:
@@ -236,7 +243,7 @@ app:
branch: main
run_command: bin/sample-golang
environment_slug: go
- instance_size_slug: basic-xxs
+ instance_size_slug: apps-s-1vcpu-0.5gb
instance_count: 1
http_port: 8080
routes:
@@ -320,7 +327,7 @@ app:
branch: main
run_command: heroku-php-apache2
environment_slug: php
- instance_size_slug: basic-xxs
+ instance_size_slug: apps-s-1vcpu-0.5gb
instance_count: 1
http_port: 8080
routes:
@@ -414,6 +421,13 @@ app:
name: configuration-alert
started_at: '0001-01-01T00:00:00'
status: PENDING
+ dedicated_ips:
+ - ip: 192.168.1.1
+ id: c24d8f48-3bc4-49f5-8ca0-58e8164427ac
+ status: ASSIGNED
+ - ip: 192.168.1.2
+ id: 4768fb15-2837-4dda-9be5-3951df4bc3d0
+ status: ASSIGNED
deployments:
@@ -429,7 +443,7 @@ deployments:
branch: branch
run_command: bin/sample-golang
environment_slug: go
- instance_size_slug: basic-xxs
+ instance_size_slug: apps-s-1vcpu-0.5gb
instance_count: 2
routes:
- path: "/"
@@ -500,7 +514,7 @@ deployment:
branch: branch
run_command: bin/sample-golang
environment_slug: go
- instance_size_slug: basic-xxs
+ instance_size_slug: apps-s-1vcpu-0.5gb
instance_count: 2
routes:
- path: "/"
@@ -642,109 +656,157 @@ regions:
instance_sizes:
value:
instance_sizes:
- - name: Basic XXS
- slug: basic-xxs
+ - name: Shared 1VCPU 0.5GB
+ slug: apps-s-1vcpu-0.5gb
cpu_type: SHARED
cpus: '1'
memory_bytes: '536870912'
usd_per_month: '5.00'
usd_per_second: '0.000002066799'
tier_slug: basic
- tier_upgrade_to: professional-xs
- - name: Basic XS
- slug: basic-xs
+ single_instance_only: true
+ bandwidth_allowance_gib: '50'
+ - name: Shared 1VCPU 1GB Fixed
+ slug: apps-s-1vcpu-1gb-fixed
cpu_type: SHARED
cpus: '1'
memory_bytes: '1073741824'
usd_per_month: '10.00'
usd_per_second: '0.000004133598'
tier_slug: basic
- tier_upgrade_to: professional-xs
- - name: Basic S
- slug: basic-s
- cpu_type: SHARED
- cpus: '1'
- memory_bytes: '2147483648'
- usd_per_month: '20.00'
- usd_per_second: '0.000008267196'
- tier_slug: basic
- tier_upgrade_to: professional-s
- - name: Basic M
- slug: basic-m
- cpu_type: SHARED
- cpus: '2'
- memory_bytes: '4294967296'
- usd_per_month: '40.00'
- usd_per_second: '0.000016534392'
- tier_slug: basic
- tier_upgrade_to: professional-m
- - name: Professional XS
- slug: professional-xs
+ single_instance_only: true
+ bandwidth_allowance_gib: '100'
+ - name: Shared 1VCPU 1GB
+ slug: apps-s-1vcpu-1gb
cpu_type: SHARED
cpus: '1'
memory_bytes: '1073741824'
usd_per_month: '12.00'
usd_per_second: '0.000004960317'
tier_slug: professional
- tier_downgrade_to: basic-xs
- - name: Professional S
- slug: professional-s
+ bandwidth_allowance_gib: '150'
+ - name: Shared 1VCPU 2GB
+ slug: apps-s-1vcpu-2gb
cpu_type: SHARED
cpus: '1'
memory_bytes: '2147483648'
usd_per_month: '25.00'
usd_per_second: '0.000010333995'
tier_slug: professional
- tier_downgrade_to: basic-s
- - name: Professional M
- slug: professional-m
+ bandwidth_allowance_gib: '200'
+ - name: Shared 2VCPU 4GB
+ slug: apps-s-2vcpu-4gb
cpu_type: SHARED
cpus: '2'
memory_bytes: '4294967296'
usd_per_month: '50.00'
usd_per_second: '0.000020667989'
tier_slug: professional
- tier_downgrade_to: basic-s
- - name: Professional 1L
- slug: professional-1l
+ bandwidth_allowance_gib: '250'
+ - name: Dedicated 1VCPU 0.5GB
+ slug: apps-d-1vcpu-0.5gb
+ cpu_type: DEDICATED
+ cpus: '1'
+ memory_bytes: '536870912'
+ usd_per_month: '29.00'
+ usd_per_second: '0.000011987434'
+ tier_slug: professional
+ scalable: true
+ bandwidth_allowance_gib: '100'
+ - name: Dedicated 1VCPU 1GB
+ slug: apps-d-1vcpu-1gb
+ cpu_type: DEDICATED
+ cpus: '1'
+ memory_bytes: '1073741824'
+ usd_per_month: '34.00'
+ usd_per_second: '0.000014054233'
+ tier_slug: professional
+ scalable: true
+ bandwidth_allowance_gib: '200'
+ - name: Dedicated 1VCPU 2GB
+ slug: apps-d-1vcpu-2gb
+ cpu_type: DEDICATED
+ cpus: '1'
+ memory_bytes: '2147483648'
+ usd_per_month: '39.00'
+ usd_per_second: '0.000016121032'
+ tier_slug: professional
+ scalable: true
+ bandwidth_allowance_gib: '300'
+ - name: Dedicated 1VCPU 4GB
+ slug: apps-d-1vcpu-4gb
cpu_type: DEDICATED
cpus: '1'
memory_bytes: '4294967296'
- usd_per_month: '75.00'
- usd_per_second: '0.000031001984'
+ usd_per_month: '49.00'
+ usd_per_second: '0.000020254630'
tier_slug: professional
- tier_downgrade_to: basic-m
- - name: Professional L
- slug: professional-l
+ scalable: true
+ bandwidth_allowance_gib: '400'
+ - name: Dedicated 2VCPU 4GB
+ slug: apps-d-2vcpu-4gb
+ cpu_type: DEDICATED
+ cpus: '2'
+ memory_bytes: '4294967296'
+ usd_per_month: '78.00'
+ usd_per_second: '0.000032242063'
+ tier_slug: professional
+ scalable: true
+ bandwidth_allowance_gib: '500'
+ - name: Dedicated 2VCPU 8GB
+ slug: apps-d-2vcpu-8gb
cpu_type: DEDICATED
cpus: '2'
memory_bytes: '8589934592'
- usd_per_month: '150.00'
- usd_per_second: '0.000062003968'
+ usd_per_month: '98.00'
+ usd_per_second: '0.000040509259'
tier_slug: professional
- tier_downgrade_to: basic-s
- - name: Professional XL
- slug: professional-xl
+ scalable: true
+ bandwidth_allowance_gib: '600'
+ - name: Dedicated 4VCPU 8GB
+ slug: apps-d-4vcpu-8gb
+ cpu_type: DEDICATED
+ cpus: '4'
+ memory_bytes: '8589934592'
+ usd_per_month: '156.00'
+ usd_per_second: '0.000064484127'
+ tier_slug: professional
+ scalable: true
+ bandwidth_allowance_gib: '700'
+ - name: Dedicated 4VCPU 16GB
+ slug: apps-d-4vcpu-16gb
cpu_type: DEDICATED
cpus: '4'
memory_bytes: '17179869184'
- usd_per_month: '300.00'
- usd_per_second: '0.000124007937'
+ usd_per_month: '196.00'
+ usd_per_second: '0.000081018519'
+ tier_slug: professional
+ scalable: true
+ bandwidth_allowance_gib: '800'
+ - name: Dedicated 8VCPU 32GB
+ slug: apps-d-8vcpu-32gb
+ cpu_type: DEDICATED
+ cpus: '8'
+ memory_bytes: '34359738368'
+ usd_per_month: '392.00'
+ usd_per_second: '0.000162037037'
tier_slug: professional
- tier_downgrade_to: basic-s
+ scalable: true
+ bandwidth_allowance_gib: '900'
instance_size:
value:
instance_size:
- name: Basic XXS
- slug: basic-xxs
+ name: Shared 1VCPU 0.5GB
+ slug: apps-s-1vcpu-0.5gb
cpu_type: SHARED
cpus: '1'
memory_bytes: '536870912'
usd_per_month: '5.00'
usd_per_second: '0.000002066799'
tier_slug: basic
- tier_upgrade_to: professional-xs
+ single_instance_only: true
+ bandwidth_allowance_gib: '50'
components:
value:
@@ -776,14 +838,13 @@ propose:
branch: branch
run_command: bin/sample-golang
environment_slug: go
- instance_size_slug: basic-xxs
+ instance_size_slug: apps-s-1vcpu-0.5gb
instance_count: 1
http_port: 8080
routes:
- path: "/"
region: ams
app_cost: 5
- app_tier_upgrade_cost: 17
alerts:
value:
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/responses/toggle_database_trusted_source.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/responses/toggle_database_trusted_source.yml
new file mode 100644
index 000000000..824b57f7d
--- /dev/null
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/apps/responses/toggle_database_trusted_source.yml
@@ -0,0 +1,5 @@
+type: object
+properties:
+ isEnabled:
+ type: boolean
+ description: Indicates if the trusted source status is enabled
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/databases/databases_create_cluster.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/databases/databases_create_cluster.yml
index 11868c762..8089cffac 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/databases/databases_create_cluster.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/databases/databases_create_cluster.yml
@@ -27,6 +27,8 @@ description: >-
Note: Backups are not supported for Redis clusters.
+ OpenSearch is in closed beta. To request access, [contact support](https://cloudsupport.digitalocean.com).
+
tags:
- Databases
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/databases/databases_list_options.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/databases/databases_list_options.yml
index 7be7fa908..de76a4afe 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/databases/databases_list_options.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/databases/databases_list_options.yml
@@ -8,6 +8,8 @@ description: >-
The result will be a JSON object with an `options` key.
+ OpenSearch is in closed beta. To request access, [contact support](https://cloudsupport.digitalocean.com).
+
tags:
- Databases
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/databases/models/database_cluster.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/databases/models/database_cluster.yml
index e0085dc5f..563bf5831 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/databases/models/database_cluster.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/databases/models/database_cluster.yml
@@ -24,7 +24,7 @@ properties:
description: >-
A slug representing the database engine used for the cluster. The possible values
are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Redis, "mongodb" for MongoDB,
- "kafka" for Kafka and "opensearch" for Opensearch.
+ "kafka" for Kafka and "opensearch" for OpenSearch. OpenSearch is in closed beta. To request access, [contact support](https://cloudsupport.digitalocean.com).
version:
type: string
example: '8'
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/snapshots/snapshots_get.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/snapshots/snapshots_get.yml
index 2655860e0..ec0572fac 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/snapshots/snapshots_get.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/snapshots/snapshots_get.yml
@@ -45,5 +45,4 @@ x-codeSamples:
security:
- bearer_auth:
- - 'image:read'
- 'snapshot:read'
diff --git a/packages/openapi-typescript/examples/digital-ocean-api/resources/snapshots/snapshots_list.yml b/packages/openapi-typescript/examples/digital-ocean-api/resources/snapshots/snapshots_list.yml
index f343466c0..d69e1f736 100644
--- a/packages/openapi-typescript/examples/digital-ocean-api/resources/snapshots/snapshots_list.yml
+++ b/packages/openapi-typescript/examples/digital-ocean-api/resources/snapshots/snapshots_list.yml
@@ -56,5 +56,4 @@ x-codeSamples:
security:
- bearer_auth:
- - 'image:read'
- 'snapshot:read'
diff --git a/packages/openapi-typescript/examples/github-api-export-type-immutable.ts b/packages/openapi-typescript/examples/github-api-export-type-immutable.ts
index 4dcb6ad0e..134c16d96 100644
--- a/packages/openapi-typescript/examples/github-api-export-type-immutable.ts
+++ b/packages/openapi-typescript/examples/github-api-export-type-immutable.ts
@@ -340,7 +340,7 @@ export type paths = {
readonly post?: never;
/**
* Delete an app authorization
- * @description OAuth and GitHub application owners can revoke a grant for their application and a specific user. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the OAuth application's `client_id` and `client_secret` as the username and password. You must also provide a valid OAuth `access_token` as an input parameter and the grant for the token's owner will be deleted.
+ * @description OAuth and GitHub application owners can revoke a grant for their application and a specific user. You must provide a valid OAuth `access_token` as an input parameter and the grant for the token's owner will be deleted.
* Deleting an application's grant will also delete all OAuth tokens associated with the application for the user. Once deleted, the application will have no access to the user's account and will no longer be listed on [the application authorizations settings screen within GitHub](https://github.com/settings/applications#authorized).
*/
readonly delete: operations["apps/delete-authorization"];
@@ -360,19 +360,19 @@ export type paths = {
readonly put?: never;
/**
* Check a token
- * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method for checking OAuth token validity without exceeding the normal rate limits for failed login attempts. Authentication works differently with this particular endpoint. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) to use this endpoint, where the username is the application `client_id` and the password is its `client_secret`. Invalid tokens will return `404 NOT FOUND`.
+ * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method for checking OAuth token validity without exceeding the normal rate limits for failed login attempts. Authentication works differently with this particular endpoint. Invalid tokens will return `404 NOT FOUND`.
*/
readonly post: operations["apps/check-token"];
/**
* Delete an app token
- * @description OAuth or GitHub application owners can revoke a single token for an OAuth application or a GitHub application with an OAuth authorization. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the application's `client_id` and `client_secret` as the username and password.
+ * @description OAuth or GitHub application owners can revoke a single token for an OAuth application or a GitHub application with an OAuth authorization.
*/
readonly delete: operations["apps/delete-token"];
readonly options?: never;
readonly head?: never;
/**
* Reset a token
- * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method to reset a valid OAuth token without end-user involvement. Applications must save the "token" property in the response because changes take effect immediately. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the application's `client_id` and `client_secret` as the username and password. Invalid tokens will return `404 NOT FOUND`.
+ * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method to reset a valid OAuth token without end-user involvement. Applications must save the "token" property in the response because changes take effect immediately. Invalid tokens will return `404 NOT FOUND`.
*/
readonly patch: operations["apps/reset-token"];
readonly trace?: never;
@@ -393,10 +393,6 @@ export type paths = {
* token.
*
* Invalid tokens will return `404 NOT FOUND`.
- *
- * You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)
- * when accessing this endpoint, using the `client_id` and `client_secret` of the GitHub App
- * as the username and password.
*/
readonly post: operations["apps/scope-token"];
readonly delete?: never;
@@ -605,6 +601,32 @@ export type paths = {
readonly patch?: never;
readonly trace?: never;
};
+ readonly "/enterprises/{enterprise}/copilot/billing/seats": {
+ readonly parameters: {
+ readonly query?: never;
+ readonly header?: never;
+ readonly path?: never;
+ readonly cookie?: never;
+ };
+ /**
+ * List all Copilot seat assignments for an enterprise
+ * @description **Note**: This endpoint is in beta and is subject to change.
+ *
+ * Lists all active Copilot seats across organizations or enterprise teams for an enterprise with a Copilot Business or Copilot Enterprise subscription.
+ *
+ * Only enterprise owners and billing managers can view assigned Copilot seats across their child organizations or enterprise teams.
+ *
+ * Personal access tokens (classic) need either the `manage_billing:copilot` or `read:enterprise` scopes to use this endpoint.
+ */
+ readonly get: operations["copilot/list-copilot-seats-for-enterprise"];
+ readonly put?: never;
+ readonly post?: never;
+ readonly delete?: never;
+ readonly options?: never;
+ readonly head?: never;
+ readonly patch?: never;
+ readonly trace?: never;
+ };
readonly "/enterprises/{enterprise}/copilot/usage": {
readonly parameters: {
readonly query?: never;
@@ -624,10 +646,9 @@ export type paths = {
* and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
* they must have telemetry enabled in their IDE.
*
- * Only the owners and billing managers of enterprises with a Copilot Business or Enterprise subscription can view Copilot usage
- * metrics for the enterprise.
+ * Only owners and billing managers can view Copilot usage metrics for the enterprise.
*
- * OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:enterprise` scopes to use this endpoint.
*/
readonly get: operations["copilot/usage-metrics-for-enterprise"];
readonly put?: never;
@@ -731,7 +752,7 @@ export type paths = {
*
* By default, timeline resources are returned in JSON. You can specify the `application/atom+xml` type in the `Accept` header to return timeline resources in Atom format. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
- * **Note**: Private feeds are only returned when [authenticating via Basic Auth](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) since current feed URIs use the older, non revocable auth tokens.
+ * **Note**: Private feeds are only returned when [authenticating via Basic Auth](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) since current feed URIs use the older, non revocable auth tokens.
*/
readonly get: operations["activity/get-feeds"];
readonly put?: never;
@@ -1208,7 +1229,7 @@ export type paths = {
* Get a subscription plan for an account
* @description Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
readonly get: operations["apps/get-subscription-plan-for-account"];
readonly put?: never;
@@ -1230,7 +1251,7 @@ export type paths = {
* List plans
* @description Lists all plans that are part of your GitHub Marketplace listing.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
readonly get: operations["apps/list-plans"];
readonly put?: never;
@@ -1252,7 +1273,7 @@ export type paths = {
* List accounts for a plan
* @description Returns user and organization accounts associated with the specified plan, including free plans. For per-seat pricing, you see the list of accounts that have purchased the plan, including the number of seats purchased. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
readonly get: operations["apps/list-accounts-for-plan"];
readonly put?: never;
@@ -1274,7 +1295,7 @@ export type paths = {
* Get a subscription plan for an account (stubbed)
* @description Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
readonly get: operations["apps/get-subscription-plan-for-account-stubbed"];
readonly put?: never;
@@ -1296,7 +1317,7 @@ export type paths = {
* List plans (stubbed)
* @description Lists all plans that are part of your GitHub Marketplace listing.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
readonly get: operations["apps/list-plans-stubbed"];
readonly put?: never;
@@ -1318,7 +1339,7 @@ export type paths = {
* List accounts for a plan (stubbed)
* @description Returns repository and organization accounts associated with the specified plan, including free plans. For per-seat pricing, you see the list of accounts that have purchased the plan, including the number of seats purchased. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
readonly get: operations["apps/list-accounts-for-plan-stubbed"];
readonly put?: never;
@@ -2638,12 +2659,12 @@ export type paths = {
* @description **Note**: This endpoint is in beta and is subject to change.
*
* Gets information about an organization's Copilot subscription, including seat breakdown
- * and code matching policies. To configure these settings, go to your organization's settings on GitHub.com.
+ * and feature policies. To configure these settings, go to your organization's settings on GitHub.com.
* For more information, see "[Managing policies for Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-copilot-business-in-your-organization)".
*
- * Only organization owners can configure and view details about the organization's Copilot Business subscription.
+ * Only organization owners can view details about the organization's Copilot Business or Copilot Enterprise subscription.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
*/
readonly get: operations["copilot/get-copilot-organization-details"];
readonly put?: never;
@@ -2665,11 +2686,10 @@ export type paths = {
* List all Copilot seat assignments for an organization
* @description **Note**: This endpoint is in beta and is subject to change.
*
- * Lists all Copilot seat assignments for an organization that are currently being billed (either active or pending cancellation at the start of the next billing cycle).
- *
- * Only organization owners can configure and view details about the organization's Copilot Business or Enterprise subscription.
+ * Lists all active Copilot seats for an organization with a Copilot Business or Copilot Enterprise subscription.
+ * Only organization owners can view assigned seats.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
*/
readonly get: operations["copilot/list-copilot-seats"];
readonly put?: never;
@@ -2696,13 +2716,13 @@ export type paths = {
* Purchases a GitHub Copilot seat for all users within each specified team.
* The organization will be billed accordingly. For more information about Copilot pricing, see "[Pricing for GitHub Copilot](https://docs.github.com/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot#about-billing-for-github-copilot)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can add Copilot seats for their organization members.
*
* In order for an admin to use this endpoint, the organization must have a Copilot Business or Enterprise subscription and a configured suggestion matching policy.
* For more information about setting up a Copilot subscription, see "[Setting up a Copilot subscription for your organization](https://docs.github.com/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription-for-your-organization-or-enterprise)".
* For more information about setting a suggestion matching policy, see "[Configuring suggestion matching policies for GitHub Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-github-copilot-in-your-organization#configuring-suggestion-matching-policies-for-github-copilot-in-your-organization)".
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
readonly post: operations["copilot/add-copilot-seats-for-teams"];
/**
@@ -2716,9 +2736,9 @@ export type paths = {
*
* For more information about disabling access to Copilot Business or Enterprise, see "[Revoking access to GitHub Copilot for specific users in your organization](https://docs.github.com/copilot/managing-copilot/managing-access-for-copilot-in-your-organization#revoking-access-to-github-copilot-for-specific-users-in-your-organization)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can cancel Copilot seats for their organization members.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
readonly delete: operations["copilot/cancel-copilot-seat-assignment-for-teams"];
readonly options?: never;
@@ -2742,13 +2762,13 @@ export type paths = {
* Purchases a GitHub Copilot seat for each user specified.
* The organization will be billed accordingly. For more information about Copilot pricing, see "[Pricing for GitHub Copilot](https://docs.github.com/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot#about-billing-for-github-copilot)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can add Copilot seats for their organization members.
*
* In order for an admin to use this endpoint, the organization must have a Copilot Business or Enterprise subscription and a configured suggestion matching policy.
* For more information about setting up a Copilot subscription, see "[Setting up a Copilot subscription for your organization](https://docs.github.com/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription-for-your-organization-or-enterprise)".
* For more information about setting a suggestion matching policy, see "[Configuring suggestion matching policies for GitHub Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-github-copilot-in-your-organization#configuring-suggestion-matching-policies-for-github-copilot-in-your-organization)".
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
readonly post: operations["copilot/add-copilot-seats-for-users"];
/**
@@ -2762,9 +2782,9 @@ export type paths = {
*
* For more information about disabling access to Copilot Business or Enterprise, see "[Revoking access to GitHub Copilot for specific users in your organization](https://docs.github.com/copilot/managing-copilot/managing-access-for-copilot-in-your-organization#revoking-access-to-github-copilot-for-specific-users-in-your-organization)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can cancel Copilot seats for their organization members.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
readonly delete: operations["copilot/cancel-copilot-seat-assignment-for-users"];
readonly options?: never;
@@ -2791,10 +2811,9 @@ export type paths = {
* and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
* they must have telemetry enabled in their IDE.
*
- * Copilot Business or Copilot Enterprise organization owners, and owners and billing managers of their parent enterprises, can view
- * Copilot usage metrics.
+ * Organization owners, and owners and billing managers of the parent enterprise, can view Copilot usage metrics.
*
- * OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:org`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot`, `read:org`, or `read:enterprise` scopes to use this endpoint.
*/
readonly get: operations["copilot/usage-metrics-for-org"];
readonly put?: never;
@@ -3329,7 +3348,10 @@ export type paths = {
};
/**
* List pending organization invitations
- * @description The return hash contains a `role` field which refers to the Organization Invitation role and will be one of the following values: `direct_member`, `admin`, `billing_manager`, or `hiring_manager`. If the invitee is not a GitHub member, the `login` field in the return hash will be `null`.
+ * @description The return hash contains a `role` field which refers to the Organization
+ * Invitation role and will be one of the following values: `direct_member`, `admin`,
+ * `billing_manager`, or `hiring_manager`. If the invitee is not a GitHub
+ * member, the `login` field in the return hash will be `null`.
*/
readonly get: operations["orgs/list-pending-invitations"];
readonly put?: never;
@@ -3337,7 +3359,7 @@ export type paths = {
* Create an organization invitation
* @description Invite people to an organization by using their GitHub user ID or their email address. In order to create invitations in an organization, the authenticated user must be an organization owner.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
readonly post: operations["orgs/create-invitation"];
@@ -3544,9 +3566,9 @@ export type paths = {
*
* Gets the GitHub Copilot seat assignment details for a member of an organization who currently has access to GitHub Copilot.
*
- * Organization owners can view GitHub Copilot seat assignment details for members in their organization.
+ * Only organization owners can view Copilot seat assignment details for members of their organization.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
*/
readonly get: operations["copilot/get-copilot-seat-details-for-user"];
readonly put?: never;
@@ -3579,7 +3601,7 @@ export type paths = {
*
* **Rate limits**
*
- * To prevent abuse, the authenticated user is limited to 50 organization invitations per 24 hour period. If the organization is more than one month old or on a paid plan, the limit is 500 invitations per 24 hour period.
+ * To prevent abuse, organization owners are limited to creating 50 organization invitations for an organization within a 24 hour period. If the organization is more than one month old or on a paid plan, the limit is 500 invitations per 24 hour period.
*/
readonly put: operations["orgs/set-membership-for-user"];
readonly post?: never;
@@ -4809,41 +4831,6 @@ export type paths = {
readonly patch?: never;
readonly trace?: never;
};
- readonly "/orgs/{org}/team/{team_slug}/copilot/usage": {
- readonly parameters: {
- readonly query?: never;
- readonly header?: never;
- readonly path?: never;
- readonly cookie?: never;
- };
- /**
- * Get a summary of Copilot usage for a team
- * @description **Note**: This endpoint is in beta and is subject to change.
- *
- * You can use this endpoint to see a daily breakdown of aggregated usage metrics for Copilot completions and Copilot Chat in the IDE
- * for users within a team, with a further breakdown of suggestions, acceptances, and number of active users by editor and language for each day.
- * See the response schema tab for detailed metrics definitions.
- *
- * The response contains metrics for the prior 28 days. Usage metrics are processed once per day for the previous day,
- * and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
- * they must have telemetry enabled in their IDE.
- *
- * **Note**: This endpoint will only return results for a given day if the team had five or more members on that day.
- *
- * Copilot Business or Copilot Enterprise organization owners for the organization that contains this team,
- * and owners and billing managers of their parent enterprises, can view Copilot usage metrics for a team.
- *
- * OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:org`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
- */
- readonly get: operations["copilot/usage-metrics-for-team"];
- readonly put?: never;
- readonly post?: never;
- readonly delete?: never;
- readonly options?: never;
- readonly head?: never;
- readonly patch?: never;
- readonly trace?: never;
- };
readonly "/orgs/{org}/teams": {
readonly parameters: {
readonly query?: never;
@@ -4927,7 +4914,7 @@ export type paths = {
* Create a discussion
* @description Creates a new discussion post on a team's page.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* **Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions`.
*
@@ -5001,7 +4988,7 @@ export type paths = {
* Create a discussion comment
* @description Creates a new comment on a team discussion.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* **Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments`.
*
@@ -5356,7 +5343,7 @@ export type paths = {
* Check team permissions for a repository
* @description Checks whether a team has `admin`, `push`, `maintain`, `triage`, or `pull` permission for a repository. Repositories inherited through a parent team will also be checked.
*
- * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `application/vnd.github.v3.repository+json` accept header.
+ * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types/) via the `application/vnd.github.v3.repository+json` accept header.
*
* If a team doesn't have permission for the repository, you will receive a `404 Not Found` response status.
*
@@ -5674,7 +5661,7 @@ export type paths = {
* * The `dependency_snapshots` object provides your rate limit status for submitting snapshots to the dependency graph. For more information, see "[Dependency graph](https://docs.github.com/rest/dependency-graph)."
* * The `code_scanning_upload` object provides your rate limit status for uploading SARIF results to code scanning. For more information, see "[Uploading a SARIF file to GitHub](https://docs.github.com/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github)."
* * The `actions_runner_registration` object provides your rate limit status for registering self-hosted runners in GitHub Actions. For more information, see "[Self-hosted runners](https://docs.github.com/rest/actions/self-hosted-runners)."
- * * The `source_import` object is no longer in use for any API endpoints, and it will be removed in the next API version. For more information about API versions, see "[API Versions](https://docs.github.com/rest/overview/api-versions)."
+ * * The `source_import` object is no longer in use for any API endpoints, and it will be removed in the next API version. For more information about API versions, see "[API Versions](https://docs.github.com/rest/about-the-rest-api/api-versions)."
*
* **Note:** The `rate` object is deprecated. If you're writing new API client code or updating existing code, you should use the `core` object instead of the `rate` object. The `core` object contains the same information that is present in the `rate` object.
*/
@@ -8172,7 +8159,7 @@ export type paths = {
*
* By default this endpoint returns JSON metadata about the CodeQL database. To
* download the CodeQL database binary content, set the `Accept` header of the request
- * to [`application/zip`](https://docs.github.com/rest/overview/media-types), and make sure
+ * to [`application/zip`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types), and make sure
* your HTTP client is configured to follow redirects or use the `Location` header
* to make a second request to get the redirect URL.
*
@@ -8187,6 +8174,77 @@ export type paths = {
readonly patch?: never;
readonly trace?: never;
};
+ readonly "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses": {
+ readonly parameters: {
+ readonly query?: never;
+ readonly header?: never;
+ readonly path?: never;
+ readonly cookie?: never;
+ };
+ readonly get?: never;
+ readonly put?: never;
+ /**
+ * Create a CodeQL variant analysis
+ * @description Creates a new CodeQL variant analysis, which will run a CodeQL query against one or more repositories.
+ *
+ * Get started by learning more about [running CodeQL queries at scale with Multi-Repository Variant Analysis](https://docs.github.com/code-security/codeql-for-vs-code/getting-started-with-codeql-for-vs-code/running-codeql-queries-at-scale-with-multi-repository-variant-analysis).
+ *
+ * Use the `owner` and `repo` parameters in the URL to specify the controller repository that
+ * will be used for running GitHub Actions workflows and storing the results of the CodeQL variant analysis.
+ *
+ * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint.
+ */
+ readonly post: operations["code-scanning/create-variant-analysis"];
+ readonly delete?: never;
+ readonly options?: never;
+ readonly head?: never;
+ readonly patch?: never;
+ readonly trace?: never;
+ };
+ readonly "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}": {
+ readonly parameters: {
+ readonly query?: never;
+ readonly header?: never;
+ readonly path?: never;
+ readonly cookie?: never;
+ };
+ /**
+ * Get the summary of a CodeQL variant analysis
+ * @description Gets the summary of a CodeQL variant analysis.
+ *
+ * OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ */
+ readonly get: operations["code-scanning/get-variant-analysis"];
+ readonly put?: never;
+ readonly post?: never;
+ readonly delete?: never;
+ readonly options?: never;
+ readonly head?: never;
+ readonly patch?: never;
+ readonly trace?: never;
+ };
+ readonly "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}/repos/{repo_owner}/{repo_name}": {
+ readonly parameters: {
+ readonly query?: never;
+ readonly header?: never;
+ readonly path?: never;
+ readonly cookie?: never;
+ };
+ /**
+ * Get the analysis status of a repository in a CodeQL variant analysis
+ * @description Gets the analysis status of a repository in a CodeQL variant analysis.
+ *
+ * OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ */
+ readonly get: operations["code-scanning/get-variant-analysis-repo-task"];
+ readonly put?: never;
+ readonly post?: never;
+ readonly delete?: never;
+ readonly options?: never;
+ readonly head?: never;
+ readonly patch?: never;
+ readonly trace?: never;
+ };
readonly "/repos/{owner}/{repo}/code-scanning/default-setup": {
readonly parameters: {
readonly query?: never;
@@ -8258,6 +8316,8 @@ export type paths = {
* For more information, see "[Get information about a SARIF upload](/rest/code-scanning/code-scanning#get-information-about-a-sarif-upload)."
*
* OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ *
+ * This endpoint is limited to 1,000 requests per hour for each user or app installation calling it.
*/
readonly post: operations["code-scanning/upload-sarif"];
readonly delete?: never;
@@ -8558,7 +8618,7 @@ export type paths = {
readonly get: operations["repos/check-collaborator"];
/**
* Add a repository collaborator
- * @description This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * @description This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* Adding an outside collaborator may be restricted by enterprise administrators. For more information, see "[Enforcing repository management policies in your enterprise](https://docs.github.com/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-outside-collaborators-to-repositories)."
*
@@ -8843,7 +8903,7 @@ export type paths = {
* Create a commit comment
* @description Create a comment for a commit using its `:commit_sha`.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
@@ -9093,7 +9153,7 @@ export type paths = {
*
* To process a response with a large number of commits, use a query parameter (`per_page` or `page`) to paginate the results. When using pagination:
*
- * - The list of changed files is only shown on the first page of results, but it includes all changed files for the entire comparison.
+ * - The list of changed files is only shown on the first page of results, and it includes up to 300 changed files for the entire comparison.
* - The results are returned in chronological order, but the last commit in the returned list may not be the most recent one in the entire set if there are more pages of results.
*
* For more information on working with pagination, see "[Using pagination in the REST API](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api)."
@@ -10882,7 +10942,7 @@ export type paths = {
* Create an issue
* @description Any user with pull access to a repository can create an issue. If [issues are disabled in the repository](https://docs.github.com/articles/disabling-issues/), the API returns a `410 Gone` status.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -11180,7 +11240,7 @@ export type paths = {
*
* This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications).
* Creating content too quickly using this endpoint may result in secondary rate limiting.
- * For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -11952,7 +12012,7 @@ export type paths = {
*
* To open or update a pull request in a public repository, you must have write access to the head or the source branch. For organization-owned repositories, you must be a member of the organization that owns the repository to open or update a pull request.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
@@ -12107,7 +12167,7 @@ export type paths = {
* * If merged via a [squash](https://docs.github.com/articles/about-merge-methods-on-github/#squashing-your-merge-commits), `merge_commit_sha` represents the SHA of the squashed commit on the base branch.
* * If [rebased](https://docs.github.com/articles/about-merge-methods-on-github/#rebasing-and-merging-your-commits), `merge_commit_sha` represents the commit that the base branch was updated to.
*
- * Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) to fetch diff and patch formats.
+ * Pass the appropriate [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types) to fetch diff and patch formats.
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
@@ -12190,7 +12250,7 @@ export type paths = {
*
* The `position` parameter is deprecated. If you use `position`, the `line`, `side`, `start_line`, and `start_side` parameters are not required.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -12220,7 +12280,7 @@ export type paths = {
* Create a reply for a review comment
* @description Creates a reply to a review comment for a pull request. For the `comment_id`, provide the ID of the review comment you are replying to. This must be the ID of a _top-level review comment_, not a reply to that comment. Replies to replies are not supported.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -12311,7 +12371,7 @@ export type paths = {
/**
* Merge a pull request
* @description Merges a pull request into the base branch.
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
readonly put: operations["pulls/merge"];
readonly post?: never;
@@ -12337,7 +12397,7 @@ export type paths = {
/**
* Request reviewers for a pull request
* @description Requests reviews for a pull request from a given set of users and/or teams.
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
readonly post: operations["pulls/request-reviewers"];
/**
@@ -12374,7 +12434,7 @@ export type paths = {
* Create a review for a pull request
* @description Creates a review on a specified pull request.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* Pull request reviews created in the `PENDING` state are not submitted and therefore do not include the `submitted_at` property in the response. To create a pending review for a pull request, leave the `event` parameter blank. For more information about submitting a `PENDING` review, see "[Submit a review for a pull request](https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request)."
*
@@ -12619,7 +12679,7 @@ export type paths = {
* Create a release
* @description Users with push access to the repository can create a release.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
readonly post: operations["repos/create-release"];
readonly delete?: never;
@@ -12637,7 +12697,7 @@ export type paths = {
};
/**
* Get a release asset
- * @description To download the asset's binary content, set the `Accept` header of the request to [`application/octet-stream`](https://docs.github.com/rest/overview/media-types). The API will either redirect the client to the location, or stream it directly if possible. API clients should handle both a `200` or `302` response.
+ * @description To download the asset's binary content, set the `Accept` header of the request to [`application/octet-stream`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types). The API will either redirect the client to the location, or stream it directly if possible. API clients should handle both a `200` or `302` response.
*/
readonly get: operations["repos/get-release-asset"];
readonly put?: never;
@@ -13408,16 +13468,24 @@ export type paths = {
readonly cookie?: never;
};
/**
- * List tag protection states for a repository
- * @description This returns the tag protection states of a repository.
+ * Deprecated - List tag protection states for a repository
+ * @deprecated
+ * @description **Note**: This operation is deprecated and will be removed after August 30th 2024
+ * Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#get-all-repository-rulesets)" endpoint instead.
+ *
+ * This returns the tag protection states of a repository.
*
* This information is only available to repository administrators.
*/
readonly get: operations["repos/list-tag-protection"];
readonly put?: never;
/**
- * Create a tag protection state for a repository
- * @description This creates a tag protection state for a repository.
+ * Deprecated - Create a tag protection state for a repository
+ * @deprecated
+ * @description **Note**: This operation is deprecated and will be removed after August 30th 2024
+ * Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#create-a-repository-ruleset)" endpoint instead.
+ *
+ * This creates a tag protection state for a repository.
* This endpoint is only available to repository administrators.
*/
readonly post: operations["repos/create-tag-protection"];
@@ -13438,8 +13506,12 @@ export type paths = {
readonly put?: never;
readonly post?: never;
/**
- * Delete a tag protection state for a repository
- * @description This deletes a tag protection state for a repository.
+ * Deprecated - Delete a tag protection state for a repository
+ * @deprecated
+ * @description **Note**: This operation is deprecated and will be removed after August 30th 2024
+ * Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#delete-a-repository-ruleset)" endpoint instead.
+ *
+ * This deletes a tag protection state for a repository.
* This endpoint is only available to repository administrators.
*/
readonly delete: operations["repos/delete-tag-protection"];
@@ -13988,7 +14060,7 @@ export type paths = {
*
* Creates a new discussion post on a team's page.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.
*/
@@ -14067,7 +14139,7 @@ export type paths = {
*
* Creates a new comment on a team discussion.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.
*/
@@ -14443,7 +14515,7 @@ export type paths = {
*
* **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Check team permissions for a repository](https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-repository) endpoint.
*
- * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `Accept` header:
+ * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types/) via the `Accept` header:
*/
readonly get: operations["teams/check-permissions-for-repo-legacy"];
/**
@@ -15176,12 +15248,16 @@ export type paths = {
/**
* Add a repository to an app installation
* @description Add a single repository to an installation. The authenticated user must have admin access to the repository.
+ *
+ * This endpoint only works for PATs (classic) with the `repo` scope.
*/
readonly put: operations["apps/add-repo-to-installation-for-authenticated-user"];
readonly post?: never;
/**
* Remove a repository from an app installation
* @description Remove a single repository from an installation. The authenticated user must have admin access to the repository. The installation must have the `repository_selection` of `selected`.
+ *
+ * This endpoint only works for PATs (classic) with the `repo` scope.
*/
readonly delete: operations["apps/remove-repo-from-installation-for-authenticated-user"];
readonly options?: never;
@@ -17258,6 +17334,12 @@ export type components = {
* @example 123
*/
readonly repository_id: number | null;
+ /**
+ * Format: date-time
+ * @description Time when the webhook delivery was throttled.
+ * @example 2021-05-12T20:33:44Z
+ */
+ readonly throttled_at?: string | null;
};
/**
* Scim Error
@@ -17348,6 +17430,12 @@ export type components = {
* @example 123
*/
readonly repository_id: number | null;
+ /**
+ * Format: date-time
+ * @description Time when the webhook delivery was throttled.
+ * @example 2021-05-12T20:33:44Z
+ */
+ readonly throttled_at?: string | null;
/**
* @description The URL target of the delivery.
* @example https://www.example.com
@@ -18648,6 +18736,280 @@ export type components = {
/** Format: uri */
readonly html_url: string | null;
};
+ /**
+ * Team Simple
+ * @description Groups of organization members that gives permissions on specified repositories.
+ */
+ readonly "nullable-team-simple": {
+ /**
+ * @description Unique identifier of the team
+ * @example 1
+ */
+ readonly id: number;
+ /** @example MDQ6VGVhbTE= */
+ readonly node_id: string;
+ /**
+ * Format: uri
+ * @description URL for the team
+ * @example https://api.github.com/organizations/1/team/1
+ */
+ readonly url: string;
+ /** @example https://api.github.com/organizations/1/team/1/members{/member} */
+ readonly members_url: string;
+ /**
+ * @description Name of the team
+ * @example Justice League
+ */
+ readonly name: string;
+ /**
+ * @description Description of the team
+ * @example A great team.
+ */
+ readonly description: string | null;
+ /**
+ * @description Permission that the team will have for its repositories
+ * @example admin
+ */
+ readonly permission: string;
+ /**
+ * @description The level of privacy this team should have
+ * @example closed
+ */
+ readonly privacy?: string;
+ /**
+ * @description The notification setting the team has set
+ * @example notifications_enabled
+ */
+ readonly notification_setting?: string;
+ /**
+ * Format: uri
+ * @example https://github.com/orgs/rails/teams/core
+ */
+ readonly html_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/organizations/1/team/1/repos
+ */
+ readonly repositories_url: string;
+ /** @example justice-league */
+ readonly slug: string;
+ /**
+ * @description Distinguished Name (DN) that team maps to within LDAP environment
+ * @example uid=example,ou=users,dc=github,dc=com
+ */
+ readonly ldap_dn?: string;
+ } | null;
+ /**
+ * Team
+ * @description Groups of organization members that gives permissions on specified repositories.
+ */
+ readonly team: {
+ readonly id: number;
+ readonly node_id: string;
+ readonly name: string;
+ readonly slug: string;
+ readonly description: string | null;
+ readonly privacy?: string;
+ readonly notification_setting?: string;
+ readonly permission: string;
+ readonly permissions?: {
+ readonly pull: boolean;
+ readonly triage: boolean;
+ readonly push: boolean;
+ readonly maintain: boolean;
+ readonly admin: boolean;
+ };
+ /** Format: uri */
+ readonly url: string;
+ /**
+ * Format: uri
+ * @example https://github.com/orgs/rails/teams/core
+ */
+ readonly html_url: string;
+ readonly members_url: string;
+ /** Format: uri */
+ readonly repositories_url: string;
+ readonly parent: components["schemas"]["nullable-team-simple"];
+ };
+ /**
+ * Organization
+ * @description GitHub account for managing multiple users, teams, and repositories
+ */
+ readonly organization: {
+ /**
+ * @description Unique login name of the organization
+ * @example new-org
+ */
+ readonly login: string;
+ /**
+ * Format: uri
+ * @description URL for the organization
+ * @example https://api.github.com/orgs/github
+ */
+ readonly url: string;
+ readonly id: number;
+ readonly node_id: string;
+ /** Format: uri */
+ readonly repos_url: string;
+ /** Format: uri */
+ readonly events_url: string;
+ readonly hooks_url: string;
+ readonly issues_url: string;
+ readonly members_url: string;
+ readonly public_members_url: string;
+ readonly avatar_url: string;
+ readonly description: string | null;
+ /**
+ * Format: uri
+ * @description Display blog url for the organization
+ * @example blog.example-org.com
+ */
+ readonly blog?: string;
+ /** Format: uri */
+ readonly html_url: string;
+ /**
+ * @description Display name for the organization
+ * @example New Org
+ */
+ readonly name?: string;
+ /**
+ * @description Display company name for the organization
+ * @example Acme corporation
+ */
+ readonly company?: string;
+ /**
+ * @description Display location for the organization
+ * @example Berlin, Germany
+ */
+ readonly location?: string;
+ /**
+ * Format: email
+ * @description Display email for the organization
+ * @example org@example.com
+ */
+ readonly email?: string;
+ /** @description Specifies if organization projects are enabled for this org */
+ readonly has_organization_projects: boolean;
+ /** @description Specifies if repository projects are enabled for repositories that belong to this org */
+ readonly has_repository_projects: boolean;
+ readonly is_verified?: boolean;
+ readonly public_repos: number;
+ readonly public_gists: number;
+ readonly followers: number;
+ readonly following: number;
+ readonly type: string;
+ /** Format: date-time */
+ readonly created_at: string;
+ /** Format: date-time */
+ readonly updated_at: string;
+ readonly plan?: {
+ readonly name?: string;
+ readonly space?: number;
+ readonly private_repos?: number;
+ readonly filled_seats?: number;
+ readonly seats?: number;
+ };
+ };
+ /**
+ * Organization Simple
+ * @description A GitHub organization.
+ */
+ readonly "organization-simple": {
+ /** @example github */
+ readonly login: string;
+ /** @example 1 */
+ readonly id: number;
+ /** @example MDEyOk9yZ2FuaXphdGlvbjE= */
+ readonly node_id: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/orgs/github
+ */
+ readonly url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/orgs/github/repos
+ */
+ readonly repos_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/orgs/github/events
+ */
+ readonly events_url: string;
+ /** @example https://api.github.com/orgs/github/hooks */
+ readonly hooks_url: string;
+ /** @example https://api.github.com/orgs/github/issues */
+ readonly issues_url: string;
+ /** @example https://api.github.com/orgs/github/members{/member} */
+ readonly members_url: string;
+ /** @example https://api.github.com/orgs/github/public_members{/member} */
+ readonly public_members_url: string;
+ /** @example https://github.com/images/error/octocat_happy.gif */
+ readonly avatar_url: string;
+ /** @example A great organization */
+ readonly description: string | null;
+ };
+ /**
+ * Enterprise Team
+ * @description Group of enterprise owners and/or members
+ */
+ readonly "enterprise-team": {
+ readonly id: number;
+ readonly name: string;
+ readonly slug: string;
+ /** Format: uri */
+ readonly url: string;
+ /** @example disabled | all */
+ readonly sync_to_organizations: string;
+ /** @example 1 */
+ readonly group_id?: number | null;
+ /**
+ * Format: uri
+ * @example https://github.com/enterprises/dc/teams/justice-league
+ */
+ readonly html_url: string;
+ readonly members_url: string;
+ /** Format: date-time */
+ readonly created_at: string;
+ /** Format: date-time */
+ readonly updated_at: string;
+ };
+ /**
+ * Copilot Business Seat Detail
+ * @description Information about a Copilot Business seat assignment for a user, team, or organization.
+ */
+ readonly "copilot-seat-details": {
+ /** @description The assignee that has been granted access to GitHub Copilot. */
+ readonly assignee: {
+ readonly [key: string]: unknown;
+ } & (components["schemas"]["simple-user"] | components["schemas"]["team"] | components["schemas"]["organization"]);
+ /** @description The organization to which this seat belongs. */
+ readonly organization?: components["schemas"]["organization-simple"] | null;
+ /** @description The team through which the assignee is granted access to GitHub Copilot, if applicable. */
+ readonly assigning_team?: (components["schemas"]["team"] | components["schemas"]["enterprise-team"]) | null;
+ /**
+ * Format: date
+ * @description The pending cancellation date for the seat, in `YYYY-MM-DD` format. This will be null unless the assignee's Copilot access has been canceled during the current billing cycle. If the seat has been cancelled, this corresponds to the start of the organization's next billing cycle.
+ */
+ readonly pending_cancellation_date?: string | null;
+ /**
+ * Format: date-time
+ * @description Timestamp of user's last GitHub Copilot activity, in ISO 8601 format.
+ */
+ readonly last_activity_at?: string | null;
+ /** @description Last editor that was used by the user for a GitHub Copilot completion. */
+ readonly last_activity_editor?: string | null;
+ /**
+ * Format: date-time
+ * @description Timestamp of when the assignee was last granted access to GitHub Copilot, in ISO 8601 format.
+ */
+ readonly created_at: string;
+ /**
+ * Format: date-time
+ * @description Timestamp of when the assignee's GitHub Copilot access was last updated, in ISO 8601 format.
+ */
+ readonly updated_at?: string;
+ };
/**
* Copilot Usage Metrics
* @description Summary of Copilot usage.
@@ -19654,6 +20016,8 @@ export type components = {
readonly location: string | null;
/** Format: email */
readonly email: string | null;
+ /** Format: email */
+ readonly notification_email?: string | null;
readonly hireable: boolean | null;
readonly bio: string | null;
readonly twitter_username?: string | null;
@@ -20091,6 +20455,10 @@ export type components = {
* "192.0.2.1"
* ] */
readonly actions?: readonly string[];
+ /** @example [
+ * "192.0.2.1"
+ * ] */
+ readonly actions_macos?: readonly string[];
/** @example [
* "192.0.2.1"
* ] */
@@ -20387,45 +20755,6 @@ export type components = {
*/
readonly repository_url?: string;
};
- /**
- * Organization Simple
- * @description A GitHub organization.
- */
- readonly "organization-simple": {
- /** @example github */
- readonly login: string;
- /** @example 1 */
- readonly id: number;
- /** @example MDEyOk9yZ2FuaXphdGlvbjE= */
- readonly node_id: string;
- /**
- * Format: uri
- * @example https://api.github.com/orgs/github
- */
- readonly url: string;
- /**
- * Format: uri
- * @example https://api.github.com/orgs/github/repos
- */
- readonly repos_url: string;
- /**
- * Format: uri
- * @example https://api.github.com/orgs/github/events
- */
- readonly events_url: string;
- /** @example https://api.github.com/orgs/github/hooks */
- readonly hooks_url: string;
- /** @example https://api.github.com/orgs/github/issues */
- readonly issues_url: string;
- /** @example https://api.github.com/orgs/github/members{/member} */
- readonly members_url: string;
- /** @example https://api.github.com/orgs/github/public_members{/member} */
- readonly public_members_url: string;
- /** @example https://github.com/images/error/octocat_happy.gif */
- readonly avatar_url: string;
- /** @example A great organization */
- readonly description: string | null;
- };
/**
* Organization Full
* @description Organization Full
@@ -21295,214 +21624,6 @@ export type components = {
readonly seat_management_setting: "assign_all" | "assign_selected" | "disabled" | "unconfigured";
readonly [key: string]: unknown;
};
- /**
- * Team Simple
- * @description Groups of organization members that gives permissions on specified repositories.
- */
- readonly "nullable-team-simple": {
- /**
- * @description Unique identifier of the team
- * @example 1
- */
- readonly id: number;
- /** @example MDQ6VGVhbTE= */
- readonly node_id: string;
- /**
- * Format: uri
- * @description URL for the team
- * @example https://api.github.com/organizations/1/team/1
- */
- readonly url: string;
- /** @example https://api.github.com/organizations/1/team/1/members{/member} */
- readonly members_url: string;
- /**
- * @description Name of the team
- * @example Justice League
- */
- readonly name: string;
- /**
- * @description Description of the team
- * @example A great team.
- */
- readonly description: string | null;
- /**
- * @description Permission that the team will have for its repositories
- * @example admin
- */
- readonly permission: string;
- /**
- * @description The level of privacy this team should have
- * @example closed
- */
- readonly privacy?: string;
- /**
- * @description The notification setting the team has set
- * @example notifications_enabled
- */
- readonly notification_setting?: string;
- /**
- * Format: uri
- * @example https://github.com/orgs/rails/teams/core
- */
- readonly html_url: string;
- /**
- * Format: uri
- * @example https://api.github.com/organizations/1/team/1/repos
- */
- readonly repositories_url: string;
- /** @example justice-league */
- readonly slug: string;
- /**
- * @description Distinguished Name (DN) that team maps to within LDAP environment
- * @example uid=example,ou=users,dc=github,dc=com
- */
- readonly ldap_dn?: string;
- } | null;
- /**
- * Team
- * @description Groups of organization members that gives permissions on specified repositories.
- */
- readonly team: {
- readonly id: number;
- readonly node_id: string;
- readonly name: string;
- readonly slug: string;
- readonly description: string | null;
- readonly privacy?: string;
- readonly notification_setting?: string;
- readonly permission: string;
- readonly permissions?: {
- readonly pull: boolean;
- readonly triage: boolean;
- readonly push: boolean;
- readonly maintain: boolean;
- readonly admin: boolean;
- };
- /** Format: uri */
- readonly url: string;
- /**
- * Format: uri
- * @example https://github.com/orgs/rails/teams/core
- */
- readonly html_url: string;
- readonly members_url: string;
- /** Format: uri */
- readonly repositories_url: string;
- readonly parent: components["schemas"]["nullable-team-simple"];
- };
- /**
- * Organization
- * @description GitHub account for managing multiple users, teams, and repositories
- */
- readonly organization: {
- /**
- * @description Unique login name of the organization
- * @example new-org
- */
- readonly login: string;
- /**
- * Format: uri
- * @description URL for the organization
- * @example https://api.github.com/orgs/github
- */
- readonly url: string;
- readonly id: number;
- readonly node_id: string;
- /** Format: uri */
- readonly repos_url: string;
- /** Format: uri */
- readonly events_url: string;
- readonly hooks_url: string;
- readonly issues_url: string;
- readonly members_url: string;
- readonly public_members_url: string;
- readonly avatar_url: string;
- readonly description: string | null;
- /**
- * Format: uri
- * @description Display blog url for the organization
- * @example blog.example-org.com
- */
- readonly blog?: string;
- /** Format: uri */
- readonly html_url: string;
- /**
- * @description Display name for the organization
- * @example New Org
- */
- readonly name?: string;
- /**
- * @description Display company name for the organization
- * @example Acme corporation
- */
- readonly company?: string;
- /**
- * @description Display location for the organization
- * @example Berlin, Germany
- */
- readonly location?: string;
- /**
- * Format: email
- * @description Display email for the organization
- * @example org@example.com
- */
- readonly email?: string;
- /** @description Specifies if organization projects are enabled for this org */
- readonly has_organization_projects: boolean;
- /** @description Specifies if repository projects are enabled for repositories that belong to this org */
- readonly has_repository_projects: boolean;
- readonly is_verified?: boolean;
- readonly public_repos: number;
- readonly public_gists: number;
- readonly followers: number;
- readonly following: number;
- readonly type: string;
- /** Format: date-time */
- readonly created_at: string;
- /** Format: date-time */
- readonly updated_at: string;
- readonly plan?: {
- readonly name?: string;
- readonly space?: number;
- readonly private_repos?: number;
- readonly filled_seats?: number;
- readonly seats?: number;
- };
- };
- /**
- * Copilot Business Seat Detail
- * @description Information about a Copilot Business seat assignment for a user, team, or organization.
- */
- readonly "copilot-seat-details": {
- /** @description The assignee that has been granted access to GitHub Copilot. */
- readonly assignee: {
- readonly [key: string]: unknown;
- } & (components["schemas"]["simple-user"] | components["schemas"]["team"] | components["schemas"]["organization"]);
- /** @description The team that granted access to GitHub Copilot to the assignee. This will be null if the user was assigned a seat individually. */
- readonly assigning_team?: components["schemas"]["team"] | null;
- /**
- * Format: date
- * @description The pending cancellation date for the seat, in `YYYY-MM-DD` format. This will be null unless the assignee's Copilot access has been canceled during the current billing cycle. If the seat has been cancelled, this corresponds to the start of the organization's next billing cycle.
- */
- readonly pending_cancellation_date?: string | null;
- /**
- * Format: date-time
- * @description Timestamp of user's last GitHub Copilot activity, in ISO 8601 format.
- */
- readonly last_activity_at?: string | null;
- /** @description Last editor that was used by the user for a GitHub Copilot completion. */
- readonly last_activity_editor?: string | null;
- /**
- * Format: date-time
- * @description Timestamp of when the assignee was last granted access to GitHub Copilot, in ISO 8601 format.
- */
- readonly created_at: string;
- /**
- * Format: date-time
- * @description Timestamp of when the assignee's GitHub Copilot access was last updated, in ISO 8601 format.
- */
- readonly updated_at?: string;
- };
/**
* Dependabot Secret for an Organization
* @description Secrets for GitHub Dependabot for an organization.
@@ -22013,6 +22134,170 @@ export type components = {
*/
readonly updated_at: string;
};
+ /**
+ * A Role Assignment for a Team
+ * @description The Relationship a Team has with a role.
+ */
+ readonly "team-role-assignment": {
+ readonly id: number;
+ readonly node_id: string;
+ readonly name: string;
+ readonly slug: string;
+ readonly description: string | null;
+ readonly privacy?: string;
+ readonly notification_setting?: string;
+ readonly permission: string;
+ readonly permissions?: {
+ readonly pull: boolean;
+ readonly triage: boolean;
+ readonly push: boolean;
+ readonly maintain: boolean;
+ readonly admin: boolean;
+ };
+ /** Format: uri */
+ readonly url: string;
+ /**
+ * Format: uri
+ * @example https://github.com/orgs/rails/teams/core
+ */
+ readonly html_url: string;
+ readonly members_url: string;
+ /** Format: uri */
+ readonly repositories_url: string;
+ readonly parent: components["schemas"]["nullable-team-simple"];
+ };
+ /**
+ * Team Simple
+ * @description Groups of organization members that gives permissions on specified repositories.
+ */
+ readonly "team-simple": {
+ /**
+ * @description Unique identifier of the team
+ * @example 1
+ */
+ readonly id: number;
+ /** @example MDQ6VGVhbTE= */
+ readonly node_id: string;
+ /**
+ * Format: uri
+ * @description URL for the team
+ * @example https://api.github.com/organizations/1/team/1
+ */
+ readonly url: string;
+ /** @example https://api.github.com/organizations/1/team/1/members{/member} */
+ readonly members_url: string;
+ /**
+ * @description Name of the team
+ * @example Justice League
+ */
+ readonly name: string;
+ /**
+ * @description Description of the team
+ * @example A great team.
+ */
+ readonly description: string | null;
+ /**
+ * @description Permission that the team will have for its repositories
+ * @example admin
+ */
+ readonly permission: string;
+ /**
+ * @description The level of privacy this team should have
+ * @example closed
+ */
+ readonly privacy?: string;
+ /**
+ * @description The notification setting the team has set
+ * @example notifications_enabled
+ */
+ readonly notification_setting?: string;
+ /**
+ * Format: uri
+ * @example https://github.com/orgs/rails/teams/core
+ */
+ readonly html_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/organizations/1/team/1/repos
+ */
+ readonly repositories_url: string;
+ /** @example justice-league */
+ readonly slug: string;
+ /**
+ * @description Distinguished Name (DN) that team maps to within LDAP environment
+ * @example uid=example,ou=users,dc=github,dc=com
+ */
+ readonly ldap_dn?: string;
+ };
+ /**
+ * A Role Assignment for a User
+ * @description The Relationship a User has with a role.
+ */
+ readonly "user-role-assignment": {
+ readonly name?: string | null;
+ readonly email?: string | null;
+ /** @example octocat */
+ readonly login: string;
+ /** @example 1 */
+ readonly id: number;
+ /** @example MDQ6VXNlcjE= */
+ readonly node_id: string;
+ /**
+ * Format: uri
+ * @example https://github.com/images/error/octocat_happy.gif
+ */
+ readonly avatar_url: string;
+ /** @example 41d064eb2195891e12d0413f63227ea7 */
+ readonly gravatar_id: string | null;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat
+ */
+ readonly url: string;
+ /**
+ * Format: uri
+ * @example https://github.com/octocat
+ */
+ readonly html_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/followers
+ */
+ readonly followers_url: string;
+ /** @example https://api.github.com/users/octocat/following{/other_user} */
+ readonly following_url: string;
+ /** @example https://api.github.com/users/octocat/gists{/gist_id} */
+ readonly gists_url: string;
+ /** @example https://api.github.com/users/octocat/starred{/owner}{/repo} */
+ readonly starred_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/subscriptions
+ */
+ readonly subscriptions_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/orgs
+ */
+ readonly organizations_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/repos
+ */
+ readonly repos_url: string;
+ /** @example https://api.github.com/users/octocat/events{/privacy} */
+ readonly events_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/received_events
+ */
+ readonly received_events_url: string;
+ /** @example User */
+ readonly type: string;
+ readonly site_admin: boolean;
+ /** @example "2020-07-09T00:17:55Z" */
+ readonly starred_at?: string;
+ };
/**
* Package Version
* @description A version of a software package
@@ -22220,7 +22505,7 @@ export type components = {
* @example single_select
* @enum {string}
*/
- readonly value_type: "string" | "single_select";
+ readonly value_type: "string" | "single_select" | "multi_select" | "true_false";
/** @description Whether the property is required. */
readonly required?: boolean;
/** @description Default value of the property */
@@ -23302,6 +23587,18 @@ export type components = {
/** @description The name of a code scanning tool */
readonly tool: string;
};
+ /**
+ * code_scanning
+ * @description Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.
+ */
+ readonly "repository-rule-code-scanning": {
+ /** @enum {string} */
+ readonly type: "code_scanning";
+ readonly parameters?: {
+ /** @description Tools that must provide code scanning results for this rule to pass. */
+ readonly code_scanning_tools: readonly components["schemas"]["repository-rule-params-code-scanning-tool"][];
+ };
+ };
/**
* Repository Rule
* @description A repository rule.
@@ -23334,7 +23631,7 @@ export type components = {
/** @description The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS). */
readonly max_file_size: number;
};
- } | components["schemas"]["repository-rule-workflows"];
+ } | components["schemas"]["repository-rule-workflows"] | components["schemas"]["repository-rule-code-scanning"];
/**
* Repository ruleset
* @description A set of rules to apply when specified conditions are met.
@@ -23609,69 +23906,6 @@ export type components = {
/** @description A temporary private fork of the advisory's repository for collaborating on a fix. */
readonly private_fork: components["schemas"]["simple-repository"] | null;
};
- /**
- * Team Simple
- * @description Groups of organization members that gives permissions on specified repositories.
- */
- readonly "team-simple": {
- /**
- * @description Unique identifier of the team
- * @example 1
- */
- readonly id: number;
- /** @example MDQ6VGVhbTE= */
- readonly node_id: string;
- /**
- * Format: uri
- * @description URL for the team
- * @example https://api.github.com/organizations/1/team/1
- */
- readonly url: string;
- /** @example https://api.github.com/organizations/1/team/1/members{/member} */
- readonly members_url: string;
- /**
- * @description Name of the team
- * @example Justice League
- */
- readonly name: string;
- /**
- * @description Description of the team
- * @example A great team.
- */
- readonly description: string | null;
- /**
- * @description Permission that the team will have for its repositories
- * @example admin
- */
- readonly permission: string;
- /**
- * @description The level of privacy this team should have
- * @example closed
- */
- readonly privacy?: string;
- /**
- * @description The notification setting the team has set
- * @example notifications_enabled
- */
- readonly notification_setting?: string;
- /**
- * Format: uri
- * @example https://github.com/orgs/rails/teams/core
- */
- readonly html_url: string;
- /**
- * Format: uri
- * @example https://api.github.com/organizations/1/team/1/repos
- */
- readonly repositories_url: string;
- /** @example justice-league */
- readonly slug: string;
- /**
- * @description Distinguished Name (DN) that team maps to within LDAP environment
- * @example uid=example,ou=users,dc=github,dc=com
- */
- readonly ldap_dn?: string;
- };
readonly "actions-billing-usage": {
/** @description The sum of the free and paid GitHub Actions minutes used. */
readonly total_minutes_used: number;
@@ -26358,6 +26592,133 @@ export type components = {
/** @description The commit SHA of the repository at the time the CodeQL database was created. */
readonly commit_oid?: string | null;
};
+ /**
+ * @description The language targeted by the CodeQL query
+ * @enum {string}
+ */
+ readonly "code-scanning-variant-analysis-language": "cpp" | "csharp" | "go" | "java" | "javascript" | "python" | "ruby" | "swift";
+ /**
+ * Repository Identifier
+ * @description Repository Identifier
+ */
+ readonly "code-scanning-variant-analysis-repository": {
+ /**
+ * @description A unique identifier of the repository.
+ * @example 1296269
+ */
+ readonly id: number;
+ /**
+ * @description The name of the repository.
+ * @example Hello-World
+ */
+ readonly name: string;
+ /**
+ * @description The full, globally unique, name of the repository.
+ * @example octocat/Hello-World
+ */
+ readonly full_name: string;
+ /** @description Whether the repository is private. */
+ readonly private: boolean;
+ /** @example 80 */
+ readonly stargazers_count: number;
+ /**
+ * Format: date-time
+ * @example 2011-01-26T19:14:43Z
+ */
+ readonly updated_at: string | null;
+ };
+ /**
+ * @description The new status of the CodeQL variant analysis repository task.
+ * @enum {string}
+ */
+ readonly "code-scanning-variant-analysis-status": "pending" | "in_progress" | "succeeded" | "failed" | "canceled" | "timed_out";
+ readonly "code-scanning-variant-analysis-skipped-repo-group": {
+ /**
+ * @description The total number of repositories that were skipped for this reason.
+ * @example 2
+ */
+ readonly repository_count: number;
+ /** @description A list of repositories that were skipped. This list may not include all repositories that were skipped. This is only available when the repository was found and the user has access to it. */
+ readonly repositories: readonly components["schemas"]["code-scanning-variant-analysis-repository"][];
+ };
+ /**
+ * Variant Analysis
+ * @description A run of a CodeQL query against one or more repositories.
+ */
+ readonly "code-scanning-variant-analysis": {
+ /** @description The ID of the variant analysis. */
+ readonly id: number;
+ readonly controller_repo: components["schemas"]["simple-repository"];
+ readonly actor: components["schemas"]["simple-user"];
+ readonly query_language: components["schemas"]["code-scanning-variant-analysis-language"];
+ /** @description The download url for the query pack. */
+ readonly query_pack_url: string;
+ /**
+ * Format: date-time
+ * @description The date and time at which the variant analysis was created, in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ.
+ */
+ readonly created_at?: string;
+ /**
+ * Format: date-time
+ * @description The date and time at which the variant analysis was last updated, in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ.
+ */
+ readonly updated_at?: string;
+ /**
+ * Format: date-time
+ * @description The date and time at which the variant analysis was completed, in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ. Will be null if the variant analysis has not yet completed or this information is not available.
+ */
+ readonly completed_at?: string | null;
+ /** @enum {string} */
+ readonly status: "in_progress" | "succeeded" | "failed" | "cancelled";
+ /** @description The GitHub Actions workflow run used to execute this variant analysis. This is only available if the workflow run has started. */
+ readonly actions_workflow_run_id?: number;
+ /**
+ * @description The reason for a failure of the variant analysis. This is only available if the variant analysis has failed.
+ * @enum {string}
+ */
+ readonly failure_reason?: "no_repos_queried" | "actions_workflow_run_failed" | "internal_error";
+ readonly scanned_repositories?: readonly {
+ readonly repository: components["schemas"]["code-scanning-variant-analysis-repository"];
+ readonly analysis_status: components["schemas"]["code-scanning-variant-analysis-status"];
+ /** @description The number of results in the case of a successful analysis. This is only available for successful analyses. */
+ readonly result_count?: number;
+ /** @description The size of the artifact. This is only available for successful analyses. */
+ readonly artifact_size_in_bytes?: number;
+ /** @description The reason of the failure of this repo task. This is only available if the repository task has failed. */
+ readonly failure_message?: string;
+ }[];
+ /** @description Information about repositories that were skipped from processing. This information is only available to the user that initiated the variant analysis. */
+ readonly skipped_repositories?: {
+ readonly access_mismatch_repos: components["schemas"]["code-scanning-variant-analysis-skipped-repo-group"];
+ readonly not_found_repos: {
+ /**
+ * @description The total number of repositories that were skipped for this reason.
+ * @example 2
+ */
+ readonly repository_count: number;
+ /** @description A list of full repository names that were skipped. This list may not include all repositories that were skipped. */
+ readonly repository_full_names: readonly string[];
+ };
+ readonly no_codeql_db_repos: components["schemas"]["code-scanning-variant-analysis-skipped-repo-group"];
+ readonly over_limit_repos: components["schemas"]["code-scanning-variant-analysis-skipped-repo-group"];
+ };
+ };
+ readonly "code-scanning-variant-analysis-repo-task": {
+ readonly repository: components["schemas"]["simple-repository"];
+ readonly analysis_status: components["schemas"]["code-scanning-variant-analysis-status"];
+ /** @description The size of the artifact. This is only available for successful analyses. */
+ readonly artifact_size_in_bytes?: number;
+ /** @description The number of results in the case of a successful analysis. This is only available for successful analyses. */
+ readonly result_count?: number;
+ /** @description The reason of the failure of this repo task. This is only available if the repository task has failed. */
+ readonly failure_message?: string;
+ /** @description The SHA of the commit the CodeQL database was built against. This is only available for successful analyses. */
+ readonly database_commit_sha?: string;
+ /** @description The source location prefix to use. This is only available for successful analyses. */
+ readonly source_location_prefix?: string;
+ /** @description The URL of the artifact. This is only available for successful analyses. */
+ readonly artifact_url?: string;
+ };
/** @description Configuration for code scanning default setup. */
readonly "code-scanning-default-setup": {
/**
@@ -30396,7 +30757,7 @@ export type components = {
* Repository Rule
* @description A repository rule with ruleset details.
*/
- readonly "repository-rule-detailed": (components["schemas"]["repository-rule-creation"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-update"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-deletion"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-linear-history"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-deployments"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-signatures"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-pull-request"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-status-checks"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-non-fast-forward"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-message-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-author-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-committer-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-branch-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-tag-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-workflows"] & components["schemas"]["repository-rule-ruleset-info"]);
+ readonly "repository-rule-detailed": (components["schemas"]["repository-rule-creation"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-update"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-deletion"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-linear-history"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-deployments"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-signatures"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-pull-request"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-status-checks"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-non-fast-forward"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-message-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-author-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-committer-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-branch-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-tag-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-workflows"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-code-scanning"] & components["schemas"]["repository-rule-ruleset-info"]);
readonly "secret-scanning-alert": {
readonly number?: components["schemas"]["alert-number"];
readonly created_at?: components["schemas"]["alert-created-at"];
@@ -31394,6 +31755,11 @@ export type components = {
* @example octocat@github.com
*/
readonly email: string | null;
+ /**
+ * Format: email
+ * @example octocat@github.com
+ */
+ readonly notification_email?: string | null;
readonly hireable: boolean | null;
/** @example There once was... */
readonly bio: string | null;
@@ -35247,6 +35613,26 @@ export type components = {
*/
readonly archived_at: string | null;
};
+ /**
+ * Projects v2 Single Select Option
+ * @description An option for a single select field
+ */
+ readonly "projects-v2-single-select-option": {
+ readonly id: string;
+ readonly name: string;
+ readonly color?: string | null;
+ readonly description?: string | null;
+ };
+ /**
+ * Projects v2 Iteration Setting
+ * @description An iteration setting for an iteration field
+ */
+ readonly "projects-v2-iteration-setting": {
+ readonly id: string;
+ readonly title: string;
+ readonly duration?: number | null;
+ readonly start_date?: string | null;
+ };
/** @description The pull request number. */
readonly webhooks_number: number;
readonly "pull-request-webhook": components["schemas"]["pull-request"] & {
@@ -37076,6 +37462,9 @@ export type components = {
readonly resolution_comment?: string | null;
/** @description The type of secret that secret scanning detected. */
readonly secret_type?: string;
+ /** @description User-friendly name for the detected secret, matching the `secret_type`.
+ * For a list of built-in patterns, see "[Secret scanning patterns](https://docs.github.com/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-advanced-security)." */
+ readonly secret_type_display_name?: string;
/**
* @description The token status as of the latest validity check.
* @enum {string}
@@ -41611,10 +42000,6 @@ export type components = {
/** Format: uri */
readonly contributors_url: string;
readonly created_at: number | string;
- /** @description The custom properties that were defined for the repository. The keys are the custom property names, and the values are the corresponding custom property values. */
- readonly custom_properties?: {
- readonly [key: string]: unknown;
- };
/** @description The default branch of the repository. */
readonly default_branch: string;
/**
@@ -50592,6 +50977,7 @@ export type components = {
/** @enum {string} */
readonly action: "approved";
readonly personal_access_token_request: components["schemas"]["personal-access-token-request"];
+ readonly enterprise?: components["schemas"]["enterprise-webhooks"];
readonly organization: components["schemas"]["organization-simple-webhooks"];
readonly sender: components["schemas"]["simple-user-webhooks"];
readonly installation: components["schemas"]["simple-installation"];
@@ -50601,6 +50987,7 @@ export type components = {
/** @enum {string} */
readonly action: "cancelled";
readonly personal_access_token_request: components["schemas"]["personal-access-token-request"];
+ readonly enterprise?: components["schemas"]["enterprise-webhooks"];
readonly organization: components["schemas"]["organization-simple-webhooks"];
readonly sender: components["schemas"]["simple-user-webhooks"];
readonly installation: components["schemas"]["simple-installation"];
@@ -50610,9 +50997,10 @@ export type components = {
/** @enum {string} */
readonly action: "created";
readonly personal_access_token_request: components["schemas"]["personal-access-token-request"];
+ readonly enterprise?: components["schemas"]["enterprise-webhooks"];
readonly organization: components["schemas"]["organization-simple-webhooks"];
readonly sender: components["schemas"]["simple-user-webhooks"];
- readonly installation: components["schemas"]["simple-installation"];
+ readonly installation?: components["schemas"]["simple-installation"];
};
/** personal_access_token_request denied event */
readonly "webhook-personal-access-token-request-denied": {
@@ -50620,6 +51008,7 @@ export type components = {
readonly action: "denied";
readonly personal_access_token_request: components["schemas"]["personal-access-token-request"];
readonly organization: components["schemas"]["organization-simple-webhooks"];
+ readonly enterprise?: components["schemas"]["enterprise-webhooks"];
readonly sender: components["schemas"]["simple-user-webhooks"];
readonly installation: components["schemas"]["simple-installation"];
};
@@ -51111,10 +51500,16 @@ export type components = {
readonly "webhook-projects-v2-item-edited": {
/** @enum {string} */
readonly action: "edited";
+ /** @description The changes made to the item may involve modifications in the item's fields and draft issue body.
+ * It includes altered values for text, number, date, single select, and iteration fields, along with the GraphQL node ID of the changed field. */
readonly changes?: {
readonly field_value: {
readonly field_node_id?: string;
readonly field_type?: string;
+ readonly field_name?: string;
+ readonly project_number?: number;
+ readonly from?: (string | number | components["schemas"]["projects-v2-single-select-option"] | components["schemas"]["projects-v2-iteration-setting"]) | null;
+ readonly to?: (string | number | components["schemas"]["projects-v2-single-select-option"] | components["schemas"]["projects-v2-iteration-setting"]) | null;
};
} | {
readonly body: {
@@ -80040,17 +80435,6 @@ export type components = {
readonly repository: components["schemas"]["repository-webhooks"];
readonly sender?: components["schemas"]["simple-user-webhooks"];
};
- /** secret_scanning_alert revoked event */
- readonly "webhook-secret-scanning-alert-revoked": {
- /** @enum {string} */
- readonly action: "revoked";
- readonly alert: components["schemas"]["secret-scanning-alert-webhook"];
- readonly enterprise?: components["schemas"]["enterprise-webhooks"];
- readonly installation?: components["schemas"]["simple-installation"];
- readonly organization?: components["schemas"]["organization-simple-webhooks"];
- readonly repository: components["schemas"]["repository-webhooks"];
- readonly sender?: components["schemas"]["simple-user-webhooks"];
- };
/** secret_scanning_alert validated event */
readonly "webhook-secret-scanning-alert-validated": {
/** @enum {string} */
@@ -84867,6 +85251,43 @@ export interface operations {
readonly 304: components["responses"]["not_modified"];
};
};
+ readonly "copilot/list-copilot-seats-for-enterprise": {
+ readonly parameters: {
+ readonly query?: {
+ /** @description The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
+ readonly page?: components["parameters"]["page"];
+ /** @description The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
+ readonly per_page?: number;
+ };
+ readonly header?: never;
+ readonly path: {
+ /** @description The slug version of the enterprise name. You can also substitute this value with the enterprise id. */
+ readonly enterprise: components["parameters"]["enterprise"];
+ };
+ readonly cookie?: never;
+ };
+ readonly requestBody?: never;
+ readonly responses: {
+ /** @description Response */
+ readonly 200: {
+ headers: {
+ readonly Link: components["headers"]["link"];
+ readonly [name: string]: unknown;
+ };
+ content: {
+ readonly "application/json": {
+ /** @description Total number of Copilot seats for the organization currently being billed. */
+ readonly total_seats?: number;
+ readonly seats?: readonly components["schemas"]["copilot-seat-details"][];
+ };
+ };
+ };
+ readonly 401: components["responses"]["requires_authentication"];
+ readonly 403: components["responses"]["forbidden"];
+ readonly 404: components["responses"]["not_found"];
+ readonly 500: components["responses"]["internal_error"];
+ };
+ };
readonly "copilot/usage-metrics-for-enterprise": {
readonly parameters: {
readonly query?: {
@@ -90790,7 +91211,7 @@ export interface operations {
readonly [name: string]: unknown;
};
content: {
- readonly "application/json": readonly components["schemas"]["team"][];
+ readonly "application/json": readonly components["schemas"]["team-role-assignment"][];
};
};
/** @description Response if the organization or role does not exist. */
@@ -90835,7 +91256,7 @@ export interface operations {
readonly [name: string]: unknown;
};
content: {
- readonly "application/json": readonly components["schemas"]["simple-user"][];
+ readonly "application/json": readonly components["schemas"]["user-role-assignment"][];
};
};
/** @description Response if the organization or role does not exist. */
@@ -91683,7 +92104,7 @@ export interface operations {
* @example single_select
* @enum {string}
*/
- readonly value_type: "string" | "single_select";
+ readonly value_type: "string" | "single_select" | "multi_select" | "true_false";
/** @description Whether the property is required. */
readonly required?: boolean;
/** @description Default value of the property */
@@ -92568,44 +92989,6 @@ export interface operations {
};
};
};
- readonly "copilot/usage-metrics-for-team": {
- readonly parameters: {
- readonly query?: {
- /** @description Show usage metrics since this date. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:MM:SSZ`). Maximum value is 28 days ago. */
- readonly since?: string;
- /** @description Show usage metrics until this date. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:MM:SSZ`) and should not preceed the `since` date if it is passed. */
- readonly until?: string;
- /** @description The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
- readonly page?: components["parameters"]["page"];
- /** @description The number of days of metrics to display per page (max 28). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
- readonly per_page?: number;
- };
- readonly header?: never;
- readonly path: {
- /** @description The organization name. The name is not case sensitive. */
- readonly org: components["parameters"]["org"];
- /** @description The slug of the team name. */
- readonly team_slug: components["parameters"]["team-slug"];
- };
- readonly cookie?: never;
- };
- readonly requestBody?: never;
- readonly responses: {
- /** @description Response */
- readonly 200: {
- headers: {
- readonly [name: string]: unknown;
- };
- content: {
- readonly "application/json": readonly components["schemas"]["copilot-usage-metrics"][];
- };
- };
- readonly 401: components["responses"]["requires_authentication"];
- readonly 403: components["responses"]["forbidden"];
- readonly 404: components["responses"]["not_found"];
- readonly 500: components["responses"]["internal_error"];
- };
- };
readonly "teams/list": {
readonly parameters: {
readonly query?: {
@@ -97429,7 +97812,7 @@ export interface operations {
readonly "repos/list-branches": {
readonly parameters: {
readonly query?: {
- /** @description Setting to `true` returns only protected branches. When set to `false`, only unprotected branches are returned. Omitting this parameter returns all branches. */
+ /** @description Setting to `true` returns only branches protected by branch protections or rulesets. When set to `false`, only unprotected branches are returned. Omitting this parameter returns all branches. */
readonly protected?: boolean;
/** @description The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
readonly per_page?: components["parameters"]["per-page"];
@@ -99509,6 +99892,118 @@ export interface operations {
readonly 503: components["responses"]["service_unavailable"];
};
};
+ readonly "code-scanning/create-variant-analysis": {
+ readonly parameters: {
+ readonly query?: never;
+ readonly header?: never;
+ readonly path: {
+ /** @description The account owner of the repository. The name is not case sensitive. */
+ readonly owner: components["parameters"]["owner"];
+ /** @description The name of the repository without the `.git` extension. The name is not case sensitive. */
+ readonly repo: components["parameters"]["repo"];
+ };
+ readonly cookie?: never;
+ };
+ readonly requestBody: {
+ readonly content: {
+ readonly "application/json": {
+ readonly language: components["schemas"]["code-scanning-variant-analysis-language"];
+ /** @description A Base64-encoded tarball containing a CodeQL query and all its dependencies */
+ readonly query_pack: string;
+ /** @description List of repository names (in the form `owner/repo-name`) to run the query against. Precisely one property from `repositories`, `repository_lists` and `repository_owners` is required. */
+ readonly repositories?: readonly string[];
+ /** @description List of repository lists to run the query against. Precisely one property from `repositories`, `repository_lists` and `repository_owners` is required. */
+ readonly repository_lists?: readonly string[];
+ /** @description List of organization or user names whose repositories the query should be run against. Precisely one property from `repositories`, `repository_lists` and `repository_owners` is required. */
+ readonly repository_owners?: readonly string[];
+ } & (unknown | unknown | unknown);
+ };
+ };
+ readonly responses: {
+ /** @description Variant analysis submitted for processing */
+ readonly 201: {
+ headers: {
+ readonly [name: string]: unknown;
+ };
+ content: {
+ readonly "application/json": components["schemas"]["code-scanning-variant-analysis"];
+ };
+ };
+ readonly 404: components["responses"]["not_found"];
+ /** @description Unable to process variant analysis submission */
+ readonly 422: {
+ headers: {
+ readonly [name: string]: unknown;
+ };
+ content: {
+ readonly "application/json": components["schemas"]["basic-error"];
+ };
+ };
+ readonly 503: components["responses"]["service_unavailable"];
+ };
+ };
+ readonly "code-scanning/get-variant-analysis": {
+ readonly parameters: {
+ readonly query?: never;
+ readonly header?: never;
+ readonly path: {
+ /** @description The account owner of the repository. The name is not case sensitive. */
+ readonly owner: components["parameters"]["owner"];
+ /** @description The name of the repository without the `.git` extension. The name is not case sensitive. */
+ readonly repo: components["parameters"]["repo"];
+ /** @description The unique identifier of the variant analysis. */
+ readonly codeql_variant_analysis_id: number;
+ };
+ readonly cookie?: never;
+ };
+ readonly requestBody?: never;
+ readonly responses: {
+ /** @description Response */
+ readonly 200: {
+ headers: {
+ readonly [name: string]: unknown;
+ };
+ content: {
+ readonly "application/json": components["schemas"]["code-scanning-variant-analysis"];
+ };
+ };
+ readonly 404: components["responses"]["not_found"];
+ readonly 503: components["responses"]["service_unavailable"];
+ };
+ };
+ readonly "code-scanning/get-variant-analysis-repo-task": {
+ readonly parameters: {
+ readonly query?: never;
+ readonly header?: never;
+ readonly path: {
+ /** @description The account owner of the repository. The name is not case sensitive. */
+ readonly owner: components["parameters"]["owner"];
+ /** @description The name of the controller repository. */
+ readonly repo: string;
+ /** @description The ID of the variant analysis. */
+ readonly codeql_variant_analysis_id: number;
+ /** @description The account owner of the variant analysis repository. The name is not case sensitive. */
+ readonly repo_owner: string;
+ /** @description The name of the variant analysis repository. */
+ readonly repo_name: string;
+ };
+ readonly cookie?: never;
+ };
+ readonly requestBody?: never;
+ readonly responses: {
+ /** @description Response */
+ readonly 200: {
+ headers: {
+ readonly [name: string]: unknown;
+ };
+ content: {
+ readonly "application/json": components["schemas"]["code-scanning-variant-analysis-repo-task"];
+ };
+ };
+ readonly 404: components["responses"]["not_found"];
+ readonly 503: components["responses"]["service_unavailable"];
+ };
+ };
readonly "code-scanning/get-default-setup": {
readonly parameters: {
readonly query?: never;
@@ -100546,9 +101041,9 @@ export interface operations {
readonly author?: string;
/** @description GitHub username or email address to use to filter by commit committer. */
readonly committer?: string;
- /** @description Only show results that were last updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. */
- readonly since?: components["parameters"]["since"];
- /** @description Only commits before this date will be returned. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. */
+ /** @description Only show results that were last updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. Due to limitations of Git, timestamps must be between 1970-01-01 and 2099-12-31 (inclusive) or unexpected results may be returned. */
+ readonly since?: string;
+ /** @description Only commits before this date will be returned. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. Due to limitations of Git, timestamps must be between 1970-01-01 and 2099-12-31 (inclusive) or unexpected results may be returned. */
readonly until?: string;
/** @description The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
readonly per_page?: components["parameters"]["per-page"];
@@ -101002,6 +101497,7 @@ export interface operations {
};
};
readonly 302: components["responses"]["found"];
+ readonly 304: components["responses"]["not_modified"];
readonly 403: components["responses"]["forbidden"];
readonly 404: components["responses"]["not_found"];
};
@@ -106151,7 +106647,7 @@ export interface operations {
readonly requestBody: {
readonly content: {
readonly "application/json": {
- /** @description Specify a custom domain for the repository. Sending a `null` value will remove the custom domain. For more about custom domains, see "[Using a custom domain with GitHub Pages](https://docs.github.com/articles/using-a-custom-domain-with-github-pages/)." */
+ /** @description Specify a custom domain for the repository. Sending a `null` value will remove the custom domain. For more about custom domains, see "[Using a custom domain with GitHub Pages](https://docs.github.com/pages/configuring-a-custom-domain-for-your-github-pages-site)." */
readonly cname?: string | null;
/** @description Specify whether HTTPS should be enforced for the repository. */
readonly https_enforced?: boolean;
@@ -107065,7 +107561,7 @@ export interface operations {
};
readonly requestBody?: never;
readonly responses: {
- /** @description Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) to fetch diff and patch formats. */
+ /** @description Pass the appropriate [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types) to fetch diff and patch formats. */
readonly 200: {
headers: {
readonly [name: string]: unknown;
diff --git a/packages/openapi-typescript/examples/github-api-immutable.ts b/packages/openapi-typescript/examples/github-api-immutable.ts
index e16d0646a..9df2630f0 100644
--- a/packages/openapi-typescript/examples/github-api-immutable.ts
+++ b/packages/openapi-typescript/examples/github-api-immutable.ts
@@ -340,7 +340,7 @@ export interface paths {
readonly post?: never;
/**
* Delete an app authorization
- * @description OAuth and GitHub application owners can revoke a grant for their application and a specific user. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the OAuth application's `client_id` and `client_secret` as the username and password. You must also provide a valid OAuth `access_token` as an input parameter and the grant for the token's owner will be deleted.
+ * @description OAuth and GitHub application owners can revoke a grant for their application and a specific user. You must provide a valid OAuth `access_token` as an input parameter and the grant for the token's owner will be deleted.
* Deleting an application's grant will also delete all OAuth tokens associated with the application for the user. Once deleted, the application will have no access to the user's account and will no longer be listed on [the application authorizations settings screen within GitHub](https://github.com/settings/applications#authorized).
*/
readonly delete: operations["apps/delete-authorization"];
@@ -360,19 +360,19 @@ export interface paths {
readonly put?: never;
/**
* Check a token
- * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method for checking OAuth token validity without exceeding the normal rate limits for failed login attempts. Authentication works differently with this particular endpoint. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) to use this endpoint, where the username is the application `client_id` and the password is its `client_secret`. Invalid tokens will return `404 NOT FOUND`.
+ * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method for checking OAuth token validity without exceeding the normal rate limits for failed login attempts. Authentication works differently with this particular endpoint. Invalid tokens will return `404 NOT FOUND`.
*/
readonly post: operations["apps/check-token"];
/**
* Delete an app token
- * @description OAuth or GitHub application owners can revoke a single token for an OAuth application or a GitHub application with an OAuth authorization. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the application's `client_id` and `client_secret` as the username and password.
+ * @description OAuth or GitHub application owners can revoke a single token for an OAuth application or a GitHub application with an OAuth authorization.
*/
readonly delete: operations["apps/delete-token"];
readonly options?: never;
readonly head?: never;
/**
* Reset a token
- * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method to reset a valid OAuth token without end-user involvement. Applications must save the "token" property in the response because changes take effect immediately. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the application's `client_id` and `client_secret` as the username and password. Invalid tokens will return `404 NOT FOUND`.
+ * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method to reset a valid OAuth token without end-user involvement. Applications must save the "token" property in the response because changes take effect immediately. Invalid tokens will return `404 NOT FOUND`.
*/
readonly patch: operations["apps/reset-token"];
readonly trace?: never;
@@ -393,10 +393,6 @@ export interface paths {
* token.
*
* Invalid tokens will return `404 NOT FOUND`.
- *
- * You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)
- * when accessing this endpoint, using the `client_id` and `client_secret` of the GitHub App
- * as the username and password.
*/
readonly post: operations["apps/scope-token"];
readonly delete?: never;
@@ -605,6 +601,32 @@ export interface paths {
readonly patch?: never;
readonly trace?: never;
};
+ readonly "/enterprises/{enterprise}/copilot/billing/seats": {
+ readonly parameters: {
+ readonly query?: never;
+ readonly header?: never;
+ readonly path?: never;
+ readonly cookie?: never;
+ };
+ /**
+ * List all Copilot seat assignments for an enterprise
+ * @description **Note**: This endpoint is in beta and is subject to change.
+ *
+ * Lists all active Copilot seats across organizations or enterprise teams for an enterprise with a Copilot Business or Copilot Enterprise subscription.
+ *
+ * Only enterprise owners and billing managers can view assigned Copilot seats across their child organizations or enterprise teams.
+ *
+ * Personal access tokens (classic) need either the `manage_billing:copilot` or `read:enterprise` scopes to use this endpoint.
+ */
+ readonly get: operations["copilot/list-copilot-seats-for-enterprise"];
+ readonly put?: never;
+ readonly post?: never;
+ readonly delete?: never;
+ readonly options?: never;
+ readonly head?: never;
+ readonly patch?: never;
+ readonly trace?: never;
+ };
readonly "/enterprises/{enterprise}/copilot/usage": {
readonly parameters: {
readonly query?: never;
@@ -624,10 +646,9 @@ export interface paths {
* and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
* they must have telemetry enabled in their IDE.
*
- * Only the owners and billing managers of enterprises with a Copilot Business or Enterprise subscription can view Copilot usage
- * metrics for the enterprise.
+ * Only owners and billing managers can view Copilot usage metrics for the enterprise.
*
- * OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:enterprise` scopes to use this endpoint.
*/
readonly get: operations["copilot/usage-metrics-for-enterprise"];
readonly put?: never;
@@ -731,7 +752,7 @@ export interface paths {
*
* By default, timeline resources are returned in JSON. You can specify the `application/atom+xml` type in the `Accept` header to return timeline resources in Atom format. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
- * **Note**: Private feeds are only returned when [authenticating via Basic Auth](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) since current feed URIs use the older, non revocable auth tokens.
+ * **Note**: Private feeds are only returned when [authenticating via Basic Auth](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) since current feed URIs use the older, non revocable auth tokens.
*/
readonly get: operations["activity/get-feeds"];
readonly put?: never;
@@ -1208,7 +1229,7 @@ export interface paths {
* Get a subscription plan for an account
* @description Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
readonly get: operations["apps/get-subscription-plan-for-account"];
readonly put?: never;
@@ -1230,7 +1251,7 @@ export interface paths {
* List plans
* @description Lists all plans that are part of your GitHub Marketplace listing.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
readonly get: operations["apps/list-plans"];
readonly put?: never;
@@ -1252,7 +1273,7 @@ export interface paths {
* List accounts for a plan
* @description Returns user and organization accounts associated with the specified plan, including free plans. For per-seat pricing, you see the list of accounts that have purchased the plan, including the number of seats purchased. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
readonly get: operations["apps/list-accounts-for-plan"];
readonly put?: never;
@@ -1274,7 +1295,7 @@ export interface paths {
* Get a subscription plan for an account (stubbed)
* @description Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
readonly get: operations["apps/get-subscription-plan-for-account-stubbed"];
readonly put?: never;
@@ -1296,7 +1317,7 @@ export interface paths {
* List plans (stubbed)
* @description Lists all plans that are part of your GitHub Marketplace listing.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
readonly get: operations["apps/list-plans-stubbed"];
readonly put?: never;
@@ -1318,7 +1339,7 @@ export interface paths {
* List accounts for a plan (stubbed)
* @description Returns repository and organization accounts associated with the specified plan, including free plans. For per-seat pricing, you see the list of accounts that have purchased the plan, including the number of seats purchased. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
readonly get: operations["apps/list-accounts-for-plan-stubbed"];
readonly put?: never;
@@ -2638,12 +2659,12 @@ export interface paths {
* @description **Note**: This endpoint is in beta and is subject to change.
*
* Gets information about an organization's Copilot subscription, including seat breakdown
- * and code matching policies. To configure these settings, go to your organization's settings on GitHub.com.
+ * and feature policies. To configure these settings, go to your organization's settings on GitHub.com.
* For more information, see "[Managing policies for Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-copilot-business-in-your-organization)".
*
- * Only organization owners can configure and view details about the organization's Copilot Business subscription.
+ * Only organization owners can view details about the organization's Copilot Business or Copilot Enterprise subscription.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
*/
readonly get: operations["copilot/get-copilot-organization-details"];
readonly put?: never;
@@ -2665,11 +2686,10 @@ export interface paths {
* List all Copilot seat assignments for an organization
* @description **Note**: This endpoint is in beta and is subject to change.
*
- * Lists all Copilot seat assignments for an organization that are currently being billed (either active or pending cancellation at the start of the next billing cycle).
- *
- * Only organization owners can configure and view details about the organization's Copilot Business or Enterprise subscription.
+ * Lists all active Copilot seats for an organization with a Copilot Business or Copilot Enterprise subscription.
+ * Only organization owners can view assigned seats.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
*/
readonly get: operations["copilot/list-copilot-seats"];
readonly put?: never;
@@ -2696,13 +2716,13 @@ export interface paths {
* Purchases a GitHub Copilot seat for all users within each specified team.
* The organization will be billed accordingly. For more information about Copilot pricing, see "[Pricing for GitHub Copilot](https://docs.github.com/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot#about-billing-for-github-copilot)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can add Copilot seats for their organization members.
*
* In order for an admin to use this endpoint, the organization must have a Copilot Business or Enterprise subscription and a configured suggestion matching policy.
* For more information about setting up a Copilot subscription, see "[Setting up a Copilot subscription for your organization](https://docs.github.com/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription-for-your-organization-or-enterprise)".
* For more information about setting a suggestion matching policy, see "[Configuring suggestion matching policies for GitHub Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-github-copilot-in-your-organization#configuring-suggestion-matching-policies-for-github-copilot-in-your-organization)".
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
readonly post: operations["copilot/add-copilot-seats-for-teams"];
/**
@@ -2716,9 +2736,9 @@ export interface paths {
*
* For more information about disabling access to Copilot Business or Enterprise, see "[Revoking access to GitHub Copilot for specific users in your organization](https://docs.github.com/copilot/managing-copilot/managing-access-for-copilot-in-your-organization#revoking-access-to-github-copilot-for-specific-users-in-your-organization)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can cancel Copilot seats for their organization members.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
readonly delete: operations["copilot/cancel-copilot-seat-assignment-for-teams"];
readonly options?: never;
@@ -2742,13 +2762,13 @@ export interface paths {
* Purchases a GitHub Copilot seat for each user specified.
* The organization will be billed accordingly. For more information about Copilot pricing, see "[Pricing for GitHub Copilot](https://docs.github.com/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot#about-billing-for-github-copilot)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can add Copilot seats for their organization members.
*
* In order for an admin to use this endpoint, the organization must have a Copilot Business or Enterprise subscription and a configured suggestion matching policy.
* For more information about setting up a Copilot subscription, see "[Setting up a Copilot subscription for your organization](https://docs.github.com/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription-for-your-organization-or-enterprise)".
* For more information about setting a suggestion matching policy, see "[Configuring suggestion matching policies for GitHub Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-github-copilot-in-your-organization#configuring-suggestion-matching-policies-for-github-copilot-in-your-organization)".
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
readonly post: operations["copilot/add-copilot-seats-for-users"];
/**
@@ -2762,9 +2782,9 @@ export interface paths {
*
* For more information about disabling access to Copilot Business or Enterprise, see "[Revoking access to GitHub Copilot for specific users in your organization](https://docs.github.com/copilot/managing-copilot/managing-access-for-copilot-in-your-organization#revoking-access-to-github-copilot-for-specific-users-in-your-organization)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can cancel Copilot seats for their organization members.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
readonly delete: operations["copilot/cancel-copilot-seat-assignment-for-users"];
readonly options?: never;
@@ -2791,10 +2811,9 @@ export interface paths {
* and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
* they must have telemetry enabled in their IDE.
*
- * Copilot Business or Copilot Enterprise organization owners, and owners and billing managers of their parent enterprises, can view
- * Copilot usage metrics.
+ * Organization owners, and owners and billing managers of the parent enterprise, can view Copilot usage metrics.
*
- * OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:org`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot`, `read:org`, or `read:enterprise` scopes to use this endpoint.
*/
readonly get: operations["copilot/usage-metrics-for-org"];
readonly put?: never;
@@ -3329,7 +3348,10 @@ export interface paths {
};
/**
* List pending organization invitations
- * @description The return hash contains a `role` field which refers to the Organization Invitation role and will be one of the following values: `direct_member`, `admin`, `billing_manager`, or `hiring_manager`. If the invitee is not a GitHub member, the `login` field in the return hash will be `null`.
+ * @description The return hash contains a `role` field which refers to the Organization
+ * Invitation role and will be one of the following values: `direct_member`, `admin`,
+ * `billing_manager`, or `hiring_manager`. If the invitee is not a GitHub
+ * member, the `login` field in the return hash will be `null`.
*/
readonly get: operations["orgs/list-pending-invitations"];
readonly put?: never;
@@ -3337,7 +3359,7 @@ export interface paths {
* Create an organization invitation
* @description Invite people to an organization by using their GitHub user ID or their email address. In order to create invitations in an organization, the authenticated user must be an organization owner.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
readonly post: operations["orgs/create-invitation"];
@@ -3544,9 +3566,9 @@ export interface paths {
*
* Gets the GitHub Copilot seat assignment details for a member of an organization who currently has access to GitHub Copilot.
*
- * Organization owners can view GitHub Copilot seat assignment details for members in their organization.
+ * Only organization owners can view Copilot seat assignment details for members of their organization.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
*/
readonly get: operations["copilot/get-copilot-seat-details-for-user"];
readonly put?: never;
@@ -3579,7 +3601,7 @@ export interface paths {
*
* **Rate limits**
*
- * To prevent abuse, the authenticated user is limited to 50 organization invitations per 24 hour period. If the organization is more than one month old or on a paid plan, the limit is 500 invitations per 24 hour period.
+ * To prevent abuse, organization owners are limited to creating 50 organization invitations for an organization within a 24 hour period. If the organization is more than one month old or on a paid plan, the limit is 500 invitations per 24 hour period.
*/
readonly put: operations["orgs/set-membership-for-user"];
readonly post?: never;
@@ -4809,41 +4831,6 @@ export interface paths {
readonly patch?: never;
readonly trace?: never;
};
- readonly "/orgs/{org}/team/{team_slug}/copilot/usage": {
- readonly parameters: {
- readonly query?: never;
- readonly header?: never;
- readonly path?: never;
- readonly cookie?: never;
- };
- /**
- * Get a summary of Copilot usage for a team
- * @description **Note**: This endpoint is in beta and is subject to change.
- *
- * You can use this endpoint to see a daily breakdown of aggregated usage metrics for Copilot completions and Copilot Chat in the IDE
- * for users within a team, with a further breakdown of suggestions, acceptances, and number of active users by editor and language for each day.
- * See the response schema tab for detailed metrics definitions.
- *
- * The response contains metrics for the prior 28 days. Usage metrics are processed once per day for the previous day,
- * and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
- * they must have telemetry enabled in their IDE.
- *
- * **Note**: This endpoint will only return results for a given day if the team had five or more members on that day.
- *
- * Copilot Business or Copilot Enterprise organization owners for the organization that contains this team,
- * and owners and billing managers of their parent enterprises, can view Copilot usage metrics for a team.
- *
- * OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:org`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
- */
- readonly get: operations["copilot/usage-metrics-for-team"];
- readonly put?: never;
- readonly post?: never;
- readonly delete?: never;
- readonly options?: never;
- readonly head?: never;
- readonly patch?: never;
- readonly trace?: never;
- };
readonly "/orgs/{org}/teams": {
readonly parameters: {
readonly query?: never;
@@ -4927,7 +4914,7 @@ export interface paths {
* Create a discussion
* @description Creates a new discussion post on a team's page.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* **Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions`.
*
@@ -5001,7 +4988,7 @@ export interface paths {
* Create a discussion comment
* @description Creates a new comment on a team discussion.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* **Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments`.
*
@@ -5356,7 +5343,7 @@ export interface paths {
* Check team permissions for a repository
* @description Checks whether a team has `admin`, `push`, `maintain`, `triage`, or `pull` permission for a repository. Repositories inherited through a parent team will also be checked.
*
- * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `application/vnd.github.v3.repository+json` accept header.
+ * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types/) via the `application/vnd.github.v3.repository+json` accept header.
*
* If a team doesn't have permission for the repository, you will receive a `404 Not Found` response status.
*
@@ -5674,7 +5661,7 @@ export interface paths {
* * The `dependency_snapshots` object provides your rate limit status for submitting snapshots to the dependency graph. For more information, see "[Dependency graph](https://docs.github.com/rest/dependency-graph)."
* * The `code_scanning_upload` object provides your rate limit status for uploading SARIF results to code scanning. For more information, see "[Uploading a SARIF file to GitHub](https://docs.github.com/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github)."
* * The `actions_runner_registration` object provides your rate limit status for registering self-hosted runners in GitHub Actions. For more information, see "[Self-hosted runners](https://docs.github.com/rest/actions/self-hosted-runners)."
- * * The `source_import` object is no longer in use for any API endpoints, and it will be removed in the next API version. For more information about API versions, see "[API Versions](https://docs.github.com/rest/overview/api-versions)."
+ * * The `source_import` object is no longer in use for any API endpoints, and it will be removed in the next API version. For more information about API versions, see "[API Versions](https://docs.github.com/rest/about-the-rest-api/api-versions)."
*
* **Note:** The `rate` object is deprecated. If you're writing new API client code or updating existing code, you should use the `core` object instead of the `rate` object. The `core` object contains the same information that is present in the `rate` object.
*/
@@ -8172,7 +8159,7 @@ export interface paths {
*
* By default this endpoint returns JSON metadata about the CodeQL database. To
* download the CodeQL database binary content, set the `Accept` header of the request
- * to [`application/zip`](https://docs.github.com/rest/overview/media-types), and make sure
+ * to [`application/zip`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types), and make sure
* your HTTP client is configured to follow redirects or use the `Location` header
* to make a second request to get the redirect URL.
*
@@ -8187,6 +8174,77 @@ export interface paths {
readonly patch?: never;
readonly trace?: never;
};
+ readonly "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses": {
+ readonly parameters: {
+ readonly query?: never;
+ readonly header?: never;
+ readonly path?: never;
+ readonly cookie?: never;
+ };
+ readonly get?: never;
+ readonly put?: never;
+ /**
+ * Create a CodeQL variant analysis
+ * @description Creates a new CodeQL variant analysis, which will run a CodeQL query against one or more repositories.
+ *
+ * Get started by learning more about [running CodeQL queries at scale with Multi-Repository Variant Analysis](https://docs.github.com/code-security/codeql-for-vs-code/getting-started-with-codeql-for-vs-code/running-codeql-queries-at-scale-with-multi-repository-variant-analysis).
+ *
+ * Use the `owner` and `repo` parameters in the URL to specify the controller repository that
+ * will be used for running GitHub Actions workflows and storing the results of the CodeQL variant analysis.
+ *
+ * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint.
+ */
+ readonly post: operations["code-scanning/create-variant-analysis"];
+ readonly delete?: never;
+ readonly options?: never;
+ readonly head?: never;
+ readonly patch?: never;
+ readonly trace?: never;
+ };
+ readonly "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}": {
+ readonly parameters: {
+ readonly query?: never;
+ readonly header?: never;
+ readonly path?: never;
+ readonly cookie?: never;
+ };
+ /**
+ * Get the summary of a CodeQL variant analysis
+ * @description Gets the summary of a CodeQL variant analysis.
+ *
+ * OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ */
+ readonly get: operations["code-scanning/get-variant-analysis"];
+ readonly put?: never;
+ readonly post?: never;
+ readonly delete?: never;
+ readonly options?: never;
+ readonly head?: never;
+ readonly patch?: never;
+ readonly trace?: never;
+ };
+ readonly "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}/repos/{repo_owner}/{repo_name}": {
+ readonly parameters: {
+ readonly query?: never;
+ readonly header?: never;
+ readonly path?: never;
+ readonly cookie?: never;
+ };
+ /**
+ * Get the analysis status of a repository in a CodeQL variant analysis
+ * @description Gets the analysis status of a repository in a CodeQL variant analysis.
+ *
+ * OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ */
+ readonly get: operations["code-scanning/get-variant-analysis-repo-task"];
+ readonly put?: never;
+ readonly post?: never;
+ readonly delete?: never;
+ readonly options?: never;
+ readonly head?: never;
+ readonly patch?: never;
+ readonly trace?: never;
+ };
readonly "/repos/{owner}/{repo}/code-scanning/default-setup": {
readonly parameters: {
readonly query?: never;
@@ -8258,6 +8316,8 @@ export interface paths {
* For more information, see "[Get information about a SARIF upload](/rest/code-scanning/code-scanning#get-information-about-a-sarif-upload)."
*
* OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ *
+ * This endpoint is limited to 1,000 requests per hour for each user or app installation calling it.
*/
readonly post: operations["code-scanning/upload-sarif"];
readonly delete?: never;
@@ -8558,7 +8618,7 @@ export interface paths {
readonly get: operations["repos/check-collaborator"];
/**
* Add a repository collaborator
- * @description This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * @description This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* Adding an outside collaborator may be restricted by enterprise administrators. For more information, see "[Enforcing repository management policies in your enterprise](https://docs.github.com/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-outside-collaborators-to-repositories)."
*
@@ -8843,7 +8903,7 @@ export interface paths {
* Create a commit comment
* @description Create a comment for a commit using its `:commit_sha`.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
@@ -9093,7 +9153,7 @@ export interface paths {
*
* To process a response with a large number of commits, use a query parameter (`per_page` or `page`) to paginate the results. When using pagination:
*
- * - The list of changed files is only shown on the first page of results, but it includes all changed files for the entire comparison.
+ * - The list of changed files is only shown on the first page of results, and it includes up to 300 changed files for the entire comparison.
* - The results are returned in chronological order, but the last commit in the returned list may not be the most recent one in the entire set if there are more pages of results.
*
* For more information on working with pagination, see "[Using pagination in the REST API](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api)."
@@ -10882,7 +10942,7 @@ export interface paths {
* Create an issue
* @description Any user with pull access to a repository can create an issue. If [issues are disabled in the repository](https://docs.github.com/articles/disabling-issues/), the API returns a `410 Gone` status.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -11180,7 +11240,7 @@ export interface paths {
*
* This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications).
* Creating content too quickly using this endpoint may result in secondary rate limiting.
- * For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -11952,7 +12012,7 @@ export interface paths {
*
* To open or update a pull request in a public repository, you must have write access to the head or the source branch. For organization-owned repositories, you must be a member of the organization that owns the repository to open or update a pull request.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
@@ -12107,7 +12167,7 @@ export interface paths {
* * If merged via a [squash](https://docs.github.com/articles/about-merge-methods-on-github/#squashing-your-merge-commits), `merge_commit_sha` represents the SHA of the squashed commit on the base branch.
* * If [rebased](https://docs.github.com/articles/about-merge-methods-on-github/#rebasing-and-merging-your-commits), `merge_commit_sha` represents the commit that the base branch was updated to.
*
- * Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) to fetch diff and patch formats.
+ * Pass the appropriate [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types) to fetch diff and patch formats.
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
@@ -12190,7 +12250,7 @@ export interface paths {
*
* The `position` parameter is deprecated. If you use `position`, the `line`, `side`, `start_line`, and `start_side` parameters are not required.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -12220,7 +12280,7 @@ export interface paths {
* Create a reply for a review comment
* @description Creates a reply to a review comment for a pull request. For the `comment_id`, provide the ID of the review comment you are replying to. This must be the ID of a _top-level review comment_, not a reply to that comment. Replies to replies are not supported.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -12311,7 +12371,7 @@ export interface paths {
/**
* Merge a pull request
* @description Merges a pull request into the base branch.
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
readonly put: operations["pulls/merge"];
readonly post?: never;
@@ -12337,7 +12397,7 @@ export interface paths {
/**
* Request reviewers for a pull request
* @description Requests reviews for a pull request from a given set of users and/or teams.
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
readonly post: operations["pulls/request-reviewers"];
/**
@@ -12374,7 +12434,7 @@ export interface paths {
* Create a review for a pull request
* @description Creates a review on a specified pull request.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* Pull request reviews created in the `PENDING` state are not submitted and therefore do not include the `submitted_at` property in the response. To create a pending review for a pull request, leave the `event` parameter blank. For more information about submitting a `PENDING` review, see "[Submit a review for a pull request](https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request)."
*
@@ -12619,7 +12679,7 @@ export interface paths {
* Create a release
* @description Users with push access to the repository can create a release.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
readonly post: operations["repos/create-release"];
readonly delete?: never;
@@ -12637,7 +12697,7 @@ export interface paths {
};
/**
* Get a release asset
- * @description To download the asset's binary content, set the `Accept` header of the request to [`application/octet-stream`](https://docs.github.com/rest/overview/media-types). The API will either redirect the client to the location, or stream it directly if possible. API clients should handle both a `200` or `302` response.
+ * @description To download the asset's binary content, set the `Accept` header of the request to [`application/octet-stream`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types). The API will either redirect the client to the location, or stream it directly if possible. API clients should handle both a `200` or `302` response.
*/
readonly get: operations["repos/get-release-asset"];
readonly put?: never;
@@ -13408,16 +13468,24 @@ export interface paths {
readonly cookie?: never;
};
/**
- * List tag protection states for a repository
- * @description This returns the tag protection states of a repository.
+ * Deprecated - List tag protection states for a repository
+ * @deprecated
+ * @description **Note**: This operation is deprecated and will be removed after August 30th 2024
+ * Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#get-all-repository-rulesets)" endpoint instead.
+ *
+ * This returns the tag protection states of a repository.
*
* This information is only available to repository administrators.
*/
readonly get: operations["repos/list-tag-protection"];
readonly put?: never;
/**
- * Create a tag protection state for a repository
- * @description This creates a tag protection state for a repository.
+ * Deprecated - Create a tag protection state for a repository
+ * @deprecated
+ * @description **Note**: This operation is deprecated and will be removed after August 30th 2024
+ * Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#create-a-repository-ruleset)" endpoint instead.
+ *
+ * This creates a tag protection state for a repository.
* This endpoint is only available to repository administrators.
*/
readonly post: operations["repos/create-tag-protection"];
@@ -13438,8 +13506,12 @@ export interface paths {
readonly put?: never;
readonly post?: never;
/**
- * Delete a tag protection state for a repository
- * @description This deletes a tag protection state for a repository.
+ * Deprecated - Delete a tag protection state for a repository
+ * @deprecated
+ * @description **Note**: This operation is deprecated and will be removed after August 30th 2024
+ * Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#delete-a-repository-ruleset)" endpoint instead.
+ *
+ * This deletes a tag protection state for a repository.
* This endpoint is only available to repository administrators.
*/
readonly delete: operations["repos/delete-tag-protection"];
@@ -13988,7 +14060,7 @@ export interface paths {
*
* Creates a new discussion post on a team's page.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.
*/
@@ -14067,7 +14139,7 @@ export interface paths {
*
* Creates a new comment on a team discussion.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.
*/
@@ -14443,7 +14515,7 @@ export interface paths {
*
* **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Check team permissions for a repository](https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-repository) endpoint.
*
- * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `Accept` header:
+ * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types/) via the `Accept` header:
*/
readonly get: operations["teams/check-permissions-for-repo-legacy"];
/**
@@ -15176,12 +15248,16 @@ export interface paths {
/**
* Add a repository to an app installation
* @description Add a single repository to an installation. The authenticated user must have admin access to the repository.
+ *
+ * This endpoint only works for PATs (classic) with the `repo` scope.
*/
readonly put: operations["apps/add-repo-to-installation-for-authenticated-user"];
readonly post?: never;
/**
* Remove a repository from an app installation
* @description Remove a single repository from an installation. The authenticated user must have admin access to the repository. The installation must have the `repository_selection` of `selected`.
+ *
+ * This endpoint only works for PATs (classic) with the `repo` scope.
*/
readonly delete: operations["apps/remove-repo-from-installation-for-authenticated-user"];
readonly options?: never;
@@ -17258,6 +17334,12 @@ export interface components {
* @example 123
*/
readonly repository_id: number | null;
+ /**
+ * Format: date-time
+ * @description Time when the webhook delivery was throttled.
+ * @example 2021-05-12T20:33:44Z
+ */
+ readonly throttled_at?: string | null;
};
/**
* Scim Error
@@ -17348,6 +17430,12 @@ export interface components {
* @example 123
*/
readonly repository_id: number | null;
+ /**
+ * Format: date-time
+ * @description Time when the webhook delivery was throttled.
+ * @example 2021-05-12T20:33:44Z
+ */
+ readonly throttled_at?: string | null;
/**
* @description The URL target of the delivery.
* @example https://www.example.com
@@ -18648,6 +18736,280 @@ export interface components {
/** Format: uri */
readonly html_url: string | null;
};
+ /**
+ * Team Simple
+ * @description Groups of organization members that gives permissions on specified repositories.
+ */
+ readonly "nullable-team-simple": {
+ /**
+ * @description Unique identifier of the team
+ * @example 1
+ */
+ readonly id: number;
+ /** @example MDQ6VGVhbTE= */
+ readonly node_id: string;
+ /**
+ * Format: uri
+ * @description URL for the team
+ * @example https://api.github.com/organizations/1/team/1
+ */
+ readonly url: string;
+ /** @example https://api.github.com/organizations/1/team/1/members{/member} */
+ readonly members_url: string;
+ /**
+ * @description Name of the team
+ * @example Justice League
+ */
+ readonly name: string;
+ /**
+ * @description Description of the team
+ * @example A great team.
+ */
+ readonly description: string | null;
+ /**
+ * @description Permission that the team will have for its repositories
+ * @example admin
+ */
+ readonly permission: string;
+ /**
+ * @description The level of privacy this team should have
+ * @example closed
+ */
+ readonly privacy?: string;
+ /**
+ * @description The notification setting the team has set
+ * @example notifications_enabled
+ */
+ readonly notification_setting?: string;
+ /**
+ * Format: uri
+ * @example https://github.com/orgs/rails/teams/core
+ */
+ readonly html_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/organizations/1/team/1/repos
+ */
+ readonly repositories_url: string;
+ /** @example justice-league */
+ readonly slug: string;
+ /**
+ * @description Distinguished Name (DN) that team maps to within LDAP environment
+ * @example uid=example,ou=users,dc=github,dc=com
+ */
+ readonly ldap_dn?: string;
+ } | null;
+ /**
+ * Team
+ * @description Groups of organization members that gives permissions on specified repositories.
+ */
+ readonly team: {
+ readonly id: number;
+ readonly node_id: string;
+ readonly name: string;
+ readonly slug: string;
+ readonly description: string | null;
+ readonly privacy?: string;
+ readonly notification_setting?: string;
+ readonly permission: string;
+ readonly permissions?: {
+ readonly pull: boolean;
+ readonly triage: boolean;
+ readonly push: boolean;
+ readonly maintain: boolean;
+ readonly admin: boolean;
+ };
+ /** Format: uri */
+ readonly url: string;
+ /**
+ * Format: uri
+ * @example https://github.com/orgs/rails/teams/core
+ */
+ readonly html_url: string;
+ readonly members_url: string;
+ /** Format: uri */
+ readonly repositories_url: string;
+ readonly parent: components["schemas"]["nullable-team-simple"];
+ };
+ /**
+ * Organization
+ * @description GitHub account for managing multiple users, teams, and repositories
+ */
+ readonly organization: {
+ /**
+ * @description Unique login name of the organization
+ * @example new-org
+ */
+ readonly login: string;
+ /**
+ * Format: uri
+ * @description URL for the organization
+ * @example https://api.github.com/orgs/github
+ */
+ readonly url: string;
+ readonly id: number;
+ readonly node_id: string;
+ /** Format: uri */
+ readonly repos_url: string;
+ /** Format: uri */
+ readonly events_url: string;
+ readonly hooks_url: string;
+ readonly issues_url: string;
+ readonly members_url: string;
+ readonly public_members_url: string;
+ readonly avatar_url: string;
+ readonly description: string | null;
+ /**
+ * Format: uri
+ * @description Display blog url for the organization
+ * @example blog.example-org.com
+ */
+ readonly blog?: string;
+ /** Format: uri */
+ readonly html_url: string;
+ /**
+ * @description Display name for the organization
+ * @example New Org
+ */
+ readonly name?: string;
+ /**
+ * @description Display company name for the organization
+ * @example Acme corporation
+ */
+ readonly company?: string;
+ /**
+ * @description Display location for the organization
+ * @example Berlin, Germany
+ */
+ readonly location?: string;
+ /**
+ * Format: email
+ * @description Display email for the organization
+ * @example org@example.com
+ */
+ readonly email?: string;
+ /** @description Specifies if organization projects are enabled for this org */
+ readonly has_organization_projects: boolean;
+ /** @description Specifies if repository projects are enabled for repositories that belong to this org */
+ readonly has_repository_projects: boolean;
+ readonly is_verified?: boolean;
+ readonly public_repos: number;
+ readonly public_gists: number;
+ readonly followers: number;
+ readonly following: number;
+ readonly type: string;
+ /** Format: date-time */
+ readonly created_at: string;
+ /** Format: date-time */
+ readonly updated_at: string;
+ readonly plan?: {
+ readonly name?: string;
+ readonly space?: number;
+ readonly private_repos?: number;
+ readonly filled_seats?: number;
+ readonly seats?: number;
+ };
+ };
+ /**
+ * Organization Simple
+ * @description A GitHub organization.
+ */
+ readonly "organization-simple": {
+ /** @example github */
+ readonly login: string;
+ /** @example 1 */
+ readonly id: number;
+ /** @example MDEyOk9yZ2FuaXphdGlvbjE= */
+ readonly node_id: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/orgs/github
+ */
+ readonly url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/orgs/github/repos
+ */
+ readonly repos_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/orgs/github/events
+ */
+ readonly events_url: string;
+ /** @example https://api.github.com/orgs/github/hooks */
+ readonly hooks_url: string;
+ /** @example https://api.github.com/orgs/github/issues */
+ readonly issues_url: string;
+ /** @example https://api.github.com/orgs/github/members{/member} */
+ readonly members_url: string;
+ /** @example https://api.github.com/orgs/github/public_members{/member} */
+ readonly public_members_url: string;
+ /** @example https://github.com/images/error/octocat_happy.gif */
+ readonly avatar_url: string;
+ /** @example A great organization */
+ readonly description: string | null;
+ };
+ /**
+ * Enterprise Team
+ * @description Group of enterprise owners and/or members
+ */
+ readonly "enterprise-team": {
+ readonly id: number;
+ readonly name: string;
+ readonly slug: string;
+ /** Format: uri */
+ readonly url: string;
+ /** @example disabled | all */
+ readonly sync_to_organizations: string;
+ /** @example 1 */
+ readonly group_id?: number | null;
+ /**
+ * Format: uri
+ * @example https://github.com/enterprises/dc/teams/justice-league
+ */
+ readonly html_url: string;
+ readonly members_url: string;
+ /** Format: date-time */
+ readonly created_at: string;
+ /** Format: date-time */
+ readonly updated_at: string;
+ };
+ /**
+ * Copilot Business Seat Detail
+ * @description Information about a Copilot Business seat assignment for a user, team, or organization.
+ */
+ readonly "copilot-seat-details": {
+ /** @description The assignee that has been granted access to GitHub Copilot. */
+ readonly assignee: {
+ readonly [key: string]: unknown;
+ } & (components["schemas"]["simple-user"] | components["schemas"]["team"] | components["schemas"]["organization"]);
+ /** @description The organization to which this seat belongs. */
+ readonly organization?: components["schemas"]["organization-simple"] | null;
+ /** @description The team through which the assignee is granted access to GitHub Copilot, if applicable. */
+ readonly assigning_team?: (components["schemas"]["team"] | components["schemas"]["enterprise-team"]) | null;
+ /**
+ * Format: date
+ * @description The pending cancellation date for the seat, in `YYYY-MM-DD` format. This will be null unless the assignee's Copilot access has been canceled during the current billing cycle. If the seat has been cancelled, this corresponds to the start of the organization's next billing cycle.
+ */
+ readonly pending_cancellation_date?: string | null;
+ /**
+ * Format: date-time
+ * @description Timestamp of user's last GitHub Copilot activity, in ISO 8601 format.
+ */
+ readonly last_activity_at?: string | null;
+ /** @description Last editor that was used by the user for a GitHub Copilot completion. */
+ readonly last_activity_editor?: string | null;
+ /**
+ * Format: date-time
+ * @description Timestamp of when the assignee was last granted access to GitHub Copilot, in ISO 8601 format.
+ */
+ readonly created_at: string;
+ /**
+ * Format: date-time
+ * @description Timestamp of when the assignee's GitHub Copilot access was last updated, in ISO 8601 format.
+ */
+ readonly updated_at?: string;
+ };
/**
* Copilot Usage Metrics
* @description Summary of Copilot usage.
@@ -19654,6 +20016,8 @@ export interface components {
readonly location: string | null;
/** Format: email */
readonly email: string | null;
+ /** Format: email */
+ readonly notification_email?: string | null;
readonly hireable: boolean | null;
readonly bio: string | null;
readonly twitter_username?: string | null;
@@ -20091,6 +20455,10 @@ export interface components {
* "192.0.2.1"
* ] */
readonly actions?: readonly string[];
+ /** @example [
+ * "192.0.2.1"
+ * ] */
+ readonly actions_macos?: readonly string[];
/** @example [
* "192.0.2.1"
* ] */
@@ -20387,45 +20755,6 @@ export interface components {
*/
readonly repository_url?: string;
};
- /**
- * Organization Simple
- * @description A GitHub organization.
- */
- readonly "organization-simple": {
- /** @example github */
- readonly login: string;
- /** @example 1 */
- readonly id: number;
- /** @example MDEyOk9yZ2FuaXphdGlvbjE= */
- readonly node_id: string;
- /**
- * Format: uri
- * @example https://api.github.com/orgs/github
- */
- readonly url: string;
- /**
- * Format: uri
- * @example https://api.github.com/orgs/github/repos
- */
- readonly repos_url: string;
- /**
- * Format: uri
- * @example https://api.github.com/orgs/github/events
- */
- readonly events_url: string;
- /** @example https://api.github.com/orgs/github/hooks */
- readonly hooks_url: string;
- /** @example https://api.github.com/orgs/github/issues */
- readonly issues_url: string;
- /** @example https://api.github.com/orgs/github/members{/member} */
- readonly members_url: string;
- /** @example https://api.github.com/orgs/github/public_members{/member} */
- readonly public_members_url: string;
- /** @example https://github.com/images/error/octocat_happy.gif */
- readonly avatar_url: string;
- /** @example A great organization */
- readonly description: string | null;
- };
/**
* Organization Full
* @description Organization Full
@@ -21295,214 +21624,6 @@ export interface components {
readonly seat_management_setting: "assign_all" | "assign_selected" | "disabled" | "unconfigured";
readonly [key: string]: unknown;
};
- /**
- * Team Simple
- * @description Groups of organization members that gives permissions on specified repositories.
- */
- readonly "nullable-team-simple": {
- /**
- * @description Unique identifier of the team
- * @example 1
- */
- readonly id: number;
- /** @example MDQ6VGVhbTE= */
- readonly node_id: string;
- /**
- * Format: uri
- * @description URL for the team
- * @example https://api.github.com/organizations/1/team/1
- */
- readonly url: string;
- /** @example https://api.github.com/organizations/1/team/1/members{/member} */
- readonly members_url: string;
- /**
- * @description Name of the team
- * @example Justice League
- */
- readonly name: string;
- /**
- * @description Description of the team
- * @example A great team.
- */
- readonly description: string | null;
- /**
- * @description Permission that the team will have for its repositories
- * @example admin
- */
- readonly permission: string;
- /**
- * @description The level of privacy this team should have
- * @example closed
- */
- readonly privacy?: string;
- /**
- * @description The notification setting the team has set
- * @example notifications_enabled
- */
- readonly notification_setting?: string;
- /**
- * Format: uri
- * @example https://github.com/orgs/rails/teams/core
- */
- readonly html_url: string;
- /**
- * Format: uri
- * @example https://api.github.com/organizations/1/team/1/repos
- */
- readonly repositories_url: string;
- /** @example justice-league */
- readonly slug: string;
- /**
- * @description Distinguished Name (DN) that team maps to within LDAP environment
- * @example uid=example,ou=users,dc=github,dc=com
- */
- readonly ldap_dn?: string;
- } | null;
- /**
- * Team
- * @description Groups of organization members that gives permissions on specified repositories.
- */
- readonly team: {
- readonly id: number;
- readonly node_id: string;
- readonly name: string;
- readonly slug: string;
- readonly description: string | null;
- readonly privacy?: string;
- readonly notification_setting?: string;
- readonly permission: string;
- readonly permissions?: {
- readonly pull: boolean;
- readonly triage: boolean;
- readonly push: boolean;
- readonly maintain: boolean;
- readonly admin: boolean;
- };
- /** Format: uri */
- readonly url: string;
- /**
- * Format: uri
- * @example https://github.com/orgs/rails/teams/core
- */
- readonly html_url: string;
- readonly members_url: string;
- /** Format: uri */
- readonly repositories_url: string;
- readonly parent: components["schemas"]["nullable-team-simple"];
- };
- /**
- * Organization
- * @description GitHub account for managing multiple users, teams, and repositories
- */
- readonly organization: {
- /**
- * @description Unique login name of the organization
- * @example new-org
- */
- readonly login: string;
- /**
- * Format: uri
- * @description URL for the organization
- * @example https://api.github.com/orgs/github
- */
- readonly url: string;
- readonly id: number;
- readonly node_id: string;
- /** Format: uri */
- readonly repos_url: string;
- /** Format: uri */
- readonly events_url: string;
- readonly hooks_url: string;
- readonly issues_url: string;
- readonly members_url: string;
- readonly public_members_url: string;
- readonly avatar_url: string;
- readonly description: string | null;
- /**
- * Format: uri
- * @description Display blog url for the organization
- * @example blog.example-org.com
- */
- readonly blog?: string;
- /** Format: uri */
- readonly html_url: string;
- /**
- * @description Display name for the organization
- * @example New Org
- */
- readonly name?: string;
- /**
- * @description Display company name for the organization
- * @example Acme corporation
- */
- readonly company?: string;
- /**
- * @description Display location for the organization
- * @example Berlin, Germany
- */
- readonly location?: string;
- /**
- * Format: email
- * @description Display email for the organization
- * @example org@example.com
- */
- readonly email?: string;
- /** @description Specifies if organization projects are enabled for this org */
- readonly has_organization_projects: boolean;
- /** @description Specifies if repository projects are enabled for repositories that belong to this org */
- readonly has_repository_projects: boolean;
- readonly is_verified?: boolean;
- readonly public_repos: number;
- readonly public_gists: number;
- readonly followers: number;
- readonly following: number;
- readonly type: string;
- /** Format: date-time */
- readonly created_at: string;
- /** Format: date-time */
- readonly updated_at: string;
- readonly plan?: {
- readonly name?: string;
- readonly space?: number;
- readonly private_repos?: number;
- readonly filled_seats?: number;
- readonly seats?: number;
- };
- };
- /**
- * Copilot Business Seat Detail
- * @description Information about a Copilot Business seat assignment for a user, team, or organization.
- */
- readonly "copilot-seat-details": {
- /** @description The assignee that has been granted access to GitHub Copilot. */
- readonly assignee: {
- readonly [key: string]: unknown;
- } & (components["schemas"]["simple-user"] | components["schemas"]["team"] | components["schemas"]["organization"]);
- /** @description The team that granted access to GitHub Copilot to the assignee. This will be null if the user was assigned a seat individually. */
- readonly assigning_team?: components["schemas"]["team"] | null;
- /**
- * Format: date
- * @description The pending cancellation date for the seat, in `YYYY-MM-DD` format. This will be null unless the assignee's Copilot access has been canceled during the current billing cycle. If the seat has been cancelled, this corresponds to the start of the organization's next billing cycle.
- */
- readonly pending_cancellation_date?: string | null;
- /**
- * Format: date-time
- * @description Timestamp of user's last GitHub Copilot activity, in ISO 8601 format.
- */
- readonly last_activity_at?: string | null;
- /** @description Last editor that was used by the user for a GitHub Copilot completion. */
- readonly last_activity_editor?: string | null;
- /**
- * Format: date-time
- * @description Timestamp of when the assignee was last granted access to GitHub Copilot, in ISO 8601 format.
- */
- readonly created_at: string;
- /**
- * Format: date-time
- * @description Timestamp of when the assignee's GitHub Copilot access was last updated, in ISO 8601 format.
- */
- readonly updated_at?: string;
- };
/**
* Dependabot Secret for an Organization
* @description Secrets for GitHub Dependabot for an organization.
@@ -22013,6 +22134,170 @@ export interface components {
*/
readonly updated_at: string;
};
+ /**
+ * A Role Assignment for a Team
+ * @description The Relationship a Team has with a role.
+ */
+ readonly "team-role-assignment": {
+ readonly id: number;
+ readonly node_id: string;
+ readonly name: string;
+ readonly slug: string;
+ readonly description: string | null;
+ readonly privacy?: string;
+ readonly notification_setting?: string;
+ readonly permission: string;
+ readonly permissions?: {
+ readonly pull: boolean;
+ readonly triage: boolean;
+ readonly push: boolean;
+ readonly maintain: boolean;
+ readonly admin: boolean;
+ };
+ /** Format: uri */
+ readonly url: string;
+ /**
+ * Format: uri
+ * @example https://github.com/orgs/rails/teams/core
+ */
+ readonly html_url: string;
+ readonly members_url: string;
+ /** Format: uri */
+ readonly repositories_url: string;
+ readonly parent: components["schemas"]["nullable-team-simple"];
+ };
+ /**
+ * Team Simple
+ * @description Groups of organization members that gives permissions on specified repositories.
+ */
+ readonly "team-simple": {
+ /**
+ * @description Unique identifier of the team
+ * @example 1
+ */
+ readonly id: number;
+ /** @example MDQ6VGVhbTE= */
+ readonly node_id: string;
+ /**
+ * Format: uri
+ * @description URL for the team
+ * @example https://api.github.com/organizations/1/team/1
+ */
+ readonly url: string;
+ /** @example https://api.github.com/organizations/1/team/1/members{/member} */
+ readonly members_url: string;
+ /**
+ * @description Name of the team
+ * @example Justice League
+ */
+ readonly name: string;
+ /**
+ * @description Description of the team
+ * @example A great team.
+ */
+ readonly description: string | null;
+ /**
+ * @description Permission that the team will have for its repositories
+ * @example admin
+ */
+ readonly permission: string;
+ /**
+ * @description The level of privacy this team should have
+ * @example closed
+ */
+ readonly privacy?: string;
+ /**
+ * @description The notification setting the team has set
+ * @example notifications_enabled
+ */
+ readonly notification_setting?: string;
+ /**
+ * Format: uri
+ * @example https://github.com/orgs/rails/teams/core
+ */
+ readonly html_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/organizations/1/team/1/repos
+ */
+ readonly repositories_url: string;
+ /** @example justice-league */
+ readonly slug: string;
+ /**
+ * @description Distinguished Name (DN) that team maps to within LDAP environment
+ * @example uid=example,ou=users,dc=github,dc=com
+ */
+ readonly ldap_dn?: string;
+ };
+ /**
+ * A Role Assignment for a User
+ * @description The Relationship a User has with a role.
+ */
+ readonly "user-role-assignment": {
+ readonly name?: string | null;
+ readonly email?: string | null;
+ /** @example octocat */
+ readonly login: string;
+ /** @example 1 */
+ readonly id: number;
+ /** @example MDQ6VXNlcjE= */
+ readonly node_id: string;
+ /**
+ * Format: uri
+ * @example https://github.com/images/error/octocat_happy.gif
+ */
+ readonly avatar_url: string;
+ /** @example 41d064eb2195891e12d0413f63227ea7 */
+ readonly gravatar_id: string | null;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat
+ */
+ readonly url: string;
+ /**
+ * Format: uri
+ * @example https://github.com/octocat
+ */
+ readonly html_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/followers
+ */
+ readonly followers_url: string;
+ /** @example https://api.github.com/users/octocat/following{/other_user} */
+ readonly following_url: string;
+ /** @example https://api.github.com/users/octocat/gists{/gist_id} */
+ readonly gists_url: string;
+ /** @example https://api.github.com/users/octocat/starred{/owner}{/repo} */
+ readonly starred_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/subscriptions
+ */
+ readonly subscriptions_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/orgs
+ */
+ readonly organizations_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/repos
+ */
+ readonly repos_url: string;
+ /** @example https://api.github.com/users/octocat/events{/privacy} */
+ readonly events_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/received_events
+ */
+ readonly received_events_url: string;
+ /** @example User */
+ readonly type: string;
+ readonly site_admin: boolean;
+ /** @example "2020-07-09T00:17:55Z" */
+ readonly starred_at?: string;
+ };
/**
* Package Version
* @description A version of a software package
@@ -22220,7 +22505,7 @@ export interface components {
* @example single_select
* @enum {string}
*/
- readonly value_type: "string" | "single_select";
+ readonly value_type: "string" | "single_select" | "multi_select" | "true_false";
/** @description Whether the property is required. */
readonly required?: boolean;
/** @description Default value of the property */
@@ -23302,6 +23587,18 @@ export interface components {
/** @description The name of a code scanning tool */
readonly tool: string;
};
+ /**
+ * code_scanning
+ * @description Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.
+ */
+ readonly "repository-rule-code-scanning": {
+ /** @enum {string} */
+ readonly type: "code_scanning";
+ readonly parameters?: {
+ /** @description Tools that must provide code scanning results for this rule to pass. */
+ readonly code_scanning_tools: readonly components["schemas"]["repository-rule-params-code-scanning-tool"][];
+ };
+ };
/**
* Repository Rule
* @description A repository rule.
@@ -23334,7 +23631,7 @@ export interface components {
/** @description The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS). */
readonly max_file_size: number;
};
- } | components["schemas"]["repository-rule-workflows"];
+ } | components["schemas"]["repository-rule-workflows"] | components["schemas"]["repository-rule-code-scanning"];
/**
* Repository ruleset
* @description A set of rules to apply when specified conditions are met.
@@ -23609,69 +23906,6 @@ export interface components {
/** @description A temporary private fork of the advisory's repository for collaborating on a fix. */
readonly private_fork: components["schemas"]["simple-repository"] | null;
};
- /**
- * Team Simple
- * @description Groups of organization members that gives permissions on specified repositories.
- */
- readonly "team-simple": {
- /**
- * @description Unique identifier of the team
- * @example 1
- */
- readonly id: number;
- /** @example MDQ6VGVhbTE= */
- readonly node_id: string;
- /**
- * Format: uri
- * @description URL for the team
- * @example https://api.github.com/organizations/1/team/1
- */
- readonly url: string;
- /** @example https://api.github.com/organizations/1/team/1/members{/member} */
- readonly members_url: string;
- /**
- * @description Name of the team
- * @example Justice League
- */
- readonly name: string;
- /**
- * @description Description of the team
- * @example A great team.
- */
- readonly description: string | null;
- /**
- * @description Permission that the team will have for its repositories
- * @example admin
- */
- readonly permission: string;
- /**
- * @description The level of privacy this team should have
- * @example closed
- */
- readonly privacy?: string;
- /**
- * @description The notification setting the team has set
- * @example notifications_enabled
- */
- readonly notification_setting?: string;
- /**
- * Format: uri
- * @example https://github.com/orgs/rails/teams/core
- */
- readonly html_url: string;
- /**
- * Format: uri
- * @example https://api.github.com/organizations/1/team/1/repos
- */
- readonly repositories_url: string;
- /** @example justice-league */
- readonly slug: string;
- /**
- * @description Distinguished Name (DN) that team maps to within LDAP environment
- * @example uid=example,ou=users,dc=github,dc=com
- */
- readonly ldap_dn?: string;
- };
readonly "actions-billing-usage": {
/** @description The sum of the free and paid GitHub Actions minutes used. */
readonly total_minutes_used: number;
@@ -26358,6 +26592,133 @@ export interface components {
/** @description The commit SHA of the repository at the time the CodeQL database was created. */
readonly commit_oid?: string | null;
};
+ /**
+ * @description The language targeted by the CodeQL query
+ * @enum {string}
+ */
+ readonly "code-scanning-variant-analysis-language": "cpp" | "csharp" | "go" | "java" | "javascript" | "python" | "ruby" | "swift";
+ /**
+ * Repository Identifier
+ * @description Repository Identifier
+ */
+ readonly "code-scanning-variant-analysis-repository": {
+ /**
+ * @description A unique identifier of the repository.
+ * @example 1296269
+ */
+ readonly id: number;
+ /**
+ * @description The name of the repository.
+ * @example Hello-World
+ */
+ readonly name: string;
+ /**
+ * @description The full, globally unique, name of the repository.
+ * @example octocat/Hello-World
+ */
+ readonly full_name: string;
+ /** @description Whether the repository is private. */
+ readonly private: boolean;
+ /** @example 80 */
+ readonly stargazers_count: number;
+ /**
+ * Format: date-time
+ * @example 2011-01-26T19:14:43Z
+ */
+ readonly updated_at: string | null;
+ };
+ /**
+ * @description The new status of the CodeQL variant analysis repository task.
+ * @enum {string}
+ */
+ readonly "code-scanning-variant-analysis-status": "pending" | "in_progress" | "succeeded" | "failed" | "canceled" | "timed_out";
+ readonly "code-scanning-variant-analysis-skipped-repo-group": {
+ /**
+ * @description The total number of repositories that were skipped for this reason.
+ * @example 2
+ */
+ readonly repository_count: number;
+ /** @description A list of repositories that were skipped. This list may not include all repositories that were skipped. This is only available when the repository was found and the user has access to it. */
+ readonly repositories: readonly components["schemas"]["code-scanning-variant-analysis-repository"][];
+ };
+ /**
+ * Variant Analysis
+ * @description A run of a CodeQL query against one or more repositories.
+ */
+ readonly "code-scanning-variant-analysis": {
+ /** @description The ID of the variant analysis. */
+ readonly id: number;
+ readonly controller_repo: components["schemas"]["simple-repository"];
+ readonly actor: components["schemas"]["simple-user"];
+ readonly query_language: components["schemas"]["code-scanning-variant-analysis-language"];
+ /** @description The download url for the query pack. */
+ readonly query_pack_url: string;
+ /**
+ * Format: date-time
+ * @description The date and time at which the variant analysis was created, in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ.
+ */
+ readonly created_at?: string;
+ /**
+ * Format: date-time
+ * @description The date and time at which the variant analysis was last updated, in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ.
+ */
+ readonly updated_at?: string;
+ /**
+ * Format: date-time
+ * @description The date and time at which the variant analysis was completed, in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ. Will be null if the variant analysis has not yet completed or this information is not available.
+ */
+ readonly completed_at?: string | null;
+ /** @enum {string} */
+ readonly status: "in_progress" | "succeeded" | "failed" | "cancelled";
+ /** @description The GitHub Actions workflow run used to execute this variant analysis. This is only available if the workflow run has started. */
+ readonly actions_workflow_run_id?: number;
+ /**
+ * @description The reason for a failure of the variant analysis. This is only available if the variant analysis has failed.
+ * @enum {string}
+ */
+ readonly failure_reason?: "no_repos_queried" | "actions_workflow_run_failed" | "internal_error";
+ readonly scanned_repositories?: readonly {
+ readonly repository: components["schemas"]["code-scanning-variant-analysis-repository"];
+ readonly analysis_status: components["schemas"]["code-scanning-variant-analysis-status"];
+ /** @description The number of results in the case of a successful analysis. This is only available for successful analyses. */
+ readonly result_count?: number;
+ /** @description The size of the artifact. This is only available for successful analyses. */
+ readonly artifact_size_in_bytes?: number;
+ /** @description The reason of the failure of this repo task. This is only available if the repository task has failed. */
+ readonly failure_message?: string;
+ }[];
+ /** @description Information about repositories that were skipped from processing. This information is only available to the user that initiated the variant analysis. */
+ readonly skipped_repositories?: {
+ readonly access_mismatch_repos: components["schemas"]["code-scanning-variant-analysis-skipped-repo-group"];
+ readonly not_found_repos: {
+ /**
+ * @description The total number of repositories that were skipped for this reason.
+ * @example 2
+ */
+ readonly repository_count: number;
+ /** @description A list of full repository names that were skipped. This list may not include all repositories that were skipped. */
+ readonly repository_full_names: readonly string[];
+ };
+ readonly no_codeql_db_repos: components["schemas"]["code-scanning-variant-analysis-skipped-repo-group"];
+ readonly over_limit_repos: components["schemas"]["code-scanning-variant-analysis-skipped-repo-group"];
+ };
+ };
+ readonly "code-scanning-variant-analysis-repo-task": {
+ readonly repository: components["schemas"]["simple-repository"];
+ readonly analysis_status: components["schemas"]["code-scanning-variant-analysis-status"];
+ /** @description The size of the artifact. This is only available for successful analyses. */
+ readonly artifact_size_in_bytes?: number;
+ /** @description The number of results in the case of a successful analysis. This is only available for successful analyses. */
+ readonly result_count?: number;
+ /** @description The reason of the failure of this repo task. This is only available if the repository task has failed. */
+ readonly failure_message?: string;
+ /** @description The SHA of the commit the CodeQL database was built against. This is only available for successful analyses. */
+ readonly database_commit_sha?: string;
+ /** @description The source location prefix to use. This is only available for successful analyses. */
+ readonly source_location_prefix?: string;
+ /** @description The URL of the artifact. This is only available for successful analyses. */
+ readonly artifact_url?: string;
+ };
/** @description Configuration for code scanning default setup. */
readonly "code-scanning-default-setup": {
/**
@@ -30396,7 +30757,7 @@ export interface components {
* Repository Rule
* @description A repository rule with ruleset details.
*/
- readonly "repository-rule-detailed": (components["schemas"]["repository-rule-creation"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-update"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-deletion"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-linear-history"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-deployments"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-signatures"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-pull-request"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-status-checks"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-non-fast-forward"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-message-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-author-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-committer-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-branch-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-tag-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-workflows"] & components["schemas"]["repository-rule-ruleset-info"]);
+ readonly "repository-rule-detailed": (components["schemas"]["repository-rule-creation"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-update"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-deletion"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-linear-history"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-deployments"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-signatures"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-pull-request"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-status-checks"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-non-fast-forward"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-message-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-author-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-committer-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-branch-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-tag-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-workflows"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-code-scanning"] & components["schemas"]["repository-rule-ruleset-info"]);
readonly "secret-scanning-alert": {
readonly number?: components["schemas"]["alert-number"];
readonly created_at?: components["schemas"]["alert-created-at"];
@@ -31394,6 +31755,11 @@ export interface components {
* @example octocat@github.com
*/
readonly email: string | null;
+ /**
+ * Format: email
+ * @example octocat@github.com
+ */
+ readonly notification_email?: string | null;
readonly hireable: boolean | null;
/** @example There once was... */
readonly bio: string | null;
@@ -35247,6 +35613,26 @@ export interface components {
*/
readonly archived_at: string | null;
};
+ /**
+ * Projects v2 Single Select Option
+ * @description An option for a single select field
+ */
+ readonly "projects-v2-single-select-option": {
+ readonly id: string;
+ readonly name: string;
+ readonly color?: string | null;
+ readonly description?: string | null;
+ };
+ /**
+ * Projects v2 Iteration Setting
+ * @description An iteration setting for an iteration field
+ */
+ readonly "projects-v2-iteration-setting": {
+ readonly id: string;
+ readonly title: string;
+ readonly duration?: number | null;
+ readonly start_date?: string | null;
+ };
/** @description The pull request number. */
readonly webhooks_number: number;
readonly "pull-request-webhook": components["schemas"]["pull-request"] & {
@@ -37076,6 +37462,9 @@ export interface components {
readonly resolution_comment?: string | null;
/** @description The type of secret that secret scanning detected. */
readonly secret_type?: string;
+ /** @description User-friendly name for the detected secret, matching the `secret_type`.
+ * For a list of built-in patterns, see "[Secret scanning patterns](https://docs.github.com/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-advanced-security)." */
+ readonly secret_type_display_name?: string;
/**
* @description The token status as of the latest validity check.
* @enum {string}
@@ -41611,10 +42000,6 @@ export interface components {
/** Format: uri */
readonly contributors_url: string;
readonly created_at: number | string;
- /** @description The custom properties that were defined for the repository. The keys are the custom property names, and the values are the corresponding custom property values. */
- readonly custom_properties?: {
- readonly [key: string]: unknown;
- };
/** @description The default branch of the repository. */
readonly default_branch: string;
/**
@@ -50592,6 +50977,7 @@ export interface components {
/** @enum {string} */
readonly action: "approved";
readonly personal_access_token_request: components["schemas"]["personal-access-token-request"];
+ readonly enterprise?: components["schemas"]["enterprise-webhooks"];
readonly organization: components["schemas"]["organization-simple-webhooks"];
readonly sender: components["schemas"]["simple-user-webhooks"];
readonly installation: components["schemas"]["simple-installation"];
@@ -50601,6 +50987,7 @@ export interface components {
/** @enum {string} */
readonly action: "cancelled";
readonly personal_access_token_request: components["schemas"]["personal-access-token-request"];
+ readonly enterprise?: components["schemas"]["enterprise-webhooks"];
readonly organization: components["schemas"]["organization-simple-webhooks"];
readonly sender: components["schemas"]["simple-user-webhooks"];
readonly installation: components["schemas"]["simple-installation"];
@@ -50610,9 +50997,10 @@ export interface components {
/** @enum {string} */
readonly action: "created";
readonly personal_access_token_request: components["schemas"]["personal-access-token-request"];
+ readonly enterprise?: components["schemas"]["enterprise-webhooks"];
readonly organization: components["schemas"]["organization-simple-webhooks"];
readonly sender: components["schemas"]["simple-user-webhooks"];
- readonly installation: components["schemas"]["simple-installation"];
+ readonly installation?: components["schemas"]["simple-installation"];
};
/** personal_access_token_request denied event */
readonly "webhook-personal-access-token-request-denied": {
@@ -50620,6 +51008,7 @@ export interface components {
readonly action: "denied";
readonly personal_access_token_request: components["schemas"]["personal-access-token-request"];
readonly organization: components["schemas"]["organization-simple-webhooks"];
+ readonly enterprise?: components["schemas"]["enterprise-webhooks"];
readonly sender: components["schemas"]["simple-user-webhooks"];
readonly installation: components["schemas"]["simple-installation"];
};
@@ -51111,10 +51500,16 @@ export interface components {
readonly "webhook-projects-v2-item-edited": {
/** @enum {string} */
readonly action: "edited";
+ /** @description The changes made to the item may involve modifications in the item's fields and draft issue body.
+ * It includes altered values for text, number, date, single select, and iteration fields, along with the GraphQL node ID of the changed field. */
readonly changes?: {
readonly field_value: {
readonly field_node_id?: string;
readonly field_type?: string;
+ readonly field_name?: string;
+ readonly project_number?: number;
+ readonly from?: (string | number | components["schemas"]["projects-v2-single-select-option"] | components["schemas"]["projects-v2-iteration-setting"]) | null;
+ readonly to?: (string | number | components["schemas"]["projects-v2-single-select-option"] | components["schemas"]["projects-v2-iteration-setting"]) | null;
};
} | {
readonly body: {
@@ -80040,17 +80435,6 @@ export interface components {
readonly repository: components["schemas"]["repository-webhooks"];
readonly sender?: components["schemas"]["simple-user-webhooks"];
};
- /** secret_scanning_alert revoked event */
- readonly "webhook-secret-scanning-alert-revoked": {
- /** @enum {string} */
- readonly action: "revoked";
- readonly alert: components["schemas"]["secret-scanning-alert-webhook"];
- readonly enterprise?: components["schemas"]["enterprise-webhooks"];
- readonly installation?: components["schemas"]["simple-installation"];
- readonly organization?: components["schemas"]["organization-simple-webhooks"];
- readonly repository: components["schemas"]["repository-webhooks"];
- readonly sender?: components["schemas"]["simple-user-webhooks"];
- };
/** secret_scanning_alert validated event */
readonly "webhook-secret-scanning-alert-validated": {
/** @enum {string} */
@@ -84867,6 +85251,43 @@ export interface operations {
readonly 304: components["responses"]["not_modified"];
};
};
+ readonly "copilot/list-copilot-seats-for-enterprise": {
+ readonly parameters: {
+ readonly query?: {
+ /** @description The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
+ readonly page?: components["parameters"]["page"];
+ /** @description The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
+ readonly per_page?: number;
+ };
+ readonly header?: never;
+ readonly path: {
+ /** @description The slug version of the enterprise name. You can also substitute this value with the enterprise id. */
+ readonly enterprise: components["parameters"]["enterprise"];
+ };
+ readonly cookie?: never;
+ };
+ readonly requestBody?: never;
+ readonly responses: {
+ /** @description Response */
+ readonly 200: {
+ headers: {
+ readonly Link: components["headers"]["link"];
+ readonly [name: string]: unknown;
+ };
+ content: {
+ readonly "application/json": {
+ /** @description Total number of Copilot seats for the organization currently being billed. */
+ readonly total_seats?: number;
+ readonly seats?: readonly components["schemas"]["copilot-seat-details"][];
+ };
+ };
+ };
+ readonly 401: components["responses"]["requires_authentication"];
+ readonly 403: components["responses"]["forbidden"];
+ readonly 404: components["responses"]["not_found"];
+ readonly 500: components["responses"]["internal_error"];
+ };
+ };
readonly "copilot/usage-metrics-for-enterprise": {
readonly parameters: {
readonly query?: {
@@ -90790,7 +91211,7 @@ export interface operations {
readonly [name: string]: unknown;
};
content: {
- readonly "application/json": readonly components["schemas"]["team"][];
+ readonly "application/json": readonly components["schemas"]["team-role-assignment"][];
};
};
/** @description Response if the organization or role does not exist. */
@@ -90835,7 +91256,7 @@ export interface operations {
readonly [name: string]: unknown;
};
content: {
- readonly "application/json": readonly components["schemas"]["simple-user"][];
+ readonly "application/json": readonly components["schemas"]["user-role-assignment"][];
};
};
/** @description Response if the organization or role does not exist. */
@@ -91683,7 +92104,7 @@ export interface operations {
* @example single_select
* @enum {string}
*/
- readonly value_type: "string" | "single_select";
+ readonly value_type: "string" | "single_select" | "multi_select" | "true_false";
/** @description Whether the property is required. */
readonly required?: boolean;
/** @description Default value of the property */
@@ -92568,44 +92989,6 @@ export interface operations {
};
};
};
- readonly "copilot/usage-metrics-for-team": {
- readonly parameters: {
- readonly query?: {
- /** @description Show usage metrics since this date. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:MM:SSZ`). Maximum value is 28 days ago. */
- readonly since?: string;
- /** @description Show usage metrics until this date. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:MM:SSZ`) and should not preceed the `since` date if it is passed. */
- readonly until?: string;
- /** @description The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
- readonly page?: components["parameters"]["page"];
- /** @description The number of days of metrics to display per page (max 28). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
- readonly per_page?: number;
- };
- readonly header?: never;
- readonly path: {
- /** @description The organization name. The name is not case sensitive. */
- readonly org: components["parameters"]["org"];
- /** @description The slug of the team name. */
- readonly team_slug: components["parameters"]["team-slug"];
- };
- readonly cookie?: never;
- };
- readonly requestBody?: never;
- readonly responses: {
- /** @description Response */
- readonly 200: {
- headers: {
- readonly [name: string]: unknown;
- };
- content: {
- readonly "application/json": readonly components["schemas"]["copilot-usage-metrics"][];
- };
- };
- readonly 401: components["responses"]["requires_authentication"];
- readonly 403: components["responses"]["forbidden"];
- readonly 404: components["responses"]["not_found"];
- readonly 500: components["responses"]["internal_error"];
- };
- };
readonly "teams/list": {
readonly parameters: {
readonly query?: {
@@ -97429,7 +97812,7 @@ export interface operations {
readonly "repos/list-branches": {
readonly parameters: {
readonly query?: {
- /** @description Setting to `true` returns only protected branches. When set to `false`, only unprotected branches are returned. Omitting this parameter returns all branches. */
+ /** @description Setting to `true` returns only branches protected by branch protections or rulesets. When set to `false`, only unprotected branches are returned. Omitting this parameter returns all branches. */
readonly protected?: boolean;
/** @description The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
readonly per_page?: components["parameters"]["per-page"];
@@ -99509,6 +99892,118 @@ export interface operations {
readonly 503: components["responses"]["service_unavailable"];
};
};
+ readonly "code-scanning/create-variant-analysis": {
+ readonly parameters: {
+ readonly query?: never;
+ readonly header?: never;
+ readonly path: {
+ /** @description The account owner of the repository. The name is not case sensitive. */
+ readonly owner: components["parameters"]["owner"];
+ /** @description The name of the repository without the `.git` extension. The name is not case sensitive. */
+ readonly repo: components["parameters"]["repo"];
+ };
+ readonly cookie?: never;
+ };
+ readonly requestBody: {
+ readonly content: {
+ readonly "application/json": {
+ readonly language: components["schemas"]["code-scanning-variant-analysis-language"];
+ /** @description A Base64-encoded tarball containing a CodeQL query and all its dependencies */
+ readonly query_pack: string;
+ /** @description List of repository names (in the form `owner/repo-name`) to run the query against. Precisely one property from `repositories`, `repository_lists` and `repository_owners` is required. */
+ readonly repositories?: readonly string[];
+ /** @description List of repository lists to run the query against. Precisely one property from `repositories`, `repository_lists` and `repository_owners` is required. */
+ readonly repository_lists?: readonly string[];
+ /** @description List of organization or user names whose repositories the query should be run against. Precisely one property from `repositories`, `repository_lists` and `repository_owners` is required. */
+ readonly repository_owners?: readonly string[];
+ } & (unknown | unknown | unknown);
+ };
+ };
+ readonly responses: {
+ /** @description Variant analysis submitted for processing */
+ readonly 201: {
+ headers: {
+ readonly [name: string]: unknown;
+ };
+ content: {
+ readonly "application/json": components["schemas"]["code-scanning-variant-analysis"];
+ };
+ };
+ readonly 404: components["responses"]["not_found"];
+ /** @description Unable to process variant analysis submission */
+ readonly 422: {
+ headers: {
+ readonly [name: string]: unknown;
+ };
+ content: {
+ readonly "application/json": components["schemas"]["basic-error"];
+ };
+ };
+ readonly 503: components["responses"]["service_unavailable"];
+ };
+ };
+ readonly "code-scanning/get-variant-analysis": {
+ readonly parameters: {
+ readonly query?: never;
+ readonly header?: never;
+ readonly path: {
+ /** @description The account owner of the repository. The name is not case sensitive. */
+ readonly owner: components["parameters"]["owner"];
+ /** @description The name of the repository without the `.git` extension. The name is not case sensitive. */
+ readonly repo: components["parameters"]["repo"];
+ /** @description The unique identifier of the variant analysis. */
+ readonly codeql_variant_analysis_id: number;
+ };
+ readonly cookie?: never;
+ };
+ readonly requestBody?: never;
+ readonly responses: {
+ /** @description Response */
+ readonly 200: {
+ headers: {
+ readonly [name: string]: unknown;
+ };
+ content: {
+ readonly "application/json": components["schemas"]["code-scanning-variant-analysis"];
+ };
+ };
+ readonly 404: components["responses"]["not_found"];
+ readonly 503: components["responses"]["service_unavailable"];
+ };
+ };
+ readonly "code-scanning/get-variant-analysis-repo-task": {
+ readonly parameters: {
+ readonly query?: never;
+ readonly header?: never;
+ readonly path: {
+ /** @description The account owner of the repository. The name is not case sensitive. */
+ readonly owner: components["parameters"]["owner"];
+ /** @description The name of the controller repository. */
+ readonly repo: string;
+ /** @description The ID of the variant analysis. */
+ readonly codeql_variant_analysis_id: number;
+ /** @description The account owner of the variant analysis repository. The name is not case sensitive. */
+ readonly repo_owner: string;
+ /** @description The name of the variant analysis repository. */
+ readonly repo_name: string;
+ };
+ readonly cookie?: never;
+ };
+ readonly requestBody?: never;
+ readonly responses: {
+ /** @description Response */
+ readonly 200: {
+ headers: {
+ readonly [name: string]: unknown;
+ };
+ content: {
+ readonly "application/json": components["schemas"]["code-scanning-variant-analysis-repo-task"];
+ };
+ };
+ readonly 404: components["responses"]["not_found"];
+ readonly 503: components["responses"]["service_unavailable"];
+ };
+ };
readonly "code-scanning/get-default-setup": {
readonly parameters: {
readonly query?: never;
@@ -100546,9 +101041,9 @@ export interface operations {
readonly author?: string;
/** @description GitHub username or email address to use to filter by commit committer. */
readonly committer?: string;
- /** @description Only show results that were last updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. */
- readonly since?: components["parameters"]["since"];
- /** @description Only commits before this date will be returned. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. */
+ /** @description Only show results that were last updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. Due to limitations of Git, timestamps must be between 1970-01-01 and 2099-12-31 (inclusive) or unexpected results may be returned. */
+ readonly since?: string;
+ /** @description Only commits before this date will be returned. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. Due to limitations of Git, timestamps must be between 1970-01-01 and 2099-12-31 (inclusive) or unexpected results may be returned. */
readonly until?: string;
/** @description The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
readonly per_page?: components["parameters"]["per-page"];
@@ -101002,6 +101497,7 @@ export interface operations {
};
};
readonly 302: components["responses"]["found"];
+ readonly 304: components["responses"]["not_modified"];
readonly 403: components["responses"]["forbidden"];
readonly 404: components["responses"]["not_found"];
};
@@ -106151,7 +106647,7 @@ export interface operations {
readonly requestBody: {
readonly content: {
readonly "application/json": {
- /** @description Specify a custom domain for the repository. Sending a `null` value will remove the custom domain. For more about custom domains, see "[Using a custom domain with GitHub Pages](https://docs.github.com/articles/using-a-custom-domain-with-github-pages/)." */
+ /** @description Specify a custom domain for the repository. Sending a `null` value will remove the custom domain. For more about custom domains, see "[Using a custom domain with GitHub Pages](https://docs.github.com/pages/configuring-a-custom-domain-for-your-github-pages-site)." */
readonly cname?: string | null;
/** @description Specify whether HTTPS should be enforced for the repository. */
readonly https_enforced?: boolean;
@@ -107065,7 +107561,7 @@ export interface operations {
};
readonly requestBody?: never;
readonly responses: {
- /** @description Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) to fetch diff and patch formats. */
+ /** @description Pass the appropriate [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types) to fetch diff and patch formats. */
readonly 200: {
headers: {
readonly [name: string]: unknown;
diff --git a/packages/openapi-typescript/examples/github-api-next.ts b/packages/openapi-typescript/examples/github-api-next.ts
index 9fcaafd59..e3f783031 100644
--- a/packages/openapi-typescript/examples/github-api-next.ts
+++ b/packages/openapi-typescript/examples/github-api-next.ts
@@ -340,7 +340,7 @@ export interface paths {
post?: never;
/**
* Delete an app authorization
- * @description OAuth and GitHub application owners can revoke a grant for their application and a specific user. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the OAuth application's `client_id` and `client_secret` as the username and password. You must also provide a valid OAuth `access_token` as an input parameter and the grant for the token's owner will be deleted.
+ * @description OAuth and GitHub application owners can revoke a grant for their application and a specific user. You must provide a valid OAuth `access_token` as an input parameter and the grant for the token's owner will be deleted.
* Deleting an application's grant will also delete all OAuth tokens associated with the application for the user. Once deleted, the application will have no access to the user's account and will no longer be listed on [the application authorizations settings screen within GitHub](https://github.com/settings/applications#authorized).
*/
delete: operations["apps/delete-authorization"];
@@ -360,19 +360,19 @@ export interface paths {
put?: never;
/**
* Check a token
- * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method for checking OAuth token validity without exceeding the normal rate limits for failed login attempts. Authentication works differently with this particular endpoint. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) to use this endpoint, where the username is the application `client_id` and the password is its `client_secret`. Invalid tokens will return `404 NOT FOUND`.
+ * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method for checking OAuth token validity without exceeding the normal rate limits for failed login attempts. Authentication works differently with this particular endpoint. Invalid tokens will return `404 NOT FOUND`.
*/
post: operations["apps/check-token"];
/**
* Delete an app token
- * @description OAuth or GitHub application owners can revoke a single token for an OAuth application or a GitHub application with an OAuth authorization. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the application's `client_id` and `client_secret` as the username and password.
+ * @description OAuth or GitHub application owners can revoke a single token for an OAuth application or a GitHub application with an OAuth authorization.
*/
delete: operations["apps/delete-token"];
options?: never;
head?: never;
/**
* Reset a token
- * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method to reset a valid OAuth token without end-user involvement. Applications must save the "token" property in the response because changes take effect immediately. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the application's `client_id` and `client_secret` as the username and password. Invalid tokens will return `404 NOT FOUND`.
+ * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method to reset a valid OAuth token without end-user involvement. Applications must save the "token" property in the response because changes take effect immediately. Invalid tokens will return `404 NOT FOUND`.
*/
patch: operations["apps/reset-token"];
trace?: never;
@@ -393,10 +393,6 @@ export interface paths {
* token.
*
* Invalid tokens will return `404 NOT FOUND`.
- *
- * You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)
- * when accessing this endpoint, using the `client_id` and `client_secret` of the GitHub App
- * as the username and password.
*/
post: operations["apps/scope-token"];
delete?: never;
@@ -605,6 +601,32 @@ export interface paths {
patch?: never;
trace?: never;
};
+ "/enterprises/{enterprise}/copilot/billing/seats": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ /**
+ * List all Copilot seat assignments for an enterprise
+ * @description **Note**: This endpoint is in beta and is subject to change.
+ *
+ * Lists all active Copilot seats across organizations or enterprise teams for an enterprise with a Copilot Business or Copilot Enterprise subscription.
+ *
+ * Only enterprise owners and billing managers can view assigned Copilot seats across their child organizations or enterprise teams.
+ *
+ * Personal access tokens (classic) need either the `manage_billing:copilot` or `read:enterprise` scopes to use this endpoint.
+ */
+ get: operations["copilot/list-copilot-seats-for-enterprise"];
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
"/enterprises/{enterprise}/copilot/usage": {
parameters: {
query?: never;
@@ -624,10 +646,9 @@ export interface paths {
* and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
* they must have telemetry enabled in their IDE.
*
- * Only the owners and billing managers of enterprises with a Copilot Business or Enterprise subscription can view Copilot usage
- * metrics for the enterprise.
+ * Only owners and billing managers can view Copilot usage metrics for the enterprise.
*
- * OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:enterprise` scopes to use this endpoint.
*/
get: operations["copilot/usage-metrics-for-enterprise"];
put?: never;
@@ -731,7 +752,7 @@ export interface paths {
*
* By default, timeline resources are returned in JSON. You can specify the `application/atom+xml` type in the `Accept` header to return timeline resources in Atom format. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
- * **Note**: Private feeds are only returned when [authenticating via Basic Auth](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) since current feed URIs use the older, non revocable auth tokens.
+ * **Note**: Private feeds are only returned when [authenticating via Basic Auth](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) since current feed URIs use the older, non revocable auth tokens.
*/
get: operations["activity/get-feeds"];
put?: never;
@@ -1208,7 +1229,7 @@ export interface paths {
* Get a subscription plan for an account
* @description Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
get: operations["apps/get-subscription-plan-for-account"];
put?: never;
@@ -1230,7 +1251,7 @@ export interface paths {
* List plans
* @description Lists all plans that are part of your GitHub Marketplace listing.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
get: operations["apps/list-plans"];
put?: never;
@@ -1252,7 +1273,7 @@ export interface paths {
* List accounts for a plan
* @description Returns user and organization accounts associated with the specified plan, including free plans. For per-seat pricing, you see the list of accounts that have purchased the plan, including the number of seats purchased. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
get: operations["apps/list-accounts-for-plan"];
put?: never;
@@ -1274,7 +1295,7 @@ export interface paths {
* Get a subscription plan for an account (stubbed)
* @description Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
get: operations["apps/get-subscription-plan-for-account-stubbed"];
put?: never;
@@ -1296,7 +1317,7 @@ export interface paths {
* List plans (stubbed)
* @description Lists all plans that are part of your GitHub Marketplace listing.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
get: operations["apps/list-plans-stubbed"];
put?: never;
@@ -1318,7 +1339,7 @@ export interface paths {
* List accounts for a plan (stubbed)
* @description Returns repository and organization accounts associated with the specified plan, including free plans. For per-seat pricing, you see the list of accounts that have purchased the plan, including the number of seats purchased. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
get: operations["apps/list-accounts-for-plan-stubbed"];
put?: never;
@@ -2638,12 +2659,12 @@ export interface paths {
* @description **Note**: This endpoint is in beta and is subject to change.
*
* Gets information about an organization's Copilot subscription, including seat breakdown
- * and code matching policies. To configure these settings, go to your organization's settings on GitHub.com.
+ * and feature policies. To configure these settings, go to your organization's settings on GitHub.com.
* For more information, see "[Managing policies for Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-copilot-business-in-your-organization)".
*
- * Only organization owners can configure and view details about the organization's Copilot Business subscription.
+ * Only organization owners can view details about the organization's Copilot Business or Copilot Enterprise subscription.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
*/
get: operations["copilot/get-copilot-organization-details"];
put?: never;
@@ -2665,11 +2686,10 @@ export interface paths {
* List all Copilot seat assignments for an organization
* @description **Note**: This endpoint is in beta and is subject to change.
*
- * Lists all Copilot seat assignments for an organization that are currently being billed (either active or pending cancellation at the start of the next billing cycle).
- *
- * Only organization owners can configure and view details about the organization's Copilot Business or Enterprise subscription.
+ * Lists all active Copilot seats for an organization with a Copilot Business or Copilot Enterprise subscription.
+ * Only organization owners can view assigned seats.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
*/
get: operations["copilot/list-copilot-seats"];
put?: never;
@@ -2696,13 +2716,13 @@ export interface paths {
* Purchases a GitHub Copilot seat for all users within each specified team.
* The organization will be billed accordingly. For more information about Copilot pricing, see "[Pricing for GitHub Copilot](https://docs.github.com/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot#about-billing-for-github-copilot)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can add Copilot seats for their organization members.
*
* In order for an admin to use this endpoint, the organization must have a Copilot Business or Enterprise subscription and a configured suggestion matching policy.
* For more information about setting up a Copilot subscription, see "[Setting up a Copilot subscription for your organization](https://docs.github.com/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription-for-your-organization-or-enterprise)".
* For more information about setting a suggestion matching policy, see "[Configuring suggestion matching policies for GitHub Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-github-copilot-in-your-organization#configuring-suggestion-matching-policies-for-github-copilot-in-your-organization)".
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
post: operations["copilot/add-copilot-seats-for-teams"];
/**
@@ -2716,9 +2736,9 @@ export interface paths {
*
* For more information about disabling access to Copilot Business or Enterprise, see "[Revoking access to GitHub Copilot for specific users in your organization](https://docs.github.com/copilot/managing-copilot/managing-access-for-copilot-in-your-organization#revoking-access-to-github-copilot-for-specific-users-in-your-organization)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can cancel Copilot seats for their organization members.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
delete: operations["copilot/cancel-copilot-seat-assignment-for-teams"];
options?: never;
@@ -2742,13 +2762,13 @@ export interface paths {
* Purchases a GitHub Copilot seat for each user specified.
* The organization will be billed accordingly. For more information about Copilot pricing, see "[Pricing for GitHub Copilot](https://docs.github.com/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot#about-billing-for-github-copilot)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can add Copilot seats for their organization members.
*
* In order for an admin to use this endpoint, the organization must have a Copilot Business or Enterprise subscription and a configured suggestion matching policy.
* For more information about setting up a Copilot subscription, see "[Setting up a Copilot subscription for your organization](https://docs.github.com/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription-for-your-organization-or-enterprise)".
* For more information about setting a suggestion matching policy, see "[Configuring suggestion matching policies for GitHub Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-github-copilot-in-your-organization#configuring-suggestion-matching-policies-for-github-copilot-in-your-organization)".
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
post: operations["copilot/add-copilot-seats-for-users"];
/**
@@ -2762,9 +2782,9 @@ export interface paths {
*
* For more information about disabling access to Copilot Business or Enterprise, see "[Revoking access to GitHub Copilot for specific users in your organization](https://docs.github.com/copilot/managing-copilot/managing-access-for-copilot-in-your-organization#revoking-access-to-github-copilot-for-specific-users-in-your-organization)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can cancel Copilot seats for their organization members.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
delete: operations["copilot/cancel-copilot-seat-assignment-for-users"];
options?: never;
@@ -2791,10 +2811,9 @@ export interface paths {
* and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
* they must have telemetry enabled in their IDE.
*
- * Copilot Business or Copilot Enterprise organization owners, and owners and billing managers of their parent enterprises, can view
- * Copilot usage metrics.
+ * Organization owners, and owners and billing managers of the parent enterprise, can view Copilot usage metrics.
*
- * OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:org`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot`, `read:org`, or `read:enterprise` scopes to use this endpoint.
*/
get: operations["copilot/usage-metrics-for-org"];
put?: never;
@@ -3329,7 +3348,10 @@ export interface paths {
};
/**
* List pending organization invitations
- * @description The return hash contains a `role` field which refers to the Organization Invitation role and will be one of the following values: `direct_member`, `admin`, `billing_manager`, or `hiring_manager`. If the invitee is not a GitHub member, the `login` field in the return hash will be `null`.
+ * @description The return hash contains a `role` field which refers to the Organization
+ * Invitation role and will be one of the following values: `direct_member`, `admin`,
+ * `billing_manager`, or `hiring_manager`. If the invitee is not a GitHub
+ * member, the `login` field in the return hash will be `null`.
*/
get: operations["orgs/list-pending-invitations"];
put?: never;
@@ -3337,7 +3359,7 @@ export interface paths {
* Create an organization invitation
* @description Invite people to an organization by using their GitHub user ID or their email address. In order to create invitations in an organization, the authenticated user must be an organization owner.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
post: operations["orgs/create-invitation"];
@@ -3544,9 +3566,9 @@ export interface paths {
*
* Gets the GitHub Copilot seat assignment details for a member of an organization who currently has access to GitHub Copilot.
*
- * Organization owners can view GitHub Copilot seat assignment details for members in their organization.
+ * Only organization owners can view Copilot seat assignment details for members of their organization.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
*/
get: operations["copilot/get-copilot-seat-details-for-user"];
put?: never;
@@ -3579,7 +3601,7 @@ export interface paths {
*
* **Rate limits**
*
- * To prevent abuse, the authenticated user is limited to 50 organization invitations per 24 hour period. If the organization is more than one month old or on a paid plan, the limit is 500 invitations per 24 hour period.
+ * To prevent abuse, organization owners are limited to creating 50 organization invitations for an organization within a 24 hour period. If the organization is more than one month old or on a paid plan, the limit is 500 invitations per 24 hour period.
*/
put: operations["orgs/set-membership-for-user"];
post?: never;
@@ -4809,41 +4831,6 @@ export interface paths {
patch?: never;
trace?: never;
};
- "/orgs/{org}/team/{team_slug}/copilot/usage": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- /**
- * Get a summary of Copilot usage for a team
- * @description **Note**: This endpoint is in beta and is subject to change.
- *
- * You can use this endpoint to see a daily breakdown of aggregated usage metrics for Copilot completions and Copilot Chat in the IDE
- * for users within a team, with a further breakdown of suggestions, acceptances, and number of active users by editor and language for each day.
- * See the response schema tab for detailed metrics definitions.
- *
- * The response contains metrics for the prior 28 days. Usage metrics are processed once per day for the previous day,
- * and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
- * they must have telemetry enabled in their IDE.
- *
- * **Note**: This endpoint will only return results for a given day if the team had five or more members on that day.
- *
- * Copilot Business or Copilot Enterprise organization owners for the organization that contains this team,
- * and owners and billing managers of their parent enterprises, can view Copilot usage metrics for a team.
- *
- * OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:org`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
- */
- get: operations["copilot/usage-metrics-for-team"];
- put?: never;
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
"/orgs/{org}/teams": {
parameters: {
query?: never;
@@ -4927,7 +4914,7 @@ export interface paths {
* Create a discussion
* @description Creates a new discussion post on a team's page.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* **Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions`.
*
@@ -5001,7 +4988,7 @@ export interface paths {
* Create a discussion comment
* @description Creates a new comment on a team discussion.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* **Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments`.
*
@@ -5356,7 +5343,7 @@ export interface paths {
* Check team permissions for a repository
* @description Checks whether a team has `admin`, `push`, `maintain`, `triage`, or `pull` permission for a repository. Repositories inherited through a parent team will also be checked.
*
- * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `application/vnd.github.v3.repository+json` accept header.
+ * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types/) via the `application/vnd.github.v3.repository+json` accept header.
*
* If a team doesn't have permission for the repository, you will receive a `404 Not Found` response status.
*
@@ -5674,7 +5661,7 @@ export interface paths {
* * The `dependency_snapshots` object provides your rate limit status for submitting snapshots to the dependency graph. For more information, see "[Dependency graph](https://docs.github.com/rest/dependency-graph)."
* * The `code_scanning_upload` object provides your rate limit status for uploading SARIF results to code scanning. For more information, see "[Uploading a SARIF file to GitHub](https://docs.github.com/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github)."
* * The `actions_runner_registration` object provides your rate limit status for registering self-hosted runners in GitHub Actions. For more information, see "[Self-hosted runners](https://docs.github.com/rest/actions/self-hosted-runners)."
- * * The `source_import` object is no longer in use for any API endpoints, and it will be removed in the next API version. For more information about API versions, see "[API Versions](https://docs.github.com/rest/overview/api-versions)."
+ * * The `source_import` object is no longer in use for any API endpoints, and it will be removed in the next API version. For more information about API versions, see "[API Versions](https://docs.github.com/rest/about-the-rest-api/api-versions)."
*
* **Note:** The `rate` object is deprecated. If you're writing new API client code or updating existing code, you should use the `core` object instead of the `rate` object. The `core` object contains the same information that is present in the `rate` object.
*/
@@ -8172,7 +8159,7 @@ export interface paths {
*
* By default this endpoint returns JSON metadata about the CodeQL database. To
* download the CodeQL database binary content, set the `Accept` header of the request
- * to [`application/zip`](https://docs.github.com/rest/overview/media-types), and make sure
+ * to [`application/zip`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types), and make sure
* your HTTP client is configured to follow redirects or use the `Location` header
* to make a second request to get the redirect URL.
*
@@ -8187,6 +8174,77 @@ export interface paths {
patch?: never;
trace?: never;
};
+ "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get?: never;
+ put?: never;
+ /**
+ * Create a CodeQL variant analysis
+ * @description Creates a new CodeQL variant analysis, which will run a CodeQL query against one or more repositories.
+ *
+ * Get started by learning more about [running CodeQL queries at scale with Multi-Repository Variant Analysis](https://docs.github.com/code-security/codeql-for-vs-code/getting-started-with-codeql-for-vs-code/running-codeql-queries-at-scale-with-multi-repository-variant-analysis).
+ *
+ * Use the `owner` and `repo` parameters in the URL to specify the controller repository that
+ * will be used for running GitHub Actions workflows and storing the results of the CodeQL variant analysis.
+ *
+ * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint.
+ */
+ post: operations["code-scanning/create-variant-analysis"];
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
+ "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ /**
+ * Get the summary of a CodeQL variant analysis
+ * @description Gets the summary of a CodeQL variant analysis.
+ *
+ * OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ */
+ get: operations["code-scanning/get-variant-analysis"];
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
+ "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}/repos/{repo_owner}/{repo_name}": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ /**
+ * Get the analysis status of a repository in a CodeQL variant analysis
+ * @description Gets the analysis status of a repository in a CodeQL variant analysis.
+ *
+ * OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ */
+ get: operations["code-scanning/get-variant-analysis-repo-task"];
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
"/repos/{owner}/{repo}/code-scanning/default-setup": {
parameters: {
query?: never;
@@ -8258,6 +8316,8 @@ export interface paths {
* For more information, see "[Get information about a SARIF upload](/rest/code-scanning/code-scanning#get-information-about-a-sarif-upload)."
*
* OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ *
+ * This endpoint is limited to 1,000 requests per hour for each user or app installation calling it.
*/
post: operations["code-scanning/upload-sarif"];
delete?: never;
@@ -8558,7 +8618,7 @@ export interface paths {
get: operations["repos/check-collaborator"];
/**
* Add a repository collaborator
- * @description This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * @description This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* Adding an outside collaborator may be restricted by enterprise administrators. For more information, see "[Enforcing repository management policies in your enterprise](https://docs.github.com/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-outside-collaborators-to-repositories)."
*
@@ -8843,7 +8903,7 @@ export interface paths {
* Create a commit comment
* @description Create a comment for a commit using its `:commit_sha`.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
@@ -9093,7 +9153,7 @@ export interface paths {
*
* To process a response with a large number of commits, use a query parameter (`per_page` or `page`) to paginate the results. When using pagination:
*
- * - The list of changed files is only shown on the first page of results, but it includes all changed files for the entire comparison.
+ * - The list of changed files is only shown on the first page of results, and it includes up to 300 changed files for the entire comparison.
* - The results are returned in chronological order, but the last commit in the returned list may not be the most recent one in the entire set if there are more pages of results.
*
* For more information on working with pagination, see "[Using pagination in the REST API](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api)."
@@ -10882,7 +10942,7 @@ export interface paths {
* Create an issue
* @description Any user with pull access to a repository can create an issue. If [issues are disabled in the repository](https://docs.github.com/articles/disabling-issues/), the API returns a `410 Gone` status.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -11180,7 +11240,7 @@ export interface paths {
*
* This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications).
* Creating content too quickly using this endpoint may result in secondary rate limiting.
- * For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -11952,7 +12012,7 @@ export interface paths {
*
* To open or update a pull request in a public repository, you must have write access to the head or the source branch. For organization-owned repositories, you must be a member of the organization that owns the repository to open or update a pull request.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
@@ -12107,7 +12167,7 @@ export interface paths {
* * If merged via a [squash](https://docs.github.com/articles/about-merge-methods-on-github/#squashing-your-merge-commits), `merge_commit_sha` represents the SHA of the squashed commit on the base branch.
* * If [rebased](https://docs.github.com/articles/about-merge-methods-on-github/#rebasing-and-merging-your-commits), `merge_commit_sha` represents the commit that the base branch was updated to.
*
- * Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) to fetch diff and patch formats.
+ * Pass the appropriate [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types) to fetch diff and patch formats.
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
@@ -12190,7 +12250,7 @@ export interface paths {
*
* The `position` parameter is deprecated. If you use `position`, the `line`, `side`, `start_line`, and `start_side` parameters are not required.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -12220,7 +12280,7 @@ export interface paths {
* Create a reply for a review comment
* @description Creates a reply to a review comment for a pull request. For the `comment_id`, provide the ID of the review comment you are replying to. This must be the ID of a _top-level review comment_, not a reply to that comment. Replies to replies are not supported.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -12311,7 +12371,7 @@ export interface paths {
/**
* Merge a pull request
* @description Merges a pull request into the base branch.
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
put: operations["pulls/merge"];
post?: never;
@@ -12337,7 +12397,7 @@ export interface paths {
/**
* Request reviewers for a pull request
* @description Requests reviews for a pull request from a given set of users and/or teams.
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
post: operations["pulls/request-reviewers"];
/**
@@ -12374,7 +12434,7 @@ export interface paths {
* Create a review for a pull request
* @description Creates a review on a specified pull request.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* Pull request reviews created in the `PENDING` state are not submitted and therefore do not include the `submitted_at` property in the response. To create a pending review for a pull request, leave the `event` parameter blank. For more information about submitting a `PENDING` review, see "[Submit a review for a pull request](https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request)."
*
@@ -12619,7 +12679,7 @@ export interface paths {
* Create a release
* @description Users with push access to the repository can create a release.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
post: operations["repos/create-release"];
delete?: never;
@@ -12637,7 +12697,7 @@ export interface paths {
};
/**
* Get a release asset
- * @description To download the asset's binary content, set the `Accept` header of the request to [`application/octet-stream`](https://docs.github.com/rest/overview/media-types). The API will either redirect the client to the location, or stream it directly if possible. API clients should handle both a `200` or `302` response.
+ * @description To download the asset's binary content, set the `Accept` header of the request to [`application/octet-stream`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types). The API will either redirect the client to the location, or stream it directly if possible. API clients should handle both a `200` or `302` response.
*/
get: operations["repos/get-release-asset"];
put?: never;
@@ -13408,16 +13468,24 @@ export interface paths {
cookie?: never;
};
/**
- * List tag protection states for a repository
- * @description This returns the tag protection states of a repository.
+ * Deprecated - List tag protection states for a repository
+ * @deprecated
+ * @description **Note**: This operation is deprecated and will be removed after August 30th 2024
+ * Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#get-all-repository-rulesets)" endpoint instead.
+ *
+ * This returns the tag protection states of a repository.
*
* This information is only available to repository administrators.
*/
get: operations["repos/list-tag-protection"];
put?: never;
/**
- * Create a tag protection state for a repository
- * @description This creates a tag protection state for a repository.
+ * Deprecated - Create a tag protection state for a repository
+ * @deprecated
+ * @description **Note**: This operation is deprecated and will be removed after August 30th 2024
+ * Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#create-a-repository-ruleset)" endpoint instead.
+ *
+ * This creates a tag protection state for a repository.
* This endpoint is only available to repository administrators.
*/
post: operations["repos/create-tag-protection"];
@@ -13438,8 +13506,12 @@ export interface paths {
put?: never;
post?: never;
/**
- * Delete a tag protection state for a repository
- * @description This deletes a tag protection state for a repository.
+ * Deprecated - Delete a tag protection state for a repository
+ * @deprecated
+ * @description **Note**: This operation is deprecated and will be removed after August 30th 2024
+ * Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#delete-a-repository-ruleset)" endpoint instead.
+ *
+ * This deletes a tag protection state for a repository.
* This endpoint is only available to repository administrators.
*/
delete: operations["repos/delete-tag-protection"];
@@ -13988,7 +14060,7 @@ export interface paths {
*
* Creates a new discussion post on a team's page.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.
*/
@@ -14067,7 +14139,7 @@ export interface paths {
*
* Creates a new comment on a team discussion.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.
*/
@@ -14443,7 +14515,7 @@ export interface paths {
*
* **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Check team permissions for a repository](https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-repository) endpoint.
*
- * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `Accept` header:
+ * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types/) via the `Accept` header:
*/
get: operations["teams/check-permissions-for-repo-legacy"];
/**
@@ -15176,12 +15248,16 @@ export interface paths {
/**
* Add a repository to an app installation
* @description Add a single repository to an installation. The authenticated user must have admin access to the repository.
+ *
+ * This endpoint only works for PATs (classic) with the `repo` scope.
*/
put: operations["apps/add-repo-to-installation-for-authenticated-user"];
post?: never;
/**
* Remove a repository from an app installation
* @description Remove a single repository from an installation. The authenticated user must have admin access to the repository. The installation must have the `repository_selection` of `selected`.
+ *
+ * This endpoint only works for PATs (classic) with the `repo` scope.
*/
delete: operations["apps/remove-repo-from-installation-for-authenticated-user"];
options?: never;
@@ -21097,7 +21173,7 @@ export interface webhooks {
*
* To subscribe to this event, a GitHub App must have at least read-level access for the "Contents" repository permission.
*
- * **Note**: An event will not be created when more than three tags are pushed at once. */
+ * **Note**: Events will not be created if more than 5000 branches are pushed at once. Events will not be created for tags when more than three tags are pushed at once. */
post: operations["push"];
delete?: never;
options?: never;
@@ -21843,30 +21919,6 @@ export interface webhooks {
patch?: never;
trace?: never;
};
- "secret-scanning-alert-revoked": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- get?: never;
- put?: never;
- /**
- * This event occurs when there is activity relating to a secret scanning alert. For more information about secret scanning, see "[About secret scanning](https://docs.github.com/code-security/secret-scanning/about-secret-scanning)." For information about the API to manage secret scanning alerts, see "[Secret scanning](https://docs.github.com/rest/secret-scanning)" in the REST API documentation.
- *
- * For activity relating to secret scanning alert locations, use the `secret_scanning_alert_location` event.
- *
- * To subscribe to this event, a GitHub App must have at least read-level access for the "Secret scanning alerts" repository permission.
- * @description A secret scanning alert was marked as revoked.
- */
- post: operations["secret-scanning-alert/revoked"];
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
"secret-scanning-alert-validated": {
parameters: {
query?: never;
@@ -22865,6 +22917,11 @@ export interface components {
installation_id: number | null;
/** @description The id of the repository associated with this event. */
repository_id: number | null;
+ /**
+ * Format: date-time
+ * @description Time when the webhook delivery was throttled.
+ */
+ throttled_at?: string | null;
};
/**
* Scim Error
@@ -22924,6 +22981,11 @@ export interface components {
installation_id: number | null;
/** @description The id of the repository associated with this event. */
repository_id: number | null;
+ /**
+ * Format: date-time
+ * @description Time when the webhook delivery was throttled.
+ */
+ throttled_at?: string | null;
/** @description The URL target of the delivery. */
url?: string;
request: {
@@ -23817,6 +23879,208 @@ export interface components {
/** Format: uri */
html_url: string | null;
};
+ /**
+ * Team Simple
+ * @description Groups of organization members that gives permissions on specified repositories.
+ */
+ "team-simple": {
+ /** @description Unique identifier of the team */
+ id: number;
+ node_id: string;
+ /**
+ * Format: uri
+ * @description URL for the team
+ */
+ url: string;
+ members_url: string;
+ /** @description Name of the team */
+ name: string;
+ /** @description Description of the team */
+ description: string | null;
+ /** @description Permission that the team will have for its repositories */
+ permission: string;
+ /** @description The level of privacy this team should have */
+ privacy?: string;
+ /** @description The notification setting the team has set */
+ notification_setting?: string;
+ /** Format: uri */
+ html_url: string;
+ /** Format: uri */
+ repositories_url: string;
+ slug: string;
+ /** @description Distinguished Name (DN) that team maps to within LDAP environment */
+ ldap_dn?: string;
+ };
+ /**
+ * Team
+ * @description Groups of organization members that gives permissions on specified repositories.
+ */
+ team: {
+ id: number;
+ node_id: string;
+ name: string;
+ slug: string;
+ description: string | null;
+ privacy?: string;
+ notification_setting?: string;
+ permission: string;
+ permissions?: {
+ pull: boolean;
+ triage: boolean;
+ push: boolean;
+ maintain: boolean;
+ admin: boolean;
+ };
+ /** Format: uri */
+ url: string;
+ /** Format: uri */
+ html_url: string;
+ members_url: string;
+ /** Format: uri */
+ repositories_url: string;
+ parent: null | components["schemas"]["team-simple"];
+ };
+ /**
+ * Organization
+ * @description GitHub account for managing multiple users, teams, and repositories
+ */
+ organization: {
+ /** @description Unique login name of the organization */
+ login: string;
+ /**
+ * Format: uri
+ * @description URL for the organization
+ */
+ url: string;
+ id: number;
+ node_id: string;
+ /** Format: uri */
+ repos_url: string;
+ /** Format: uri */
+ events_url: string;
+ hooks_url: string;
+ issues_url: string;
+ members_url: string;
+ public_members_url: string;
+ avatar_url: string;
+ description: string | null;
+ /**
+ * Format: uri
+ * @description Display blog url for the organization
+ */
+ blog?: string;
+ /** Format: uri */
+ html_url: string;
+ /** @description Display name for the organization */
+ name?: string;
+ /** @description Display company name for the organization */
+ company?: string;
+ /** @description Display location for the organization */
+ location?: string;
+ /**
+ * Format: email
+ * @description Display email for the organization
+ */
+ email?: string;
+ /** @description Specifies if organization projects are enabled for this org */
+ has_organization_projects: boolean;
+ /** @description Specifies if repository projects are enabled for repositories that belong to this org */
+ has_repository_projects: boolean;
+ is_verified?: boolean;
+ public_repos: number;
+ public_gists: number;
+ followers: number;
+ following: number;
+ type: string;
+ /** Format: date-time */
+ created_at: string;
+ /** Format: date-time */
+ updated_at: string;
+ plan?: {
+ name?: string;
+ space?: number;
+ private_repos?: number;
+ filled_seats?: number;
+ seats?: number;
+ };
+ };
+ /**
+ * Organization Simple
+ * @description A GitHub organization.
+ */
+ "organization-simple": {
+ login: string;
+ id: number;
+ node_id: string;
+ /** Format: uri */
+ url: string;
+ /** Format: uri */
+ repos_url: string;
+ /** Format: uri */
+ events_url: string;
+ hooks_url: string;
+ issues_url: string;
+ members_url: string;
+ public_members_url: string;
+ avatar_url: string;
+ description: string | null;
+ };
+ /**
+ * Enterprise Team
+ * @description Group of enterprise owners and/or members
+ */
+ "enterprise-team": {
+ id: number;
+ name: string;
+ slug: string;
+ /** Format: uri */
+ url: string;
+ sync_to_organizations: string;
+ group_id?: number | null;
+ /** Format: uri */
+ html_url: string;
+ members_url: string;
+ /** Format: date-time */
+ created_at: string;
+ /** Format: date-time */
+ updated_at: string;
+ };
+ /**
+ * Copilot Business Seat Detail
+ * @description Information about a Copilot Business seat assignment for a user, team, or organization.
+ */
+ "copilot-seat-details": {
+ /** @description The assignee that has been granted access to GitHub Copilot. */
+ assignee: {
+ [key: string]: unknown;
+ } & (components["schemas"]["simple-user"] | components["schemas"]["team"] | components["schemas"]["organization"]);
+ /** @description The organization to which this seat belongs. */
+ organization?: (Record | null) & components["schemas"]["organization-simple"];
+ /** @description The team through which the assignee is granted access to GitHub Copilot, if applicable. */
+ assigning_team?: (null | Record) & (components["schemas"]["team"] | components["schemas"]["enterprise-team"]);
+ /**
+ * Format: date
+ * @description The pending cancellation date for the seat, in `YYYY-MM-DD` format. This will be null unless the assignee's Copilot access has been canceled during the current billing cycle. If the seat has been cancelled, this corresponds to the start of the organization's next billing cycle.
+ */
+ pending_cancellation_date?: string | null;
+ /**
+ * Format: date-time
+ * @description Timestamp of user's last GitHub Copilot activity, in ISO 8601 format.
+ */
+ last_activity_at?: string | null;
+ /** @description Last editor that was used by the user for a GitHub Copilot completion. */
+ last_activity_editor?: string | null;
+ /**
+ * Format: date-time
+ * @description Timestamp of when the assignee was last granted access to GitHub Copilot, in ISO 8601 format.
+ */
+ created_at: string;
+ /**
+ * Format: date-time
+ * @description Timestamp of when the assignee's GitHub Copilot access was last updated, in ISO 8601 format.
+ */
+ updated_at?: string;
+ };
/**
* Copilot Usage Metrics
* @description Summary of Copilot usage.
@@ -24556,6 +24820,8 @@ export interface components {
location: string | null;
/** Format: email */
email: string | null;
+ /** Format: email */
+ notification_email?: string | null;
hireable: boolean | null;
bio: string | null;
twitter_username?: string | null;
@@ -24825,6 +25091,7 @@ export interface components {
pages?: string[];
importer?: string[];
actions?: string[];
+ actions_macos?: string[];
dependabot?: string[];
domains?: {
website?: string[];
@@ -25017,27 +25284,6 @@ export interface components {
/** Format: uri */
repository_url?: string;
};
- /**
- * Organization Simple
- * @description A GitHub organization.
- */
- "organization-simple": {
- login: string;
- id: number;
- node_id: string;
- /** Format: uri */
- url: string;
- /** Format: uri */
- repos_url: string;
- /** Format: uri */
- events_url: string;
- hooks_url: string;
- issues_url: string;
- members_url: string;
- public_members_url: string;
- avatar_url: string;
- description: string | null;
- };
/**
* Organization Full
* @description Organization Full
@@ -25685,165 +25931,6 @@ export interface components {
seat_management_setting: "assign_all" | "assign_selected" | "disabled" | "unconfigured";
[key: string]: unknown;
};
- /**
- * Team Simple
- * @description Groups of organization members that gives permissions on specified repositories.
- */
- "team-simple": {
- /** @description Unique identifier of the team */
- id: number;
- node_id: string;
- /**
- * Format: uri
- * @description URL for the team
- */
- url: string;
- members_url: string;
- /** @description Name of the team */
- name: string;
- /** @description Description of the team */
- description: string | null;
- /** @description Permission that the team will have for its repositories */
- permission: string;
- /** @description The level of privacy this team should have */
- privacy?: string;
- /** @description The notification setting the team has set */
- notification_setting?: string;
- /** Format: uri */
- html_url: string;
- /** Format: uri */
- repositories_url: string;
- slug: string;
- /** @description Distinguished Name (DN) that team maps to within LDAP environment */
- ldap_dn?: string;
- };
- /**
- * Team
- * @description Groups of organization members that gives permissions on specified repositories.
- */
- team: {
- id: number;
- node_id: string;
- name: string;
- slug: string;
- description: string | null;
- privacy?: string;
- notification_setting?: string;
- permission: string;
- permissions?: {
- pull: boolean;
- triage: boolean;
- push: boolean;
- maintain: boolean;
- admin: boolean;
- };
- /** Format: uri */
- url: string;
- /** Format: uri */
- html_url: string;
- members_url: string;
- /** Format: uri */
- repositories_url: string;
- parent: null | components["schemas"]["team-simple"];
- };
- /**
- * Organization
- * @description GitHub account for managing multiple users, teams, and repositories
- */
- organization: {
- /** @description Unique login name of the organization */
- login: string;
- /**
- * Format: uri
- * @description URL for the organization
- */
- url: string;
- id: number;
- node_id: string;
- /** Format: uri */
- repos_url: string;
- /** Format: uri */
- events_url: string;
- hooks_url: string;
- issues_url: string;
- members_url: string;
- public_members_url: string;
- avatar_url: string;
- description: string | null;
- /**
- * Format: uri
- * @description Display blog url for the organization
- */
- blog?: string;
- /** Format: uri */
- html_url: string;
- /** @description Display name for the organization */
- name?: string;
- /** @description Display company name for the organization */
- company?: string;
- /** @description Display location for the organization */
- location?: string;
- /**
- * Format: email
- * @description Display email for the organization
- */
- email?: string;
- /** @description Specifies if organization projects are enabled for this org */
- has_organization_projects: boolean;
- /** @description Specifies if repository projects are enabled for repositories that belong to this org */
- has_repository_projects: boolean;
- is_verified?: boolean;
- public_repos: number;
- public_gists: number;
- followers: number;
- following: number;
- type: string;
- /** Format: date-time */
- created_at: string;
- /** Format: date-time */
- updated_at: string;
- plan?: {
- name?: string;
- space?: number;
- private_repos?: number;
- filled_seats?: number;
- seats?: number;
- };
- };
- /**
- * Copilot Business Seat Detail
- * @description Information about a Copilot Business seat assignment for a user, team, or organization.
- */
- "copilot-seat-details": {
- /** @description The assignee that has been granted access to GitHub Copilot. */
- assignee: {
- [key: string]: unknown;
- } & (components["schemas"]["simple-user"] | components["schemas"]["team"] | components["schemas"]["organization"]);
- /** @description The team that granted access to GitHub Copilot to the assignee. This will be null if the user was assigned a seat individually. */
- assigning_team?: (null | Record) & components["schemas"]["team"];
- /**
- * Format: date
- * @description The pending cancellation date for the seat, in `YYYY-MM-DD` format. This will be null unless the assignee's Copilot access has been canceled during the current billing cycle. If the seat has been cancelled, this corresponds to the start of the organization's next billing cycle.
- */
- pending_cancellation_date?: string | null;
- /**
- * Format: date-time
- * @description Timestamp of user's last GitHub Copilot activity, in ISO 8601 format.
- */
- last_activity_at?: string | null;
- /** @description Last editor that was used by the user for a GitHub Copilot completion. */
- last_activity_editor?: string | null;
- /**
- * Format: date-time
- * @description Timestamp of when the assignee was last granted access to GitHub Copilot, in ISO 8601 format.
- */
- created_at: string;
- /**
- * Format: date-time
- * @description Timestamp of when the assignee's GitHub Copilot access was last updated, in ISO 8601 format.
- */
- updated_at?: string;
- };
/**
* Dependabot Secret for an Organization
* @description Secrets for GitHub Dependabot for an organization.
@@ -26058,6 +26145,70 @@ export interface components {
*/
updated_at: string;
};
+ /**
+ * A Role Assignment for a Team
+ * @description The Relationship a Team has with a role.
+ */
+ "team-role-assignment": {
+ id: number;
+ node_id: string;
+ name: string;
+ slug: string;
+ description: string | null;
+ privacy?: string;
+ notification_setting?: string;
+ permission: string;
+ permissions?: {
+ pull: boolean;
+ triage: boolean;
+ push: boolean;
+ maintain: boolean;
+ admin: boolean;
+ };
+ /** Format: uri */
+ url: string;
+ /** Format: uri */
+ html_url: string;
+ members_url: string;
+ /** Format: uri */
+ repositories_url: string;
+ parent: null | components["schemas"]["team-simple"];
+ };
+ /**
+ * A Role Assignment for a User
+ * @description The Relationship a User has with a role.
+ */
+ "user-role-assignment": {
+ name?: string | null;
+ email?: string | null;
+ login: string;
+ id: number;
+ node_id: string;
+ /** Format: uri */
+ avatar_url: string;
+ gravatar_id: string | null;
+ /** Format: uri */
+ url: string;
+ /** Format: uri */
+ html_url: string;
+ /** Format: uri */
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ /** Format: uri */
+ subscriptions_url: string;
+ /** Format: uri */
+ organizations_url: string;
+ /** Format: uri */
+ repos_url: string;
+ events_url: string;
+ /** Format: uri */
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ starred_at?: string;
+ };
/**
* Package Version
* @description A version of a software package
@@ -26212,7 +26363,7 @@ export interface components {
* @description The type of the value for the property
* @enum {string}
*/
- value_type: "string" | "single_select";
+ value_type: "string" | "single_select" | "multi_select" | "true_false";
/** @description Whether the property is required. */
required?: boolean;
/** @description Default value of the property */
@@ -26794,6 +26945,18 @@ export interface components {
/** @description The name of a code scanning tool */
tool: string;
};
+ /**
+ * code_scanning
+ * @description Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.
+ */
+ "repository-rule-code-scanning": {
+ /** @enum {string} */
+ type: "code_scanning";
+ parameters?: {
+ /** @description Tools that must provide code scanning results for this rule to pass. */
+ code_scanning_tools: components["schemas"]["repository-rule-params-code-scanning-tool"][];
+ };
+ };
/**
* Repository Rule
* @description A repository rule.
@@ -26826,7 +26989,7 @@ export interface components {
/** @description The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS). */
max_file_size: number;
};
- } | components["schemas"]["repository-rule-workflows"];
+ } | components["schemas"]["repository-rule-workflows"] | components["schemas"]["repository-rule-code-scanning"];
/**
* Repository ruleset
* @description A set of rules to apply when specified conditions are met.
@@ -28917,6 +29080,114 @@ export interface components {
/** @description The commit SHA of the repository at the time the CodeQL database was created. */
commit_oid?: string | null;
};
+ /**
+ * @description The language targeted by the CodeQL query
+ * @enum {string}
+ */
+ "code-scanning-variant-analysis-language": "cpp" | "csharp" | "go" | "java" | "javascript" | "python" | "ruby" | "swift";
+ /**
+ * Repository Identifier
+ * @description Repository Identifier
+ */
+ "code-scanning-variant-analysis-repository": {
+ /** @description A unique identifier of the repository. */
+ id: number;
+ /** @description The name of the repository. */
+ name: string;
+ /** @description The full, globally unique, name of the repository. */
+ full_name: string;
+ /** @description Whether the repository is private. */
+ private: boolean;
+ stargazers_count: number;
+ /** Format: date-time */
+ updated_at: string | null;
+ };
+ /**
+ * @description The new status of the CodeQL variant analysis repository task.
+ * @enum {string}
+ */
+ "code-scanning-variant-analysis-status": "pending" | "in_progress" | "succeeded" | "failed" | "canceled" | "timed_out";
+ "code-scanning-variant-analysis-skipped-repo-group": {
+ /** @description The total number of repositories that were skipped for this reason. */
+ repository_count: number;
+ /** @description A list of repositories that were skipped. This list may not include all repositories that were skipped. This is only available when the repository was found and the user has access to it. */
+ repositories: components["schemas"]["code-scanning-variant-analysis-repository"][];
+ };
+ /**
+ * Variant Analysis
+ * @description A run of a CodeQL query against one or more repositories.
+ */
+ "code-scanning-variant-analysis": {
+ /** @description The ID of the variant analysis. */
+ id: number;
+ controller_repo: components["schemas"]["simple-repository"];
+ actor: components["schemas"]["simple-user"];
+ query_language: components["schemas"]["code-scanning-variant-analysis-language"];
+ /** @description The download url for the query pack. */
+ query_pack_url: string;
+ /**
+ * Format: date-time
+ * @description The date and time at which the variant analysis was created, in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ.
+ */
+ created_at?: string;
+ /**
+ * Format: date-time
+ * @description The date and time at which the variant analysis was last updated, in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ.
+ */
+ updated_at?: string;
+ /**
+ * Format: date-time
+ * @description The date and time at which the variant analysis was completed, in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ. Will be null if the variant analysis has not yet completed or this information is not available.
+ */
+ completed_at?: string | null;
+ /** @enum {string} */
+ status: "in_progress" | "succeeded" | "failed" | "cancelled";
+ /** @description The GitHub Actions workflow run used to execute this variant analysis. This is only available if the workflow run has started. */
+ actions_workflow_run_id?: number;
+ /**
+ * @description The reason for a failure of the variant analysis. This is only available if the variant analysis has failed.
+ * @enum {string}
+ */
+ failure_reason?: "no_repos_queried" | "actions_workflow_run_failed" | "internal_error";
+ scanned_repositories?: {
+ repository: components["schemas"]["code-scanning-variant-analysis-repository"];
+ analysis_status: components["schemas"]["code-scanning-variant-analysis-status"];
+ /** @description The number of results in the case of a successful analysis. This is only available for successful analyses. */
+ result_count?: number;
+ /** @description The size of the artifact. This is only available for successful analyses. */
+ artifact_size_in_bytes?: number;
+ /** @description The reason of the failure of this repo task. This is only available if the repository task has failed. */
+ failure_message?: string;
+ }[];
+ /** @description Information about repositories that were skipped from processing. This information is only available to the user that initiated the variant analysis. */
+ skipped_repositories?: {
+ access_mismatch_repos: components["schemas"]["code-scanning-variant-analysis-skipped-repo-group"];
+ not_found_repos: {
+ /** @description The total number of repositories that were skipped for this reason. */
+ repository_count: number;
+ /** @description A list of full repository names that were skipped. This list may not include all repositories that were skipped. */
+ repository_full_names: string[];
+ };
+ no_codeql_db_repos: components["schemas"]["code-scanning-variant-analysis-skipped-repo-group"];
+ over_limit_repos: components["schemas"]["code-scanning-variant-analysis-skipped-repo-group"];
+ };
+ };
+ "code-scanning-variant-analysis-repo-task": {
+ repository: components["schemas"]["simple-repository"];
+ analysis_status: components["schemas"]["code-scanning-variant-analysis-status"];
+ /** @description The size of the artifact. This is only available for successful analyses. */
+ artifact_size_in_bytes?: number;
+ /** @description The number of results in the case of a successful analysis. This is only available for successful analyses. */
+ result_count?: number;
+ /** @description The reason of the failure of this repo task. This is only available if the repository task has failed. */
+ failure_message?: string;
+ /** @description The SHA of the commit the CodeQL database was built against. This is only available for successful analyses. */
+ database_commit_sha?: string;
+ /** @description The source location prefix to use. This is only available for successful analyses. */
+ source_location_prefix?: string;
+ /** @description The URL of the artifact. This is only available for successful analyses. */
+ artifact_url?: string;
+ };
/** @description Configuration for code scanning default setup. */
"code-scanning-default-setup": {
/**
@@ -31851,7 +32122,7 @@ export interface components {
* Repository Rule
* @description A repository rule with ruleset details.
*/
- "repository-rule-detailed": (components["schemas"]["repository-rule-creation"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-update"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-deletion"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-linear-history"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-deployments"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-signatures"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-pull-request"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-status-checks"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-non-fast-forward"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-message-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-author-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-committer-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-branch-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-tag-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-workflows"] & components["schemas"]["repository-rule-ruleset-info"]);
+ "repository-rule-detailed": (components["schemas"]["repository-rule-creation"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-update"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-deletion"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-linear-history"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-deployments"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-signatures"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-pull-request"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-status-checks"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-non-fast-forward"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-message-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-author-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-committer-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-branch-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-tag-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-workflows"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-code-scanning"] & components["schemas"]["repository-rule-ruleset-info"]);
"secret-scanning-alert": {
number?: components["schemas"]["alert-number"];
created_at?: components["schemas"]["alert-created-at"];
@@ -32713,6 +32984,8 @@ export interface components {
location: string | null;
/** Format: email */
email: string | null;
+ /** Format: email */
+ notification_email?: string | null;
hireable: boolean | null;
bio: string | null;
twitter_username?: string | null;
@@ -35661,6 +35934,26 @@ export interface components {
/** Format: date-time */
archived_at: string | null;
};
+ /**
+ * Projects v2 Single Select Option
+ * @description An option for a single select field
+ */
+ "projects-v2-single-select-option": {
+ id: string;
+ name: string;
+ color?: string | null;
+ description?: string | null;
+ };
+ /**
+ * Projects v2 Iteration Setting
+ * @description An iteration setting for an iteration field
+ */
+ "projects-v2-iteration-setting": {
+ id: string;
+ title: string;
+ duration?: number | null;
+ start_date?: string | null;
+ };
/** @description The pull request number. */
webhooks_number: number;
"pull-request-webhook": components["schemas"]["pull-request"] & {
@@ -37490,6 +37783,9 @@ export interface components {
resolution_comment?: string | null;
/** @description The type of secret that secret scanning detected. */
secret_type?: string;
+ /** @description User-friendly name for the detected secret, matching the `secret_type`.
+ * For a list of built-in patterns, see "[Secret scanning patterns](https://docs.github.com/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-advanced-security)." */
+ secret_type_display_name?: string;
/**
* @description The token status as of the latest validity check.
* @enum {string}
@@ -42025,10 +42321,6 @@ export interface components {
/** Format: uri */
contributors_url: string;
created_at: number | string;
- /** @description The custom properties that were defined for the repository. The keys are the custom property names, and the values are the corresponding custom property values. */
- custom_properties?: {
- [key: string]: unknown;
- };
/** @description The default branch of the repository. */
default_branch: string;
/**
@@ -51006,6 +51298,7 @@ export interface components {
/** @enum {string} */
action: "approved";
personal_access_token_request: components["schemas"]["personal-access-token-request"];
+ enterprise?: components["schemas"]["enterprise-webhooks"];
organization: components["schemas"]["organization-simple-webhooks"];
sender: components["schemas"]["simple-user-webhooks"];
installation: components["schemas"]["simple-installation"];
@@ -51015,6 +51308,7 @@ export interface components {
/** @enum {string} */
action: "cancelled";
personal_access_token_request: components["schemas"]["personal-access-token-request"];
+ enterprise?: components["schemas"]["enterprise-webhooks"];
organization: components["schemas"]["organization-simple-webhooks"];
sender: components["schemas"]["simple-user-webhooks"];
installation: components["schemas"]["simple-installation"];
@@ -51024,9 +51318,10 @@ export interface components {
/** @enum {string} */
action: "created";
personal_access_token_request: components["schemas"]["personal-access-token-request"];
+ enterprise?: components["schemas"]["enterprise-webhooks"];
organization: components["schemas"]["organization-simple-webhooks"];
sender: components["schemas"]["simple-user-webhooks"];
- installation: components["schemas"]["simple-installation"];
+ installation?: components["schemas"]["simple-installation"];
};
/** personal_access_token_request denied event */
"webhook-personal-access-token-request-denied": {
@@ -51034,6 +51329,7 @@ export interface components {
action: "denied";
personal_access_token_request: components["schemas"]["personal-access-token-request"];
organization: components["schemas"]["organization-simple-webhooks"];
+ enterprise?: components["schemas"]["enterprise-webhooks"];
sender: components["schemas"]["simple-user-webhooks"];
installation: components["schemas"]["simple-installation"];
};
@@ -51525,10 +51821,16 @@ export interface components {
"webhook-projects-v2-item-edited": {
/** @enum {string} */
action: "edited";
+ /** @description The changes made to the item may involve modifications in the item's fields and draft issue body.
+ * It includes altered values for text, number, date, single select, and iteration fields, along with the GraphQL node ID of the changed field. */
changes?: {
field_value: {
field_node_id?: string;
field_type?: string;
+ field_name?: string;
+ project_number?: number;
+ from?: (null | Record) & (string | number | components["schemas"]["projects-v2-single-select-option"] | components["schemas"]["projects-v2-iteration-setting"]);
+ to?: (null | Record) & (string | number | components["schemas"]["projects-v2-single-select-option"] | components["schemas"]["projects-v2-iteration-setting"]);
};
} | {
body: {
@@ -80454,17 +80756,6 @@ export interface components {
repository: components["schemas"]["repository-webhooks"];
sender?: components["schemas"]["simple-user-webhooks"];
};
- /** secret_scanning_alert revoked event */
- "webhook-secret-scanning-alert-revoked": {
- /** @enum {string} */
- action: "revoked";
- alert: components["schemas"]["secret-scanning-alert-webhook"];
- enterprise?: components["schemas"]["enterprise-webhooks"];
- installation?: components["schemas"]["simple-installation"];
- organization?: components["schemas"]["organization-simple-webhooks"];
- repository: components["schemas"]["repository-webhooks"];
- sender?: components["schemas"]["simple-user-webhooks"];
- };
/** secret_scanning_alert validated event */
"webhook-secret-scanning-alert-validated": {
/** @enum {string} */
@@ -85259,6 +85550,43 @@ export interface operations {
304: components["responses"]["not_modified"];
};
};
+ "copilot/list-copilot-seats-for-enterprise": {
+ parameters: {
+ query?: {
+ /** @description The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
+ page?: components["parameters"]["page"];
+ /** @description The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
+ per_page?: number;
+ };
+ header?: never;
+ path: {
+ /** @description The slug version of the enterprise name. You can also substitute this value with the enterprise id. */
+ enterprise: components["parameters"]["enterprise"];
+ };
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ /** @description Response */
+ 200: {
+ headers: {
+ Link: components["headers"]["link"];
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": {
+ /** @description Total number of Copilot seats for the organization currently being billed. */
+ total_seats?: number;
+ seats?: components["schemas"]["copilot-seat-details"][];
+ };
+ };
+ };
+ 401: components["responses"]["requires_authentication"];
+ 403: components["responses"]["forbidden"];
+ 404: components["responses"]["not_found"];
+ 500: components["responses"]["internal_error"];
+ };
+ };
"copilot/usage-metrics-for-enterprise": {
parameters: {
query?: {
@@ -91144,7 +91472,7 @@ export interface operations {
[name: string]: unknown;
};
content: {
- "application/json": components["schemas"]["team"][];
+ "application/json": components["schemas"]["team-role-assignment"][];
};
};
/** @description Response if the organization or role does not exist. */
@@ -91189,7 +91517,7 @@ export interface operations {
[name: string]: unknown;
};
content: {
- "application/json": components["schemas"]["simple-user"][];
+ "application/json": components["schemas"]["user-role-assignment"][];
};
};
/** @description Response if the organization or role does not exist. */
@@ -92036,7 +92364,7 @@ export interface operations {
* @description The type of the value for the property
* @enum {string}
*/
- value_type: "string" | "single_select";
+ value_type: "string" | "single_select" | "multi_select" | "true_false";
/** @description Whether the property is required. */
required?: boolean;
/** @description Default value of the property */
@@ -92920,44 +93248,6 @@ export interface operations {
};
};
};
- "copilot/usage-metrics-for-team": {
- parameters: {
- query?: {
- /** @description Show usage metrics since this date. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:MM:SSZ`). Maximum value is 28 days ago. */
- since?: string;
- /** @description Show usage metrics until this date. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:MM:SSZ`) and should not preceed the `since` date if it is passed. */
- until?: string;
- /** @description The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
- page?: components["parameters"]["page"];
- /** @description The number of days of metrics to display per page (max 28). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
- per_page?: number;
- };
- header?: never;
- path: {
- /** @description The organization name. The name is not case sensitive. */
- org: components["parameters"]["org"];
- /** @description The slug of the team name. */
- team_slug: components["parameters"]["team-slug"];
- };
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- /** @description Response */
- 200: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": components["schemas"]["copilot-usage-metrics"][];
- };
- };
- 401: components["responses"]["requires_authentication"];
- 403: components["responses"]["forbidden"];
- 404: components["responses"]["not_found"];
- 500: components["responses"]["internal_error"];
- };
- };
"teams/list": {
parameters: {
query?: {
@@ -97731,7 +98021,7 @@ export interface operations {
"repos/list-branches": {
parameters: {
query?: {
- /** @description Setting to `true` returns only protected branches. When set to `false`, only unprotected branches are returned. Omitting this parameter returns all branches. */
+ /** @description Setting to `true` returns only branches protected by branch protections or rulesets. When set to `false`, only unprotected branches are returned. Omitting this parameter returns all branches. */
protected?: boolean;
/** @description The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
per_page?: components["parameters"]["per-page"];
@@ -99811,6 +100101,118 @@ export interface operations {
503: components["responses"]["service_unavailable"];
};
};
+ "code-scanning/create-variant-analysis": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ /** @description The account owner of the repository. The name is not case sensitive. */
+ owner: components["parameters"]["owner"];
+ /** @description The name of the repository without the `.git` extension. The name is not case sensitive. */
+ repo: components["parameters"]["repo"];
+ };
+ cookie?: never;
+ };
+ requestBody: {
+ content: {
+ "application/json": {
+ language: components["schemas"]["code-scanning-variant-analysis-language"];
+ /** @description A Base64-encoded tarball containing a CodeQL query and all its dependencies */
+ query_pack: string;
+ /** @description List of repository names (in the form `owner/repo-name`) to run the query against. Precisely one property from `repositories`, `repository_lists` and `repository_owners` is required. */
+ repositories?: string[];
+ /** @description List of repository lists to run the query against. Precisely one property from `repositories`, `repository_lists` and `repository_owners` is required. */
+ repository_lists?: string[];
+ /** @description List of organization or user names whose repositories the query should be run against. Precisely one property from `repositories`, `repository_lists` and `repository_owners` is required. */
+ repository_owners?: string[];
+ } & (unknown | unknown | unknown);
+ };
+ };
+ responses: {
+ /** @description Variant analysis submitted for processing */
+ 201: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["code-scanning-variant-analysis"];
+ };
+ };
+ 404: components["responses"]["not_found"];
+ /** @description Unable to process variant analysis submission */
+ 422: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["basic-error"];
+ };
+ };
+ 503: components["responses"]["service_unavailable"];
+ };
+ };
+ "code-scanning/get-variant-analysis": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ /** @description The account owner of the repository. The name is not case sensitive. */
+ owner: components["parameters"]["owner"];
+ /** @description The name of the repository without the `.git` extension. The name is not case sensitive. */
+ repo: components["parameters"]["repo"];
+ /** @description The unique identifier of the variant analysis. */
+ codeql_variant_analysis_id: number;
+ };
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ /** @description Response */
+ 200: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["code-scanning-variant-analysis"];
+ };
+ };
+ 404: components["responses"]["not_found"];
+ 503: components["responses"]["service_unavailable"];
+ };
+ };
+ "code-scanning/get-variant-analysis-repo-task": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ /** @description The account owner of the repository. The name is not case sensitive. */
+ owner: components["parameters"]["owner"];
+ /** @description The name of the controller repository. */
+ repo: string;
+ /** @description The ID of the variant analysis. */
+ codeql_variant_analysis_id: number;
+ /** @description The account owner of the variant analysis repository. The name is not case sensitive. */
+ repo_owner: string;
+ /** @description The name of the variant analysis repository. */
+ repo_name: string;
+ };
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ /** @description Response */
+ 200: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["code-scanning-variant-analysis-repo-task"];
+ };
+ };
+ 404: components["responses"]["not_found"];
+ 503: components["responses"]["service_unavailable"];
+ };
+ };
"code-scanning/get-default-setup": {
parameters: {
query?: never;
@@ -100847,9 +101249,9 @@ export interface operations {
author?: string;
/** @description GitHub username or email address to use to filter by commit committer. */
committer?: string;
- /** @description Only show results that were last updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. */
- since?: components["parameters"]["since"];
- /** @description Only commits before this date will be returned. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. */
+ /** @description Only show results that were last updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. Due to limitations of Git, timestamps must be between 1970-01-01 and 2099-12-31 (inclusive) or unexpected results may be returned. */
+ since?: string;
+ /** @description Only commits before this date will be returned. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. Due to limitations of Git, timestamps must be between 1970-01-01 and 2099-12-31 (inclusive) or unexpected results may be returned. */
until?: string;
/** @description The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
per_page?: components["parameters"]["per-page"];
@@ -101303,6 +101705,7 @@ export interface operations {
};
};
302: components["responses"]["found"];
+ 304: components["responses"]["not_modified"];
403: components["responses"]["forbidden"];
404: components["responses"]["not_found"];
};
@@ -106430,7 +106833,7 @@ export interface operations {
requestBody: {
content: {
"application/json": {
- /** @description Specify a custom domain for the repository. Sending a `null` value will remove the custom domain. For more about custom domains, see "[Using a custom domain with GitHub Pages](https://docs.github.com/articles/using-a-custom-domain-with-github-pages/)." */
+ /** @description Specify a custom domain for the repository. Sending a `null` value will remove the custom domain. For more about custom domains, see "[Using a custom domain with GitHub Pages](https://docs.github.com/pages/configuring-a-custom-domain-for-your-github-pages-site)." */
cname?: string | null;
/** @description Specify whether HTTPS should be enforced for the repository. */
https_enforced?: boolean;
@@ -107342,7 +107745,7 @@ export interface operations {
};
requestBody?: never;
responses: {
- /** @description Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) to fetch diff and patch formats. */
+ /** @description Pass the appropriate [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types) to fetch diff and patch formats. */
200: {
headers: {
[name: string]: unknown;
@@ -123788,43 +124191,6 @@ export interface operations {
};
};
};
- "secret-scanning-alert/revoked": {
- parameters: {
- query?: never;
- header?: {
- /** @example GitHub-Hookshot/123abc */
- "User-Agent"?: string;
- /** @example 12312312 */
- "X-Github-Hook-Id"?: string;
- /** @example issues */
- "X-Github-Event"?: string;
- /** @example 123123 */
- "X-Github-Hook-Installation-Target-Id"?: string;
- /** @example repository */
- "X-Github-Hook-Installation-Target-Type"?: string;
- /** @example 0b989ba4-242f-11e5-81e1-c7b6966d2516 */
- "X-GitHub-Delivery"?: string;
- /** @example sha256=6dcb09b5b57875f334f61aebed695e2e4193db5e */
- "X-Hub-Signature-256"?: string;
- };
- path?: never;
- cookie?: never;
- };
- requestBody: {
- content: {
- "application/json": components["schemas"]["webhook-secret-scanning-alert-revoked"];
- };
- };
- responses: {
- /** @description Return a 200 status to indicate that the data was received successfully */
- 200: {
- headers: {
- [name: string]: unknown;
- };
- content?: never;
- };
- };
- };
"secret-scanning-alert/validated": {
parameters: {
query?: never;
diff --git a/packages/openapi-typescript/examples/github-api-next.yaml b/packages/openapi-typescript/examples/github-api-next.yaml
index 34704a884..c868b1182 100644
--- a/packages/openapi-typescript/examples/github-api-next.yaml
+++ b/packages/openapi-typescript/examples/github-api-next.yaml
@@ -87,6 +87,10 @@ tags:
description: Interact with GitHub Classroom.
- name: desktop
description: Desktop specific endpoints.
+- name: enterprise-teams
+ description: Endpoints to manage GitHub Enterprise Teams.
+- name: code-security
+ description: Endpoints to manage Code security using the REST API.
servers:
- url: https://api.github.com
externalDocs:
@@ -834,7 +838,7 @@ paths:
delete:
summary: Delete an app authorization
description: |-
- OAuth and GitHub application owners can revoke a grant for their application and a specific user. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the OAuth application's `client_id` and `client_secret` as the username and password. You must also provide a valid OAuth `access_token` as an input parameter and the grant for the token's owner will be deleted.
+ OAuth and GitHub application owners can revoke a grant for their application and a specific user. You must provide a valid OAuth `access_token` as an input parameter and the grant for the token's owner will be deleted.
Deleting an application's grant will also delete all OAuth tokens associated with the application for the user. Once deleted, the application will have no access to the user's account and will no longer be listed on [the application authorizations settings screen within GitHub](https://github.com/settings/applications#authorized).
operationId: apps/delete-authorization
tags:
@@ -877,9 +881,7 @@ paths:
description: OAuth applications and GitHub applications with OAuth authorizations
can use this API method for checking OAuth token validity without exceeding
the normal rate limits for failed login attempts. Authentication works differently
- with this particular endpoint. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)
- to use this endpoint, where the username is the application `client_id` and
- the password is its `client_secret`. Invalid tokens will return `404 NOT FOUND`.
+ with this particular endpoint. Invalid tokens will return `404 NOT FOUND`.
tags:
- apps
operationId: apps/check-token
@@ -928,9 +930,7 @@ paths:
description: OAuth applications and GitHub applications with OAuth authorizations
can use this API method to reset a valid OAuth token without end-user involvement.
Applications must save the "token" property in the response because changes
- take effect immediately. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)
- when accessing this endpoint, using the application's `client_id` and `client_secret`
- as the username and password. Invalid tokens will return `404 NOT FOUND`.
+ take effect immediately. Invalid tokens will return `404 NOT FOUND`.
tags:
- apps
operationId: apps/reset-token
@@ -976,9 +976,6 @@ paths:
summary: Delete an app token
description: OAuth or GitHub application owners can revoke a single token for
an OAuth application or a GitHub application with an OAuth authorization.
- You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)
- when accessing this endpoint, using the application's `client_id` and `client_secret`
- as the username and password.
tags:
- apps
operationId: apps/delete-token
@@ -1023,10 +1020,6 @@ paths:
token.
Invalid tokens will return `404 NOT FOUND`.
-
- You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)
- when accessing this endpoint, using the `client_id` and `client_secret` of the GitHub App
- as the username and password.
tags:
- apps
operationId: apps/scope-token
@@ -1429,6 +1422,68 @@ paths:
enabledForGitHubApps: true
category: emojis
subcategory: emojis
+ "/enterprises/{enterprise}/copilot/billing/seats":
+ get:
+ summary: List all Copilot seat assignments for an enterprise
+ description: |-
+ **Note**: This endpoint is in beta and is subject to change.
+
+ Lists all active Copilot seats across organizations or enterprise teams for an enterprise with a Copilot Business or Copilot Enterprise subscription.
+
+ Only enterprise owners and billing managers can view assigned Copilot seats across their child organizations or enterprise teams.
+
+ Personal access tokens (classic) need either the `manage_billing:copilot` or `read:enterprise` scopes to use this endpoint.
+ tags:
+ - copilot
+ operationId: copilot/list-copilot-seats-for-enterprise
+ externalDocs:
+ description: API method documentation
+ url: https://docs.github.com/rest/copilot/copilot-user-management#list-all-copilot-seat-assignments-for-an-enterprise
+ parameters:
+ - "$ref": "#/components/parameters/enterprise"
+ - "$ref": "#/components/parameters/page"
+ - name: per_page
+ description: The number of results per page (max 100). For more information,
+ see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."
+ in: query
+ schema:
+ type: integer
+ default: 50
+ responses:
+ '200':
+ description: Response
+ content:
+ application/json:
+ schema:
+ type: object
+ properties:
+ total_seats:
+ type: integer
+ description: Total number of Copilot seats for the organization
+ currently being billed.
+ seats:
+ type: array
+ items:
+ "$ref": "#/components/schemas/copilot-seat-details"
+ examples:
+ default:
+ "$ref": "#/components/examples/copilot-seats-list"
+ headers:
+ Link:
+ "$ref": "#/components/headers/link"
+ '500':
+ "$ref": "#/components/responses/internal_error"
+ '401':
+ "$ref": "#/components/responses/requires_authentication"
+ '403':
+ "$ref": "#/components/responses/forbidden"
+ '404':
+ "$ref": "#/components/responses/not_found"
+ x-github:
+ githubCloudOnly: false
+ enabledForGitHubApps: true
+ category: copilot
+ subcategory: copilot-user-management
"/enterprises/{enterprise}/copilot/usage":
get:
summary: Get a summary of Copilot usage for enterprise members
@@ -1443,10 +1498,9 @@ paths:
and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
they must have telemetry enabled in their IDE.
- Only the owners and billing managers of enterprises with a Copilot Business or Enterprise subscription can view Copilot usage
- metrics for the enterprise.
+ Only owners and billing managers can view Copilot usage metrics for the enterprise.
- OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:enterprise` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/usage-metrics-for-enterprise
@@ -1667,7 +1721,7 @@ paths:
By default, timeline resources are returned in JSON. You can specify the `application/atom+xml` type in the `Accept` header to return timeline resources in Atom format. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
- **Note**: Private feeds are only returned when [authenticating via Basic Auth](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) since current feed URIs use the older, non revocable auth tokens.
+ **Note**: Private feeds are only returned when [authenticating via Basic Auth](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) since current feed URIs use the older, non revocable auth tokens.
tags:
- activity
operationId: activity/get-feeds
@@ -3021,7 +3075,7 @@ paths:
description: |-
Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
- GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
tags:
- apps
operationId: apps/get-subscription-plan-for-account
@@ -3059,7 +3113,7 @@ paths:
description: |-
Lists all plans that are part of your GitHub Marketplace listing.
- GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
tags:
- apps
operationId: apps/list-plans
@@ -3099,7 +3153,7 @@ paths:
description: |-
Returns user and organization accounts associated with the specified plan, including free plans. For per-seat pricing, you see the list of accounts that have purchased the plan, including the number of seats purchased. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
- GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
tags:
- apps
operationId: apps/list-accounts-for-plan
@@ -3153,7 +3207,7 @@ paths:
description: |-
Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
- GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
tags:
- apps
operationId: apps/get-subscription-plan-for-account-stubbed
@@ -3187,7 +3241,7 @@ paths:
description: |-
Lists all plans that are part of your GitHub Marketplace listing.
- GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
tags:
- apps
operationId: apps/list-plans-stubbed
@@ -3225,7 +3279,7 @@ paths:
description: |-
Returns repository and organization accounts associated with the specified plan, including free plans. For per-seat pricing, you see the list of accounts that have purchased the plan, including the number of seats purchased. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
- GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
tags:
- apps
operationId: apps/list-accounts-for-plan-stubbed
@@ -6621,12 +6675,12 @@ paths:
**Note**: This endpoint is in beta and is subject to change.
Gets information about an organization's Copilot subscription, including seat breakdown
- and code matching policies. To configure these settings, go to your organization's settings on GitHub.com.
+ and feature policies. To configure these settings, go to your organization's settings on GitHub.com.
For more information, see "[Managing policies for Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-copilot-business-in-your-organization)".
- Only organization owners can configure and view details about the organization's Copilot Business subscription.
+ Only organization owners can view details about the organization's Copilot Business or Copilot Enterprise subscription.
- OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/get-copilot-organization-details
@@ -6666,11 +6720,10 @@ paths:
description: |-
**Note**: This endpoint is in beta and is subject to change.
- Lists all Copilot seat assignments for an organization that are currently being billed (either active or pending cancellation at the start of the next billing cycle).
+ Lists all active Copilot seats for an organization with a Copilot Business or Copilot Enterprise subscription.
+ Only organization owners can view assigned seats.
- Only organization owners can configure and view details about the organization's Copilot Business or Enterprise subscription.
-
- OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/list-copilot-seats
@@ -6731,13 +6784,13 @@ paths:
Purchases a GitHub Copilot seat for all users within each specified team.
The organization will be billed accordingly. For more information about Copilot pricing, see "[Pricing for GitHub Copilot](https://docs.github.com/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot#about-billing-for-github-copilot)".
- Only organization owners can configure GitHub Copilot in their organization.
+ Only organization owners can add Copilot seats for their organization members.
In order for an admin to use this endpoint, the organization must have a Copilot Business or Enterprise subscription and a configured suggestion matching policy.
For more information about setting up a Copilot subscription, see "[Setting up a Copilot subscription for your organization](https://docs.github.com/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription-for-your-organization-or-enterprise)".
For more information about setting a suggestion matching policy, see "[Configuring suggestion matching policies for GitHub Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-github-copilot-in-your-organization#configuring-suggestion-matching-policies-for-github-copilot-in-your-organization)".
- OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/add-copilot-seats-for-teams
@@ -6816,9 +6869,9 @@ paths:
For more information about disabling access to Copilot Business or Enterprise, see "[Revoking access to GitHub Copilot for specific users in your organization](https://docs.github.com/copilot/managing-copilot/managing-access-for-copilot-in-your-organization#revoking-access-to-github-copilot-for-specific-users-in-your-organization)".
- Only organization owners can configure GitHub Copilot in their organization.
+ Only organization owners can cancel Copilot seats for their organization members.
- OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/cancel-copilot-seat-assignment-for-teams
@@ -6894,13 +6947,13 @@ paths:
Purchases a GitHub Copilot seat for each user specified.
The organization will be billed accordingly. For more information about Copilot pricing, see "[Pricing for GitHub Copilot](https://docs.github.com/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot#about-billing-for-github-copilot)".
- Only organization owners can configure GitHub Copilot in their organization.
+ Only organization owners can add Copilot seats for their organization members.
In order for an admin to use this endpoint, the organization must have a Copilot Business or Enterprise subscription and a configured suggestion matching policy.
For more information about setting up a Copilot subscription, see "[Setting up a Copilot subscription for your organization](https://docs.github.com/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription-for-your-organization-or-enterprise)".
For more information about setting a suggestion matching policy, see "[Configuring suggestion matching policies for GitHub Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-github-copilot-in-your-organization#configuring-suggestion-matching-policies-for-github-copilot-in-your-organization)".
- OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/add-copilot-seats-for-users
@@ -6979,9 +7032,9 @@ paths:
For more information about disabling access to Copilot Business or Enterprise, see "[Revoking access to GitHub Copilot for specific users in your organization](https://docs.github.com/copilot/managing-copilot/managing-access-for-copilot-in-your-organization#revoking-access-to-github-copilot-for-specific-users-in-your-organization)".
- Only organization owners can configure GitHub Copilot in their organization.
+ Only organization owners can cancel Copilot seats for their organization members.
- OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/cancel-copilot-seat-assignment-for-users
@@ -7063,10 +7116,9 @@ paths:
and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
they must have telemetry enabled in their IDE.
- Copilot Business or Copilot Enterprise organization owners, and owners and billing managers of their parent enterprises, can view
- Copilot usage metrics.
+ Organization owners, and owners and billing managers of the parent enterprise, can view Copilot usage metrics.
- OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:org`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot`, `read:org`, or `read:enterprise` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/usage-metrics-for-org
@@ -8361,10 +8413,11 @@ paths:
"/orgs/{org}/invitations":
get:
summary: List pending organization invitations
- description: 'The return hash contains a `role` field which refers to the Organization
- Invitation role and will be one of the following values: `direct_member`,
- `admin`, `billing_manager`, or `hiring_manager`. If the invitee is not a GitHub
- member, the `login` field in the return hash will be `null`.'
+ description: |-
+ The return hash contains a `role` field which refers to the Organization
+ Invitation role and will be one of the following values: `direct_member`, `admin`,
+ `billing_manager`, or `hiring_manager`. If the invitee is not a GitHub
+ member, the `login` field in the return hash will be `null`.
tags:
- orgs
operationId: orgs/list-pending-invitations
@@ -8426,7 +8479,7 @@ paths:
description: |-
Invite people to an organization by using their GitHub user ID or their email address. In order to create invitations in an organization, the authenticated user must be an organization owner.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
tags:
- orgs
@@ -8918,9 +8971,9 @@ paths:
Gets the GitHub Copilot seat assignment details for a member of an organization who currently has access to GitHub Copilot.
- Organization owners can view GitHub Copilot seat assignment details for members in their organization.
+ Only organization owners can view Copilot seat assignment details for members of their organization.
- OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/get-copilot-seat-details-for-user
@@ -9001,10 +9054,10 @@ paths:
the authenticated user changes a member's role to `admin`, the affected user
will receive an email notifying them that they've been made an organization
owner. If the authenticated user changes an owner's role to `member`, no email
- will be sent.\n\n**Rate limits**\n\nTo prevent abuse, the authenticated user
- is limited to 50 organization invitations per 24 hour period. If the organization
- is more than one month old or on a paid plan, the limit is 500 invitations
- per 24 hour period."
+ will be sent.\n\n**Rate limits**\n\nTo prevent abuse, organization owners
+ are limited to creating 50 organization invitations for an organization within
+ a 24 hour period. If the organization is more than one month old or on a paid
+ plan, the limit is 500 invitations per 24 hour period."
tags:
- orgs
operationId: orgs/set-membership-for-user
@@ -9940,7 +9993,7 @@ paths:
type: array
description: List of teams assigned to the organization role
items:
- "$ref": "#/components/schemas/team"
+ "$ref": "#/components/schemas/team-role-assignment"
examples:
default:
"$ref": "#/components/examples/team-items"
@@ -9986,7 +10039,7 @@ paths:
type: array
description: List of users assigned to the organization role
items:
- "$ref": "#/components/schemas/simple-user"
+ "$ref": "#/components/schemas/user-role-assignment"
examples:
default:
"$ref": "#/components/examples/simple-user-items"
@@ -11224,6 +11277,8 @@ paths:
enum:
- string
- single_select
+ - multi_select
+ - true_false
description: The type of the value for the property
examples:
- single_select
@@ -12502,84 +12557,6 @@ paths:
enabledForGitHubApps: false
category: billing
subcategory: billing
- "/orgs/{org}/team/{team_slug}/copilot/usage":
- get:
- summary: Get a summary of Copilot usage for a team
- description: |-
- **Note**: This endpoint is in beta and is subject to change.
-
- You can use this endpoint to see a daily breakdown of aggregated usage metrics for Copilot completions and Copilot Chat in the IDE
- for users within a team, with a further breakdown of suggestions, acceptances, and number of active users by editor and language for each day.
- See the response schema tab for detailed metrics definitions.
-
- The response contains metrics for the prior 28 days. Usage metrics are processed once per day for the previous day,
- and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
- they must have telemetry enabled in their IDE.
-
- **Note**: This endpoint will only return results for a given day if the team had five or more members on that day.
-
- Copilot Business or Copilot Enterprise organization owners for the organization that contains this team,
- and owners and billing managers of their parent enterprises, can view Copilot usage metrics for a team.
-
- OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:org`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
- tags:
- - copilot
- operationId: copilot/usage-metrics-for-team
- externalDocs:
- description: API method documentation
- url: https://docs.github.com/rest/copilot/copilot-usage#get-a-summary-of-copilot-usage-for-a-team
- parameters:
- - "$ref": "#/components/parameters/org"
- - "$ref": "#/components/parameters/team-slug"
- - name: since
- description: Show usage metrics since this date. This is a timestamp in [ISO
- 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:MM:SSZ`).
- Maximum value is 28 days ago.
- in: query
- required: false
- schema:
- type: string
- - name: until
- description: Show usage metrics until this date. This is a timestamp in [ISO
- 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:MM:SSZ`)
- and should not preceed the `since` date if it is passed.
- in: query
- required: false
- schema:
- type: string
- - "$ref": "#/components/parameters/page"
- - name: per_page
- description: The number of days of metrics to display per page (max 28). For
- more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."
- in: query
- schema:
- type: integer
- default: 28
- responses:
- '200':
- description: Response
- content:
- application/json:
- schema:
- type: array
- items:
- "$ref": "#/components/schemas/copilot-usage-metrics"
- examples:
- default:
- "$ref": "#/components/examples/copilot-usage-metrics-org"
- '500':
- "$ref": "#/components/responses/internal_error"
- '401':
- "$ref": "#/components/responses/requires_authentication"
- '403':
- "$ref": "#/components/responses/forbidden"
- '404':
- "$ref": "#/components/responses/not_found"
- x-github:
- githubCloudOnly: false
- enabledForGitHubApps: true
- category: copilot
- subcategory: copilot-usage
"/orgs/{org}/teams":
get:
summary: List teams
@@ -12928,7 +12905,7 @@ paths:
description: |-
Creates a new discussion post on a team's page.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
**Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions`.
@@ -13143,7 +13120,7 @@ paths:
description: |-
Creates a new comment on a team discussion.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
**Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments`.
@@ -14043,7 +14020,7 @@ paths:
description: |-
Checks whether a team has `admin`, `push`, `maintain`, `triage`, or `pull` permission for a repository. Repositories inherited through a parent team will also be checked.
- You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `application/vnd.github.v3.repository+json` accept header.
+ You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types/) via the `application/vnd.github.v3.repository+json` accept header.
If a team doesn't have permission for the repository, you will receive a `404 Not Found` response status.
@@ -15291,7 +15268,7 @@ paths:
* The `dependency_snapshots` object provides your rate limit status for submitting snapshots to the dependency graph. For more information, see "[Dependency graph](https://docs.github.com/rest/dependency-graph)."
* The `code_scanning_upload` object provides your rate limit status for uploading SARIF results to code scanning. For more information, see "[Uploading a SARIF file to GitHub](https://docs.github.com/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github)."
* The `actions_runner_registration` object provides your rate limit status for registering self-hosted runners in GitHub Actions. For more information, see "[Self-hosted runners](https://docs.github.com/rest/actions/self-hosted-runners)."
- * The `source_import` object is no longer in use for any API endpoints, and it will be removed in the next API version. For more information about API versions, see "[API Versions](https://docs.github.com/rest/overview/api-versions)."
+ * The `source_import` object is no longer in use for any API endpoints, and it will be removed in the next API version. For more information about API versions, see "[API Versions](https://docs.github.com/rest/about-the-rest-api/api-versions)."
**Note:** The `rate` object is deprecated. If you're writing new API client code or updating existing code, you should use the `core` object instead of the `rate` object. The `core` object contains the same information that is present in the `rate` object.
tags:
@@ -18961,9 +18938,9 @@ paths:
- "$ref": "#/components/parameters/owner"
- "$ref": "#/components/parameters/repo"
- name: protected
- description: Setting to `true` returns only protected branches. When set to
- `false`, only unprotected branches are returned. Omitting this parameter
- returns all branches.
+ description: Setting to `true` returns only branches protected by branch protections
+ or rulesets. When set to `false`, only unprotected branches are returned.
+ Omitting this parameter returns all branches.
in: query
required: false
schema:
@@ -22410,7 +22387,7 @@ paths:
By default this endpoint returns JSON metadata about the CodeQL database. To
download the CodeQL database binary content, set the `Accept` header of the request
- to [`application/zip`](https://docs.github.com/rest/overview/media-types), and make sure
+ to [`application/zip`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types), and make sure
your HTTP client is configured to follow redirects or use the `Location` header
to make a second request to get the redirect URL.
@@ -22454,6 +22431,236 @@ paths:
previews: []
category: code-scanning
subcategory: code-scanning
+ "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses":
+ post:
+ summary: Create a CodeQL variant analysis
+ description: |-
+ Creates a new CodeQL variant analysis, which will run a CodeQL query against one or more repositories.
+
+ Get started by learning more about [running CodeQL queries at scale with Multi-Repository Variant Analysis](https://docs.github.com/code-security/codeql-for-vs-code/getting-started-with-codeql-for-vs-code/running-codeql-queries-at-scale-with-multi-repository-variant-analysis).
+
+ Use the `owner` and `repo` parameters in the URL to specify the controller repository that
+ will be used for running GitHub Actions workflows and storing the results of the CodeQL variant analysis.
+
+ OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint.
+ tags:
+ - code-scanning
+ operationId: code-scanning/create-variant-analysis
+ externalDocs:
+ description: API method documentation
+ url: https://docs.github.com/rest/code-scanning/code-scanning#create-a-codeql-variant-analysis
+ parameters:
+ - "$ref": "#/components/parameters/owner"
+ - "$ref": "#/components/parameters/repo"
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ type: object
+ additionalProperties: false
+ properties:
+ language:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-language"
+ query_pack:
+ description: A Base64-encoded tarball containing a CodeQL query
+ and all its dependencies
+ type: string
+ repositories:
+ type: array
+ description: List of repository names (in the form `owner/repo-name`)
+ to run the query against. Precisely one property from `repositories`,
+ `repository_lists` and `repository_owners` is required.
+ items:
+ type: string
+ repository_lists:
+ description: List of repository lists to run the query against.
+ Precisely one property from `repositories`, `repository_lists`
+ and `repository_owners` is required.
+ type: array
+ maxItems: 1
+ items:
+ type: string
+ repository_owners:
+ description: List of organization or user names whose repositories
+ the query should be run against. Precisely one property from `repositories`,
+ `repository_lists` and `repository_owners` is required.
+ type: array
+ maxItems: 1
+ items:
+ type: string
+ required:
+ - language
+ - query_pack
+ oneOf:
+ - required:
+ - repositories
+ - required:
+ - repository_lists
+ - required:
+ - repository_owners
+ examples:
+ repositories_parameter:
+ summary: Using the "repositories" field. "query_pack" is abridged
+ for brevity.
+ value:
+ language: csharp
+ query_pack: aGVsbG8=
+ repositories:
+ - octocat/Hello-World
+ - octocat/example
+ repository_owners:
+ summary: Using the "repository_owners" field. "query_pack" is abridged.
+ value:
+ language: csharp
+ query_pack: aGVsbG8=
+ repository_owners:
+ - octocat
+ repository_lists:
+ summary: Using the "repository_lists" field. "query_pack" is abridged.
+ value:
+ language: csharp
+ query_pack: aGVsbG8=
+ repository_lists:
+ - top-100-csharp
+ responses:
+ '201':
+ description: Variant analysis submitted for processing
+ content:
+ application/json:
+ schema:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis"
+ examples:
+ repositories_parameter:
+ summary: Response for a successful variant analysis submission
+ value:
+ "$ref": "#/components/examples/code-scanning-variant-analysis"
+ repository_owners:
+ summary: Response for a successful variant analysis submission
+ value:
+ "$ref": "#/components/examples/code-scanning-variant-analysis"
+ repository_lists:
+ summary: Response for a successful variant analysis submission
+ value:
+ "$ref": "#/components/examples/code-scanning-variant-analysis"
+ '404':
+ "$ref": "#/components/responses/not_found"
+ '422':
+ description: Unable to process variant analysis submission
+ content:
+ application/json:
+ schema:
+ "$ref": "#/components/schemas/basic-error"
+ '503':
+ "$ref": "#/components/responses/service_unavailable"
+ x-github:
+ githubCloudOnly: false
+ enabledForGitHubApps: true
+ previews: []
+ category: code-scanning
+ subcategory: code-scanning
+ "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}":
+ get:
+ summary: Get the summary of a CodeQL variant analysis
+ description: |-
+ Gets the summary of a CodeQL variant analysis.
+
+ OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ tags:
+ - code-scanning
+ operationId: code-scanning/get-variant-analysis
+ externalDocs:
+ description: API method documentation
+ url: https://docs.github.com/rest/code-scanning/code-scanning#get-the-summary-of-a-codeql-variant-analysis
+ parameters:
+ - "$ref": "#/components/parameters/owner"
+ - "$ref": "#/components/parameters/repo"
+ - name: codeql_variant_analysis_id
+ in: path
+ description: The unique identifier of the variant analysis.
+ schema:
+ type: integer
+ required: true
+ responses:
+ '200':
+ description: Response
+ content:
+ application/json:
+ schema:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis"
+ examples:
+ default:
+ "$ref": "#/components/examples/code-scanning-variant-analysis"
+ '404':
+ "$ref": "#/components/responses/not_found"
+ '503':
+ "$ref": "#/components/responses/service_unavailable"
+ x-github:
+ githubCloudOnly: false
+ enabledForGitHubApps: true
+ previews: []
+ category: code-scanning
+ subcategory: code-scanning
+ "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}/repos/{repo_owner}/{repo_name}":
+ get:
+ summary: Get the analysis status of a repository in a CodeQL variant analysis
+ description: |-
+ Gets the analysis status of a repository in a CodeQL variant analysis.
+
+ OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ tags:
+ - code-scanning
+ operationId: code-scanning/get-variant-analysis-repo-task
+ externalDocs:
+ description: API method documentation
+ url: https://docs.github.com/rest/code-scanning/code-scanning#get-the-analysis-status-of-a-repository-in-a-codeql-variant-analysis
+ parameters:
+ - "$ref": "#/components/parameters/owner"
+ - name: repo
+ in: path
+ description: The name of the controller repository.
+ schema:
+ type: string
+ required: true
+ - name: codeql_variant_analysis_id
+ in: path
+ description: The ID of the variant analysis.
+ schema:
+ type: integer
+ required: true
+ - name: repo_owner
+ in: path
+ description: The account owner of the variant analysis repository. The name
+ is not case sensitive.
+ schema:
+ type: string
+ required: true
+ - name: repo_name
+ in: path
+ description: The name of the variant analysis repository.
+ schema:
+ type: string
+ required: true
+ responses:
+ '200':
+ description: Response
+ content:
+ application/json:
+ schema:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-repo-task"
+ examples:
+ default:
+ "$ref": "#/components/examples/code-scanning-variant-analysis-repo-task"
+ '404':
+ "$ref": "#/components/responses/not_found"
+ '503':
+ "$ref": "#/components/responses/service_unavailable"
+ x-github:
+ githubCloudOnly: false
+ enabledForGitHubApps: true
+ previews: []
+ category: code-scanning
+ subcategory: code-scanning
"/repos/{owner}/{repo}/code-scanning/default-setup":
get:
summary: Get a code scanning default setup configuration
@@ -22588,7 +22795,9 @@ paths:
more information, see \"[Get information about a SARIF upload](/rest/code-scanning/code-scanning#get-information-about-a-sarif-upload).\"\n\nOAuth
app tokens and personal access tokens (classic) need the `security_events`
scope to use this endpoint with private or public repositories, or the `public_repo`
- scope to use this endpoint with only public repositories."
+ scope to use this endpoint with only public repositories.\n\nThis endpoint
+ is limited to 1,000 requests per hour for each user or app installation calling
+ it."
operationId: code-scanning/upload-sarif
tags:
- code-scanning
@@ -23486,7 +23695,7 @@ paths:
put:
summary: Add a repository collaborator
description: |-
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
Adding an outside collaborator may be restricted by enterprise administrators. For more information, see "[Enforcing repository management policies in your enterprise](https://docs.github.com/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-outside-collaborators-to-repositories)."
@@ -24019,10 +24228,22 @@ paths:
required: false
schema:
type: string
- - "$ref": "#/components/parameters/since"
+ - name: since
+ description: 'Only show results that were last updated after the given time.
+ This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)
+ format: `YYYY-MM-DDTHH:MM:SSZ`. Due to limitations of Git, timestamps must
+ be between 1970-01-01 and 2099-12-31 (inclusive) or unexpected results may
+ be returned.'
+ in: query
+ required: false
+ schema:
+ type: string
+ format: date-time
- name: until
description: 'Only commits before this date will be returned. This is a timestamp
- in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`.'
+ in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`.
+ Due to limitations of Git, timestamps must be between 1970-01-01 and 2099-12-31
+ (inclusive) or unexpected results may be returned.'
in: query
required: false
schema:
@@ -24145,7 +24366,7 @@ paths:
description: |-
Create a comment for a commit using its `:commit_sha`.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -24605,7 +24826,7 @@ paths:
To process a response with a large number of commits, use a query parameter (`per_page` or `page`) to paginate the results. When using pagination:
- - The list of changed files is only shown on the first page of results, but it includes all changed files for the entire comparison.
+ - The list of changed files is only shown on the first page of results, and it includes up to 300 changed files for the entire comparison.
- The results are returned in chronological order, but the last commit in the returned list may not be the most recent one in the entire set if there are more pages of results.
For more information on working with pagination, see "[Using pagination in the REST API](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api)."
@@ -24766,6 +24987,8 @@ paths:
"$ref": "#/components/responses/forbidden"
'302':
"$ref": "#/components/responses/found"
+ '304':
+ "$ref": "#/components/responses/not_modified"
x-github:
githubCloudOnly: false
enabledForGitHubApps: true
@@ -29615,7 +29838,7 @@ paths:
description: |-
Any user with pull access to a repository can create an issue. If [issues are disabled in the repository](https://docs.github.com/articles/disabling-issues/), the API returns a `410 Gone` status.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -30536,7 +30759,7 @@ paths:
This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications).
Creating content too quickly using this endpoint may result in secondary rate limiting.
- For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -32297,7 +32520,7 @@ paths:
- 'null'
description: Specify a custom domain for the repository. Sending
a `null` value will remove the custom domain. For more about custom
- domains, see "[Using a custom domain with GitHub Pages](https://docs.github.com/articles/using-a-custom-domain-with-github-pages/)."
+ domains, see "[Using a custom domain with GitHub Pages](https://docs.github.com/pages/configuring-a-custom-domain-for-your-github-pages-site)."
https_enforced:
type: boolean
description: Specify whether HTTPS should be enforced for the repository.
@@ -33129,7 +33352,7 @@ paths:
To open or update a pull request in a public repository, you must have write access to the head or the source branch. For organization-owned repositories, you must be a member of the organization that owns the repository to open or update a pull request.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -33574,7 +33797,7 @@ paths:
* If merged via a [squash](https://docs.github.com/articles/about-merge-methods-on-github/#squashing-your-merge-commits), `merge_commit_sha` represents the SHA of the squashed commit on the base branch.
* If [rebased](https://docs.github.com/articles/about-merge-methods-on-github/#rebasing-and-merging-your-commits), `merge_commit_sha` represents the commit that the base branch was updated to.
- Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) to fetch diff and patch formats.
+ Pass the appropriate [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types) to fetch diff and patch formats.
This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -33595,7 +33818,7 @@ paths:
- "$ref": "#/components/parameters/pull-number"
responses:
'200':
- description: Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests)
+ description: Pass the appropriate [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)
to fetch diff and patch formats.
content:
application/json:
@@ -33867,7 +34090,7 @@ paths:
The `position` parameter is deprecated. If you use `position`, the `line`, `side`, `start_line`, and `start_side` parameters are not required.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -34017,7 +34240,7 @@ paths:
description: |-
Creates a reply to a review comment for a pull request. For the `comment_id`, provide the ID of the review comment you are replying to. This must be the ID of a _top-level review comment_, not a reply to that comment. Replies to replies are not supported.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -34205,7 +34428,7 @@ paths:
summary: Merge a pull request
description: |-
Merges a pull request into the base branch.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
tags:
- pulls
operationId: pulls/merge
@@ -34339,7 +34562,7 @@ paths:
summary: Request reviewers for a pull request
description: |-
Requests reviews for a pull request from a given set of users and/or teams.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
tags:
- pulls
operationId: pulls/request-reviewers
@@ -34509,7 +34732,7 @@ paths:
description: |-
Creates a review on a specified pull request.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
Pull request reviews created in the `PENDING` state are not submitted and therefore do not include the `submitted_at` property in the response. To create a pending review for a pull request, leave the `event` parameter blank. For more information about submitting a `PENDING` review, see "[Submit a review for a pull request](https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request)."
@@ -35168,7 +35391,7 @@ paths:
description: |-
Users with push access to the repository can create a release.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
tags:
- repos
operationId: repos/create-release
@@ -35281,7 +35504,7 @@ paths:
get:
summary: Get a release asset
description: To download the asset's binary content, set the `Accept` header
- of the request to [`application/octet-stream`](https://docs.github.com/rest/overview/media-types).
+ of the request to [`application/octet-stream`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).
The API will either redirect the client to the location, or stream it directly
if possible. API clients should handle both a `200` or `302` response.
tags:
@@ -37505,8 +37728,11 @@ paths:
subcategory: repos
"/repos/{owner}/{repo}/tags/protection":
get:
- summary: List tag protection states for a repository
+ summary: Deprecated - List tag protection states for a repository
description: |-
+ **Note**: This operation is deprecated and will be removed after August 30th 2024
+ Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#get-all-repository-rulesets)" endpoint instead.
+
This returns the tag protection states of a repository.
This information is only available to repository administrators.
@@ -37515,7 +37741,7 @@ paths:
operationId: repos/list-tag-protection
externalDocs:
description: API method documentation
- url: https://docs.github.com/rest/repos/tags#list-tag-protection-states-for-a-repository
+ url: https://docs.github.com/rest/repos/tags#deprecated---list-tag-protection-states-for-a-repository
parameters:
- "$ref": "#/components/parameters/owner"
- "$ref": "#/components/parameters/repo"
@@ -37540,9 +37766,15 @@ paths:
enabledForGitHubApps: true
category: repos
subcategory: tags
+ deprecationDate: '2024-05-29'
+ removalDate: '2024-08-30'
+ deprecated: true
post:
- summary: Create a tag protection state for a repository
+ summary: Deprecated - Create a tag protection state for a repository
description: |-
+ **Note**: This operation is deprecated and will be removed after August 30th 2024
+ Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#create-a-repository-ruleset)" endpoint instead.
+
This creates a tag protection state for a repository.
This endpoint is only available to repository administrators.
tags:
@@ -37550,7 +37782,7 @@ paths:
operationId: repos/create-tag-protection
externalDocs:
description: API method documentation
- url: https://docs.github.com/rest/repos/tags#create-a-tag-protection-state-for-a-repository
+ url: https://docs.github.com/rest/repos/tags#deprecated---create-a-tag-protection-state-for-a-repository
parameters:
- "$ref": "#/components/parameters/owner"
- "$ref": "#/components/parameters/repo"
@@ -37590,10 +37822,16 @@ paths:
enabledForGitHubApps: true
category: repos
subcategory: tags
+ deprecationDate: '2024-05-29'
+ removalDate: '2024-08-30'
+ deprecated: true
"/repos/{owner}/{repo}/tags/protection/{tag_protection_id}":
delete:
- summary: Delete a tag protection state for a repository
+ summary: Deprecated - Delete a tag protection state for a repository
description: |-
+ **Note**: This operation is deprecated and will be removed after August 30th 2024
+ Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#delete-a-repository-ruleset)" endpoint instead.
+
This deletes a tag protection state for a repository.
This endpoint is only available to repository administrators.
tags:
@@ -37601,7 +37839,7 @@ paths:
operationId: repos/delete-tag-protection
externalDocs:
description: API method documentation
- url: https://docs.github.com/rest/repos/tags#delete-a-tag-protection-state-for-a-repository
+ url: https://docs.github.com/rest/repos/tags#deprecated---delete-a-tag-protection-state-for-a-repository
parameters:
- "$ref": "#/components/parameters/owner"
- "$ref": "#/components/parameters/repo"
@@ -37618,6 +37856,9 @@ paths:
enabledForGitHubApps: true
category: repos
subcategory: tags
+ deprecationDate: '2024-05-29'
+ removalDate: '2024-08-30'
+ deprecated: true
"/repos/{owner}/{repo}/tarball/{ref}":
get:
summary: Download a repository archive (tar)
@@ -39014,7 +39255,7 @@ paths:
Creates a new discussion post on a team's page.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.
tags:
@@ -39239,7 +39480,7 @@ paths:
Creates a new comment on a team discussion.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.
tags:
@@ -40220,7 +40461,7 @@ paths:
**Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Check team permissions for a repository](https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-repository) endpoint.
- You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `Accept` header:
+ You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types/) via the `Accept` header:
tags:
- teams
operationId: teams/check-permissions-for-repo-legacy
@@ -42381,8 +42622,9 @@ paths:
"/user/installations/{installation_id}/repositories/{repository_id}":
put:
summary: Add a repository to an app installation
- description: Add a single repository to an installation. The authenticated user
- must have admin access to the repository.
+ description: "Add a single repository to an installation. The authenticated
+ user must have admin access to the repository. \n\nThis endpoint only works
+ for PATs (classic) with the `repo` scope."
tags:
- apps
operationId: apps/add-repo-to-installation-for-authenticated-user
@@ -42408,9 +42650,10 @@ paths:
subcategory: installations
delete:
summary: Remove a repository from an app installation
- description: Remove a single repository from an installation. The authenticated
+ description: "Remove a single repository from an installation. The authenticated
user must have admin access to the repository. The installation must have
- the `repository_selection` of `selected`.
+ the `repository_selection` of `selected`. \n\nThis endpoint only works for
+ PATs (classic) with the `repo` scope."
tags:
- apps
operationId: apps/remove-repo-from-installation-for-authenticated-user
@@ -58141,7 +58384,7 @@ webhooks:
To subscribe to this event, a GitHub App must have at least read-level access for the "Contents" repository permission.
- **Note**: An event will not be created when more than three tags are pushed at once.
+ **Note**: Events will not be created if more than 5000 branches are pushed at once. Events will not be created for tags when more than three tags are pushed at once.
operationId: push
externalDocs:
url: https://docs.github.com/webhooks/webhook-events-and-payloads#push
@@ -60351,7 +60594,7 @@ webhooks:
- repository
- organization
- app
- secret-scanning-alert-revoked:
+ secret-scanning-alert-validated:
post:
summary: |-
This event occurs when there is activity relating to a secret scanning alert. For more information about secret scanning, see "[About secret scanning](https://docs.github.com/code-security/secret-scanning/about-secret-scanning)." For information about the API to manage secret scanning alerts, see "[Secret scanning](https://docs.github.com/rest/secret-scanning)" in the REST API documentation.
@@ -60359,8 +60602,8 @@ webhooks:
For activity relating to secret scanning alert locations, use the `secret_scanning_alert_location` event.
To subscribe to this event, a GitHub App must have at least read-level access for the "Secret scanning alerts" repository permission.
- description: A secret scanning alert was marked as revoked.
- operationId: secret-scanning-alert/revoked
+ description: A secret scanning alert was validated.
+ operationId: secret-scanning-alert/validated
externalDocs:
url: https://docs.github.com/webhooks/webhook-events-and-payloads#secret_scanning_alert
parameters:
@@ -60404,7 +60647,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-secret-scanning-alert-revoked"
+ "$ref": "#/components/schemas/webhook-secret-scanning-alert-validated"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -60417,18 +60660,16 @@ webhooks:
- repository
- organization
- app
- secret-scanning-alert-validated:
+ security-advisory-published:
post:
summary: |-
- This event occurs when there is activity relating to a secret scanning alert. For more information about secret scanning, see "[About secret scanning](https://docs.github.com/code-security/secret-scanning/about-secret-scanning)." For information about the API to manage secret scanning alerts, see "[Secret scanning](https://docs.github.com/rest/secret-scanning)" in the REST API documentation.
-
- For activity relating to secret scanning alert locations, use the `secret_scanning_alert_location` event.
+ This event occurs when there is activity relating to a global security advisory that was reviewed by GitHub. A GitHub-reviewed global security advisory provides information about security vulnerabilities or malware that have been mapped to packages in ecosystems we support. For more information about global security advisories, see "[About global security advisories](https://docs.github.com/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/about-global-security-advisories)." For information about the API to manage security advisories, see [the REST API documentation](https://docs.github.com/rest/security-advisories/global-advisories) or [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#securityadvisory).
- To subscribe to this event, a GitHub App must have at least read-level access for the "Secret scanning alerts" repository permission.
- description: A secret scanning alert was validated.
- operationId: secret-scanning-alert/validated
+ GitHub Dependabot alerts are also powered by the security advisory dataset. For more information, see "[About Dependabot alerts](https://docs.github.com/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)."
+ description: A security advisory was published to the GitHub community.
+ operationId: security-advisory/published
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#secret_scanning_alert
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#security_advisory
parameters:
- name: User-Agent
in: header
@@ -60470,7 +60711,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-secret-scanning-alert-validated"
+ "$ref": "#/components/schemas/webhook-security-advisory-published"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -60478,19 +60719,17 @@ webhooks:
x-github:
githubCloudOnly: false
category: webhooks
- subcategory: secret_scanning_alert
+ subcategory: security_advisory
supported-webhook-types:
- - repository
- - organization
- app
- security-advisory-published:
+ security-advisory-updated:
post:
summary: |-
This event occurs when there is activity relating to a global security advisory that was reviewed by GitHub. A GitHub-reviewed global security advisory provides information about security vulnerabilities or malware that have been mapped to packages in ecosystems we support. For more information about global security advisories, see "[About global security advisories](https://docs.github.com/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/about-global-security-advisories)." For information about the API to manage security advisories, see [the REST API documentation](https://docs.github.com/rest/security-advisories/global-advisories) or [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#securityadvisory).
GitHub Dependabot alerts are also powered by the security advisory dataset. For more information, see "[About Dependabot alerts](https://docs.github.com/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)."
- description: A security advisory was published to the GitHub community.
- operationId: security-advisory/published
+ description: The metadata or description of a security advisory was changed.
+ operationId: security-advisory/updated
externalDocs:
url: https://docs.github.com/webhooks/webhook-events-and-payloads#security_advisory
parameters:
@@ -60534,7 +60773,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-security-advisory-published"
+ "$ref": "#/components/schemas/webhook-security-advisory-updated"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -60545,14 +60784,14 @@ webhooks:
subcategory: security_advisory
supported-webhook-types:
- app
- security-advisory-updated:
+ security-advisory-withdrawn:
post:
summary: |-
This event occurs when there is activity relating to a global security advisory that was reviewed by GitHub. A GitHub-reviewed global security advisory provides information about security vulnerabilities or malware that have been mapped to packages in ecosystems we support. For more information about global security advisories, see "[About global security advisories](https://docs.github.com/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/about-global-security-advisories)." For information about the API to manage security advisories, see [the REST API documentation](https://docs.github.com/rest/security-advisories/global-advisories) or [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#securityadvisory).
GitHub Dependabot alerts are also powered by the security advisory dataset. For more information, see "[About Dependabot alerts](https://docs.github.com/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)."
- description: The metadata or description of a security advisory was changed.
- operationId: security-advisory/updated
+ description: A previously published security advisory was withdrawn.
+ operationId: security-advisory/withdrawn
externalDocs:
url: https://docs.github.com/webhooks/webhook-events-and-payloads#security_advisory
parameters:
@@ -60596,7 +60835,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-security-advisory-updated"
+ "$ref": "#/components/schemas/webhook-security-advisory-withdrawn"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -60607,16 +60846,15 @@ webhooks:
subcategory: security_advisory
supported-webhook-types:
- app
- security-advisory-withdrawn:
+ security-and-analysis:
post:
summary: |-
- This event occurs when there is activity relating to a global security advisory that was reviewed by GitHub. A GitHub-reviewed global security advisory provides information about security vulnerabilities or malware that have been mapped to packages in ecosystems we support. For more information about global security advisories, see "[About global security advisories](https://docs.github.com/code-security/security-advisories/working-with-global-security-advisories-from-the-github-advisory-database/about-global-security-advisories)." For information about the API to manage security advisories, see [the REST API documentation](https://docs.github.com/rest/security-advisories/global-advisories) or [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#securityadvisory).
+ This event occurs when code security and analysis features are enabled or disabled for a repository. For more information, see "[GitHub security features](https://docs.github.com/code-security/getting-started/github-security-features)."
- GitHub Dependabot alerts are also powered by the security advisory dataset. For more information, see "[About Dependabot alerts](https://docs.github.com/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)."
- description: A previously published security advisory was withdrawn.
- operationId: security-advisory/withdrawn
+ To subscribe to this event, a GitHub App must have at least read-level access for the "Administration" repository permission.
+ operationId: security-and-analysis
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#security_advisory
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#security_and_analysis
parameters:
- name: User-Agent
in: header
@@ -60658,7 +60896,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-security-advisory-withdrawn"
+ "$ref": "#/components/schemas/webhook-security-and-analysis"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -60666,18 +60904,279 @@ webhooks:
x-github:
githubCloudOnly: false
category: webhooks
- subcategory: security_advisory
+ subcategory: security_and_analysis
supported-webhook-types:
+ - repository
+ - organization
- app
- security-and-analysis:
+ sponsorship-cancelled:
post:
summary: |-
- This event occurs when code security and analysis features are enabled or disabled for a repository. For more information, see "[GitHub security features](https://docs.github.com/code-security/getting-started/github-security-features)."
+ This event occurs when there is activity relating to a sponsorship listing. For more information, see "[About GitHub Sponsors](https://docs.github.com/sponsors/getting-started-with-github-sponsors/about-github-sponsors)." For information about the API to manage sponsors, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#sponsorship).
- To subscribe to this event, a GitHub App must have at least read-level access for the "Administration" repository permission.
- operationId: security-and-analysis
+ You can only create a sponsorship webhook on GitHub.com. For more information, see "[Configuring webhooks for events in your sponsored account](https://docs.github.com/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account)."
+ description: |-
+ A sponsorship was cancelled and the last billing cycle has ended.
+
+ This event is only sent when a recurring (monthly) sponsorship is cancelled; it is not sent for one-time sponsorships.
+ operationId: sponsorship/cancelled
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#security_and_analysis
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#sponsorship
+ parameters:
+ - name: User-Agent
+ in: header
+ example: GitHub-Hookshot/123abc
+ schema:
+ type: string
+ - name: X-Github-Hook-Id
+ in: header
+ example: 12312312
+ schema:
+ type: string
+ - name: X-Github-Event
+ in: header
+ example: issues
+ schema:
+ type: string
+ - name: X-Github-Hook-Installation-Target-Id
+ in: header
+ example: 123123
+ schema:
+ type: string
+ - name: X-Github-Hook-Installation-Target-Type
+ in: header
+ example: repository
+ schema:
+ type: string
+ - name: X-GitHub-Delivery
+ in: header
+ example: 0b989ba4-242f-11e5-81e1-c7b6966d2516
+ schema:
+ type: string
+ - name: X-Hub-Signature-256
+ in: header
+ example: sha256=6dcb09b5b57875f334f61aebed695e2e4193db5e
+ schema:
+ type: string
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ "$ref": "#/components/schemas/webhook-sponsorship-cancelled"
+ responses:
+ '200':
+ description: Return a 200 status to indicate that the data was received
+ successfully
+ x-github:
+ githubCloudOnly: false
+ category: webhooks
+ subcategory: sponsorship
+ supported-webhook-types:
+ - sponsors_listing
+ sponsorship-created:
+ post:
+ summary: |-
+ This event occurs when there is activity relating to a sponsorship listing. For more information, see "[About GitHub Sponsors](https://docs.github.com/sponsors/getting-started-with-github-sponsors/about-github-sponsors)." For information about the API to manage sponsors, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#sponsorship).
+
+ You can only create a sponsorship webhook on GitHub.com. For more information, see "[Configuring webhooks for events in your sponsored account](https://docs.github.com/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account)."
+ description: A sponsor created a sponsorship for a sponsored account. This event
+ occurs once the payment is successfully processed.
+ operationId: sponsorship/created
+ externalDocs:
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#sponsorship
+ parameters:
+ - name: User-Agent
+ in: header
+ example: GitHub-Hookshot/123abc
+ schema:
+ type: string
+ - name: X-Github-Hook-Id
+ in: header
+ example: 12312312
+ schema:
+ type: string
+ - name: X-Github-Event
+ in: header
+ example: issues
+ schema:
+ type: string
+ - name: X-Github-Hook-Installation-Target-Id
+ in: header
+ example: 123123
+ schema:
+ type: string
+ - name: X-Github-Hook-Installation-Target-Type
+ in: header
+ example: repository
+ schema:
+ type: string
+ - name: X-GitHub-Delivery
+ in: header
+ example: 0b989ba4-242f-11e5-81e1-c7b6966d2516
+ schema:
+ type: string
+ - name: X-Hub-Signature-256
+ in: header
+ example: sha256=6dcb09b5b57875f334f61aebed695e2e4193db5e
+ schema:
+ type: string
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ "$ref": "#/components/schemas/webhook-sponsorship-created"
+ responses:
+ '200':
+ description: Return a 200 status to indicate that the data was received
+ successfully
+ x-github:
+ githubCloudOnly: false
+ category: webhooks
+ subcategory: sponsorship
+ supported-webhook-types:
+ - sponsors_listing
+ sponsorship-edited:
+ post:
+ summary: |-
+ This event occurs when there is activity relating to a sponsorship listing. For more information, see "[About GitHub Sponsors](https://docs.github.com/sponsors/getting-started-with-github-sponsors/about-github-sponsors)." For information about the API to manage sponsors, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#sponsorship).
+
+ You can only create a sponsorship webhook on GitHub.com. For more information, see "[Configuring webhooks for events in your sponsored account](https://docs.github.com/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account)."
+ description: A monthly sponsor changed who can see their sponsorship. If you
+ recognize your sponsors publicly, you may want to update your sponsor recognition
+ to reflect the change when this event occurs.
+ operationId: sponsorship/edited
+ externalDocs:
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#sponsorship
+ parameters:
+ - name: User-Agent
+ in: header
+ example: GitHub-Hookshot/123abc
+ schema:
+ type: string
+ - name: X-Github-Hook-Id
+ in: header
+ example: 12312312
+ schema:
+ type: string
+ - name: X-Github-Event
+ in: header
+ example: issues
+ schema:
+ type: string
+ - name: X-Github-Hook-Installation-Target-Id
+ in: header
+ example: 123123
+ schema:
+ type: string
+ - name: X-Github-Hook-Installation-Target-Type
+ in: header
+ example: repository
+ schema:
+ type: string
+ - name: X-GitHub-Delivery
+ in: header
+ example: 0b989ba4-242f-11e5-81e1-c7b6966d2516
+ schema:
+ type: string
+ - name: X-Hub-Signature-256
+ in: header
+ example: sha256=6dcb09b5b57875f334f61aebed695e2e4193db5e
+ schema:
+ type: string
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ "$ref": "#/components/schemas/webhook-sponsorship-edited"
+ responses:
+ '200':
+ description: Return a 200 status to indicate that the data was received
+ successfully
+ x-github:
+ githubCloudOnly: false
+ category: webhooks
+ subcategory: sponsorship
+ supported-webhook-types:
+ - sponsors_listing
+ sponsorship-pending-cancellation:
+ post:
+ summary: |-
+ This event occurs when there is activity relating to a sponsorship listing. For more information, see "[About GitHub Sponsors](https://docs.github.com/sponsors/getting-started-with-github-sponsors/about-github-sponsors)." For information about the API to manage sponsors, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#sponsorship).
+
+ You can only create a sponsorship webhook on GitHub.com. For more information, see "[Configuring webhooks for events in your sponsored account](https://docs.github.com/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account)."
+ description: |-
+ A sponsor scheduled a cancellation for their sponsorship. The cancellation will become effective on their next billing date.
+
+ This event is only sent when a recurring (monthly) sponsorship is cancelled; it is not sent for one-time sponsorships.
+ operationId: sponsorship/pending-cancellation
+ externalDocs:
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#sponsorship
+ parameters:
+ - name: User-Agent
+ in: header
+ example: GitHub-Hookshot/123abc
+ schema:
+ type: string
+ - name: X-Github-Hook-Id
+ in: header
+ example: 12312312
+ schema:
+ type: string
+ - name: X-Github-Event
+ in: header
+ example: issues
+ schema:
+ type: string
+ - name: X-Github-Hook-Installation-Target-Id
+ in: header
+ example: 123123
+ schema:
+ type: string
+ - name: X-Github-Hook-Installation-Target-Type
+ in: header
+ example: repository
+ schema:
+ type: string
+ - name: X-GitHub-Delivery
+ in: header
+ example: 0b989ba4-242f-11e5-81e1-c7b6966d2516
+ schema:
+ type: string
+ - name: X-Hub-Signature-256
+ in: header
+ example: sha256=6dcb09b5b57875f334f61aebed695e2e4193db5e
+ schema:
+ type: string
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ "$ref": "#/components/schemas/webhook-sponsorship-pending-cancellation"
+ responses:
+ '200':
+ description: Return a 200 status to indicate that the data was received
+ successfully
+ x-github:
+ githubCloudOnly: false
+ category: webhooks
+ subcategory: sponsorship
+ supported-webhook-types:
+ - sponsors_listing
+ sponsorship-pending-tier-change:
+ post:
+ summary: |-
+ This event occurs when there is activity relating to a sponsorship listing. For more information, see "[About GitHub Sponsors](https://docs.github.com/sponsors/getting-started-with-github-sponsors/about-github-sponsors)." For information about the API to manage sponsors, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#sponsorship).
+
+ You can only create a sponsorship webhook on GitHub.com. For more information, see "[Configuring webhooks for events in your sponsored account](https://docs.github.com/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account)."
+ description: A sponsor scheduled a downgrade to a lower sponsorship tier. The
+ new tier will become effective on their next billing date.
+ operationId: sponsorship/pending-tier-change
+ externalDocs:
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#sponsorship
parameters:
- name: User-Agent
in: header
@@ -60719,7 +61218,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-security-and-analysis"
+ "$ref": "#/components/schemas/webhook-sponsorship-pending-tier-change"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -60727,22 +61226,20 @@ webhooks:
x-github:
githubCloudOnly: false
category: webhooks
- subcategory: security_and_analysis
+ subcategory: sponsorship
supported-webhook-types:
- - repository
- - organization
- - app
- sponsorship-cancelled:
+ - sponsors_listing
+ sponsorship-tier-changed:
post:
summary: |-
This event occurs when there is activity relating to a sponsorship listing. For more information, see "[About GitHub Sponsors](https://docs.github.com/sponsors/getting-started-with-github-sponsors/about-github-sponsors)." For information about the API to manage sponsors, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#sponsorship).
You can only create a sponsorship webhook on GitHub.com. For more information, see "[Configuring webhooks for events in your sponsored account](https://docs.github.com/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account)."
- description: |-
- A sponsorship was cancelled and the last billing cycle has ended.
-
- This event is only sent when a recurring (monthly) sponsorship is cancelled; it is not sent for one-time sponsorships.
- operationId: sponsorship/cancelled
+ description: A sponsor changed the tier of their sponsorship and the change
+ has taken effect. If a sponsor upgraded their tier, the change took effect
+ immediately. If a sponsor downgraded their tier, the change took effect at
+ the beginning of the sponsor's next billing cycle.
+ operationId: sponsorship/tier-changed
externalDocs:
url: https://docs.github.com/webhooks/webhook-events-and-payloads#sponsorship
parameters:
@@ -60786,7 +61283,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-sponsorship-cancelled"
+ "$ref": "#/components/schemas/webhook-sponsorship-tier-changed"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -60797,17 +61294,16 @@ webhooks:
subcategory: sponsorship
supported-webhook-types:
- sponsors_listing
- sponsorship-created:
+ star-created:
post:
summary: |-
- This event occurs when there is activity relating to a sponsorship listing. For more information, see "[About GitHub Sponsors](https://docs.github.com/sponsors/getting-started-with-github-sponsors/about-github-sponsors)." For information about the API to manage sponsors, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#sponsorship).
+ This event occurs when there is activity relating to repository stars. For more information about stars, see "[Saving repositories with stars](https://docs.github.com/get-started/exploring-projects-on-github/saving-repositories-with-stars)." For information about the APIs to manage stars, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#starredrepositoryconnection) or "[Starring](https://docs.github.com/rest/activity/starring)" in the REST API documentation.
- You can only create a sponsorship webhook on GitHub.com. For more information, see "[Configuring webhooks for events in your sponsored account](https://docs.github.com/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account)."
- description: A sponsor created a sponsorship for a sponsored account. This event
- occurs once the payment is successfully processed.
- operationId: sponsorship/created
+ To subscribe to this event, a GitHub App must have at least read-level access for the "Metadata" repository permission.
+ description: Someone starred a repository.
+ operationId: star/created
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#sponsorship
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#star
parameters:
- name: User-Agent
in: header
@@ -60849,7 +61345,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-sponsorship-created"
+ "$ref": "#/components/schemas/webhook-star-created"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -60857,21 +61353,21 @@ webhooks:
x-github:
githubCloudOnly: false
category: webhooks
- subcategory: sponsorship
+ subcategory: star
supported-webhook-types:
- - sponsors_listing
- sponsorship-edited:
+ - repository
+ - organization
+ - app
+ star-deleted:
post:
summary: |-
- This event occurs when there is activity relating to a sponsorship listing. For more information, see "[About GitHub Sponsors](https://docs.github.com/sponsors/getting-started-with-github-sponsors/about-github-sponsors)." For information about the API to manage sponsors, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#sponsorship).
+ This event occurs when there is activity relating to repository stars. For more information about stars, see "[Saving repositories with stars](https://docs.github.com/get-started/exploring-projects-on-github/saving-repositories-with-stars)." For information about the APIs to manage stars, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#starredrepositoryconnection) or "[Starring](https://docs.github.com/rest/activity/starring)" in the REST API documentation.
- You can only create a sponsorship webhook on GitHub.com. For more information, see "[Configuring webhooks for events in your sponsored account](https://docs.github.com/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account)."
- description: A monthly sponsor changed who can see their sponsorship. If you
- recognize your sponsors publicly, you may want to update your sponsor recognition
- to reflect the change when this event occurs.
- operationId: sponsorship/edited
+ To subscribe to this event, a GitHub App must have at least read-level access for the "Metadata" repository permission.
+ description: Someone unstarred the repository.
+ operationId: star/deleted
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#sponsorship
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#star
parameters:
- name: User-Agent
in: header
@@ -60913,7 +61409,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-sponsorship-edited"
+ "$ref": "#/components/schemas/webhook-star-deleted"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -60921,22 +61417,20 @@ webhooks:
x-github:
githubCloudOnly: false
category: webhooks
- subcategory: sponsorship
+ subcategory: star
supported-webhook-types:
- - sponsors_listing
- sponsorship-pending-cancellation:
+ - repository
+ - organization
+ - app
+ status:
post:
summary: |-
- This event occurs when there is activity relating to a sponsorship listing. For more information, see "[About GitHub Sponsors](https://docs.github.com/sponsors/getting-started-with-github-sponsors/about-github-sponsors)." For information about the API to manage sponsors, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#sponsorship).
-
- You can only create a sponsorship webhook on GitHub.com. For more information, see "[Configuring webhooks for events in your sponsored account](https://docs.github.com/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account)."
- description: |-
- A sponsor scheduled a cancellation for their sponsorship. The cancellation will become effective on their next billing date.
+ This event occurs when the status of a Git commit changes. For example, commits can be marked as `error`, `failure`, `pending`, or `success`. For more information, see "[About status checks](https://docs.github.com/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks)." For information about the APIs to manage commit statuses, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#status) or "[Commit statuses](https://docs.github.com/rest/commits/statuses)" in the REST API documentation.
- This event is only sent when a recurring (monthly) sponsorship is cancelled; it is not sent for one-time sponsorships.
- operationId: sponsorship/pending-cancellation
+ To subscribe to this event, a GitHub App must have at least read-level access for the "Commit statuses" repository permission.
+ operationId: status
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#sponsorship
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#status
parameters:
- name: User-Agent
in: header
@@ -60978,7 +61472,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-sponsorship-pending-cancellation"
+ "$ref": "#/components/schemas/webhook-status"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -60986,20 +61480,23 @@ webhooks:
x-github:
githubCloudOnly: false
category: webhooks
- subcategory: sponsorship
+ subcategory: status
supported-webhook-types:
- - sponsors_listing
- sponsorship-pending-tier-change:
+ - repository
+ - organization
+ - app
+ team-add:
post:
summary: |-
- This event occurs when there is activity relating to a sponsorship listing. For more information, see "[About GitHub Sponsors](https://docs.github.com/sponsors/getting-started-with-github-sponsors/about-github-sponsors)." For information about the API to manage sponsors, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#sponsorship).
+ This event occurs when a team is added to a repository.
+ For more information, see "[Managing teams and people with access to your repository](https://docs.github.com/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository)."
- You can only create a sponsorship webhook on GitHub.com. For more information, see "[Configuring webhooks for events in your sponsored account](https://docs.github.com/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account)."
- description: A sponsor scheduled a downgrade to a lower sponsorship tier. The
- new tier will become effective on their next billing date.
- operationId: sponsorship/pending-tier-change
+ For activity relating to teams, see the `teams` event.
+
+ To subscribe to this event, a GitHub App must have at least read-level access for the "Members" organization permission.
+ operationId: team-add
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#sponsorship
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#team_add
parameters:
- name: User-Agent
in: header
@@ -61041,7 +61538,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-sponsorship-pending-tier-change"
+ "$ref": "#/components/schemas/webhook-team-add"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -61049,22 +61546,22 @@ webhooks:
x-github:
githubCloudOnly: false
category: webhooks
- subcategory: sponsorship
+ subcategory: team_add
supported-webhook-types:
- - sponsors_listing
- sponsorship-tier-changed:
+ - repository
+ - organization
+ - app
+ team-added-to-repository:
post:
summary: |-
- This event occurs when there is activity relating to a sponsorship listing. For more information, see "[About GitHub Sponsors](https://docs.github.com/sponsors/getting-started-with-github-sponsors/about-github-sponsors)." For information about the API to manage sponsors, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#sponsorship).
+ This event occurs when there is activity relating to teams in an organization.
+ For more information, see "[About teams](https://docs.github.com/organizations/organizing-members-into-teams/about-teams)."
- You can only create a sponsorship webhook on GitHub.com. For more information, see "[Configuring webhooks for events in your sponsored account](https://docs.github.com/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account)."
- description: A sponsor changed the tier of their sponsorship and the change
- has taken effect. If a sponsor upgraded their tier, the change took effect
- immediately. If a sponsor downgraded their tier, the change took effect at
- the beginning of the sponsor's next billing cycle.
- operationId: sponsorship/tier-changed
+ To subscribe to this event, a GitHub App must have at least read-level access for the "Members" organization permission.
+ description: A team was granted access to a repository.
+ operationId: team/added-to-repository
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#sponsorship
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#team
parameters:
- name: User-Agent
in: header
@@ -61106,7 +61603,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-sponsorship-tier-changed"
+ "$ref": "#/components/schemas/webhook-team-added-to-repository"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -61114,19 +61611,22 @@ webhooks:
x-github:
githubCloudOnly: false
category: webhooks
- subcategory: sponsorship
+ subcategory: team
supported-webhook-types:
- - sponsors_listing
- star-created:
+ - organization
+ - business
+ - app
+ team-created:
post:
summary: |-
- This event occurs when there is activity relating to repository stars. For more information about stars, see "[Saving repositories with stars](https://docs.github.com/get-started/exploring-projects-on-github/saving-repositories-with-stars)." For information about the APIs to manage stars, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#starredrepositoryconnection) or "[Starring](https://docs.github.com/rest/activity/starring)" in the REST API documentation.
+ This event occurs when there is activity relating to teams in an organization.
+ For more information, see "[About teams](https://docs.github.com/organizations/organizing-members-into-teams/about-teams)."
- To subscribe to this event, a GitHub App must have at least read-level access for the "Metadata" repository permission.
- description: Someone starred a repository.
- operationId: star/created
+ To subscribe to this event, a GitHub App must have at least read-level access for the "Members" organization permission.
+ description: A team was created.
+ operationId: team/created
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#star
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#team
parameters:
- name: User-Agent
in: header
@@ -61168,7 +61668,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-star-created"
+ "$ref": "#/components/schemas/webhook-team-created"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -61176,21 +61676,22 @@ webhooks:
x-github:
githubCloudOnly: false
category: webhooks
- subcategory: star
+ subcategory: team
supported-webhook-types:
- - repository
- organization
+ - business
- app
- star-deleted:
+ team-deleted:
post:
summary: |-
- This event occurs when there is activity relating to repository stars. For more information about stars, see "[Saving repositories with stars](https://docs.github.com/get-started/exploring-projects-on-github/saving-repositories-with-stars)." For information about the APIs to manage stars, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#starredrepositoryconnection) or "[Starring](https://docs.github.com/rest/activity/starring)" in the REST API documentation.
+ This event occurs when there is activity relating to teams in an organization.
+ For more information, see "[About teams](https://docs.github.com/organizations/organizing-members-into-teams/about-teams)."
- To subscribe to this event, a GitHub App must have at least read-level access for the "Metadata" repository permission.
- description: Someone unstarred the repository.
- operationId: star/deleted
+ To subscribe to this event, a GitHub App must have at least read-level access for the "Members" organization permission.
+ description: A team was deleted.
+ operationId: team/deleted
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#star
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#team
parameters:
- name: User-Agent
in: header
@@ -61232,7 +61733,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-star-deleted"
+ "$ref": "#/components/schemas/webhook-team-deleted"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -61240,20 +61741,22 @@ webhooks:
x-github:
githubCloudOnly: false
category: webhooks
- subcategory: star
+ subcategory: team
supported-webhook-types:
- - repository
- organization
+ - business
- app
- status:
+ team-edited:
post:
summary: |-
- This event occurs when the status of a Git commit changes. For example, commits can be marked as `error`, `failure`, `pending`, or `success`. For more information, see "[About status checks](https://docs.github.com/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks)." For information about the APIs to manage commit statuses, see [the GraphQL documentation](https://docs.github.com/graphql/reference/objects#status) or "[Commit statuses](https://docs.github.com/rest/commits/statuses)" in the REST API documentation.
+ This event occurs when there is activity relating to teams in an organization.
+ For more information, see "[About teams](https://docs.github.com/organizations/organizing-members-into-teams/about-teams)."
- To subscribe to this event, a GitHub App must have at least read-level access for the "Commit statuses" repository permission.
- operationId: status
+ To subscribe to this event, a GitHub App must have at least read-level access for the "Members" organization permission.
+ description: The name, description, or visibility of a team was changed.
+ operationId: team/edited
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#status
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#team
parameters:
- name: User-Agent
in: header
@@ -61295,7 +61798,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-status"
+ "$ref": "#/components/schemas/webhook-team-edited"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -61303,23 +61806,22 @@ webhooks:
x-github:
githubCloudOnly: false
category: webhooks
- subcategory: status
+ subcategory: team
supported-webhook-types:
- - repository
- organization
+ - business
- app
- team-add:
+ team-removed-from-repository:
post:
summary: |-
- This event occurs when a team is added to a repository.
- For more information, see "[Managing teams and people with access to your repository](https://docs.github.com/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository)."
-
- For activity relating to teams, see the `teams` event.
+ This event occurs when there is activity relating to teams in an organization.
+ For more information, see "[About teams](https://docs.github.com/organizations/organizing-members-into-teams/about-teams)."
To subscribe to this event, a GitHub App must have at least read-level access for the "Members" organization permission.
- operationId: team-add
+ description: A team's access to a repository was removed.
+ operationId: team/removed-from-repository
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#team_add
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#team
parameters:
- name: User-Agent
in: header
@@ -61361,7 +61863,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-team-add"
+ "$ref": "#/components/schemas/webhook-team-removed-from-repository"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -61369,22 +61871,21 @@ webhooks:
x-github:
githubCloudOnly: false
category: webhooks
- subcategory: team_add
+ subcategory: team
supported-webhook-types:
- - repository
- organization
+ - business
- app
- team-added-to-repository:
+ watch-started:
post:
summary: |-
- This event occurs when there is activity relating to teams in an organization.
- For more information, see "[About teams](https://docs.github.com/organizations/organizing-members-into-teams/about-teams)."
+ This event occurs when there is activity relating to watching, or subscribing to, a repository. For more information about watching, see "[Managing your subscriptions](https://docs.github.com/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/managing-your-subscriptions)." For information about the APIs to manage watching, see "[Watching](https://docs.github.com/rest/activity/watching)" in the REST API documentation.
- To subscribe to this event, a GitHub App must have at least read-level access for the "Members" organization permission.
- description: A team was granted access to a repository.
- operationId: team/added-to-repository
+ To subscribe to this event, a GitHub App must have at least read-level access for the "Metadata" repository permission.
+ description: Someone started watching the repository.
+ operationId: watch/started
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#team
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#watch
parameters:
- name: User-Agent
in: header
@@ -61426,7 +61927,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-team-added-to-repository"
+ "$ref": "#/components/schemas/webhook-watch-started"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -61434,22 +61935,22 @@ webhooks:
x-github:
githubCloudOnly: false
category: webhooks
- subcategory: team
+ subcategory: watch
supported-webhook-types:
+ - repository
- organization
- - business
- app
- team-created:
+ workflow-dispatch:
post:
summary: |-
- This event occurs when there is activity relating to teams in an organization.
- For more information, see "[About teams](https://docs.github.com/organizations/organizing-members-into-teams/about-teams)."
+ This event occurs when a GitHub Actions workflow is manually triggered. For more information, see "[Manually running a workflow](https://docs.github.com/actions/managing-workflow-runs/manually-running-a-workflow)."
- To subscribe to this event, a GitHub App must have at least read-level access for the "Members" organization permission.
- description: A team was created.
- operationId: team/created
+ For activity relating to workflow runs, use the `workflow_run` event.
+
+ To subscribe to this event, a GitHub App must have at least read-level access for the "Contents" repository permission.
+ operationId: workflow-dispatch
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#team
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#workflow_dispatch
parameters:
- name: User-Agent
in: header
@@ -61491,7 +61992,7 @@ webhooks:
content:
application/json:
schema:
- "$ref": "#/components/schemas/webhook-team-created"
+ "$ref": "#/components/schemas/webhook-workflow-dispatch"
responses:
'200':
description: Return a 200 status to indicate that the data was received
@@ -61499,347 +62000,23 @@ webhooks:
x-github:
githubCloudOnly: false
category: webhooks
- subcategory: team
+ subcategory: workflow_dispatch
supported-webhook-types:
- - organization
- - business
- app
- team-deleted:
+ workflow-job-completed:
post:
summary: |-
- This event occurs when there is activity relating to teams in an organization.
- For more information, see "[About teams](https://docs.github.com/organizations/organizing-members-into-teams/about-teams)."
+ This event occurs when there is activity relating to a job in a GitHub Actions workflow. For more information, see "[Using jobs in a workflow](https://docs.github.com/actions/using-jobs/using-jobs-in-a-workflow)." For information about the API to manage workflow jobs, see "[Workflow jobs](https://docs.github.com/rest/actions/workflow-jobs)" in the REST API documentation.
- To subscribe to this event, a GitHub App must have at least read-level access for the "Members" organization permission.
- description: A team was deleted.
- operationId: team/deleted
+ For activity relating to a workflow run instead of a job in a workflow run, use the `workflow_run` event.
+
+ To subscribe to this event, a GitHub App must have at least read-level access for the "Actions" repository permission.
+ description: A job in a workflow run finished. This event occurs when a job
+ in a workflow is completed, regardless of whether the job was successful or
+ unsuccessful.
+ operationId: workflow-job/completed
externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#team
- parameters:
- - name: User-Agent
- in: header
- example: GitHub-Hookshot/123abc
- schema:
- type: string
- - name: X-Github-Hook-Id
- in: header
- example: 12312312
- schema:
- type: string
- - name: X-Github-Event
- in: header
- example: issues
- schema:
- type: string
- - name: X-Github-Hook-Installation-Target-Id
- in: header
- example: 123123
- schema:
- type: string
- - name: X-Github-Hook-Installation-Target-Type
- in: header
- example: repository
- schema:
- type: string
- - name: X-GitHub-Delivery
- in: header
- example: 0b989ba4-242f-11e5-81e1-c7b6966d2516
- schema:
- type: string
- - name: X-Hub-Signature-256
- in: header
- example: sha256=6dcb09b5b57875f334f61aebed695e2e4193db5e
- schema:
- type: string
- requestBody:
- required: true
- content:
- application/json:
- schema:
- "$ref": "#/components/schemas/webhook-team-deleted"
- responses:
- '200':
- description: Return a 200 status to indicate that the data was received
- successfully
- x-github:
- githubCloudOnly: false
- category: webhooks
- subcategory: team
- supported-webhook-types:
- - organization
- - business
- - app
- team-edited:
- post:
- summary: |-
- This event occurs when there is activity relating to teams in an organization.
- For more information, see "[About teams](https://docs.github.com/organizations/organizing-members-into-teams/about-teams)."
-
- To subscribe to this event, a GitHub App must have at least read-level access for the "Members" organization permission.
- description: The name, description, or visibility of a team was changed.
- operationId: team/edited
- externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#team
- parameters:
- - name: User-Agent
- in: header
- example: GitHub-Hookshot/123abc
- schema:
- type: string
- - name: X-Github-Hook-Id
- in: header
- example: 12312312
- schema:
- type: string
- - name: X-Github-Event
- in: header
- example: issues
- schema:
- type: string
- - name: X-Github-Hook-Installation-Target-Id
- in: header
- example: 123123
- schema:
- type: string
- - name: X-Github-Hook-Installation-Target-Type
- in: header
- example: repository
- schema:
- type: string
- - name: X-GitHub-Delivery
- in: header
- example: 0b989ba4-242f-11e5-81e1-c7b6966d2516
- schema:
- type: string
- - name: X-Hub-Signature-256
- in: header
- example: sha256=6dcb09b5b57875f334f61aebed695e2e4193db5e
- schema:
- type: string
- requestBody:
- required: true
- content:
- application/json:
- schema:
- "$ref": "#/components/schemas/webhook-team-edited"
- responses:
- '200':
- description: Return a 200 status to indicate that the data was received
- successfully
- x-github:
- githubCloudOnly: false
- category: webhooks
- subcategory: team
- supported-webhook-types:
- - organization
- - business
- - app
- team-removed-from-repository:
- post:
- summary: |-
- This event occurs when there is activity relating to teams in an organization.
- For more information, see "[About teams](https://docs.github.com/organizations/organizing-members-into-teams/about-teams)."
-
- To subscribe to this event, a GitHub App must have at least read-level access for the "Members" organization permission.
- description: A team's access to a repository was removed.
- operationId: team/removed-from-repository
- externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#team
- parameters:
- - name: User-Agent
- in: header
- example: GitHub-Hookshot/123abc
- schema:
- type: string
- - name: X-Github-Hook-Id
- in: header
- example: 12312312
- schema:
- type: string
- - name: X-Github-Event
- in: header
- example: issues
- schema:
- type: string
- - name: X-Github-Hook-Installation-Target-Id
- in: header
- example: 123123
- schema:
- type: string
- - name: X-Github-Hook-Installation-Target-Type
- in: header
- example: repository
- schema:
- type: string
- - name: X-GitHub-Delivery
- in: header
- example: 0b989ba4-242f-11e5-81e1-c7b6966d2516
- schema:
- type: string
- - name: X-Hub-Signature-256
- in: header
- example: sha256=6dcb09b5b57875f334f61aebed695e2e4193db5e
- schema:
- type: string
- requestBody:
- required: true
- content:
- application/json:
- schema:
- "$ref": "#/components/schemas/webhook-team-removed-from-repository"
- responses:
- '200':
- description: Return a 200 status to indicate that the data was received
- successfully
- x-github:
- githubCloudOnly: false
- category: webhooks
- subcategory: team
- supported-webhook-types:
- - organization
- - business
- - app
- watch-started:
- post:
- summary: |-
- This event occurs when there is activity relating to watching, or subscribing to, a repository. For more information about watching, see "[Managing your subscriptions](https://docs.github.com/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/managing-your-subscriptions)." For information about the APIs to manage watching, see "[Watching](https://docs.github.com/rest/activity/watching)" in the REST API documentation.
-
- To subscribe to this event, a GitHub App must have at least read-level access for the "Metadata" repository permission.
- description: Someone started watching the repository.
- operationId: watch/started
- externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#watch
- parameters:
- - name: User-Agent
- in: header
- example: GitHub-Hookshot/123abc
- schema:
- type: string
- - name: X-Github-Hook-Id
- in: header
- example: 12312312
- schema:
- type: string
- - name: X-Github-Event
- in: header
- example: issues
- schema:
- type: string
- - name: X-Github-Hook-Installation-Target-Id
- in: header
- example: 123123
- schema:
- type: string
- - name: X-Github-Hook-Installation-Target-Type
- in: header
- example: repository
- schema:
- type: string
- - name: X-GitHub-Delivery
- in: header
- example: 0b989ba4-242f-11e5-81e1-c7b6966d2516
- schema:
- type: string
- - name: X-Hub-Signature-256
- in: header
- example: sha256=6dcb09b5b57875f334f61aebed695e2e4193db5e
- schema:
- type: string
- requestBody:
- required: true
- content:
- application/json:
- schema:
- "$ref": "#/components/schemas/webhook-watch-started"
- responses:
- '200':
- description: Return a 200 status to indicate that the data was received
- successfully
- x-github:
- githubCloudOnly: false
- category: webhooks
- subcategory: watch
- supported-webhook-types:
- - repository
- - organization
- - app
- workflow-dispatch:
- post:
- summary: |-
- This event occurs when a GitHub Actions workflow is manually triggered. For more information, see "[Manually running a workflow](https://docs.github.com/actions/managing-workflow-runs/manually-running-a-workflow)."
-
- For activity relating to workflow runs, use the `workflow_run` event.
-
- To subscribe to this event, a GitHub App must have at least read-level access for the "Contents" repository permission.
- operationId: workflow-dispatch
- externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#workflow_dispatch
- parameters:
- - name: User-Agent
- in: header
- example: GitHub-Hookshot/123abc
- schema:
- type: string
- - name: X-Github-Hook-Id
- in: header
- example: 12312312
- schema:
- type: string
- - name: X-Github-Event
- in: header
- example: issues
- schema:
- type: string
- - name: X-Github-Hook-Installation-Target-Id
- in: header
- example: 123123
- schema:
- type: string
- - name: X-Github-Hook-Installation-Target-Type
- in: header
- example: repository
- schema:
- type: string
- - name: X-GitHub-Delivery
- in: header
- example: 0b989ba4-242f-11e5-81e1-c7b6966d2516
- schema:
- type: string
- - name: X-Hub-Signature-256
- in: header
- example: sha256=6dcb09b5b57875f334f61aebed695e2e4193db5e
- schema:
- type: string
- requestBody:
- required: true
- content:
- application/json:
- schema:
- "$ref": "#/components/schemas/webhook-workflow-dispatch"
- responses:
- '200':
- description: Return a 200 status to indicate that the data was received
- successfully
- x-github:
- githubCloudOnly: false
- category: webhooks
- subcategory: workflow_dispatch
- supported-webhook-types:
- - app
- workflow-job-completed:
- post:
- summary: |-
- This event occurs when there is activity relating to a job in a GitHub Actions workflow. For more information, see "[Using jobs in a workflow](https://docs.github.com/actions/using-jobs/using-jobs-in-a-workflow)." For information about the API to manage workflow jobs, see "[Workflow jobs](https://docs.github.com/rest/actions/workflow-jobs)" in the REST API documentation.
-
- For activity relating to a workflow run instead of a job in a workflow run, use the `workflow_run` event.
-
- To subscribe to this event, a GitHub App must have at least read-level access for the "Actions" repository permission.
- description: A job in a workflow run finished. This event occurs when a job
- in a workflow is completed, regardless of whether the job was successful or
- unsuccessful.
- operationId: workflow-job/completed
- externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#workflow_job
+ url: https://docs.github.com/webhooks/webhook-events-and-payloads#workflow_job
parameters:
- name: User-Agent
in: header
@@ -63100,6 +63277,14 @@ components:
- 'null'
examples:
- 123
+ throttled_at:
+ description: Time when the webhook delivery was throttled.
+ type:
+ - string
+ - 'null'
+ format: date-time
+ examples:
+ - '2021-05-12T20:33:44Z'
required:
- id
- guid
@@ -63250,6 +63435,14 @@ components:
- 'null'
examples:
- 123
+ throttled_at:
+ description: Time when the webhook delivery was throttled.
+ type:
+ - string
+ - 'null'
+ format: date-time
+ examples:
+ - '2021-05-12T20:33:44Z'
url:
description: The URL target of the delivery.
type: string
@@ -65215,6 +65408,475 @@ components:
- html_url
- key
- name
+ team-simple:
+ title: Team Simple
+ description: Groups of organization members that gives permissions on specified
+ repositories.
+ type: object
+ properties:
+ id:
+ description: Unique identifier of the team
+ type: integer
+ examples:
+ - 1
+ node_id:
+ type: string
+ examples:
+ - MDQ6VGVhbTE=
+ url:
+ description: URL for the team
+ type: string
+ format: uri
+ examples:
+ - https://api.github.com/organizations/1/team/1
+ members_url:
+ type: string
+ examples:
+ - https://api.github.com/organizations/1/team/1/members{/member}
+ name:
+ description: Name of the team
+ type: string
+ examples:
+ - Justice League
+ description:
+ description: Description of the team
+ type:
+ - string
+ - 'null'
+ examples:
+ - A great team.
+ permission:
+ description: Permission that the team will have for its repositories
+ type: string
+ examples:
+ - admin
+ privacy:
+ description: The level of privacy this team should have
+ type: string
+ examples:
+ - closed
+ notification_setting:
+ description: The notification setting the team has set
+ type: string
+ examples:
+ - notifications_enabled
+ html_url:
+ type: string
+ format: uri
+ examples:
+ - https://github.com/orgs/rails/teams/core
+ repositories_url:
+ type: string
+ format: uri
+ examples:
+ - https://api.github.com/organizations/1/team/1/repos
+ slug:
+ type: string
+ examples:
+ - justice-league
+ ldap_dn:
+ description: Distinguished Name (DN) that team maps to within LDAP environment
+ type: string
+ examples:
+ - uid=example,ou=users,dc=github,dc=com
+ required:
+ - id
+ - node_id
+ - url
+ - members_url
+ - name
+ - description
+ - permission
+ - html_url
+ - repositories_url
+ - slug
+ team:
+ title: Team
+ description: Groups of organization members that gives permissions on specified
+ repositories.
+ type: object
+ properties:
+ id:
+ type: integer
+ node_id:
+ type: string
+ name:
+ type: string
+ slug:
+ type: string
+ description:
+ type:
+ - string
+ - 'null'
+ privacy:
+ type: string
+ notification_setting:
+ type: string
+ permission:
+ type: string
+ permissions:
+ type: object
+ properties:
+ pull:
+ type: boolean
+ triage:
+ type: boolean
+ push:
+ type: boolean
+ maintain:
+ type: boolean
+ admin:
+ type: boolean
+ required:
+ - pull
+ - triage
+ - push
+ - maintain
+ - admin
+ url:
+ type: string
+ format: uri
+ html_url:
+ type: string
+ format: uri
+ examples:
+ - https://github.com/orgs/rails/teams/core
+ members_url:
+ type: string
+ repositories_url:
+ type: string
+ format: uri
+ parent:
+ anyOf:
+ - type: 'null'
+ - "$ref": "#/components/schemas/team-simple"
+ required:
+ - id
+ - node_id
+ - url
+ - members_url
+ - name
+ - description
+ - permission
+ - html_url
+ - repositories_url
+ - slug
+ - parent
+ organization:
+ title: Organization
+ description: GitHub account for managing multiple users, teams, and repositories
+ type: object
+ properties:
+ login:
+ description: Unique login name of the organization
+ type: string
+ examples:
+ - new-org
+ url:
+ description: URL for the organization
+ type: string
+ format: uri
+ examples:
+ - https://api.github.com/orgs/github
+ id:
+ type: integer
+ node_id:
+ type: string
+ repos_url:
+ type: string
+ format: uri
+ events_url:
+ type: string
+ format: uri
+ hooks_url:
+ type: string
+ issues_url:
+ type: string
+ members_url:
+ type: string
+ public_members_url:
+ type: string
+ avatar_url:
+ type: string
+ description:
+ type:
+ - string
+ - 'null'
+ blog:
+ description: Display blog url for the organization
+ type: string
+ format: uri
+ examples:
+ - blog.example-org.com
+ html_url:
+ type: string
+ format: uri
+ name:
+ description: Display name for the organization
+ type: string
+ examples:
+ - New Org
+ company:
+ description: Display company name for the organization
+ type: string
+ examples:
+ - Acme corporation
+ location:
+ description: Display location for the organization
+ type: string
+ examples:
+ - Berlin, Germany
+ email:
+ description: Display email for the organization
+ type: string
+ format: email
+ examples:
+ - org@example.com
+ has_organization_projects:
+ description: Specifies if organization projects are enabled for this org
+ type: boolean
+ has_repository_projects:
+ description: Specifies if repository projects are enabled for repositories
+ that belong to this org
+ type: boolean
+ is_verified:
+ type: boolean
+ public_repos:
+ type: integer
+ public_gists:
+ type: integer
+ followers:
+ type: integer
+ following:
+ type: integer
+ type:
+ type: string
+ created_at:
+ type: string
+ format: date-time
+ updated_at:
+ type: string
+ format: date-time
+ plan:
+ type: object
+ properties:
+ name:
+ type: string
+ space:
+ type: integer
+ private_repos:
+ type: integer
+ filled_seats:
+ type: integer
+ seats:
+ type: integer
+ required:
+ - login
+ - url
+ - id
+ - node_id
+ - repos_url
+ - events_url
+ - hooks_url
+ - issues_url
+ - members_url
+ - public_members_url
+ - avatar_url
+ - description
+ - html_url
+ - has_organization_projects
+ - has_repository_projects
+ - public_repos
+ - public_gists
+ - followers
+ - following
+ - type
+ - created_at
+ - updated_at
+ organization-simple:
+ title: Organization Simple
+ description: A GitHub organization.
+ type: object
+ properties:
+ login:
+ type: string
+ examples:
+ - github
+ id:
+ type: integer
+ examples:
+ - 1
+ node_id:
+ type: string
+ examples:
+ - MDEyOk9yZ2FuaXphdGlvbjE=
+ url:
+ type: string
+ format: uri
+ examples:
+ - https://api.github.com/orgs/github
+ repos_url:
+ type: string
+ format: uri
+ examples:
+ - https://api.github.com/orgs/github/repos
+ events_url:
+ type: string
+ format: uri
+ examples:
+ - https://api.github.com/orgs/github/events
+ hooks_url:
+ type: string
+ examples:
+ - https://api.github.com/orgs/github/hooks
+ issues_url:
+ type: string
+ examples:
+ - https://api.github.com/orgs/github/issues
+ members_url:
+ type: string
+ examples:
+ - https://api.github.com/orgs/github/members{/member}
+ public_members_url:
+ type: string
+ examples:
+ - https://api.github.com/orgs/github/public_members{/member}
+ avatar_url:
+ type: string
+ examples:
+ - https://github.com/images/error/octocat_happy.gif
+ description:
+ type:
+ - string
+ - 'null'
+ examples:
+ - A great organization
+ required:
+ - login
+ - url
+ - id
+ - node_id
+ - repos_url
+ - events_url
+ - hooks_url
+ - issues_url
+ - members_url
+ - public_members_url
+ - avatar_url
+ - description
+ enterprise-team:
+ title: Enterprise Team
+ description: Group of enterprise owners and/or members
+ type: object
+ properties:
+ id:
+ type: integer
+ name:
+ type: string
+ slug:
+ type: string
+ url:
+ type: string
+ format: uri
+ sync_to_organizations:
+ type: string
+ examples:
+ - disabled | all
+ group_id:
+ type:
+ - integer
+ - 'null'
+ examples:
+ - 1
+ html_url:
+ type: string
+ format: uri
+ examples:
+ - https://github.com/enterprises/dc/teams/justice-league
+ members_url:
+ type: string
+ created_at:
+ type: string
+ format: date-time
+ updated_at:
+ type: string
+ format: date-time
+ required:
+ - id
+ - url
+ - members_url
+ - sync_to_organizations
+ - name
+ - html_url
+ - slug
+ - created_at
+ - updated_at
+ copilot-seat-details:
+ title: Copilot Business Seat Detail
+ description: Information about a Copilot Business seat assignment for a user,
+ team, or organization.
+ type: object
+ properties:
+ assignee:
+ type: object
+ description: The assignee that has been granted access to GitHub Copilot.
+ additionalProperties: true
+ oneOf:
+ - "$ref": "#/components/schemas/simple-user"
+ - "$ref": "#/components/schemas/team"
+ - "$ref": "#/components/schemas/organization"
+ organization:
+ type:
+ - object
+ - 'null'
+ description: The organization to which this seat belongs.
+ oneOf:
+ - "$ref": "#/components/schemas/organization-simple"
+ assigning_team:
+ description: The team through which the assignee is granted access to GitHub
+ Copilot, if applicable.
+ oneOf:
+ - "$ref": "#/components/schemas/team"
+ - "$ref": "#/components/schemas/enterprise-team"
+ type:
+ - 'null'
+ - object
+ pending_cancellation_date:
+ type:
+ - string
+ - 'null'
+ format: date
+ description: The pending cancellation date for the seat, in `YYYY-MM-DD`
+ format. This will be null unless the assignee's Copilot access has been
+ canceled during the current billing cycle. If the seat has been cancelled,
+ this corresponds to the start of the organization's next billing cycle.
+ last_activity_at:
+ type:
+ - string
+ - 'null'
+ format: date-time
+ description: Timestamp of user's last GitHub Copilot activity, in ISO 8601
+ format.
+ last_activity_editor:
+ type:
+ - string
+ - 'null'
+ description: Last editor that was used by the user for a GitHub Copilot
+ completion.
+ created_at:
+ type: string
+ format: date-time
+ description: Timestamp of when the assignee was last granted access to GitHub
+ Copilot, in ISO 8601 format.
+ updated_at:
+ type: string
+ format: date-time
+ description: Timestamp of when the assignee's GitHub Copilot access was
+ last updated, in ISO 8601 format.
+ required:
+ - assignee
+ - created_at
+ additionalProperties: false
copilot-usage-metrics:
title: Copilot Usage Metrics
description: Summary of Copilot usage.
@@ -66862,6 +67524,11 @@ components:
- string
- 'null'
format: email
+ notification_email:
+ type:
+ - string
+ - 'null'
+ format: email
hireable:
type:
- boolean
@@ -67635,6 +68302,12 @@ components:
type: string
examples:
- 192.0.2.1
+ actions_macos:
+ type: array
+ items:
+ type: string
+ examples:
+ - 192.0.2.1
dependabot:
type: array
items:
@@ -68198,77 +68871,6 @@ components:
- reason
- url
- subscribed
- organization-simple:
- title: Organization Simple
- description: A GitHub organization.
- type: object
- properties:
- login:
- type: string
- examples:
- - github
- id:
- type: integer
- examples:
- - 1
- node_id:
- type: string
- examples:
- - MDEyOk9yZ2FuaXphdGlvbjE=
- url:
- type: string
- format: uri
- examples:
- - https://api.github.com/orgs/github
- repos_url:
- type: string
- format: uri
- examples:
- - https://api.github.com/orgs/github/repos
- events_url:
- type: string
- format: uri
- examples:
- - https://api.github.com/orgs/github/events
- hooks_url:
- type: string
- examples:
- - https://api.github.com/orgs/github/hooks
- issues_url:
- type: string
- examples:
- - https://api.github.com/orgs/github/issues
- members_url:
- type: string
- examples:
- - https://api.github.com/orgs/github/members{/member}
- public_members_url:
- type: string
- examples:
- - https://api.github.com/orgs/github/public_members{/member}
- avatar_url:
- type: string
- examples:
- - https://github.com/images/error/octocat_happy.gif
- description:
- type:
- - string
- - 'null'
- examples:
- - A great organization
- required:
- - login
- - url
- - id
- - node_id
- - repos_url
- - events_url
- - hooks_url
- - issues_url
- - members_url
- - public_members_url
- - avatar_url
- - description
organization-full:
title: Organization Full
description: Organization Full
@@ -69695,349 +70297,6 @@ components:
- public_code_suggestions
- seat_management_setting
additionalProperties: true
- team-simple:
- title: Team Simple
- description: Groups of organization members that gives permissions on specified
- repositories.
- type: object
- properties:
- id:
- description: Unique identifier of the team
- type: integer
- examples:
- - 1
- node_id:
- type: string
- examples:
- - MDQ6VGVhbTE=
- url:
- description: URL for the team
- type: string
- format: uri
- examples:
- - https://api.github.com/organizations/1/team/1
- members_url:
- type: string
- examples:
- - https://api.github.com/organizations/1/team/1/members{/member}
- name:
- description: Name of the team
- type: string
- examples:
- - Justice League
- description:
- description: Description of the team
- type:
- - string
- - 'null'
- examples:
- - A great team.
- permission:
- description: Permission that the team will have for its repositories
- type: string
- examples:
- - admin
- privacy:
- description: The level of privacy this team should have
- type: string
- examples:
- - closed
- notification_setting:
- description: The notification setting the team has set
- type: string
- examples:
- - notifications_enabled
- html_url:
- type: string
- format: uri
- examples:
- - https://github.com/orgs/rails/teams/core
- repositories_url:
- type: string
- format: uri
- examples:
- - https://api.github.com/organizations/1/team/1/repos
- slug:
- type: string
- examples:
- - justice-league
- ldap_dn:
- description: Distinguished Name (DN) that team maps to within LDAP environment
- type: string
- examples:
- - uid=example,ou=users,dc=github,dc=com
- required:
- - id
- - node_id
- - url
- - members_url
- - name
- - description
- - permission
- - html_url
- - repositories_url
- - slug
- team:
- title: Team
- description: Groups of organization members that gives permissions on specified
- repositories.
- type: object
- properties:
- id:
- type: integer
- node_id:
- type: string
- name:
- type: string
- slug:
- type: string
- description:
- type:
- - string
- - 'null'
- privacy:
- type: string
- notification_setting:
- type: string
- permission:
- type: string
- permissions:
- type: object
- properties:
- pull:
- type: boolean
- triage:
- type: boolean
- push:
- type: boolean
- maintain:
- type: boolean
- admin:
- type: boolean
- required:
- - pull
- - triage
- - push
- - maintain
- - admin
- url:
- type: string
- format: uri
- html_url:
- type: string
- format: uri
- examples:
- - https://github.com/orgs/rails/teams/core
- members_url:
- type: string
- repositories_url:
- type: string
- format: uri
- parent:
- anyOf:
- - type: 'null'
- - "$ref": "#/components/schemas/team-simple"
- required:
- - id
- - node_id
- - url
- - members_url
- - name
- - description
- - permission
- - html_url
- - repositories_url
- - slug
- - parent
- organization:
- title: Organization
- description: GitHub account for managing multiple users, teams, and repositories
- type: object
- properties:
- login:
- description: Unique login name of the organization
- type: string
- examples:
- - new-org
- url:
- description: URL for the organization
- type: string
- format: uri
- examples:
- - https://api.github.com/orgs/github
- id:
- type: integer
- node_id:
- type: string
- repos_url:
- type: string
- format: uri
- events_url:
- type: string
- format: uri
- hooks_url:
- type: string
- issues_url:
- type: string
- members_url:
- type: string
- public_members_url:
- type: string
- avatar_url:
- type: string
- description:
- type:
- - string
- - 'null'
- blog:
- description: Display blog url for the organization
- type: string
- format: uri
- examples:
- - blog.example-org.com
- html_url:
- type: string
- format: uri
- name:
- description: Display name for the organization
- type: string
- examples:
- - New Org
- company:
- description: Display company name for the organization
- type: string
- examples:
- - Acme corporation
- location:
- description: Display location for the organization
- type: string
- examples:
- - Berlin, Germany
- email:
- description: Display email for the organization
- type: string
- format: email
- examples:
- - org@example.com
- has_organization_projects:
- description: Specifies if organization projects are enabled for this org
- type: boolean
- has_repository_projects:
- description: Specifies if repository projects are enabled for repositories
- that belong to this org
- type: boolean
- is_verified:
- type: boolean
- public_repos:
- type: integer
- public_gists:
- type: integer
- followers:
- type: integer
- following:
- type: integer
- type:
- type: string
- created_at:
- type: string
- format: date-time
- updated_at:
- type: string
- format: date-time
- plan:
- type: object
- properties:
- name:
- type: string
- space:
- type: integer
- private_repos:
- type: integer
- filled_seats:
- type: integer
- seats:
- type: integer
- required:
- - login
- - url
- - id
- - node_id
- - repos_url
- - events_url
- - hooks_url
- - issues_url
- - members_url
- - public_members_url
- - avatar_url
- - description
- - html_url
- - has_organization_projects
- - has_repository_projects
- - public_repos
- - public_gists
- - followers
- - following
- - type
- - created_at
- - updated_at
- copilot-seat-details:
- title: Copilot Business Seat Detail
- description: Information about a Copilot Business seat assignment for a user,
- team, or organization.
- type: object
- properties:
- assignee:
- type: object
- description: The assignee that has been granted access to GitHub Copilot.
- additionalProperties: true
- oneOf:
- - "$ref": "#/components/schemas/simple-user"
- - "$ref": "#/components/schemas/team"
- - "$ref": "#/components/schemas/organization"
- assigning_team:
- description: The team that granted access to GitHub Copilot to the assignee.
- This will be null if the user was assigned a seat individually.
- oneOf:
- - "$ref": "#/components/schemas/team"
- type:
- - 'null'
- - object
- pending_cancellation_date:
- type:
- - string
- - 'null'
- format: date
- description: The pending cancellation date for the seat, in `YYYY-MM-DD`
- format. This will be null unless the assignee's Copilot access has been
- canceled during the current billing cycle. If the seat has been cancelled,
- this corresponds to the start of the organization's next billing cycle.
- last_activity_at:
- type:
- - string
- - 'null'
- format: date-time
- description: Timestamp of user's last GitHub Copilot activity, in ISO 8601
- format.
- last_activity_editor:
- type:
- - string
- - 'null'
- description: Last editor that was used by the user for a GitHub Copilot
- completion.
- created_at:
- type: string
- format: date-time
- description: Timestamp of when the assignee was last granted access to GitHub
- Copilot, in ISO 8601 format.
- updated_at:
- type: string
- format: date-time
- description: Timestamp of when the assignee's GitHub Copilot access was
- last updated, in ISO 8601 format.
- required:
- - assignee
- - created_at
- additionalProperties: false
organization-dependabot-secret:
title: Dependabot Secret for an Organization
description: Secrets for GitHub Dependabot for an organization.
@@ -70540,6 +70799,193 @@ components:
- organization
- created_at
- updated_at
+ team-role-assignment:
+ title: A Role Assignment for a Team
+ description: The Relationship a Team has with a role.
+ type: object
+ properties:
+ id:
+ type: integer
+ node_id:
+ type: string
+ name:
+ type: string
+ slug:
+ type: string
+ description:
+ type:
+ - string
+ - 'null'
+ privacy:
+ type: string
+ notification_setting:
+ type: string
+ permission:
+ type: string
+ permissions:
+ type: object
+ properties:
+ pull:
+ type: boolean
+ triage:
+ type: boolean
+ push:
+ type: boolean
+ maintain:
+ type: boolean
+ admin:
+ type: boolean
+ required:
+ - pull
+ - triage
+ - push
+ - maintain
+ - admin
+ url:
+ type: string
+ format: uri
+ html_url:
+ type: string
+ format: uri
+ examples:
+ - https://github.com/orgs/rails/teams/core
+ members_url:
+ type: string
+ repositories_url:
+ type: string
+ format: uri
+ parent:
+ anyOf:
+ - type: 'null'
+ - "$ref": "#/components/schemas/team-simple"
+ required:
+ - id
+ - node_id
+ - url
+ - members_url
+ - name
+ - description
+ - permission
+ - html_url
+ - repositories_url
+ - slug
+ - parent
+ user-role-assignment:
+ title: A Role Assignment for a User
+ description: The Relationship a User has with a role.
+ type: object
+ properties:
+ name:
+ type:
+ - string
+ - 'null'
+ email:
+ type:
+ - string
+ - 'null'
+ login:
+ type: string
+ examples:
+ - octocat
+ id:
+ type: integer
+ examples:
+ - 1
+ node_id:
+ type: string
+ examples:
+ - MDQ6VXNlcjE=
+ avatar_url:
+ type: string
+ format: uri
+ examples:
+ - https://github.com/images/error/octocat_happy.gif
+ gravatar_id:
+ type:
+ - string
+ - 'null'
+ examples:
+ - 41d064eb2195891e12d0413f63227ea7
+ url:
+ type: string
+ format: uri
+ examples:
+ - https://api.github.com/users/octocat
+ html_url:
+ type: string
+ format: uri
+ examples:
+ - https://github.com/octocat
+ followers_url:
+ type: string
+ format: uri
+ examples:
+ - https://api.github.com/users/octocat/followers
+ following_url:
+ type: string
+ examples:
+ - https://api.github.com/users/octocat/following{/other_user}
+ gists_url:
+ type: string
+ examples:
+ - https://api.github.com/users/octocat/gists{/gist_id}
+ starred_url:
+ type: string
+ examples:
+ - https://api.github.com/users/octocat/starred{/owner}{/repo}
+ subscriptions_url:
+ type: string
+ format: uri
+ examples:
+ - https://api.github.com/users/octocat/subscriptions
+ organizations_url:
+ type: string
+ format: uri
+ examples:
+ - https://api.github.com/users/octocat/orgs
+ repos_url:
+ type: string
+ format: uri
+ examples:
+ - https://api.github.com/users/octocat/repos
+ events_url:
+ type: string
+ examples:
+ - https://api.github.com/users/octocat/events{/privacy}
+ received_events_url:
+ type: string
+ format: uri
+ examples:
+ - https://api.github.com/users/octocat/received_events
+ type:
+ type: string
+ examples:
+ - User
+ site_admin:
+ type: boolean
+ starred_at:
+ type: string
+ examples:
+ - '"2020-07-09T00:17:55Z"'
+ required:
+ - avatar_url
+ - events_url
+ - followers_url
+ - following_url
+ - gists_url
+ - gravatar_id
+ - html_url
+ - id
+ - node_id
+ - login
+ - organizations_url
+ - received_events_url
+ - repos_url
+ - site_admin
+ - starred_url
+ - subscriptions_url
+ - type
+ - url
package-version:
title: Package Version
description: A version of a software package
@@ -70885,6 +71331,8 @@ components:
enum:
- string
- single_select
+ - multi_select
+ - true_false
description: The type of the value for the property
examples:
- single_select
@@ -72181,6 +72629,30 @@ components:
- alerts_threshold
- security_alerts_threshold
- tool
+ repository-rule-code-scanning:
+ title: code_scanning
+ description: Choose which tools must provide code scanning results before the
+ reference is updated. When configured, code scanning must be enabled and have
+ results for both the commit and the reference being updated.
+ type: object
+ required:
+ - type
+ properties:
+ type:
+ type: string
+ enum:
+ - code_scanning
+ parameters:
+ type: object
+ properties:
+ code_scanning_tools:
+ type: array
+ description: Tools that must provide code scanning results for this
+ rule to pass.
+ items:
+ "$ref": "#/components/schemas/repository-rule-params-code-scanning-tool"
+ required:
+ - code_scanning_tools
repository-rule:
title: Repository Rule
type: object
@@ -72296,6 +72768,7 @@ components:
required:
- max_file_size
- "$ref": "#/components/schemas/repository-rule-workflows"
+ - "$ref": "#/components/schemas/repository-rule-code-scanning"
repository-ruleset:
title: Repository ruleset
type: object
@@ -77450,6 +77923,242 @@ components:
- created_at
- updated_at
- url
+ code-scanning-variant-analysis-language:
+ type: string
+ description: The language targeted by the CodeQL query
+ enum:
+ - cpp
+ - csharp
+ - go
+ - java
+ - javascript
+ - python
+ - ruby
+ - swift
+ code-scanning-variant-analysis-repository:
+ title: Repository Identifier
+ description: Repository Identifier
+ type: object
+ properties:
+ id:
+ type: integer
+ description: A unique identifier of the repository.
+ examples:
+ - 1296269
+ name:
+ type: string
+ description: The name of the repository.
+ examples:
+ - Hello-World
+ full_name:
+ type: string
+ description: The full, globally unique, name of the repository.
+ examples:
+ - octocat/Hello-World
+ private:
+ type: boolean
+ description: Whether the repository is private.
+ stargazers_count:
+ type: integer
+ examples:
+ - 80
+ updated_at:
+ type:
+ - string
+ - 'null'
+ format: date-time
+ examples:
+ - '2011-01-26T19:14:43Z'
+ required:
+ - full_name
+ - id
+ - name
+ - private
+ - stargazers_count
+ - updated_at
+ code-scanning-variant-analysis-status:
+ type: string
+ description: The new status of the CodeQL variant analysis repository task.
+ enum:
+ - pending
+ - in_progress
+ - succeeded
+ - failed
+ - canceled
+ - timed_out
+ code-scanning-variant-analysis-skipped-repo-group:
+ type: object
+ properties:
+ repository_count:
+ type: integer
+ description: The total number of repositories that were skipped for this
+ reason.
+ examples:
+ - 2
+ repositories:
+ type: array
+ description: A list of repositories that were skipped. This list may not
+ include all repositories that were skipped. This is only available when
+ the repository was found and the user has access to it.
+ items:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-repository"
+ required:
+ - repository_count
+ - repositories
+ code-scanning-variant-analysis:
+ title: Variant Analysis
+ description: A run of a CodeQL query against one or more repositories.
+ type: object
+ properties:
+ id:
+ type: integer
+ description: The ID of the variant analysis.
+ controller_repo:
+ "$ref": "#/components/schemas/simple-repository"
+ actor:
+ "$ref": "#/components/schemas/simple-user"
+ query_language:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-language"
+ query_pack_url:
+ type: string
+ description: The download url for the query pack.
+ created_at:
+ type: string
+ format: date-time
+ description: The date and time at which the variant analysis was created,
+ in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ.
+ updated_at:
+ type: string
+ format: date-time
+ description: The date and time at which the variant analysis was last updated,
+ in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ.
+ completed_at:
+ type:
+ - string
+ - 'null'
+ format: date-time
+ description: The date and time at which the variant analysis was completed,
+ in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ. Will be null if the variant
+ analysis has not yet completed or this information is not available.
+ status:
+ type: string
+ enum:
+ - in_progress
+ - succeeded
+ - failed
+ - cancelled
+ actions_workflow_run_id:
+ type: integer
+ description: The GitHub Actions workflow run used to execute this variant
+ analysis. This is only available if the workflow run has started.
+ failure_reason:
+ type: string
+ enum:
+ - no_repos_queried
+ - actions_workflow_run_failed
+ - internal_error
+ description: The reason for a failure of the variant analysis. This is only
+ available if the variant analysis has failed.
+ scanned_repositories:
+ type: array
+ items:
+ type: object
+ properties:
+ repository:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-repository"
+ analysis_status:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-status"
+ result_count:
+ type: integer
+ description: The number of results in the case of a successful analysis.
+ This is only available for successful analyses.
+ artifact_size_in_bytes:
+ type: integer
+ description: The size of the artifact. This is only available for
+ successful analyses.
+ failure_message:
+ type: string
+ description: The reason of the failure of this repo task. This is
+ only available if the repository task has failed.
+ required:
+ - repository
+ - analysis_status
+ skipped_repositories:
+ type: object
+ description: Information about repositories that were skipped from processing.
+ This information is only available to the user that initiated the variant
+ analysis.
+ properties:
+ access_mismatch_repos:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-skipped-repo-group"
+ not_found_repos:
+ type: object
+ properties:
+ repository_count:
+ type: integer
+ description: The total number of repositories that were skipped
+ for this reason.
+ examples:
+ - 2
+ repository_full_names:
+ type: array
+ description: A list of full repository names that were skipped.
+ This list may not include all repositories that were skipped.
+ items:
+ type: string
+ required:
+ - repository_count
+ - repository_full_names
+ no_codeql_db_repos:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-skipped-repo-group"
+ over_limit_repos:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-skipped-repo-group"
+ required:
+ - access_mismatch_repos
+ - not_found_repos
+ - no_codeql_db_repos
+ - over_limit_repos
+ required:
+ - id
+ - controller_repo
+ - actor
+ - query_language
+ - query_pack_url
+ - status
+ code-scanning-variant-analysis-repo-task:
+ type: object
+ properties:
+ repository:
+ "$ref": "#/components/schemas/simple-repository"
+ analysis_status:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-status"
+ artifact_size_in_bytes:
+ type: integer
+ description: The size of the artifact. This is only available for successful
+ analyses.
+ result_count:
+ type: integer
+ description: The number of results in the case of a successful analysis.
+ This is only available for successful analyses.
+ failure_message:
+ type: string
+ description: The reason of the failure of this repo task. This is only available
+ if the repository task has failed.
+ database_commit_sha:
+ type: string
+ description: The SHA of the commit the CodeQL database was built against.
+ This is only available for successful analyses.
+ source_location_prefix:
+ type: string
+ description: The source location prefix to use. This is only available for
+ successful analyses.
+ artifact_url:
+ type: string
+ description: The URL of the artifact. This is only available for successful
+ analyses.
+ required:
+ - repository
+ - analysis_status
code-scanning-default-setup:
description: Configuration for code scanning default setup.
type: object
@@ -84816,6 +85525,9 @@ components:
- allOf:
- "$ref": "#/components/schemas/repository-rule-workflows"
- "$ref": "#/components/schemas/repository-rule-ruleset-info"
+ - allOf:
+ - "$ref": "#/components/schemas/repository-rule-code-scanning"
+ - "$ref": "#/components/schemas/repository-rule-ruleset-info"
secret-scanning-alert:
type: object
properties:
@@ -86871,6 +87583,13 @@ components:
format: email
examples:
- octocat@github.com
+ notification_email:
+ type:
+ - string
+ - 'null'
+ format: email
+ examples:
+ - octocat@github.com
hireable:
type:
- boolean
@@ -93515,6 +94234,46 @@ components:
- created_at
- updated_at
- archived_at
+ projects-v2-single-select-option:
+ title: Projects v2 Single Select Option
+ description: An option for a single select field
+ type: object
+ properties:
+ id:
+ type: string
+ name:
+ type: string
+ color:
+ type:
+ - string
+ - 'null'
+ description:
+ type:
+ - string
+ - 'null'
+ required:
+ - id
+ - name
+ projects-v2-iteration-setting:
+ title: Projects v2 Iteration Setting
+ description: An iteration setting for an iteration field
+ type: object
+ properties:
+ id:
+ type: string
+ title:
+ type: string
+ duration:
+ type:
+ - number
+ - 'null'
+ start_date:
+ type:
+ - string
+ - 'null'
+ required:
+ - id
+ - title
webhooks_number:
description: The pull request number.
type: integer
@@ -97110,6 +97869,11 @@ components:
secret_type:
type: string
description: The type of secret that secret scanning detected.
+ secret_type_display_name:
+ type: string
+ description: |-
+ User-friendly name for the detected secret, matching the `secret_type`.
+ For a list of built-in patterns, see "[Secret scanning patterns](https://docs.github.com/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-advanced-security)."
validity:
type: string
description: The token status as of the latest validity check.
@@ -107357,12 +108121,6 @@ components:
- type: integer
- type: string
format: date-time
- custom_properties:
- type: object
- description: The custom properties that were defined for the repository.
- The keys are the custom property names, and the values are the corresponding
- custom property values.
- additionalProperties: true
default_branch:
description: The default branch of the repository.
type: string
@@ -127351,6 +128109,8 @@ components:
- approved
personal_access_token_request:
"$ref": "#/components/schemas/personal-access-token-request"
+ enterprise:
+ "$ref": "#/components/schemas/enterprise-webhooks"
organization:
"$ref": "#/components/schemas/organization-simple-webhooks"
sender:
@@ -127373,6 +128133,8 @@ components:
- cancelled
personal_access_token_request:
"$ref": "#/components/schemas/personal-access-token-request"
+ enterprise:
+ "$ref": "#/components/schemas/enterprise-webhooks"
organization:
"$ref": "#/components/schemas/organization-simple-webhooks"
sender:
@@ -127395,6 +128157,8 @@ components:
- created
personal_access_token_request:
"$ref": "#/components/schemas/personal-access-token-request"
+ enterprise:
+ "$ref": "#/components/schemas/enterprise-webhooks"
organization:
"$ref": "#/components/schemas/organization-simple-webhooks"
sender:
@@ -127406,7 +128170,6 @@ components:
- personal_access_token_request
- organization
- sender
- - installation
webhook-personal-access-token-request-denied:
title: personal_access_token_request denied event
type: object
@@ -127419,6 +128182,8 @@ components:
"$ref": "#/components/schemas/personal-access-token-request"
organization:
"$ref": "#/components/schemas/organization-simple-webhooks"
+ enterprise:
+ "$ref": "#/components/schemas/enterprise-webhooks"
sender:
"$ref": "#/components/schemas/simple-user-webhooks"
installation:
@@ -128481,6 +129246,9 @@ components:
enum:
- edited
changes:
+ description: |-
+ The changes made to the item may involve modifications in the item's fields and draft issue body.
+ It includes altered values for text, number, date, single select, and iteration fields, along with the GraphQL node ID of the changed field.
oneOf:
- type: object
properties:
@@ -128491,6 +129259,32 @@ components:
type: string
field_type:
type: string
+ field_name:
+ type: string
+ project_number:
+ type: integer
+ from:
+ oneOf:
+ - type: string
+ - type: integer
+ - "$ref": "#/components/schemas/projects-v2-single-select-option"
+ - "$ref": "#/components/schemas/projects-v2-iteration-setting"
+ type:
+ - 'null'
+ - string
+ - integer
+ - object
+ to:
+ oneOf:
+ - type: string
+ - type: integer
+ - "$ref": "#/components/schemas/projects-v2-single-select-option"
+ - "$ref": "#/components/schemas/projects-v2-iteration-setting"
+ type:
+ - 'null'
+ - string
+ - integer
+ - object
required:
- field_value
- type: object
@@ -185898,30 +186692,6 @@ components:
- action
- alert
- repository
- webhook-secret-scanning-alert-revoked:
- title: secret_scanning_alert revoked event
- type: object
- properties:
- action:
- type: string
- enum:
- - revoked
- alert:
- "$ref": "#/components/schemas/secret-scanning-alert-webhook"
- enterprise:
- "$ref": "#/components/schemas/enterprise-webhooks"
- installation:
- "$ref": "#/components/schemas/simple-installation"
- organization:
- "$ref": "#/components/schemas/organization-simple-webhooks"
- repository:
- "$ref": "#/components/schemas/repository-webhooks"
- sender:
- "$ref": "#/components/schemas/simple-user-webhooks"
- required:
- - action
- - alert
- - repository
webhook-secret-scanning-alert-validated:
title: secret_scanning_alert validated event
type: object
@@ -193403,6 +194173,7 @@ components:
action: opened
installation_id: 123
repository_id: 456
+ throttled_at: '2019-06-03T00:57:16Z'
- id: 123456789
guid: 0b989ba4-242f-11e5-81e1-c7b6966d2516
delivered_at: '2019-06-04T00:57:16Z'
@@ -193414,6 +194185,7 @@ components:
action: opened
installation_id: 123
repository_id: 456
+ throttled_at:
hook-delivery:
value:
id: 12345678
@@ -193428,6 +194200,7 @@ components:
installation_id: 123
repository_id: 456
url: https://www.example.com
+ throttled_at: '2019-06-03T00:57:16Z'
request:
headers:
X-GitHub-Delivery: 0b989ba4-242f-11e5-81e1-c7b6966d2516
@@ -195893,6 +196666,72 @@ components:
zombie_man: https://github.githubassets.com/images/icons/emoji/unicode/1f9df-2642.png?v8
zombie_woman: https://github.githubassets.com/images/icons/emoji/unicode/1f9df-2640.png?v8
zzz: https://github.githubassets.com/images/icons/emoji/unicode/1f4a4.png?v8
+ copilot-seats-list:
+ value:
+ total_seats: 2
+ seats:
+ - created_at: '2021-08-03T18:00:00-06:00'
+ updated_at: '2021-09-23T15:00:00-06:00'
+ pending_cancellation_date:
+ last_activity_at: '2021-10-14T00:53:32-06:00'
+ last_activity_editor: vscode/1.77.3/copilot/1.86.82
+ assignee:
+ login: octocat
+ id: 1
+ node_id: MDQ6VXNlcjE=
+ avatar_url: https://github.com/images/error/octocat_happy.gif
+ gravatar_id: ''
+ url: https://api.github.com/users/octocat
+ html_url: https://github.com/octocat
+ followers_url: https://api.github.com/users/octocat/followers
+ following_url: https://api.github.com/users/octocat/following{/other_user}
+ gists_url: https://api.github.com/users/octocat/gists{/gist_id}
+ starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo}
+ subscriptions_url: https://api.github.com/users/octocat/subscriptions
+ organizations_url: https://api.github.com/users/octocat/orgs
+ repos_url: https://api.github.com/users/octocat/repos
+ events_url: https://api.github.com/users/octocat/events{/privacy}
+ received_events_url: https://api.github.com/users/octocat/received_events
+ type: User
+ site_admin: false
+ assigning_team:
+ id: 1
+ node_id: MDQ6VGVhbTE=
+ url: https://api.github.com/teams/1
+ html_url: https://github.com/orgs/github/teams/justice-league
+ name: Justice League
+ slug: justice-league
+ description: A great team.
+ privacy: closed
+ notification_setting: notifications_enabled
+ permission: admin
+ members_url: https://api.github.com/teams/1/members{/member}
+ repositories_url: https://api.github.com/teams/1/repos
+ parent:
+ - created_at: '2021-09-23T18:00:00-06:00'
+ updated_at: '2021-09-23T15:00:00-06:00'
+ pending_cancellation_date: '2021-11-01'
+ last_activity_at: '2021-10-13T00:53:32-06:00'
+ last_activity_editor: vscode/1.77.3/copilot/1.86.82
+ assignee:
+ login: octokitten
+ id: 1
+ node_id: MDQ76VNlcjE=
+ avatar_url: https://github.com/images/error/octokitten_happy.gif
+ gravatar_id: ''
+ url: https://api.github.com/users/octokitten
+ html_url: https://github.com/octokitten
+ followers_url: https://api.github.com/users/octokitten/followers
+ following_url: https://api.github.com/users/octokitten/following{/other_user}
+ gists_url: https://api.github.com/users/octokitten/gists{/gist_id}
+ starred_url: https://api.github.com/users/octokitten/starred{/owner}{/repo}
+ subscriptions_url: https://api.github.com/users/octokitten/subscriptions
+ organizations_url: https://api.github.com/users/octokitten/orgs
+ repos_url: https://api.github.com/users/octokitten/repos
+ events_url: https://api.github.com/users/octokitten/events{/privacy}
+ received_events_url: https://api.github.com/users/octokitten/received_events
+ type: User
+ site_admin: false
copilot-usage-metrics-enterprise:
value:
- day: '2023-10-15'
@@ -197586,6 +198425,8 @@ components:
- 192.0.2.1
actions:
- 192.0.2.1
+ actions_macos:
+ - 192.0.2.1
dependabot:
- 192.0.2.1
domains:
@@ -199031,72 +199872,6 @@ components:
inactive_this_cycle: 11
seat_management_setting: assign_selected
public_code_suggestions: block
- copilot-seats-list:
- value:
- total_seats: 2
- seats:
- - created_at: '2021-08-03T18:00:00-06:00'
- updated_at: '2021-09-23T15:00:00-06:00'
- pending_cancellation_date:
- last_activity_at: '2021-10-14T00:53:32-06:00'
- last_activity_editor: vscode/1.77.3/copilot/1.86.82
- assignee:
- login: octocat
- id: 1
- node_id: MDQ6VXNlcjE=
- avatar_url: https://github.com/images/error/octocat_happy.gif
- gravatar_id: ''
- url: https://api.github.com/users/octocat
- html_url: https://github.com/octocat
- followers_url: https://api.github.com/users/octocat/followers
- following_url: https://api.github.com/users/octocat/following{/other_user}
- gists_url: https://api.github.com/users/octocat/gists{/gist_id}
- starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo}
- subscriptions_url: https://api.github.com/users/octocat/subscriptions
- organizations_url: https://api.github.com/users/octocat/orgs
- repos_url: https://api.github.com/users/octocat/repos
- events_url: https://api.github.com/users/octocat/events{/privacy}
- received_events_url: https://api.github.com/users/octocat/received_events
- type: User
- site_admin: false
- assigning_team:
- id: 1
- node_id: MDQ6VGVhbTE=
- url: https://api.github.com/teams/1
- html_url: https://github.com/orgs/github/teams/justice-league
- name: Justice League
- slug: justice-league
- description: A great team.
- privacy: closed
- notification_setting: notifications_enabled
- permission: admin
- members_url: https://api.github.com/teams/1/members{/member}
- repositories_url: https://api.github.com/teams/1/repos
- parent:
- - created_at: '2021-09-23T18:00:00-06:00'
- updated_at: '2021-09-23T15:00:00-06:00'
- pending_cancellation_date: '2021-11-01'
- last_activity_at: '2021-10-13T00:53:32-06:00'
- last_activity_editor: vscode/1.77.3/copilot/1.86.82
- assignee:
- login: octokitten
- id: 1
- node_id: MDQ76VNlcjE=
- avatar_url: https://github.com/images/error/octokitten_happy.gif
- gravatar_id: ''
- url: https://api.github.com/users/octokitten
- html_url: https://github.com/octokitten
- followers_url: https://api.github.com/users/octokitten/followers
- following_url: https://api.github.com/users/octokitten/following{/other_user}
- gists_url: https://api.github.com/users/octokitten/gists{/gist_id}
- starred_url: https://api.github.com/users/octokitten/starred{/owner}{/repo}
- subscriptions_url: https://api.github.com/users/octokitten/subscriptions
- organizations_url: https://api.github.com/users/octokitten/orgs
- repos_url: https://api.github.com/users/octokitten/repos
- events_url: https://api.github.com/users/octokitten/events{/privacy}
- received_events_url: https://api.github.com/users/octokitten/received_events
- type: User
- site_admin: false
copilot-usage-metrics-org:
value:
- day: '2023-10-15'
@@ -202649,6 +203424,7 @@ components:
allow_auto_merge: false
delete_branch_on_merge: true
allow_merge_commit: true
+ allow_forking: true
subscribers_count: 42
network_count: 0
license:
@@ -205771,6 +206547,230 @@ components:
updated_at: '2022-09-12T12:14:32Z'
url: https://api.github.com/repos/octocat/Hello-World/code-scanning/codeql/databases/java
commit_oid: 1927de39fefa25a9d0e64e3f540ff824a72f538c
+ code-scanning-variant-analysis:
+ summary: Default response
+ value:
+ id: 1
+ controller_repo:
+ id: 1296269
+ node_id: MDEwOlJlcG9zaXRvcnkxMjk2MjY5
+ name: Hello-World
+ full_name: octocat/Hello-World
+ owner:
+ login: octocat
+ id: 1
+ node_id: MDQ6VXNlcjE=
+ avatar_url: https://github.com/images/error/octocat_happy.gif
+ gravatar_id: ''
+ url: https://api.github.com/users/octocat
+ html_url: https://github.com/octocat
+ followers_url: https://api.github.com/users/octocat/followers
+ following_url: https://api.github.com/users/octocat/following{/other_user}
+ gists_url: https://api.github.com/users/octocat/gists{/gist_id}
+ starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo}
+ subscriptions_url: https://api.github.com/users/octocat/subscriptions
+ organizations_url: https://api.github.com/users/octocat/orgs
+ repos_url: https://api.github.com/users/octocat/repos
+ events_url: https://api.github.com/users/octocat/events{/privacy}
+ received_events_url: https://api.github.com/users/octocat/received_events
+ type: User
+ site_admin: false
+ private: false
+ html_url: https://github.com/octocat/Hello-World
+ description: This your first repo!
+ fork: false
+ url: https://api.github.com/repos/octocat/Hello-World
+ archive_url: https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}
+ assignees_url: https://api.github.com/repos/octocat/Hello-World/assignees{/user}
+ blobs_url: https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}
+ branches_url: https://api.github.com/repos/octocat/Hello-World/branches{/branch}
+ collaborators_url: https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}
+ comments_url: https://api.github.com/repos/octocat/Hello-World/comments{/number}
+ commits_url: https://api.github.com/repos/octocat/Hello-World/commits{/sha}
+ compare_url: https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}
+ contents_url: https://api.github.com/repos/octocat/Hello-World/contents/{+path}
+ contributors_url: https://api.github.com/repos/octocat/Hello-World/contributors
+ deployments_url: https://api.github.com/repos/octocat/Hello-World/deployments
+ downloads_url: https://api.github.com/repos/octocat/Hello-World/downloads
+ events_url: https://api.github.com/repos/octocat/Hello-World/events
+ forks_url: https://api.github.com/repos/octocat/Hello-World/forks
+ git_commits_url: https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}
+ git_refs_url: https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}
+ git_tags_url: https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}
+ issue_comment_url: https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}
+ issue_events_url: https://api.github.com/repos/octocat/Hello-World/issues/events{/number}
+ issues_url: https://api.github.com/repos/octocat/Hello-World/issues{/number}
+ keys_url: https://api.github.com/repos/octocat/Hello-World/keys{/key_id}
+ labels_url: https://api.github.com/repos/octocat/Hello-World/labels{/name}
+ languages_url: https://api.github.com/repos/octocat/Hello-World/languages
+ merges_url: https://api.github.com/repos/octocat/Hello-World/merges
+ milestones_url: https://api.github.com/repos/octocat/Hello-World/milestones{/number}
+ notifications_url: https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}
+ pulls_url: https://api.github.com/repos/octocat/Hello-World/pulls{/number}
+ releases_url: https://api.github.com/repos/octocat/Hello-World/releases{/id}
+ stargazers_url: https://api.github.com/repos/octocat/Hello-World/stargazers
+ statuses_url: https://api.github.com/repos/octocat/Hello-World/statuses/{sha}
+ subscribers_url: https://api.github.com/repos/octocat/Hello-World/subscribers
+ subscription_url: https://api.github.com/repos/octocat/Hello-World/subscription
+ tags_url: https://api.github.com/repos/octocat/Hello-World/tags
+ teams_url: https://api.github.com/repos/octocat/Hello-World/teams
+ trees_url: https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}
+ hooks_url: https://api.github.com/repos/octocat/Hello-World/hooks
+ actor:
+ login: octocat
+ id: 1
+ node_id: MDQ6VXNlcjE=
+ avatar_url: https://github.com/images/error/octocat_happy.gif
+ gravatar_id: ''
+ url: https://api.github.com/users/octocat
+ html_url: https://github.com/octocat
+ followers_url: https://api.github.com/users/octocat/followers
+ following_url: https://api.github.com/users/octocat/following{/other_user}
+ gists_url: https://api.github.com/users/octocat/gists{/gist_id}
+ starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo}
+ subscriptions_url: https://api.github.com/users/octocat/subscriptions
+ organizations_url: https://api.github.com/users/octocat/orgs
+ repos_url: https://api.github.com/users/octocat/repos
+ events_url: https://api.github.com/users/octocat/events{/privacy}
+ received_events_url: https://api.github.com/users/octocat/received_events
+ type: User
+ site_admin: false
+ query_language: python
+ query_pack_url: https://www.example.com
+ created_at: '2022-09-12T12:14:32Z'
+ updated_at: '2022-09-12T12:14:32Z'
+ completed_at: '2022-09-12T13:15:33Z'
+ status: completed
+ actions_workflow_run_id: 3453588
+ scanned_repositories:
+ - repository:
+ id: 1296269
+ name: Hello-World
+ full_name: octocat/Hello-World
+ private: false
+ analysis_status: succeeded
+ result_count: 532
+ artifact_size_in_bytes: 12345
+ skipped_repositories:
+ access_mismatch_repos:
+ repository_count: 2
+ repositories:
+ - id: 1
+ node_id: MDQ6VXNlcjE=
+ name: octo-repo1
+ full_name: octo-org/octo-repo1
+ private: false
+ - id: 2
+ node_id: MDQ6VXNlcjE=
+ name: octo-repo2
+ full_name: octo-org/octo-repo2
+ private: false
+ not_found_repos:
+ repository_count: 3
+ repository_full_names:
+ - octo-org/octo-repo4
+ - octo-org/octo-repo5
+ - octo-org/octo-repo6
+ no_codeql_db_repos:
+ repository_count: 2
+ repositories:
+ - id: 7
+ node_id: MDQ6VXNlcjE=
+ name: octo-repo7
+ full_name: octo-org/octo-repo7
+ private: false
+ - id: 8
+ node_id: MDQ6VXNlcjE=
+ name: octo-repo8
+ full_name: octo-org/octo-repo8
+ private: false
+ over_limit_repos:
+ repository_count: 2
+ repositories:
+ - id: 9
+ node_id: MDQ6VXNlcjE=
+ name: octo-repo9
+ full_name: octo-org/octo-repo9
+ private: false
+ - id: 10
+ node_id: MDQ6VXNlcjE=
+ name: octo-repo10
+ full_name: octo-org/octo-repo10
+ private: false
+ code-scanning-variant-analysis-repo-task:
+ summary: Default response
+ value:
+ repository:
+ id: 1296269
+ node_id: MDEwOlJlcG9zaXRvcnkxMjk2MjY5
+ name: Hello-World
+ full_name: octocat/Hello-World
+ owner:
+ login: octocat
+ id: 1
+ node_id: MDQ6VXNlcjE=
+ avatar_url: https://github.com/images/error/octocat_happy.gif
+ gravatar_id: ''
+ url: https://api.github.com/users/octocat
+ html_url: https://github.com/octocat
+ followers_url: https://api.github.com/users/octocat/followers
+ following_url: https://api.github.com/users/octocat/following{/other_user}
+ gists_url: https://api.github.com/users/octocat/gists{/gist_id}
+ starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo}
+ subscriptions_url: https://api.github.com/users/octocat/subscriptions
+ organizations_url: https://api.github.com/users/octocat/orgs
+ repos_url: https://api.github.com/users/octocat/repos
+ events_url: https://api.github.com/users/octocat/events{/privacy}
+ received_events_url: https://api.github.com/users/octocat/received_events
+ type: User
+ site_admin: false
+ private: false
+ html_url: https://github.com/octocat/Hello-World
+ description: This your first repo!
+ fork: false
+ url: https://api.github.com/repos/octocat/Hello-World
+ archive_url: https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}
+ assignees_url: https://api.github.com/repos/octocat/Hello-World/assignees{/user}
+ blobs_url: https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}
+ branches_url: https://api.github.com/repos/octocat/Hello-World/branches{/branch}
+ collaborators_url: https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}
+ comments_url: https://api.github.com/repos/octocat/Hello-World/comments{/number}
+ commits_url: https://api.github.com/repos/octocat/Hello-World/commits{/sha}
+ compare_url: https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}
+ contents_url: https://api.github.com/repos/octocat/Hello-World/contents/{+path}
+ contributors_url: https://api.github.com/repos/octocat/Hello-World/contributors
+ deployments_url: https://api.github.com/repos/octocat/Hello-World/deployments
+ downloads_url: https://api.github.com/repos/octocat/Hello-World/downloads
+ events_url: https://api.github.com/repos/octocat/Hello-World/events
+ forks_url: https://api.github.com/repos/octocat/Hello-World/forks
+ git_commits_url: https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}
+ git_refs_url: https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}
+ git_tags_url: https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}
+ issue_comment_url: https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}
+ issue_events_url: https://api.github.com/repos/octocat/Hello-World/issues/events{/number}
+ issues_url: https://api.github.com/repos/octocat/Hello-World/issues{/number}
+ keys_url: https://api.github.com/repos/octocat/Hello-World/keys{/key_id}
+ labels_url: https://api.github.com/repos/octocat/Hello-World/labels{/name}
+ languages_url: https://api.github.com/repos/octocat/Hello-World/languages
+ merges_url: https://api.github.com/repos/octocat/Hello-World/merges
+ milestones_url: https://api.github.com/repos/octocat/Hello-World/milestones{/number}
+ notifications_url: https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}
+ pulls_url: https://api.github.com/repos/octocat/Hello-World/pulls{/number}
+ releases_url: https://api.github.com/repos/octocat/Hello-World/releases{/id}
+ stargazers_url: https://api.github.com/repos/octocat/Hello-World/stargazers
+ statuses_url: https://api.github.com/repos/octocat/Hello-World/statuses/{sha}
+ subscribers_url: https://api.github.com/repos/octocat/Hello-World/subscribers
+ subscription_url: https://api.github.com/repos/octocat/Hello-World/subscription
+ tags_url: https://api.github.com/repos/octocat/Hello-World/tags
+ teams_url: https://api.github.com/repos/octocat/Hello-World/teams
+ trees_url: https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}
+ hooks_url: https://api.github.com/repos/octocat/Hello-World/hooks
+ analysis_status: succeeded
+ artifact_size_in_bytes: 12345
+ result_count: 532
+ database_commit_sha: 2d870c2a717a524627af38fa2da382188a096f90
+ source_location_prefix: "/"
+ artifact_url: https://example.com
code-scanning-default-setup:
value:
state: configured
@@ -210443,6 +211443,8 @@ components:
branch: master
path: "/"
public: true
+ pending_domain_unverified_at: '2024-04-30T19:33:31Z'
+ protected_domain_state: verified
https_certificate:
state: approved
description: Certificate is approved
diff --git a/packages/openapi-typescript/examples/github-api.ts b/packages/openapi-typescript/examples/github-api.ts
index 3b2ee491e..76a7ce7be 100644
--- a/packages/openapi-typescript/examples/github-api.ts
+++ b/packages/openapi-typescript/examples/github-api.ts
@@ -340,7 +340,7 @@ export interface paths {
post?: never;
/**
* Delete an app authorization
- * @description OAuth and GitHub application owners can revoke a grant for their application and a specific user. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the OAuth application's `client_id` and `client_secret` as the username and password. You must also provide a valid OAuth `access_token` as an input parameter and the grant for the token's owner will be deleted.
+ * @description OAuth and GitHub application owners can revoke a grant for their application and a specific user. You must provide a valid OAuth `access_token` as an input parameter and the grant for the token's owner will be deleted.
* Deleting an application's grant will also delete all OAuth tokens associated with the application for the user. Once deleted, the application will have no access to the user's account and will no longer be listed on [the application authorizations settings screen within GitHub](https://github.com/settings/applications#authorized).
*/
delete: operations["apps/delete-authorization"];
@@ -360,19 +360,19 @@ export interface paths {
put?: never;
/**
* Check a token
- * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method for checking OAuth token validity without exceeding the normal rate limits for failed login attempts. Authentication works differently with this particular endpoint. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) to use this endpoint, where the username is the application `client_id` and the password is its `client_secret`. Invalid tokens will return `404 NOT FOUND`.
+ * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method for checking OAuth token validity without exceeding the normal rate limits for failed login attempts. Authentication works differently with this particular endpoint. Invalid tokens will return `404 NOT FOUND`.
*/
post: operations["apps/check-token"];
/**
* Delete an app token
- * @description OAuth or GitHub application owners can revoke a single token for an OAuth application or a GitHub application with an OAuth authorization. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the application's `client_id` and `client_secret` as the username and password.
+ * @description OAuth or GitHub application owners can revoke a single token for an OAuth application or a GitHub application with an OAuth authorization.
*/
delete: operations["apps/delete-token"];
options?: never;
head?: never;
/**
* Reset a token
- * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method to reset a valid OAuth token without end-user involvement. Applications must save the "token" property in the response because changes take effect immediately. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the application's `client_id` and `client_secret` as the username and password. Invalid tokens will return `404 NOT FOUND`.
+ * @description OAuth applications and GitHub applications with OAuth authorizations can use this API method to reset a valid OAuth token without end-user involvement. Applications must save the "token" property in the response because changes take effect immediately. Invalid tokens will return `404 NOT FOUND`.
*/
patch: operations["apps/reset-token"];
trace?: never;
@@ -393,10 +393,6 @@ export interface paths {
* token.
*
* Invalid tokens will return `404 NOT FOUND`.
- *
- * You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)
- * when accessing this endpoint, using the `client_id` and `client_secret` of the GitHub App
- * as the username and password.
*/
post: operations["apps/scope-token"];
delete?: never;
@@ -605,6 +601,32 @@ export interface paths {
patch?: never;
trace?: never;
};
+ "/enterprises/{enterprise}/copilot/billing/seats": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ /**
+ * List all Copilot seat assignments for an enterprise
+ * @description **Note**: This endpoint is in beta and is subject to change.
+ *
+ * Lists all active Copilot seats across organizations or enterprise teams for an enterprise with a Copilot Business or Copilot Enterprise subscription.
+ *
+ * Only enterprise owners and billing managers can view assigned Copilot seats across their child organizations or enterprise teams.
+ *
+ * Personal access tokens (classic) need either the `manage_billing:copilot` or `read:enterprise` scopes to use this endpoint.
+ */
+ get: operations["copilot/list-copilot-seats-for-enterprise"];
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
"/enterprises/{enterprise}/copilot/usage": {
parameters: {
query?: never;
@@ -624,10 +646,9 @@ export interface paths {
* and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
* they must have telemetry enabled in their IDE.
*
- * Only the owners and billing managers of enterprises with a Copilot Business or Enterprise subscription can view Copilot usage
- * metrics for the enterprise.
+ * Only owners and billing managers can view Copilot usage metrics for the enterprise.
*
- * OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:enterprise` scopes to use this endpoint.
*/
get: operations["copilot/usage-metrics-for-enterprise"];
put?: never;
@@ -731,7 +752,7 @@ export interface paths {
*
* By default, timeline resources are returned in JSON. You can specify the `application/atom+xml` type in the `Accept` header to return timeline resources in Atom format. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
- * **Note**: Private feeds are only returned when [authenticating via Basic Auth](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) since current feed URIs use the older, non revocable auth tokens.
+ * **Note**: Private feeds are only returned when [authenticating via Basic Auth](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) since current feed URIs use the older, non revocable auth tokens.
*/
get: operations["activity/get-feeds"];
put?: never;
@@ -1208,7 +1229,7 @@ export interface paths {
* Get a subscription plan for an account
* @description Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
get: operations["apps/get-subscription-plan-for-account"];
put?: never;
@@ -1230,7 +1251,7 @@ export interface paths {
* List plans
* @description Lists all plans that are part of your GitHub Marketplace listing.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
get: operations["apps/list-plans"];
put?: never;
@@ -1252,7 +1273,7 @@ export interface paths {
* List accounts for a plan
* @description Returns user and organization accounts associated with the specified plan, including free plans. For per-seat pricing, you see the list of accounts that have purchased the plan, including the number of seats purchased. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
get: operations["apps/list-accounts-for-plan"];
put?: never;
@@ -1274,7 +1295,7 @@ export interface paths {
* Get a subscription plan for an account (stubbed)
* @description Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
get: operations["apps/get-subscription-plan-for-account-stubbed"];
put?: never;
@@ -1296,7 +1317,7 @@ export interface paths {
* List plans (stubbed)
* @description Lists all plans that are part of your GitHub Marketplace listing.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
get: operations["apps/list-plans-stubbed"];
put?: never;
@@ -1318,7 +1339,7 @@ export interface paths {
* List accounts for a plan (stubbed)
* @description Returns repository and organization accounts associated with the specified plan, including free plans. For per-seat pricing, you see the list of accounts that have purchased the plan, including the number of seats purchased. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
*
- * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ * GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
*/
get: operations["apps/list-accounts-for-plan-stubbed"];
put?: never;
@@ -2638,12 +2659,12 @@ export interface paths {
* @description **Note**: This endpoint is in beta and is subject to change.
*
* Gets information about an organization's Copilot subscription, including seat breakdown
- * and code matching policies. To configure these settings, go to your organization's settings on GitHub.com.
+ * and feature policies. To configure these settings, go to your organization's settings on GitHub.com.
* For more information, see "[Managing policies for Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-copilot-business-in-your-organization)".
*
- * Only organization owners can configure and view details about the organization's Copilot Business subscription.
+ * Only organization owners can view details about the organization's Copilot Business or Copilot Enterprise subscription.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
*/
get: operations["copilot/get-copilot-organization-details"];
put?: never;
@@ -2665,11 +2686,10 @@ export interface paths {
* List all Copilot seat assignments for an organization
* @description **Note**: This endpoint is in beta and is subject to change.
*
- * Lists all Copilot seat assignments for an organization that are currently being billed (either active or pending cancellation at the start of the next billing cycle).
- *
- * Only organization owners can configure and view details about the organization's Copilot Business or Enterprise subscription.
+ * Lists all active Copilot seats for an organization with a Copilot Business or Copilot Enterprise subscription.
+ * Only organization owners can view assigned seats.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
*/
get: operations["copilot/list-copilot-seats"];
put?: never;
@@ -2696,13 +2716,13 @@ export interface paths {
* Purchases a GitHub Copilot seat for all users within each specified team.
* The organization will be billed accordingly. For more information about Copilot pricing, see "[Pricing for GitHub Copilot](https://docs.github.com/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot#about-billing-for-github-copilot)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can add Copilot seats for their organization members.
*
* In order for an admin to use this endpoint, the organization must have a Copilot Business or Enterprise subscription and a configured suggestion matching policy.
* For more information about setting up a Copilot subscription, see "[Setting up a Copilot subscription for your organization](https://docs.github.com/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription-for-your-organization-or-enterprise)".
* For more information about setting a suggestion matching policy, see "[Configuring suggestion matching policies for GitHub Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-github-copilot-in-your-organization#configuring-suggestion-matching-policies-for-github-copilot-in-your-organization)".
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
post: operations["copilot/add-copilot-seats-for-teams"];
/**
@@ -2716,9 +2736,9 @@ export interface paths {
*
* For more information about disabling access to Copilot Business or Enterprise, see "[Revoking access to GitHub Copilot for specific users in your organization](https://docs.github.com/copilot/managing-copilot/managing-access-for-copilot-in-your-organization#revoking-access-to-github-copilot-for-specific-users-in-your-organization)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can cancel Copilot seats for their organization members.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
delete: operations["copilot/cancel-copilot-seat-assignment-for-teams"];
options?: never;
@@ -2742,13 +2762,13 @@ export interface paths {
* Purchases a GitHub Copilot seat for each user specified.
* The organization will be billed accordingly. For more information about Copilot pricing, see "[Pricing for GitHub Copilot](https://docs.github.com/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot#about-billing-for-github-copilot)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can add Copilot seats for their organization members.
*
* In order for an admin to use this endpoint, the organization must have a Copilot Business or Enterprise subscription and a configured suggestion matching policy.
* For more information about setting up a Copilot subscription, see "[Setting up a Copilot subscription for your organization](https://docs.github.com/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription-for-your-organization-or-enterprise)".
* For more information about setting a suggestion matching policy, see "[Configuring suggestion matching policies for GitHub Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-github-copilot-in-your-organization#configuring-suggestion-matching-policies-for-github-copilot-in-your-organization)".
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
post: operations["copilot/add-copilot-seats-for-users"];
/**
@@ -2762,9 +2782,9 @@ export interface paths {
*
* For more information about disabling access to Copilot Business or Enterprise, see "[Revoking access to GitHub Copilot for specific users in your organization](https://docs.github.com/copilot/managing-copilot/managing-access-for-copilot-in-your-organization#revoking-access-to-github-copilot-for-specific-users-in-your-organization)".
*
- * Only organization owners can configure GitHub Copilot in their organization.
+ * Only organization owners can cancel Copilot seats for their organization members.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
*/
delete: operations["copilot/cancel-copilot-seat-assignment-for-users"];
options?: never;
@@ -2791,10 +2811,9 @@ export interface paths {
* and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
* they must have telemetry enabled in their IDE.
*
- * Copilot Business or Copilot Enterprise organization owners, and owners and billing managers of their parent enterprises, can view
- * Copilot usage metrics.
+ * Organization owners, and owners and billing managers of the parent enterprise, can view Copilot usage metrics.
*
- * OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:org`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot`, `read:org`, or `read:enterprise` scopes to use this endpoint.
*/
get: operations["copilot/usage-metrics-for-org"];
put?: never;
@@ -3329,7 +3348,10 @@ export interface paths {
};
/**
* List pending organization invitations
- * @description The return hash contains a `role` field which refers to the Organization Invitation role and will be one of the following values: `direct_member`, `admin`, `billing_manager`, or `hiring_manager`. If the invitee is not a GitHub member, the `login` field in the return hash will be `null`.
+ * @description The return hash contains a `role` field which refers to the Organization
+ * Invitation role and will be one of the following values: `direct_member`, `admin`,
+ * `billing_manager`, or `hiring_manager`. If the invitee is not a GitHub
+ * member, the `login` field in the return hash will be `null`.
*/
get: operations["orgs/list-pending-invitations"];
put?: never;
@@ -3337,7 +3359,7 @@ export interface paths {
* Create an organization invitation
* @description Invite people to an organization by using their GitHub user ID or their email address. In order to create invitations in an organization, the authenticated user must be an organization owner.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
post: operations["orgs/create-invitation"];
@@ -3544,9 +3566,9 @@ export interface paths {
*
* Gets the GitHub Copilot seat assignment details for a member of an organization who currently has access to GitHub Copilot.
*
- * Organization owners can view GitHub Copilot seat assignment details for members in their organization.
+ * Only organization owners can view Copilot seat assignment details for members of their organization.
*
- * OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ * OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
*/
get: operations["copilot/get-copilot-seat-details-for-user"];
put?: never;
@@ -3579,7 +3601,7 @@ export interface paths {
*
* **Rate limits**
*
- * To prevent abuse, the authenticated user is limited to 50 organization invitations per 24 hour period. If the organization is more than one month old or on a paid plan, the limit is 500 invitations per 24 hour period.
+ * To prevent abuse, organization owners are limited to creating 50 organization invitations for an organization within a 24 hour period. If the organization is more than one month old or on a paid plan, the limit is 500 invitations per 24 hour period.
*/
put: operations["orgs/set-membership-for-user"];
post?: never;
@@ -4809,41 +4831,6 @@ export interface paths {
patch?: never;
trace?: never;
};
- "/orgs/{org}/team/{team_slug}/copilot/usage": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- /**
- * Get a summary of Copilot usage for a team
- * @description **Note**: This endpoint is in beta and is subject to change.
- *
- * You can use this endpoint to see a daily breakdown of aggregated usage metrics for Copilot completions and Copilot Chat in the IDE
- * for users within a team, with a further breakdown of suggestions, acceptances, and number of active users by editor and language for each day.
- * See the response schema tab for detailed metrics definitions.
- *
- * The response contains metrics for the prior 28 days. Usage metrics are processed once per day for the previous day,
- * and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
- * they must have telemetry enabled in their IDE.
- *
- * **Note**: This endpoint will only return results for a given day if the team had five or more members on that day.
- *
- * Copilot Business or Copilot Enterprise organization owners for the organization that contains this team,
- * and owners and billing managers of their parent enterprises, can view Copilot usage metrics for a team.
- *
- * OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:org`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
- */
- get: operations["copilot/usage-metrics-for-team"];
- put?: never;
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
"/orgs/{org}/teams": {
parameters: {
query?: never;
@@ -4927,7 +4914,7 @@ export interface paths {
* Create a discussion
* @description Creates a new discussion post on a team's page.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* **Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions`.
*
@@ -5001,7 +4988,7 @@ export interface paths {
* Create a discussion comment
* @description Creates a new comment on a team discussion.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* **Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments`.
*
@@ -5356,7 +5343,7 @@ export interface paths {
* Check team permissions for a repository
* @description Checks whether a team has `admin`, `push`, `maintain`, `triage`, or `pull` permission for a repository. Repositories inherited through a parent team will also be checked.
*
- * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `application/vnd.github.v3.repository+json` accept header.
+ * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types/) via the `application/vnd.github.v3.repository+json` accept header.
*
* If a team doesn't have permission for the repository, you will receive a `404 Not Found` response status.
*
@@ -5674,7 +5661,7 @@ export interface paths {
* * The `dependency_snapshots` object provides your rate limit status for submitting snapshots to the dependency graph. For more information, see "[Dependency graph](https://docs.github.com/rest/dependency-graph)."
* * The `code_scanning_upload` object provides your rate limit status for uploading SARIF results to code scanning. For more information, see "[Uploading a SARIF file to GitHub](https://docs.github.com/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github)."
* * The `actions_runner_registration` object provides your rate limit status for registering self-hosted runners in GitHub Actions. For more information, see "[Self-hosted runners](https://docs.github.com/rest/actions/self-hosted-runners)."
- * * The `source_import` object is no longer in use for any API endpoints, and it will be removed in the next API version. For more information about API versions, see "[API Versions](https://docs.github.com/rest/overview/api-versions)."
+ * * The `source_import` object is no longer in use for any API endpoints, and it will be removed in the next API version. For more information about API versions, see "[API Versions](https://docs.github.com/rest/about-the-rest-api/api-versions)."
*
* **Note:** The `rate` object is deprecated. If you're writing new API client code or updating existing code, you should use the `core` object instead of the `rate` object. The `core` object contains the same information that is present in the `rate` object.
*/
@@ -8172,7 +8159,7 @@ export interface paths {
*
* By default this endpoint returns JSON metadata about the CodeQL database. To
* download the CodeQL database binary content, set the `Accept` header of the request
- * to [`application/zip`](https://docs.github.com/rest/overview/media-types), and make sure
+ * to [`application/zip`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types), and make sure
* your HTTP client is configured to follow redirects or use the `Location` header
* to make a second request to get the redirect URL.
*
@@ -8187,6 +8174,77 @@ export interface paths {
patch?: never;
trace?: never;
};
+ "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get?: never;
+ put?: never;
+ /**
+ * Create a CodeQL variant analysis
+ * @description Creates a new CodeQL variant analysis, which will run a CodeQL query against one or more repositories.
+ *
+ * Get started by learning more about [running CodeQL queries at scale with Multi-Repository Variant Analysis](https://docs.github.com/code-security/codeql-for-vs-code/getting-started-with-codeql-for-vs-code/running-codeql-queries-at-scale-with-multi-repository-variant-analysis).
+ *
+ * Use the `owner` and `repo` parameters in the URL to specify the controller repository that
+ * will be used for running GitHub Actions workflows and storing the results of the CodeQL variant analysis.
+ *
+ * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint.
+ */
+ post: operations["code-scanning/create-variant-analysis"];
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
+ "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ /**
+ * Get the summary of a CodeQL variant analysis
+ * @description Gets the summary of a CodeQL variant analysis.
+ *
+ * OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ */
+ get: operations["code-scanning/get-variant-analysis"];
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
+ "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}/repos/{repo_owner}/{repo_name}": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ /**
+ * Get the analysis status of a repository in a CodeQL variant analysis
+ * @description Gets the analysis status of a repository in a CodeQL variant analysis.
+ *
+ * OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ */
+ get: operations["code-scanning/get-variant-analysis-repo-task"];
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
"/repos/{owner}/{repo}/code-scanning/default-setup": {
parameters: {
query?: never;
@@ -8258,6 +8316,8 @@ export interface paths {
* For more information, see "[Get information about a SARIF upload](/rest/code-scanning/code-scanning#get-information-about-a-sarif-upload)."
*
* OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ *
+ * This endpoint is limited to 1,000 requests per hour for each user or app installation calling it.
*/
post: operations["code-scanning/upload-sarif"];
delete?: never;
@@ -8558,7 +8618,7 @@ export interface paths {
get: operations["repos/check-collaborator"];
/**
* Add a repository collaborator
- * @description This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * @description This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* Adding an outside collaborator may be restricted by enterprise administrators. For more information, see "[Enforcing repository management policies in your enterprise](https://docs.github.com/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-outside-collaborators-to-repositories)."
*
@@ -8843,7 +8903,7 @@ export interface paths {
* Create a commit comment
* @description Create a comment for a commit using its `:commit_sha`.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
@@ -9093,7 +9153,7 @@ export interface paths {
*
* To process a response with a large number of commits, use a query parameter (`per_page` or `page`) to paginate the results. When using pagination:
*
- * - The list of changed files is only shown on the first page of results, but it includes all changed files for the entire comparison.
+ * - The list of changed files is only shown on the first page of results, and it includes up to 300 changed files for the entire comparison.
* - The results are returned in chronological order, but the last commit in the returned list may not be the most recent one in the entire set if there are more pages of results.
*
* For more information on working with pagination, see "[Using pagination in the REST API](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api)."
@@ -10882,7 +10942,7 @@ export interface paths {
* Create an issue
* @description Any user with pull access to a repository can create an issue. If [issues are disabled in the repository](https://docs.github.com/articles/disabling-issues/), the API returns a `410 Gone` status.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -11180,7 +11240,7 @@ export interface paths {
*
* This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications).
* Creating content too quickly using this endpoint may result in secondary rate limiting.
- * For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -11952,7 +12012,7 @@ export interface paths {
*
* To open or update a pull request in a public repository, you must have write access to the head or the source branch. For organization-owned repositories, you must be a member of the organization that owns the repository to open or update a pull request.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
@@ -12107,7 +12167,7 @@ export interface paths {
* * If merged via a [squash](https://docs.github.com/articles/about-merge-methods-on-github/#squashing-your-merge-commits), `merge_commit_sha` represents the SHA of the squashed commit on the base branch.
* * If [rebased](https://docs.github.com/articles/about-merge-methods-on-github/#rebasing-and-merging-your-commits), `merge_commit_sha` represents the commit that the base branch was updated to.
*
- * Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) to fetch diff and patch formats.
+ * Pass the appropriate [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types) to fetch diff and patch formats.
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
*
@@ -12190,7 +12250,7 @@ export interface paths {
*
* The `position` parameter is deprecated. If you use `position`, the `line`, `side`, `start_line`, and `start_side` parameters are not required.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -12220,7 +12280,7 @@ export interface paths {
* Create a reply for a review comment
* @description Creates a reply to a review comment for a pull request. For the `comment_id`, provide the ID of the review comment you are replying to. This must be the ID of a _top-level review comment_, not a reply to that comment. Replies to replies are not supported.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
* and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -12311,7 +12371,7 @@ export interface paths {
/**
* Merge a pull request
* @description Merges a pull request into the base branch.
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
put: operations["pulls/merge"];
post?: never;
@@ -12337,7 +12397,7 @@ export interface paths {
/**
* Request reviewers for a pull request
* @description Requests reviews for a pull request from a given set of users and/or teams.
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
post: operations["pulls/request-reviewers"];
/**
@@ -12374,7 +12434,7 @@ export interface paths {
* Create a review for a pull request
* @description Creates a review on a specified pull request.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* Pull request reviews created in the `PENDING` state are not submitted and therefore do not include the `submitted_at` property in the response. To create a pending review for a pull request, leave the `event` parameter blank. For more information about submitting a `PENDING` review, see "[Submit a review for a pull request](https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request)."
*
@@ -12619,7 +12679,7 @@ export interface paths {
* Create a release
* @description Users with push access to the repository can create a release.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*/
post: operations["repos/create-release"];
delete?: never;
@@ -12637,7 +12697,7 @@ export interface paths {
};
/**
* Get a release asset
- * @description To download the asset's binary content, set the `Accept` header of the request to [`application/octet-stream`](https://docs.github.com/rest/overview/media-types). The API will either redirect the client to the location, or stream it directly if possible. API clients should handle both a `200` or `302` response.
+ * @description To download the asset's binary content, set the `Accept` header of the request to [`application/octet-stream`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types). The API will either redirect the client to the location, or stream it directly if possible. API clients should handle both a `200` or `302` response.
*/
get: operations["repos/get-release-asset"];
put?: never;
@@ -13408,16 +13468,24 @@ export interface paths {
cookie?: never;
};
/**
- * List tag protection states for a repository
- * @description This returns the tag protection states of a repository.
+ * Deprecated - List tag protection states for a repository
+ * @deprecated
+ * @description **Note**: This operation is deprecated and will be removed after August 30th 2024
+ * Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#get-all-repository-rulesets)" endpoint instead.
+ *
+ * This returns the tag protection states of a repository.
*
* This information is only available to repository administrators.
*/
get: operations["repos/list-tag-protection"];
put?: never;
/**
- * Create a tag protection state for a repository
- * @description This creates a tag protection state for a repository.
+ * Deprecated - Create a tag protection state for a repository
+ * @deprecated
+ * @description **Note**: This operation is deprecated and will be removed after August 30th 2024
+ * Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#create-a-repository-ruleset)" endpoint instead.
+ *
+ * This creates a tag protection state for a repository.
* This endpoint is only available to repository administrators.
*/
post: operations["repos/create-tag-protection"];
@@ -13438,8 +13506,12 @@ export interface paths {
put?: never;
post?: never;
/**
- * Delete a tag protection state for a repository
- * @description This deletes a tag protection state for a repository.
+ * Deprecated - Delete a tag protection state for a repository
+ * @deprecated
+ * @description **Note**: This operation is deprecated and will be removed after August 30th 2024
+ * Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#delete-a-repository-ruleset)" endpoint instead.
+ *
+ * This deletes a tag protection state for a repository.
* This endpoint is only available to repository administrators.
*/
delete: operations["repos/delete-tag-protection"];
@@ -13988,7 +14060,7 @@ export interface paths {
*
* Creates a new discussion post on a team's page.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.
*/
@@ -14067,7 +14139,7 @@ export interface paths {
*
* Creates a new comment on a team discussion.
*
- * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ * This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
*
* OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.
*/
@@ -14443,7 +14515,7 @@ export interface paths {
*
* **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Check team permissions for a repository](https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-repository) endpoint.
*
- * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `Accept` header:
+ * You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types/) via the `Accept` header:
*/
get: operations["teams/check-permissions-for-repo-legacy"];
/**
@@ -15176,12 +15248,16 @@ export interface paths {
/**
* Add a repository to an app installation
* @description Add a single repository to an installation. The authenticated user must have admin access to the repository.
+ *
+ * This endpoint only works for PATs (classic) with the `repo` scope.
*/
put: operations["apps/add-repo-to-installation-for-authenticated-user"];
post?: never;
/**
* Remove a repository from an app installation
* @description Remove a single repository from an installation. The authenticated user must have admin access to the repository. The installation must have the `repository_selection` of `selected`.
+ *
+ * This endpoint only works for PATs (classic) with the `repo` scope.
*/
delete: operations["apps/remove-repo-from-installation-for-authenticated-user"];
options?: never;
@@ -17258,6 +17334,12 @@ export interface components {
* @example 123
*/
repository_id: number | null;
+ /**
+ * Format: date-time
+ * @description Time when the webhook delivery was throttled.
+ * @example 2021-05-12T20:33:44Z
+ */
+ throttled_at?: string | null;
};
/**
* Scim Error
@@ -17348,6 +17430,12 @@ export interface components {
* @example 123
*/
repository_id: number | null;
+ /**
+ * Format: date-time
+ * @description Time when the webhook delivery was throttled.
+ * @example 2021-05-12T20:33:44Z
+ */
+ throttled_at?: string | null;
/**
* @description The URL target of the delivery.
* @example https://www.example.com
@@ -18648,6 +18736,280 @@ export interface components {
/** Format: uri */
html_url: string | null;
};
+ /**
+ * Team Simple
+ * @description Groups of organization members that gives permissions on specified repositories.
+ */
+ "nullable-team-simple": {
+ /**
+ * @description Unique identifier of the team
+ * @example 1
+ */
+ id: number;
+ /** @example MDQ6VGVhbTE= */
+ node_id: string;
+ /**
+ * Format: uri
+ * @description URL for the team
+ * @example https://api.github.com/organizations/1/team/1
+ */
+ url: string;
+ /** @example https://api.github.com/organizations/1/team/1/members{/member} */
+ members_url: string;
+ /**
+ * @description Name of the team
+ * @example Justice League
+ */
+ name: string;
+ /**
+ * @description Description of the team
+ * @example A great team.
+ */
+ description: string | null;
+ /**
+ * @description Permission that the team will have for its repositories
+ * @example admin
+ */
+ permission: string;
+ /**
+ * @description The level of privacy this team should have
+ * @example closed
+ */
+ privacy?: string;
+ /**
+ * @description The notification setting the team has set
+ * @example notifications_enabled
+ */
+ notification_setting?: string;
+ /**
+ * Format: uri
+ * @example https://github.com/orgs/rails/teams/core
+ */
+ html_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/organizations/1/team/1/repos
+ */
+ repositories_url: string;
+ /** @example justice-league */
+ slug: string;
+ /**
+ * @description Distinguished Name (DN) that team maps to within LDAP environment
+ * @example uid=example,ou=users,dc=github,dc=com
+ */
+ ldap_dn?: string;
+ } | null;
+ /**
+ * Team
+ * @description Groups of organization members that gives permissions on specified repositories.
+ */
+ team: {
+ id: number;
+ node_id: string;
+ name: string;
+ slug: string;
+ description: string | null;
+ privacy?: string;
+ notification_setting?: string;
+ permission: string;
+ permissions?: {
+ pull: boolean;
+ triage: boolean;
+ push: boolean;
+ maintain: boolean;
+ admin: boolean;
+ };
+ /** Format: uri */
+ url: string;
+ /**
+ * Format: uri
+ * @example https://github.com/orgs/rails/teams/core
+ */
+ html_url: string;
+ members_url: string;
+ /** Format: uri */
+ repositories_url: string;
+ parent: components["schemas"]["nullable-team-simple"];
+ };
+ /**
+ * Organization
+ * @description GitHub account for managing multiple users, teams, and repositories
+ */
+ organization: {
+ /**
+ * @description Unique login name of the organization
+ * @example new-org
+ */
+ login: string;
+ /**
+ * Format: uri
+ * @description URL for the organization
+ * @example https://api.github.com/orgs/github
+ */
+ url: string;
+ id: number;
+ node_id: string;
+ /** Format: uri */
+ repos_url: string;
+ /** Format: uri */
+ events_url: string;
+ hooks_url: string;
+ issues_url: string;
+ members_url: string;
+ public_members_url: string;
+ avatar_url: string;
+ description: string | null;
+ /**
+ * Format: uri
+ * @description Display blog url for the organization
+ * @example blog.example-org.com
+ */
+ blog?: string;
+ /** Format: uri */
+ html_url: string;
+ /**
+ * @description Display name for the organization
+ * @example New Org
+ */
+ name?: string;
+ /**
+ * @description Display company name for the organization
+ * @example Acme corporation
+ */
+ company?: string;
+ /**
+ * @description Display location for the organization
+ * @example Berlin, Germany
+ */
+ location?: string;
+ /**
+ * Format: email
+ * @description Display email for the organization
+ * @example org@example.com
+ */
+ email?: string;
+ /** @description Specifies if organization projects are enabled for this org */
+ has_organization_projects: boolean;
+ /** @description Specifies if repository projects are enabled for repositories that belong to this org */
+ has_repository_projects: boolean;
+ is_verified?: boolean;
+ public_repos: number;
+ public_gists: number;
+ followers: number;
+ following: number;
+ type: string;
+ /** Format: date-time */
+ created_at: string;
+ /** Format: date-time */
+ updated_at: string;
+ plan?: {
+ name?: string;
+ space?: number;
+ private_repos?: number;
+ filled_seats?: number;
+ seats?: number;
+ };
+ };
+ /**
+ * Organization Simple
+ * @description A GitHub organization.
+ */
+ "organization-simple": {
+ /** @example github */
+ login: string;
+ /** @example 1 */
+ id: number;
+ /** @example MDEyOk9yZ2FuaXphdGlvbjE= */
+ node_id: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/orgs/github
+ */
+ url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/orgs/github/repos
+ */
+ repos_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/orgs/github/events
+ */
+ events_url: string;
+ /** @example https://api.github.com/orgs/github/hooks */
+ hooks_url: string;
+ /** @example https://api.github.com/orgs/github/issues */
+ issues_url: string;
+ /** @example https://api.github.com/orgs/github/members{/member} */
+ members_url: string;
+ /** @example https://api.github.com/orgs/github/public_members{/member} */
+ public_members_url: string;
+ /** @example https://github.com/images/error/octocat_happy.gif */
+ avatar_url: string;
+ /** @example A great organization */
+ description: string | null;
+ };
+ /**
+ * Enterprise Team
+ * @description Group of enterprise owners and/or members
+ */
+ "enterprise-team": {
+ id: number;
+ name: string;
+ slug: string;
+ /** Format: uri */
+ url: string;
+ /** @example disabled | all */
+ sync_to_organizations: string;
+ /** @example 1 */
+ group_id?: number | null;
+ /**
+ * Format: uri
+ * @example https://github.com/enterprises/dc/teams/justice-league
+ */
+ html_url: string;
+ members_url: string;
+ /** Format: date-time */
+ created_at: string;
+ /** Format: date-time */
+ updated_at: string;
+ };
+ /**
+ * Copilot Business Seat Detail
+ * @description Information about a Copilot Business seat assignment for a user, team, or organization.
+ */
+ "copilot-seat-details": {
+ /** @description The assignee that has been granted access to GitHub Copilot. */
+ assignee: {
+ [key: string]: unknown;
+ } & (components["schemas"]["simple-user"] | components["schemas"]["team"] | components["schemas"]["organization"]);
+ /** @description The organization to which this seat belongs. */
+ organization?: components["schemas"]["organization-simple"] | null;
+ /** @description The team through which the assignee is granted access to GitHub Copilot, if applicable. */
+ assigning_team?: (components["schemas"]["team"] | components["schemas"]["enterprise-team"]) | null;
+ /**
+ * Format: date
+ * @description The pending cancellation date for the seat, in `YYYY-MM-DD` format. This will be null unless the assignee's Copilot access has been canceled during the current billing cycle. If the seat has been cancelled, this corresponds to the start of the organization's next billing cycle.
+ */
+ pending_cancellation_date?: string | null;
+ /**
+ * Format: date-time
+ * @description Timestamp of user's last GitHub Copilot activity, in ISO 8601 format.
+ */
+ last_activity_at?: string | null;
+ /** @description Last editor that was used by the user for a GitHub Copilot completion. */
+ last_activity_editor?: string | null;
+ /**
+ * Format: date-time
+ * @description Timestamp of when the assignee was last granted access to GitHub Copilot, in ISO 8601 format.
+ */
+ created_at: string;
+ /**
+ * Format: date-time
+ * @description Timestamp of when the assignee's GitHub Copilot access was last updated, in ISO 8601 format.
+ */
+ updated_at?: string;
+ };
/**
* Copilot Usage Metrics
* @description Summary of Copilot usage.
@@ -19654,6 +20016,8 @@ export interface components {
location: string | null;
/** Format: email */
email: string | null;
+ /** Format: email */
+ notification_email?: string | null;
hireable: boolean | null;
bio: string | null;
twitter_username?: string | null;
@@ -20091,6 +20455,10 @@ export interface components {
* "192.0.2.1"
* ] */
actions?: string[];
+ /** @example [
+ * "192.0.2.1"
+ * ] */
+ actions_macos?: string[];
/** @example [
* "192.0.2.1"
* ] */
@@ -20387,45 +20755,6 @@ export interface components {
*/
repository_url?: string;
};
- /**
- * Organization Simple
- * @description A GitHub organization.
- */
- "organization-simple": {
- /** @example github */
- login: string;
- /** @example 1 */
- id: number;
- /** @example MDEyOk9yZ2FuaXphdGlvbjE= */
- node_id: string;
- /**
- * Format: uri
- * @example https://api.github.com/orgs/github
- */
- url: string;
- /**
- * Format: uri
- * @example https://api.github.com/orgs/github/repos
- */
- repos_url: string;
- /**
- * Format: uri
- * @example https://api.github.com/orgs/github/events
- */
- events_url: string;
- /** @example https://api.github.com/orgs/github/hooks */
- hooks_url: string;
- /** @example https://api.github.com/orgs/github/issues */
- issues_url: string;
- /** @example https://api.github.com/orgs/github/members{/member} */
- members_url: string;
- /** @example https://api.github.com/orgs/github/public_members{/member} */
- public_members_url: string;
- /** @example https://github.com/images/error/octocat_happy.gif */
- avatar_url: string;
- /** @example A great organization */
- description: string | null;
- };
/**
* Organization Full
* @description Organization Full
@@ -21295,214 +21624,6 @@ export interface components {
seat_management_setting: "assign_all" | "assign_selected" | "disabled" | "unconfigured";
[key: string]: unknown;
};
- /**
- * Team Simple
- * @description Groups of organization members that gives permissions on specified repositories.
- */
- "nullable-team-simple": {
- /**
- * @description Unique identifier of the team
- * @example 1
- */
- id: number;
- /** @example MDQ6VGVhbTE= */
- node_id: string;
- /**
- * Format: uri
- * @description URL for the team
- * @example https://api.github.com/organizations/1/team/1
- */
- url: string;
- /** @example https://api.github.com/organizations/1/team/1/members{/member} */
- members_url: string;
- /**
- * @description Name of the team
- * @example Justice League
- */
- name: string;
- /**
- * @description Description of the team
- * @example A great team.
- */
- description: string | null;
- /**
- * @description Permission that the team will have for its repositories
- * @example admin
- */
- permission: string;
- /**
- * @description The level of privacy this team should have
- * @example closed
- */
- privacy?: string;
- /**
- * @description The notification setting the team has set
- * @example notifications_enabled
- */
- notification_setting?: string;
- /**
- * Format: uri
- * @example https://github.com/orgs/rails/teams/core
- */
- html_url: string;
- /**
- * Format: uri
- * @example https://api.github.com/organizations/1/team/1/repos
- */
- repositories_url: string;
- /** @example justice-league */
- slug: string;
- /**
- * @description Distinguished Name (DN) that team maps to within LDAP environment
- * @example uid=example,ou=users,dc=github,dc=com
- */
- ldap_dn?: string;
- } | null;
- /**
- * Team
- * @description Groups of organization members that gives permissions on specified repositories.
- */
- team: {
- id: number;
- node_id: string;
- name: string;
- slug: string;
- description: string | null;
- privacy?: string;
- notification_setting?: string;
- permission: string;
- permissions?: {
- pull: boolean;
- triage: boolean;
- push: boolean;
- maintain: boolean;
- admin: boolean;
- };
- /** Format: uri */
- url: string;
- /**
- * Format: uri
- * @example https://github.com/orgs/rails/teams/core
- */
- html_url: string;
- members_url: string;
- /** Format: uri */
- repositories_url: string;
- parent: components["schemas"]["nullable-team-simple"];
- };
- /**
- * Organization
- * @description GitHub account for managing multiple users, teams, and repositories
- */
- organization: {
- /**
- * @description Unique login name of the organization
- * @example new-org
- */
- login: string;
- /**
- * Format: uri
- * @description URL for the organization
- * @example https://api.github.com/orgs/github
- */
- url: string;
- id: number;
- node_id: string;
- /** Format: uri */
- repos_url: string;
- /** Format: uri */
- events_url: string;
- hooks_url: string;
- issues_url: string;
- members_url: string;
- public_members_url: string;
- avatar_url: string;
- description: string | null;
- /**
- * Format: uri
- * @description Display blog url for the organization
- * @example blog.example-org.com
- */
- blog?: string;
- /** Format: uri */
- html_url: string;
- /**
- * @description Display name for the organization
- * @example New Org
- */
- name?: string;
- /**
- * @description Display company name for the organization
- * @example Acme corporation
- */
- company?: string;
- /**
- * @description Display location for the organization
- * @example Berlin, Germany
- */
- location?: string;
- /**
- * Format: email
- * @description Display email for the organization
- * @example org@example.com
- */
- email?: string;
- /** @description Specifies if organization projects are enabled for this org */
- has_organization_projects: boolean;
- /** @description Specifies if repository projects are enabled for repositories that belong to this org */
- has_repository_projects: boolean;
- is_verified?: boolean;
- public_repos: number;
- public_gists: number;
- followers: number;
- following: number;
- type: string;
- /** Format: date-time */
- created_at: string;
- /** Format: date-time */
- updated_at: string;
- plan?: {
- name?: string;
- space?: number;
- private_repos?: number;
- filled_seats?: number;
- seats?: number;
- };
- };
- /**
- * Copilot Business Seat Detail
- * @description Information about a Copilot Business seat assignment for a user, team, or organization.
- */
- "copilot-seat-details": {
- /** @description The assignee that has been granted access to GitHub Copilot. */
- assignee: {
- [key: string]: unknown;
- } & (components["schemas"]["simple-user"] | components["schemas"]["team"] | components["schemas"]["organization"]);
- /** @description The team that granted access to GitHub Copilot to the assignee. This will be null if the user was assigned a seat individually. */
- assigning_team?: components["schemas"]["team"] | null;
- /**
- * Format: date
- * @description The pending cancellation date for the seat, in `YYYY-MM-DD` format. This will be null unless the assignee's Copilot access has been canceled during the current billing cycle. If the seat has been cancelled, this corresponds to the start of the organization's next billing cycle.
- */
- pending_cancellation_date?: string | null;
- /**
- * Format: date-time
- * @description Timestamp of user's last GitHub Copilot activity, in ISO 8601 format.
- */
- last_activity_at?: string | null;
- /** @description Last editor that was used by the user for a GitHub Copilot completion. */
- last_activity_editor?: string | null;
- /**
- * Format: date-time
- * @description Timestamp of when the assignee was last granted access to GitHub Copilot, in ISO 8601 format.
- */
- created_at: string;
- /**
- * Format: date-time
- * @description Timestamp of when the assignee's GitHub Copilot access was last updated, in ISO 8601 format.
- */
- updated_at?: string;
- };
/**
* Dependabot Secret for an Organization
* @description Secrets for GitHub Dependabot for an organization.
@@ -22013,6 +22134,170 @@ export interface components {
*/
updated_at: string;
};
+ /**
+ * A Role Assignment for a Team
+ * @description The Relationship a Team has with a role.
+ */
+ "team-role-assignment": {
+ id: number;
+ node_id: string;
+ name: string;
+ slug: string;
+ description: string | null;
+ privacy?: string;
+ notification_setting?: string;
+ permission: string;
+ permissions?: {
+ pull: boolean;
+ triage: boolean;
+ push: boolean;
+ maintain: boolean;
+ admin: boolean;
+ };
+ /** Format: uri */
+ url: string;
+ /**
+ * Format: uri
+ * @example https://github.com/orgs/rails/teams/core
+ */
+ html_url: string;
+ members_url: string;
+ /** Format: uri */
+ repositories_url: string;
+ parent: components["schemas"]["nullable-team-simple"];
+ };
+ /**
+ * Team Simple
+ * @description Groups of organization members that gives permissions on specified repositories.
+ */
+ "team-simple": {
+ /**
+ * @description Unique identifier of the team
+ * @example 1
+ */
+ id: number;
+ /** @example MDQ6VGVhbTE= */
+ node_id: string;
+ /**
+ * Format: uri
+ * @description URL for the team
+ * @example https://api.github.com/organizations/1/team/1
+ */
+ url: string;
+ /** @example https://api.github.com/organizations/1/team/1/members{/member} */
+ members_url: string;
+ /**
+ * @description Name of the team
+ * @example Justice League
+ */
+ name: string;
+ /**
+ * @description Description of the team
+ * @example A great team.
+ */
+ description: string | null;
+ /**
+ * @description Permission that the team will have for its repositories
+ * @example admin
+ */
+ permission: string;
+ /**
+ * @description The level of privacy this team should have
+ * @example closed
+ */
+ privacy?: string;
+ /**
+ * @description The notification setting the team has set
+ * @example notifications_enabled
+ */
+ notification_setting?: string;
+ /**
+ * Format: uri
+ * @example https://github.com/orgs/rails/teams/core
+ */
+ html_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/organizations/1/team/1/repos
+ */
+ repositories_url: string;
+ /** @example justice-league */
+ slug: string;
+ /**
+ * @description Distinguished Name (DN) that team maps to within LDAP environment
+ * @example uid=example,ou=users,dc=github,dc=com
+ */
+ ldap_dn?: string;
+ };
+ /**
+ * A Role Assignment for a User
+ * @description The Relationship a User has with a role.
+ */
+ "user-role-assignment": {
+ name?: string | null;
+ email?: string | null;
+ /** @example octocat */
+ login: string;
+ /** @example 1 */
+ id: number;
+ /** @example MDQ6VXNlcjE= */
+ node_id: string;
+ /**
+ * Format: uri
+ * @example https://github.com/images/error/octocat_happy.gif
+ */
+ avatar_url: string;
+ /** @example 41d064eb2195891e12d0413f63227ea7 */
+ gravatar_id: string | null;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat
+ */
+ url: string;
+ /**
+ * Format: uri
+ * @example https://github.com/octocat
+ */
+ html_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/followers
+ */
+ followers_url: string;
+ /** @example https://api.github.com/users/octocat/following{/other_user} */
+ following_url: string;
+ /** @example https://api.github.com/users/octocat/gists{/gist_id} */
+ gists_url: string;
+ /** @example https://api.github.com/users/octocat/starred{/owner}{/repo} */
+ starred_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/subscriptions
+ */
+ subscriptions_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/orgs
+ */
+ organizations_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/repos
+ */
+ repos_url: string;
+ /** @example https://api.github.com/users/octocat/events{/privacy} */
+ events_url: string;
+ /**
+ * Format: uri
+ * @example https://api.github.com/users/octocat/received_events
+ */
+ received_events_url: string;
+ /** @example User */
+ type: string;
+ site_admin: boolean;
+ /** @example "2020-07-09T00:17:55Z" */
+ starred_at?: string;
+ };
/**
* Package Version
* @description A version of a software package
@@ -22220,7 +22505,7 @@ export interface components {
* @example single_select
* @enum {string}
*/
- value_type: "string" | "single_select";
+ value_type: "string" | "single_select" | "multi_select" | "true_false";
/** @description Whether the property is required. */
required?: boolean;
/** @description Default value of the property */
@@ -23302,6 +23587,18 @@ export interface components {
/** @description The name of a code scanning tool */
tool: string;
};
+ /**
+ * code_scanning
+ * @description Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.
+ */
+ "repository-rule-code-scanning": {
+ /** @enum {string} */
+ type: "code_scanning";
+ parameters?: {
+ /** @description Tools that must provide code scanning results for this rule to pass. */
+ code_scanning_tools: components["schemas"]["repository-rule-params-code-scanning-tool"][];
+ };
+ };
/**
* Repository Rule
* @description A repository rule.
@@ -23334,7 +23631,7 @@ export interface components {
/** @description The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS). */
max_file_size: number;
};
- } | components["schemas"]["repository-rule-workflows"];
+ } | components["schemas"]["repository-rule-workflows"] | components["schemas"]["repository-rule-code-scanning"];
/**
* Repository ruleset
* @description A set of rules to apply when specified conditions are met.
@@ -23609,69 +23906,6 @@ export interface components {
/** @description A temporary private fork of the advisory's repository for collaborating on a fix. */
readonly private_fork: components["schemas"]["simple-repository"] | null;
};
- /**
- * Team Simple
- * @description Groups of organization members that gives permissions on specified repositories.
- */
- "team-simple": {
- /**
- * @description Unique identifier of the team
- * @example 1
- */
- id: number;
- /** @example MDQ6VGVhbTE= */
- node_id: string;
- /**
- * Format: uri
- * @description URL for the team
- * @example https://api.github.com/organizations/1/team/1
- */
- url: string;
- /** @example https://api.github.com/organizations/1/team/1/members{/member} */
- members_url: string;
- /**
- * @description Name of the team
- * @example Justice League
- */
- name: string;
- /**
- * @description Description of the team
- * @example A great team.
- */
- description: string | null;
- /**
- * @description Permission that the team will have for its repositories
- * @example admin
- */
- permission: string;
- /**
- * @description The level of privacy this team should have
- * @example closed
- */
- privacy?: string;
- /**
- * @description The notification setting the team has set
- * @example notifications_enabled
- */
- notification_setting?: string;
- /**
- * Format: uri
- * @example https://github.com/orgs/rails/teams/core
- */
- html_url: string;
- /**
- * Format: uri
- * @example https://api.github.com/organizations/1/team/1/repos
- */
- repositories_url: string;
- /** @example justice-league */
- slug: string;
- /**
- * @description Distinguished Name (DN) that team maps to within LDAP environment
- * @example uid=example,ou=users,dc=github,dc=com
- */
- ldap_dn?: string;
- };
"actions-billing-usage": {
/** @description The sum of the free and paid GitHub Actions minutes used. */
total_minutes_used: number;
@@ -26358,6 +26592,133 @@ export interface components {
/** @description The commit SHA of the repository at the time the CodeQL database was created. */
commit_oid?: string | null;
};
+ /**
+ * @description The language targeted by the CodeQL query
+ * @enum {string}
+ */
+ "code-scanning-variant-analysis-language": "cpp" | "csharp" | "go" | "java" | "javascript" | "python" | "ruby" | "swift";
+ /**
+ * Repository Identifier
+ * @description Repository Identifier
+ */
+ "code-scanning-variant-analysis-repository": {
+ /**
+ * @description A unique identifier of the repository.
+ * @example 1296269
+ */
+ id: number;
+ /**
+ * @description The name of the repository.
+ * @example Hello-World
+ */
+ name: string;
+ /**
+ * @description The full, globally unique, name of the repository.
+ * @example octocat/Hello-World
+ */
+ full_name: string;
+ /** @description Whether the repository is private. */
+ private: boolean;
+ /** @example 80 */
+ stargazers_count: number;
+ /**
+ * Format: date-time
+ * @example 2011-01-26T19:14:43Z
+ */
+ updated_at: string | null;
+ };
+ /**
+ * @description The new status of the CodeQL variant analysis repository task.
+ * @enum {string}
+ */
+ "code-scanning-variant-analysis-status": "pending" | "in_progress" | "succeeded" | "failed" | "canceled" | "timed_out";
+ "code-scanning-variant-analysis-skipped-repo-group": {
+ /**
+ * @description The total number of repositories that were skipped for this reason.
+ * @example 2
+ */
+ repository_count: number;
+ /** @description A list of repositories that were skipped. This list may not include all repositories that were skipped. This is only available when the repository was found and the user has access to it. */
+ repositories: components["schemas"]["code-scanning-variant-analysis-repository"][];
+ };
+ /**
+ * Variant Analysis
+ * @description A run of a CodeQL query against one or more repositories.
+ */
+ "code-scanning-variant-analysis": {
+ /** @description The ID of the variant analysis. */
+ id: number;
+ controller_repo: components["schemas"]["simple-repository"];
+ actor: components["schemas"]["simple-user"];
+ query_language: components["schemas"]["code-scanning-variant-analysis-language"];
+ /** @description The download url for the query pack. */
+ query_pack_url: string;
+ /**
+ * Format: date-time
+ * @description The date and time at which the variant analysis was created, in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ.
+ */
+ created_at?: string;
+ /**
+ * Format: date-time
+ * @description The date and time at which the variant analysis was last updated, in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ.
+ */
+ updated_at?: string;
+ /**
+ * Format: date-time
+ * @description The date and time at which the variant analysis was completed, in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ. Will be null if the variant analysis has not yet completed or this information is not available.
+ */
+ completed_at?: string | null;
+ /** @enum {string} */
+ status: "in_progress" | "succeeded" | "failed" | "cancelled";
+ /** @description The GitHub Actions workflow run used to execute this variant analysis. This is only available if the workflow run has started. */
+ actions_workflow_run_id?: number;
+ /**
+ * @description The reason for a failure of the variant analysis. This is only available if the variant analysis has failed.
+ * @enum {string}
+ */
+ failure_reason?: "no_repos_queried" | "actions_workflow_run_failed" | "internal_error";
+ scanned_repositories?: {
+ repository: components["schemas"]["code-scanning-variant-analysis-repository"];
+ analysis_status: components["schemas"]["code-scanning-variant-analysis-status"];
+ /** @description The number of results in the case of a successful analysis. This is only available for successful analyses. */
+ result_count?: number;
+ /** @description The size of the artifact. This is only available for successful analyses. */
+ artifact_size_in_bytes?: number;
+ /** @description The reason of the failure of this repo task. This is only available if the repository task has failed. */
+ failure_message?: string;
+ }[];
+ /** @description Information about repositories that were skipped from processing. This information is only available to the user that initiated the variant analysis. */
+ skipped_repositories?: {
+ access_mismatch_repos: components["schemas"]["code-scanning-variant-analysis-skipped-repo-group"];
+ not_found_repos: {
+ /**
+ * @description The total number of repositories that were skipped for this reason.
+ * @example 2
+ */
+ repository_count: number;
+ /** @description A list of full repository names that were skipped. This list may not include all repositories that were skipped. */
+ repository_full_names: string[];
+ };
+ no_codeql_db_repos: components["schemas"]["code-scanning-variant-analysis-skipped-repo-group"];
+ over_limit_repos: components["schemas"]["code-scanning-variant-analysis-skipped-repo-group"];
+ };
+ };
+ "code-scanning-variant-analysis-repo-task": {
+ repository: components["schemas"]["simple-repository"];
+ analysis_status: components["schemas"]["code-scanning-variant-analysis-status"];
+ /** @description The size of the artifact. This is only available for successful analyses. */
+ artifact_size_in_bytes?: number;
+ /** @description The number of results in the case of a successful analysis. This is only available for successful analyses. */
+ result_count?: number;
+ /** @description The reason of the failure of this repo task. This is only available if the repository task has failed. */
+ failure_message?: string;
+ /** @description The SHA of the commit the CodeQL database was built against. This is only available for successful analyses. */
+ database_commit_sha?: string;
+ /** @description The source location prefix to use. This is only available for successful analyses. */
+ source_location_prefix?: string;
+ /** @description The URL of the artifact. This is only available for successful analyses. */
+ artifact_url?: string;
+ };
/** @description Configuration for code scanning default setup. */
"code-scanning-default-setup": {
/**
@@ -30396,7 +30757,7 @@ export interface components {
* Repository Rule
* @description A repository rule with ruleset details.
*/
- "repository-rule-detailed": (components["schemas"]["repository-rule-creation"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-update"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-deletion"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-linear-history"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-deployments"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-signatures"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-pull-request"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-status-checks"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-non-fast-forward"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-message-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-author-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-committer-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-branch-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-tag-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-workflows"] & components["schemas"]["repository-rule-ruleset-info"]);
+ "repository-rule-detailed": (components["schemas"]["repository-rule-creation"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-update"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-deletion"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-linear-history"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-deployments"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-signatures"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-pull-request"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-required-status-checks"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-non-fast-forward"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-message-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-commit-author-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-committer-email-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-branch-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-tag-name-pattern"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-workflows"] & components["schemas"]["repository-rule-ruleset-info"]) | (components["schemas"]["repository-rule-code-scanning"] & components["schemas"]["repository-rule-ruleset-info"]);
"secret-scanning-alert": {
number?: components["schemas"]["alert-number"];
created_at?: components["schemas"]["alert-created-at"];
@@ -31394,6 +31755,11 @@ export interface components {
* @example octocat@github.com
*/
email: string | null;
+ /**
+ * Format: email
+ * @example octocat@github.com
+ */
+ notification_email?: string | null;
hireable: boolean | null;
/** @example There once was... */
bio: string | null;
@@ -35247,6 +35613,26 @@ export interface components {
*/
archived_at: string | null;
};
+ /**
+ * Projects v2 Single Select Option
+ * @description An option for a single select field
+ */
+ "projects-v2-single-select-option": {
+ id: string;
+ name: string;
+ color?: string | null;
+ description?: string | null;
+ };
+ /**
+ * Projects v2 Iteration Setting
+ * @description An iteration setting for an iteration field
+ */
+ "projects-v2-iteration-setting": {
+ id: string;
+ title: string;
+ duration?: number | null;
+ start_date?: string | null;
+ };
/** @description The pull request number. */
webhooks_number: number;
"pull-request-webhook": components["schemas"]["pull-request"] & {
@@ -37076,6 +37462,9 @@ export interface components {
resolution_comment?: string | null;
/** @description The type of secret that secret scanning detected. */
secret_type?: string;
+ /** @description User-friendly name for the detected secret, matching the `secret_type`.
+ * For a list of built-in patterns, see "[Secret scanning patterns](https://docs.github.com/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-advanced-security)." */
+ secret_type_display_name?: string;
/**
* @description The token status as of the latest validity check.
* @enum {string}
@@ -41611,10 +42000,6 @@ export interface components {
/** Format: uri */
contributors_url: string;
created_at: number | string;
- /** @description The custom properties that were defined for the repository. The keys are the custom property names, and the values are the corresponding custom property values. */
- custom_properties?: {
- [key: string]: unknown;
- };
/** @description The default branch of the repository. */
default_branch: string;
/**
@@ -50592,6 +50977,7 @@ export interface components {
/** @enum {string} */
action: "approved";
personal_access_token_request: components["schemas"]["personal-access-token-request"];
+ enterprise?: components["schemas"]["enterprise-webhooks"];
organization: components["schemas"]["organization-simple-webhooks"];
sender: components["schemas"]["simple-user-webhooks"];
installation: components["schemas"]["simple-installation"];
@@ -50601,6 +50987,7 @@ export interface components {
/** @enum {string} */
action: "cancelled";
personal_access_token_request: components["schemas"]["personal-access-token-request"];
+ enterprise?: components["schemas"]["enterprise-webhooks"];
organization: components["schemas"]["organization-simple-webhooks"];
sender: components["schemas"]["simple-user-webhooks"];
installation: components["schemas"]["simple-installation"];
@@ -50610,9 +50997,10 @@ export interface components {
/** @enum {string} */
action: "created";
personal_access_token_request: components["schemas"]["personal-access-token-request"];
+ enterprise?: components["schemas"]["enterprise-webhooks"];
organization: components["schemas"]["organization-simple-webhooks"];
sender: components["schemas"]["simple-user-webhooks"];
- installation: components["schemas"]["simple-installation"];
+ installation?: components["schemas"]["simple-installation"];
};
/** personal_access_token_request denied event */
"webhook-personal-access-token-request-denied": {
@@ -50620,6 +51008,7 @@ export interface components {
action: "denied";
personal_access_token_request: components["schemas"]["personal-access-token-request"];
organization: components["schemas"]["organization-simple-webhooks"];
+ enterprise?: components["schemas"]["enterprise-webhooks"];
sender: components["schemas"]["simple-user-webhooks"];
installation: components["schemas"]["simple-installation"];
};
@@ -51111,10 +51500,16 @@ export interface components {
"webhook-projects-v2-item-edited": {
/** @enum {string} */
action: "edited";
+ /** @description The changes made to the item may involve modifications in the item's fields and draft issue body.
+ * It includes altered values for text, number, date, single select, and iteration fields, along with the GraphQL node ID of the changed field. */
changes?: {
field_value: {
field_node_id?: string;
field_type?: string;
+ field_name?: string;
+ project_number?: number;
+ from?: (string | number | components["schemas"]["projects-v2-single-select-option"] | components["schemas"]["projects-v2-iteration-setting"]) | null;
+ to?: (string | number | components["schemas"]["projects-v2-single-select-option"] | components["schemas"]["projects-v2-iteration-setting"]) | null;
};
} | {
body: {
@@ -80040,17 +80435,6 @@ export interface components {
repository: components["schemas"]["repository-webhooks"];
sender?: components["schemas"]["simple-user-webhooks"];
};
- /** secret_scanning_alert revoked event */
- "webhook-secret-scanning-alert-revoked": {
- /** @enum {string} */
- action: "revoked";
- alert: components["schemas"]["secret-scanning-alert-webhook"];
- enterprise?: components["schemas"]["enterprise-webhooks"];
- installation?: components["schemas"]["simple-installation"];
- organization?: components["schemas"]["organization-simple-webhooks"];
- repository: components["schemas"]["repository-webhooks"];
- sender?: components["schemas"]["simple-user-webhooks"];
- };
/** secret_scanning_alert validated event */
"webhook-secret-scanning-alert-validated": {
/** @enum {string} */
@@ -84867,6 +85251,43 @@ export interface operations {
304: components["responses"]["not_modified"];
};
};
+ "copilot/list-copilot-seats-for-enterprise": {
+ parameters: {
+ query?: {
+ /** @description The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
+ page?: components["parameters"]["page"];
+ /** @description The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
+ per_page?: number;
+ };
+ header?: never;
+ path: {
+ /** @description The slug version of the enterprise name. You can also substitute this value with the enterprise id. */
+ enterprise: components["parameters"]["enterprise"];
+ };
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ /** @description Response */
+ 200: {
+ headers: {
+ Link: components["headers"]["link"];
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": {
+ /** @description Total number of Copilot seats for the organization currently being billed. */
+ total_seats?: number;
+ seats?: components["schemas"]["copilot-seat-details"][];
+ };
+ };
+ };
+ 401: components["responses"]["requires_authentication"];
+ 403: components["responses"]["forbidden"];
+ 404: components["responses"]["not_found"];
+ 500: components["responses"]["internal_error"];
+ };
+ };
"copilot/usage-metrics-for-enterprise": {
parameters: {
query?: {
@@ -90790,7 +91211,7 @@ export interface operations {
[name: string]: unknown;
};
content: {
- "application/json": components["schemas"]["team"][];
+ "application/json": components["schemas"]["team-role-assignment"][];
};
};
/** @description Response if the organization or role does not exist. */
@@ -90835,7 +91256,7 @@ export interface operations {
[name: string]: unknown;
};
content: {
- "application/json": components["schemas"]["simple-user"][];
+ "application/json": components["schemas"]["user-role-assignment"][];
};
};
/** @description Response if the organization or role does not exist. */
@@ -91683,7 +92104,7 @@ export interface operations {
* @example single_select
* @enum {string}
*/
- value_type: "string" | "single_select";
+ value_type: "string" | "single_select" | "multi_select" | "true_false";
/** @description Whether the property is required. */
required?: boolean;
/** @description Default value of the property */
@@ -92568,44 +92989,6 @@ export interface operations {
};
};
};
- "copilot/usage-metrics-for-team": {
- parameters: {
- query?: {
- /** @description Show usage metrics since this date. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:MM:SSZ`). Maximum value is 28 days ago. */
- since?: string;
- /** @description Show usage metrics until this date. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:MM:SSZ`) and should not preceed the `since` date if it is passed. */
- until?: string;
- /** @description The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
- page?: components["parameters"]["page"];
- /** @description The number of days of metrics to display per page (max 28). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
- per_page?: number;
- };
- header?: never;
- path: {
- /** @description The organization name. The name is not case sensitive. */
- org: components["parameters"]["org"];
- /** @description The slug of the team name. */
- team_slug: components["parameters"]["team-slug"];
- };
- cookie?: never;
- };
- requestBody?: never;
- responses: {
- /** @description Response */
- 200: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": components["schemas"]["copilot-usage-metrics"][];
- };
- };
- 401: components["responses"]["requires_authentication"];
- 403: components["responses"]["forbidden"];
- 404: components["responses"]["not_found"];
- 500: components["responses"]["internal_error"];
- };
- };
"teams/list": {
parameters: {
query?: {
@@ -97429,7 +97812,7 @@ export interface operations {
"repos/list-branches": {
parameters: {
query?: {
- /** @description Setting to `true` returns only protected branches. When set to `false`, only unprotected branches are returned. Omitting this parameter returns all branches. */
+ /** @description Setting to `true` returns only branches protected by branch protections or rulesets. When set to `false`, only unprotected branches are returned. Omitting this parameter returns all branches. */
protected?: boolean;
/** @description The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
per_page?: components["parameters"]["per-page"];
@@ -99509,6 +99892,118 @@ export interface operations {
503: components["responses"]["service_unavailable"];
};
};
+ "code-scanning/create-variant-analysis": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ /** @description The account owner of the repository. The name is not case sensitive. */
+ owner: components["parameters"]["owner"];
+ /** @description The name of the repository without the `.git` extension. The name is not case sensitive. */
+ repo: components["parameters"]["repo"];
+ };
+ cookie?: never;
+ };
+ requestBody: {
+ content: {
+ "application/json": {
+ language: components["schemas"]["code-scanning-variant-analysis-language"];
+ /** @description A Base64-encoded tarball containing a CodeQL query and all its dependencies */
+ query_pack: string;
+ /** @description List of repository names (in the form `owner/repo-name`) to run the query against. Precisely one property from `repositories`, `repository_lists` and `repository_owners` is required. */
+ repositories?: string[];
+ /** @description List of repository lists to run the query against. Precisely one property from `repositories`, `repository_lists` and `repository_owners` is required. */
+ repository_lists?: string[];
+ /** @description List of organization or user names whose repositories the query should be run against. Precisely one property from `repositories`, `repository_lists` and `repository_owners` is required. */
+ repository_owners?: string[];
+ } & (unknown | unknown | unknown);
+ };
+ };
+ responses: {
+ /** @description Variant analysis submitted for processing */
+ 201: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["code-scanning-variant-analysis"];
+ };
+ };
+ 404: components["responses"]["not_found"];
+ /** @description Unable to process variant analysis submission */
+ 422: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["basic-error"];
+ };
+ };
+ 503: components["responses"]["service_unavailable"];
+ };
+ };
+ "code-scanning/get-variant-analysis": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ /** @description The account owner of the repository. The name is not case sensitive. */
+ owner: components["parameters"]["owner"];
+ /** @description The name of the repository without the `.git` extension. The name is not case sensitive. */
+ repo: components["parameters"]["repo"];
+ /** @description The unique identifier of the variant analysis. */
+ codeql_variant_analysis_id: number;
+ };
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ /** @description Response */
+ 200: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["code-scanning-variant-analysis"];
+ };
+ };
+ 404: components["responses"]["not_found"];
+ 503: components["responses"]["service_unavailable"];
+ };
+ };
+ "code-scanning/get-variant-analysis-repo-task": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ /** @description The account owner of the repository. The name is not case sensitive. */
+ owner: components["parameters"]["owner"];
+ /** @description The name of the controller repository. */
+ repo: string;
+ /** @description The ID of the variant analysis. */
+ codeql_variant_analysis_id: number;
+ /** @description The account owner of the variant analysis repository. The name is not case sensitive. */
+ repo_owner: string;
+ /** @description The name of the variant analysis repository. */
+ repo_name: string;
+ };
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ /** @description Response */
+ 200: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["code-scanning-variant-analysis-repo-task"];
+ };
+ };
+ 404: components["responses"]["not_found"];
+ 503: components["responses"]["service_unavailable"];
+ };
+ };
"code-scanning/get-default-setup": {
parameters: {
query?: never;
@@ -100546,9 +101041,9 @@ export interface operations {
author?: string;
/** @description GitHub username or email address to use to filter by commit committer. */
committer?: string;
- /** @description Only show results that were last updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. */
- since?: components["parameters"]["since"];
- /** @description Only commits before this date will be returned. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. */
+ /** @description Only show results that were last updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. Due to limitations of Git, timestamps must be between 1970-01-01 and 2099-12-31 (inclusive) or unexpected results may be returned. */
+ since?: string;
+ /** @description Only commits before this date will be returned. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. Due to limitations of Git, timestamps must be between 1970-01-01 and 2099-12-31 (inclusive) or unexpected results may be returned. */
until?: string;
/** @description The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." */
per_page?: components["parameters"]["per-page"];
@@ -101002,6 +101497,7 @@ export interface operations {
};
};
302: components["responses"]["found"];
+ 304: components["responses"]["not_modified"];
403: components["responses"]["forbidden"];
404: components["responses"]["not_found"];
};
@@ -106151,7 +106647,7 @@ export interface operations {
requestBody: {
content: {
"application/json": {
- /** @description Specify a custom domain for the repository. Sending a `null` value will remove the custom domain. For more about custom domains, see "[Using a custom domain with GitHub Pages](https://docs.github.com/articles/using-a-custom-domain-with-github-pages/)." */
+ /** @description Specify a custom domain for the repository. Sending a `null` value will remove the custom domain. For more about custom domains, see "[Using a custom domain with GitHub Pages](https://docs.github.com/pages/configuring-a-custom-domain-for-your-github-pages-site)." */
cname?: string | null;
/** @description Specify whether HTTPS should be enforced for the repository. */
https_enforced?: boolean;
@@ -107065,7 +107561,7 @@ export interface operations {
};
requestBody?: never;
responses: {
- /** @description Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) to fetch diff and patch formats. */
+ /** @description Pass the appropriate [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types) to fetch diff and patch formats. */
200: {
headers: {
[name: string]: unknown;
diff --git a/packages/openapi-typescript/examples/github-api.yaml b/packages/openapi-typescript/examples/github-api.yaml
index 3ad1b9e53..a9615b538 100644
--- a/packages/openapi-typescript/examples/github-api.yaml
+++ b/packages/openapi-typescript/examples/github-api.yaml
@@ -87,6 +87,10 @@ tags:
description: Interact with GitHub Classroom.
- name: desktop
description: Desktop specific endpoints.
+- name: enterprise-teams
+ description: Endpoints to manage GitHub Enterprise Teams.
+- name: code-security
+ description: Endpoints to manage Code security using the REST API.
servers:
- url: https://api.github.com
externalDocs:
@@ -832,7 +836,7 @@ paths:
delete:
summary: Delete an app authorization
description: |-
- OAuth and GitHub application owners can revoke a grant for their application and a specific user. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the OAuth application's `client_id` and `client_secret` as the username and password. You must also provide a valid OAuth `access_token` as an input parameter and the grant for the token's owner will be deleted.
+ OAuth and GitHub application owners can revoke a grant for their application and a specific user. You must provide a valid OAuth `access_token` as an input parameter and the grant for the token's owner will be deleted.
Deleting an application's grant will also delete all OAuth tokens associated with the application for the user. Once deleted, the application will have no access to the user's account and will no longer be listed on [the application authorizations settings screen within GitHub](https://github.com/settings/applications#authorized).
operationId: apps/delete-authorization
tags:
@@ -875,9 +879,7 @@ paths:
description: OAuth applications and GitHub applications with OAuth authorizations
can use this API method for checking OAuth token validity without exceeding
the normal rate limits for failed login attempts. Authentication works differently
- with this particular endpoint. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)
- to use this endpoint, where the username is the application `client_id` and
- the password is its `client_secret`. Invalid tokens will return `404 NOT FOUND`.
+ with this particular endpoint. Invalid tokens will return `404 NOT FOUND`.
tags:
- apps
operationId: apps/check-token
@@ -926,9 +928,7 @@ paths:
description: OAuth applications and GitHub applications with OAuth authorizations
can use this API method to reset a valid OAuth token without end-user involvement.
Applications must save the "token" property in the response because changes
- take effect immediately. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)
- when accessing this endpoint, using the application's `client_id` and `client_secret`
- as the username and password. Invalid tokens will return `404 NOT FOUND`.
+ take effect immediately. Invalid tokens will return `404 NOT FOUND`.
tags:
- apps
operationId: apps/reset-token
@@ -974,9 +974,6 @@ paths:
summary: Delete an app token
description: OAuth or GitHub application owners can revoke a single token for
an OAuth application or a GitHub application with an OAuth authorization.
- You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)
- when accessing this endpoint, using the application's `client_id` and `client_secret`
- as the username and password.
tags:
- apps
operationId: apps/delete-token
@@ -1021,10 +1018,6 @@ paths:
token.
Invalid tokens will return `404 NOT FOUND`.
-
- You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)
- when accessing this endpoint, using the `client_id` and `client_secret` of the GitHub App
- as the username and password.
tags:
- apps
operationId: apps/scope-token
@@ -1423,6 +1416,68 @@ paths:
enabledForGitHubApps: true
category: emojis
subcategory: emojis
+ "/enterprises/{enterprise}/copilot/billing/seats":
+ get:
+ summary: List all Copilot seat assignments for an enterprise
+ description: |-
+ **Note**: This endpoint is in beta and is subject to change.
+
+ Lists all active Copilot seats across organizations or enterprise teams for an enterprise with a Copilot Business or Copilot Enterprise subscription.
+
+ Only enterprise owners and billing managers can view assigned Copilot seats across their child organizations or enterprise teams.
+
+ Personal access tokens (classic) need either the `manage_billing:copilot` or `read:enterprise` scopes to use this endpoint.
+ tags:
+ - copilot
+ operationId: copilot/list-copilot-seats-for-enterprise
+ externalDocs:
+ description: API method documentation
+ url: https://docs.github.com/rest/copilot/copilot-user-management#list-all-copilot-seat-assignments-for-an-enterprise
+ parameters:
+ - "$ref": "#/components/parameters/enterprise"
+ - "$ref": "#/components/parameters/page"
+ - name: per_page
+ description: The number of results per page (max 100). For more information,
+ see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."
+ in: query
+ schema:
+ type: integer
+ default: 50
+ responses:
+ '200':
+ description: Response
+ content:
+ application/json:
+ schema:
+ type: object
+ properties:
+ total_seats:
+ type: integer
+ description: Total number of Copilot seats for the organization
+ currently being billed.
+ seats:
+ type: array
+ items:
+ "$ref": "#/components/schemas/copilot-seat-details"
+ examples:
+ default:
+ "$ref": "#/components/examples/copilot-seats-list"
+ headers:
+ Link:
+ "$ref": "#/components/headers/link"
+ '500':
+ "$ref": "#/components/responses/internal_error"
+ '401':
+ "$ref": "#/components/responses/requires_authentication"
+ '403':
+ "$ref": "#/components/responses/forbidden"
+ '404':
+ "$ref": "#/components/responses/not_found"
+ x-github:
+ githubCloudOnly: false
+ enabledForGitHubApps: true
+ category: copilot
+ subcategory: copilot-user-management
"/enterprises/{enterprise}/copilot/usage":
get:
summary: Get a summary of Copilot usage for enterprise members
@@ -1437,10 +1492,9 @@ paths:
and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
they must have telemetry enabled in their IDE.
- Only the owners and billing managers of enterprises with a Copilot Business or Enterprise subscription can view Copilot usage
- metrics for the enterprise.
+ Only owners and billing managers can view Copilot usage metrics for the enterprise.
- OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:enterprise` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/usage-metrics-for-enterprise
@@ -1661,7 +1715,7 @@ paths:
By default, timeline resources are returned in JSON. You can specify the `application/atom+xml` type in the `Accept` header to return timeline resources in Atom format. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
- **Note**: Private feeds are only returned when [authenticating via Basic Auth](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) since current feed URIs use the older, non revocable auth tokens.
+ **Note**: Private feeds are only returned when [authenticating via Basic Auth](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) since current feed URIs use the older, non revocable auth tokens.
tags:
- activity
operationId: activity/get-feeds
@@ -3004,7 +3058,7 @@ paths:
description: |-
Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
- GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
tags:
- apps
operationId: apps/get-subscription-plan-for-account
@@ -3042,7 +3096,7 @@ paths:
description: |-
Lists all plans that are part of your GitHub Marketplace listing.
- GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
tags:
- apps
operationId: apps/list-plans
@@ -3082,7 +3136,7 @@ paths:
description: |-
Returns user and organization accounts associated with the specified plan, including free plans. For per-seat pricing, you see the list of accounts that have purchased the plan, including the number of seats purchased. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
- GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
tags:
- apps
operationId: apps/list-accounts-for-plan
@@ -3136,7 +3190,7 @@ paths:
description: |-
Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
- GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
tags:
- apps
operationId: apps/get-subscription-plan-for-account-stubbed
@@ -3170,7 +3224,7 @@ paths:
description: |-
Lists all plans that are part of your GitHub Marketplace listing.
- GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
tags:
- apps
operationId: apps/list-plans-stubbed
@@ -3208,7 +3262,7 @@ paths:
description: |-
Returns repository and organization accounts associated with the specified plan, including free plans. For per-seat pricing, you see the list of accounts that have purchased the plan, including the number of seats purchased. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
- GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
+ GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth apps must use [basic authentication](https://docs.github.com/rest/authentication/authenticating-to-the-rest-api#using-basic-authentication) with their client ID and client secret to access this endpoint.
tags:
- apps
operationId: apps/list-accounts-for-plan-stubbed
@@ -6603,12 +6657,12 @@ paths:
**Note**: This endpoint is in beta and is subject to change.
Gets information about an organization's Copilot subscription, including seat breakdown
- and code matching policies. To configure these settings, go to your organization's settings on GitHub.com.
+ and feature policies. To configure these settings, go to your organization's settings on GitHub.com.
For more information, see "[Managing policies for Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-copilot-business-in-your-organization)".
- Only organization owners can configure and view details about the organization's Copilot Business subscription.
+ Only organization owners can view details about the organization's Copilot Business or Copilot Enterprise subscription.
- OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/get-copilot-organization-details
@@ -6648,11 +6702,10 @@ paths:
description: |-
**Note**: This endpoint is in beta and is subject to change.
- Lists all Copilot seat assignments for an organization that are currently being billed (either active or pending cancellation at the start of the next billing cycle).
+ Lists all active Copilot seats for an organization with a Copilot Business or Copilot Enterprise subscription.
+ Only organization owners can view assigned seats.
- Only organization owners can configure and view details about the organization's Copilot Business or Enterprise subscription.
-
- OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/list-copilot-seats
@@ -6713,13 +6766,13 @@ paths:
Purchases a GitHub Copilot seat for all users within each specified team.
The organization will be billed accordingly. For more information about Copilot pricing, see "[Pricing for GitHub Copilot](https://docs.github.com/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot#about-billing-for-github-copilot)".
- Only organization owners can configure GitHub Copilot in their organization.
+ Only organization owners can add Copilot seats for their organization members.
In order for an admin to use this endpoint, the organization must have a Copilot Business or Enterprise subscription and a configured suggestion matching policy.
For more information about setting up a Copilot subscription, see "[Setting up a Copilot subscription for your organization](https://docs.github.com/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription-for-your-organization-or-enterprise)".
For more information about setting a suggestion matching policy, see "[Configuring suggestion matching policies for GitHub Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-github-copilot-in-your-organization#configuring-suggestion-matching-policies-for-github-copilot-in-your-organization)".
- OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/add-copilot-seats-for-teams
@@ -6798,9 +6851,9 @@ paths:
For more information about disabling access to Copilot Business or Enterprise, see "[Revoking access to GitHub Copilot for specific users in your organization](https://docs.github.com/copilot/managing-copilot/managing-access-for-copilot-in-your-organization#revoking-access-to-github-copilot-for-specific-users-in-your-organization)".
- Only organization owners can configure GitHub Copilot in their organization.
+ Only organization owners can cancel Copilot seats for their organization members.
- OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/cancel-copilot-seat-assignment-for-teams
@@ -6876,13 +6929,13 @@ paths:
Purchases a GitHub Copilot seat for each user specified.
The organization will be billed accordingly. For more information about Copilot pricing, see "[Pricing for GitHub Copilot](https://docs.github.com/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot#about-billing-for-github-copilot)".
- Only organization owners can configure GitHub Copilot in their organization.
+ Only organization owners can add Copilot seats for their organization members.
In order for an admin to use this endpoint, the organization must have a Copilot Business or Enterprise subscription and a configured suggestion matching policy.
For more information about setting up a Copilot subscription, see "[Setting up a Copilot subscription for your organization](https://docs.github.com/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription-for-your-organization-or-enterprise)".
For more information about setting a suggestion matching policy, see "[Configuring suggestion matching policies for GitHub Copilot in your organization](https://docs.github.com/copilot/managing-copilot/managing-policies-for-github-copilot-in-your-organization#configuring-suggestion-matching-policies-for-github-copilot-in-your-organization)".
- OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/add-copilot-seats-for-users
@@ -6961,9 +7014,9 @@ paths:
For more information about disabling access to Copilot Business or Enterprise, see "[Revoking access to GitHub Copilot for specific users in your organization](https://docs.github.com/copilot/managing-copilot/managing-access-for-copilot-in-your-organization#revoking-access-to-github-copilot-for-specific-users-in-your-organization)".
- Only organization owners can configure GitHub Copilot in their organization.
+ Only organization owners can cancel Copilot seats for their organization members.
- OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `admin:org` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/cancel-copilot-seat-assignment-for-users
@@ -7045,10 +7098,9 @@ paths:
and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
they must have telemetry enabled in their IDE.
- Copilot Business or Copilot Enterprise organization owners, and owners and billing managers of their parent enterprises, can view
- Copilot usage metrics.
+ Organization owners, and owners and billing managers of the parent enterprise, can view Copilot usage metrics.
- OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:org`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot`, `read:org`, or `read:enterprise` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/usage-metrics-for-org
@@ -8340,10 +8392,11 @@ paths:
"/orgs/{org}/invitations":
get:
summary: List pending organization invitations
- description: 'The return hash contains a `role` field which refers to the Organization
- Invitation role and will be one of the following values: `direct_member`,
- `admin`, `billing_manager`, or `hiring_manager`. If the invitee is not a GitHub
- member, the `login` field in the return hash will be `null`.'
+ description: |-
+ The return hash contains a `role` field which refers to the Organization
+ Invitation role and will be one of the following values: `direct_member`, `admin`,
+ `billing_manager`, or `hiring_manager`. If the invitee is not a GitHub
+ member, the `login` field in the return hash will be `null`.
tags:
- orgs
operationId: orgs/list-pending-invitations
@@ -8405,7 +8458,7 @@ paths:
description: |-
Invite people to an organization by using their GitHub user ID or their email address. In order to create invitations in an organization, the authenticated user must be an organization owner.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
tags:
- orgs
@@ -8897,9 +8950,9 @@ paths:
Gets the GitHub Copilot seat assignment details for a member of an organization who currently has access to GitHub Copilot.
- Organization owners can view GitHub Copilot seat assignment details for members in their organization.
+ Only organization owners can view Copilot seat assignment details for members of their organization.
- OAuth app tokens and personal access tokens (classic) need the `manage_billing:copilot` scope to use this endpoint.
+ OAuth app tokens and personal access tokens (classic) need either the `manage_billing:copilot` or `read:org` scopes to use this endpoint.
tags:
- copilot
operationId: copilot/get-copilot-seat-details-for-user
@@ -8980,10 +9033,10 @@ paths:
the authenticated user changes a member's role to `admin`, the affected user
will receive an email notifying them that they've been made an organization
owner. If the authenticated user changes an owner's role to `member`, no email
- will be sent.\n\n**Rate limits**\n\nTo prevent abuse, the authenticated user
- is limited to 50 organization invitations per 24 hour period. If the organization
- is more than one month old or on a paid plan, the limit is 500 invitations
- per 24 hour period."
+ will be sent.\n\n**Rate limits**\n\nTo prevent abuse, organization owners
+ are limited to creating 50 organization invitations for an organization within
+ a 24 hour period. If the organization is more than one month old or on a paid
+ plan, the limit is 500 invitations per 24 hour period."
tags:
- orgs
operationId: orgs/set-membership-for-user
@@ -9912,7 +9965,7 @@ paths:
type: array
description: List of teams assigned to the organization role
items:
- "$ref": "#/components/schemas/team"
+ "$ref": "#/components/schemas/team-role-assignment"
examples:
default:
"$ref": "#/components/examples/team-items"
@@ -9958,7 +10011,7 @@ paths:
type: array
description: List of users assigned to the organization role
items:
- "$ref": "#/components/schemas/simple-user"
+ "$ref": "#/components/schemas/user-role-assignment"
examples:
default:
"$ref": "#/components/examples/simple-user-items"
@@ -11195,6 +11248,8 @@ paths:
enum:
- string
- single_select
+ - multi_select
+ - true_false
description: The type of the value for the property
required:
type: boolean
@@ -12465,84 +12520,6 @@ paths:
enabledForGitHubApps: false
category: billing
subcategory: billing
- "/orgs/{org}/team/{team_slug}/copilot/usage":
- get:
- summary: Get a summary of Copilot usage for a team
- description: |-
- **Note**: This endpoint is in beta and is subject to change.
-
- You can use this endpoint to see a daily breakdown of aggregated usage metrics for Copilot completions and Copilot Chat in the IDE
- for users within a team, with a further breakdown of suggestions, acceptances, and number of active users by editor and language for each day.
- See the response schema tab for detailed metrics definitions.
-
- The response contains metrics for the prior 28 days. Usage metrics are processed once per day for the previous day,
- and the response will only include data up until yesterday. In order for an end user to be counted towards these metrics,
- they must have telemetry enabled in their IDE.
-
- **Note**: This endpoint will only return results for a given day if the team had five or more members on that day.
-
- Copilot Business or Copilot Enterprise organization owners for the organization that contains this team,
- and owners and billing managers of their parent enterprises, can view Copilot usage metrics for a team.
-
- OAuth app tokens and personal access tokens (classic) need the `copilot`, `manage_billing:copilot`, `admin:org`, `admin:enterprise`, or `manage_billing:enterprise` scope to use this endpoint.
- tags:
- - copilot
- operationId: copilot/usage-metrics-for-team
- externalDocs:
- description: API method documentation
- url: https://docs.github.com/rest/copilot/copilot-usage#get-a-summary-of-copilot-usage-for-a-team
- parameters:
- - "$ref": "#/components/parameters/org"
- - "$ref": "#/components/parameters/team-slug"
- - name: since
- description: Show usage metrics since this date. This is a timestamp in [ISO
- 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:MM:SSZ`).
- Maximum value is 28 days ago.
- in: query
- required: false
- schema:
- type: string
- - name: until
- description: Show usage metrics until this date. This is a timestamp in [ISO
- 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:MM:SSZ`)
- and should not preceed the `since` date if it is passed.
- in: query
- required: false
- schema:
- type: string
- - "$ref": "#/components/parameters/page"
- - name: per_page
- description: The number of days of metrics to display per page (max 28). For
- more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."
- in: query
- schema:
- type: integer
- default: 28
- responses:
- '200':
- description: Response
- content:
- application/json:
- schema:
- type: array
- items:
- "$ref": "#/components/schemas/copilot-usage-metrics"
- examples:
- default:
- "$ref": "#/components/examples/copilot-usage-metrics-org"
- '500':
- "$ref": "#/components/responses/internal_error"
- '401':
- "$ref": "#/components/responses/requires_authentication"
- '403':
- "$ref": "#/components/responses/forbidden"
- '404':
- "$ref": "#/components/responses/not_found"
- x-github:
- githubCloudOnly: false
- enabledForGitHubApps: true
- category: copilot
- subcategory: copilot-usage
"/orgs/{org}/teams":
get:
summary: List teams
@@ -12890,7 +12867,7 @@ paths:
description: |-
Creates a new discussion post on a team's page.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
**Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions`.
@@ -13105,7 +13082,7 @@ paths:
description: |-
Creates a new comment on a team discussion.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
**Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments`.
@@ -14004,7 +13981,7 @@ paths:
description: |-
Checks whether a team has `admin`, `push`, `maintain`, `triage`, or `pull` permission for a repository. Repositories inherited through a parent team will also be checked.
- You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `application/vnd.github.v3.repository+json` accept header.
+ You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types/) via the `application/vnd.github.v3.repository+json` accept header.
If a team doesn't have permission for the repository, you will receive a `404 Not Found` response status.
@@ -15235,7 +15212,7 @@ paths:
* The `dependency_snapshots` object provides your rate limit status for submitting snapshots to the dependency graph. For more information, see "[Dependency graph](https://docs.github.com/rest/dependency-graph)."
* The `code_scanning_upload` object provides your rate limit status for uploading SARIF results to code scanning. For more information, see "[Uploading a SARIF file to GitHub](https://docs.github.com/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github)."
* The `actions_runner_registration` object provides your rate limit status for registering self-hosted runners in GitHub Actions. For more information, see "[Self-hosted runners](https://docs.github.com/rest/actions/self-hosted-runners)."
- * The `source_import` object is no longer in use for any API endpoints, and it will be removed in the next API version. For more information about API versions, see "[API Versions](https://docs.github.com/rest/overview/api-versions)."
+ * The `source_import` object is no longer in use for any API endpoints, and it will be removed in the next API version. For more information about API versions, see "[API Versions](https://docs.github.com/rest/about-the-rest-api/api-versions)."
**Note:** The `rate` object is deprecated. If you're writing new API client code or updating existing code, you should use the `core` object instead of the `rate` object. The `core` object contains the same information that is present in the `rate` object.
tags:
@@ -18898,9 +18875,9 @@ paths:
- "$ref": "#/components/parameters/owner"
- "$ref": "#/components/parameters/repo"
- name: protected
- description: Setting to `true` returns only protected branches. When set to
- `false`, only unprotected branches are returned. Omitting this parameter
- returns all branches.
+ description: Setting to `true` returns only branches protected by branch protections
+ or rulesets. When set to `false`, only unprotected branches are returned.
+ Omitting this parameter returns all branches.
in: query
required: false
schema:
@@ -22341,7 +22318,7 @@ paths:
By default this endpoint returns JSON metadata about the CodeQL database. To
download the CodeQL database binary content, set the `Accept` header of the request
- to [`application/zip`](https://docs.github.com/rest/overview/media-types), and make sure
+ to [`application/zip`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types), and make sure
your HTTP client is configured to follow redirects or use the `Location` header
to make a second request to get the redirect URL.
@@ -22385,6 +22362,236 @@ paths:
previews: []
category: code-scanning
subcategory: code-scanning
+ "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses":
+ post:
+ summary: Create a CodeQL variant analysis
+ description: |-
+ Creates a new CodeQL variant analysis, which will run a CodeQL query against one or more repositories.
+
+ Get started by learning more about [running CodeQL queries at scale with Multi-Repository Variant Analysis](https://docs.github.com/code-security/codeql-for-vs-code/getting-started-with-codeql-for-vs-code/running-codeql-queries-at-scale-with-multi-repository-variant-analysis).
+
+ Use the `owner` and `repo` parameters in the URL to specify the controller repository that
+ will be used for running GitHub Actions workflows and storing the results of the CodeQL variant analysis.
+
+ OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint.
+ tags:
+ - code-scanning
+ operationId: code-scanning/create-variant-analysis
+ externalDocs:
+ description: API method documentation
+ url: https://docs.github.com/rest/code-scanning/code-scanning#create-a-codeql-variant-analysis
+ parameters:
+ - "$ref": "#/components/parameters/owner"
+ - "$ref": "#/components/parameters/repo"
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ type: object
+ additionalProperties: false
+ properties:
+ language:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-language"
+ query_pack:
+ description: A Base64-encoded tarball containing a CodeQL query
+ and all its dependencies
+ type: string
+ repositories:
+ type: array
+ description: List of repository names (in the form `owner/repo-name`)
+ to run the query against. Precisely one property from `repositories`,
+ `repository_lists` and `repository_owners` is required.
+ items:
+ type: string
+ repository_lists:
+ description: List of repository lists to run the query against.
+ Precisely one property from `repositories`, `repository_lists`
+ and `repository_owners` is required.
+ type: array
+ maxItems: 1
+ items:
+ type: string
+ repository_owners:
+ description: List of organization or user names whose repositories
+ the query should be run against. Precisely one property from `repositories`,
+ `repository_lists` and `repository_owners` is required.
+ type: array
+ maxItems: 1
+ items:
+ type: string
+ required:
+ - language
+ - query_pack
+ oneOf:
+ - required:
+ - repositories
+ - required:
+ - repository_lists
+ - required:
+ - repository_owners
+ examples:
+ repositories_parameter:
+ summary: Using the "repositories" field. "query_pack" is abridged
+ for brevity.
+ value:
+ language: csharp
+ query_pack: aGVsbG8=
+ repositories:
+ - octocat/Hello-World
+ - octocat/example
+ repository_owners:
+ summary: Using the "repository_owners" field. "query_pack" is abridged.
+ value:
+ language: csharp
+ query_pack: aGVsbG8=
+ repository_owners:
+ - octocat
+ repository_lists:
+ summary: Using the "repository_lists" field. "query_pack" is abridged.
+ value:
+ language: csharp
+ query_pack: aGVsbG8=
+ repository_lists:
+ - top-100-csharp
+ responses:
+ '201':
+ description: Variant analysis submitted for processing
+ content:
+ application/json:
+ schema:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis"
+ examples:
+ repositories_parameter:
+ summary: Response for a successful variant analysis submission
+ value:
+ "$ref": "#/components/examples/code-scanning-variant-analysis"
+ repository_owners:
+ summary: Response for a successful variant analysis submission
+ value:
+ "$ref": "#/components/examples/code-scanning-variant-analysis"
+ repository_lists:
+ summary: Response for a successful variant analysis submission
+ value:
+ "$ref": "#/components/examples/code-scanning-variant-analysis"
+ '404':
+ "$ref": "#/components/responses/not_found"
+ '422':
+ description: Unable to process variant analysis submission
+ content:
+ application/json:
+ schema:
+ "$ref": "#/components/schemas/basic-error"
+ '503':
+ "$ref": "#/components/responses/service_unavailable"
+ x-github:
+ githubCloudOnly: false
+ enabledForGitHubApps: true
+ previews: []
+ category: code-scanning
+ subcategory: code-scanning
+ "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}":
+ get:
+ summary: Get the summary of a CodeQL variant analysis
+ description: |-
+ Gets the summary of a CodeQL variant analysis.
+
+ OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ tags:
+ - code-scanning
+ operationId: code-scanning/get-variant-analysis
+ externalDocs:
+ description: API method documentation
+ url: https://docs.github.com/rest/code-scanning/code-scanning#get-the-summary-of-a-codeql-variant-analysis
+ parameters:
+ - "$ref": "#/components/parameters/owner"
+ - "$ref": "#/components/parameters/repo"
+ - name: codeql_variant_analysis_id
+ in: path
+ description: The unique identifier of the variant analysis.
+ schema:
+ type: integer
+ required: true
+ responses:
+ '200':
+ description: Response
+ content:
+ application/json:
+ schema:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis"
+ examples:
+ default:
+ "$ref": "#/components/examples/code-scanning-variant-analysis"
+ '404':
+ "$ref": "#/components/responses/not_found"
+ '503':
+ "$ref": "#/components/responses/service_unavailable"
+ x-github:
+ githubCloudOnly: false
+ enabledForGitHubApps: true
+ previews: []
+ category: code-scanning
+ subcategory: code-scanning
+ "/repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}/repos/{repo_owner}/{repo_name}":
+ get:
+ summary: Get the analysis status of a repository in a CodeQL variant analysis
+ description: |-
+ Gets the analysis status of a repository in a CodeQL variant analysis.
+
+ OAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.
+ tags:
+ - code-scanning
+ operationId: code-scanning/get-variant-analysis-repo-task
+ externalDocs:
+ description: API method documentation
+ url: https://docs.github.com/rest/code-scanning/code-scanning#get-the-analysis-status-of-a-repository-in-a-codeql-variant-analysis
+ parameters:
+ - "$ref": "#/components/parameters/owner"
+ - name: repo
+ in: path
+ description: The name of the controller repository.
+ schema:
+ type: string
+ required: true
+ - name: codeql_variant_analysis_id
+ in: path
+ description: The ID of the variant analysis.
+ schema:
+ type: integer
+ required: true
+ - name: repo_owner
+ in: path
+ description: The account owner of the variant analysis repository. The name
+ is not case sensitive.
+ schema:
+ type: string
+ required: true
+ - name: repo_name
+ in: path
+ description: The name of the variant analysis repository.
+ schema:
+ type: string
+ required: true
+ responses:
+ '200':
+ description: Response
+ content:
+ application/json:
+ schema:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-repo-task"
+ examples:
+ default:
+ "$ref": "#/components/examples/code-scanning-variant-analysis-repo-task"
+ '404':
+ "$ref": "#/components/responses/not_found"
+ '503':
+ "$ref": "#/components/responses/service_unavailable"
+ x-github:
+ githubCloudOnly: false
+ enabledForGitHubApps: true
+ previews: []
+ category: code-scanning
+ subcategory: code-scanning
"/repos/{owner}/{repo}/code-scanning/default-setup":
get:
summary: Get a code scanning default setup configuration
@@ -22519,7 +22726,9 @@ paths:
more information, see \"[Get information about a SARIF upload](/rest/code-scanning/code-scanning#get-information-about-a-sarif-upload).\"\n\nOAuth
app tokens and personal access tokens (classic) need the `security_events`
scope to use this endpoint with private or public repositories, or the `public_repo`
- scope to use this endpoint with only public repositories."
+ scope to use this endpoint with only public repositories.\n\nThis endpoint
+ is limited to 1,000 requests per hour for each user or app installation calling
+ it."
operationId: code-scanning/upload-sarif
tags:
- code-scanning
@@ -23408,7 +23617,7 @@ paths:
put:
summary: Add a repository collaborator
description: |-
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
Adding an outside collaborator may be restricted by enterprise administrators. For more information, see "[Enforcing repository management policies in your enterprise](https://docs.github.com/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-outside-collaborators-to-repositories)."
@@ -23941,10 +24150,22 @@ paths:
required: false
schema:
type: string
- - "$ref": "#/components/parameters/since"
+ - name: since
+ description: 'Only show results that were last updated after the given time.
+ This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)
+ format: `YYYY-MM-DDTHH:MM:SSZ`. Due to limitations of Git, timestamps must
+ be between 1970-01-01 and 2099-12-31 (inclusive) or unexpected results may
+ be returned.'
+ in: query
+ required: false
+ schema:
+ type: string
+ format: date-time
- name: until
description: 'Only commits before this date will be returned. This is a timestamp
- in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`.'
+ in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`.
+ Due to limitations of Git, timestamps must be between 1970-01-01 and 2099-12-31
+ (inclusive) or unexpected results may be returned.'
in: query
required: false
schema:
@@ -24067,7 +24288,7 @@ paths:
description: |-
Create a comment for a commit using its `:commit_sha`.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -24527,7 +24748,7 @@ paths:
To process a response with a large number of commits, use a query parameter (`per_page` or `page`) to paginate the results. When using pagination:
- - The list of changed files is only shown on the first page of results, but it includes all changed files for the entire comparison.
+ - The list of changed files is only shown on the first page of results, and it includes up to 300 changed files for the entire comparison.
- The results are returned in chronological order, but the last commit in the returned list may not be the most recent one in the entire set if there are more pages of results.
For more information on working with pagination, see "[Using pagination in the REST API](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api)."
@@ -24688,6 +24909,8 @@ paths:
"$ref": "#/components/responses/forbidden"
'302':
"$ref": "#/components/responses/found"
+ '304':
+ "$ref": "#/components/responses/not_modified"
x-github:
githubCloudOnly: false
enabledForGitHubApps: true
@@ -29520,7 +29743,7 @@ paths:
description: |-
Any user with pull access to a repository can create an issue. If [issues are disabled in the repository](https://docs.github.com/articles/disabling-issues/), the API returns a `410 Gone` status.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -30422,7 +30645,7 @@ paths:
This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications).
Creating content too quickly using this endpoint may result in secondary rate limiting.
- For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -32179,7 +32402,7 @@ paths:
type: string
description: Specify a custom domain for the repository. Sending
a `null` value will remove the custom domain. For more about custom
- domains, see "[Using a custom domain with GitHub Pages](https://docs.github.com/articles/using-a-custom-domain-with-github-pages/)."
+ domains, see "[Using a custom domain with GitHub Pages](https://docs.github.com/pages/configuring-a-custom-domain-for-your-github-pages-site)."
nullable: true
https_enforced:
type: boolean
@@ -33012,7 +33235,7 @@ paths:
To open or update a pull request in a public repository, you must have write access to the head or the source branch. For organization-owned repositories, you must be a member of the organization that owns the repository to open or update a pull request.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -33455,7 +33678,7 @@ paths:
* If merged via a [squash](https://docs.github.com/articles/about-merge-methods-on-github/#squashing-your-merge-commits), `merge_commit_sha` represents the SHA of the squashed commit on the base branch.
* If [rebased](https://docs.github.com/articles/about-merge-methods-on-github/#rebasing-and-merging-your-commits), `merge_commit_sha` represents the commit that the base branch was updated to.
- Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) to fetch diff and patch formats.
+ Pass the appropriate [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types) to fetch diff and patch formats.
This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -33476,7 +33699,7 @@ paths:
- "$ref": "#/components/parameters/pull-number"
responses:
'200':
- description: Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests)
+ description: Pass the appropriate [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)
to fetch diff and patch formats.
content:
application/json:
@@ -33747,7 +33970,7 @@ paths:
The `position` parameter is deprecated. If you use `position`, the `line`, `side`, `start_line`, and `start_side` parameters are not required.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -33896,7 +34119,7 @@ paths:
description: |-
Creates a reply to a review comment for a pull request. For the `comment_id`, provide the ID of the review comment you are replying to. This must be the ID of a _top-level review comment_, not a reply to that comment. Replies to replies are not supported.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)"
and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."
@@ -34084,7 +34307,7 @@ paths:
summary: Merge a pull request
description: |-
Merges a pull request into the base branch.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
tags:
- pulls
operationId: pulls/merge
@@ -34217,7 +34440,7 @@ paths:
summary: Request reviewers for a pull request
description: |-
Requests reviews for a pull request from a given set of users and/or teams.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
tags:
- pulls
operationId: pulls/request-reviewers
@@ -34387,7 +34610,7 @@ paths:
description: |-
Creates a review on a specified pull request.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
Pull request reviews created in the `PENDING` state are not submitted and therefore do not include the `submitted_at` property in the response. To create a pending review for a pull request, leave the `event` parameter blank. For more information about submitting a `PENDING` review, see "[Submit a review for a pull request](https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request)."
@@ -35040,7 +35263,7 @@ paths:
description: |-
Users with push access to the repository can create a release.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
tags:
- repos
operationId: repos/create-release
@@ -35153,7 +35376,7 @@ paths:
get:
summary: Get a release asset
description: To download the asset's binary content, set the `Accept` header
- of the request to [`application/octet-stream`](https://docs.github.com/rest/overview/media-types).
+ of the request to [`application/octet-stream`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).
The API will either redirect the client to the location, or stream it directly
if possible. API clients should handle both a `200` or `302` response.
tags:
@@ -37374,8 +37597,11 @@ paths:
subcategory: repos
"/repos/{owner}/{repo}/tags/protection":
get:
- summary: List tag protection states for a repository
+ summary: Deprecated - List tag protection states for a repository
description: |-
+ **Note**: This operation is deprecated and will be removed after August 30th 2024
+ Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#get-all-repository-rulesets)" endpoint instead.
+
This returns the tag protection states of a repository.
This information is only available to repository administrators.
@@ -37384,7 +37610,7 @@ paths:
operationId: repos/list-tag-protection
externalDocs:
description: API method documentation
- url: https://docs.github.com/rest/repos/tags#list-tag-protection-states-for-a-repository
+ url: https://docs.github.com/rest/repos/tags#deprecated---list-tag-protection-states-for-a-repository
parameters:
- "$ref": "#/components/parameters/owner"
- "$ref": "#/components/parameters/repo"
@@ -37409,9 +37635,15 @@ paths:
enabledForGitHubApps: true
category: repos
subcategory: tags
+ deprecationDate: '2024-05-29'
+ removalDate: '2024-08-30'
+ deprecated: true
post:
- summary: Create a tag protection state for a repository
+ summary: Deprecated - Create a tag protection state for a repository
description: |-
+ **Note**: This operation is deprecated and will be removed after August 30th 2024
+ Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#create-a-repository-ruleset)" endpoint instead.
+
This creates a tag protection state for a repository.
This endpoint is only available to repository administrators.
tags:
@@ -37419,7 +37651,7 @@ paths:
operationId: repos/create-tag-protection
externalDocs:
description: API method documentation
- url: https://docs.github.com/rest/repos/tags#create-a-tag-protection-state-for-a-repository
+ url: https://docs.github.com/rest/repos/tags#deprecated---create-a-tag-protection-state-for-a-repository
parameters:
- "$ref": "#/components/parameters/owner"
- "$ref": "#/components/parameters/repo"
@@ -37459,10 +37691,16 @@ paths:
enabledForGitHubApps: true
category: repos
subcategory: tags
+ deprecationDate: '2024-05-29'
+ removalDate: '2024-08-30'
+ deprecated: true
"/repos/{owner}/{repo}/tags/protection/{tag_protection_id}":
delete:
- summary: Delete a tag protection state for a repository
+ summary: Deprecated - Delete a tag protection state for a repository
description: |-
+ **Note**: This operation is deprecated and will be removed after August 30th 2024
+ Use the "[Repository Rulesets](https://docs.github.com/rest/repos/rules#delete-a-repository-ruleset)" endpoint instead.
+
This deletes a tag protection state for a repository.
This endpoint is only available to repository administrators.
tags:
@@ -37470,7 +37708,7 @@ paths:
operationId: repos/delete-tag-protection
externalDocs:
description: API method documentation
- url: https://docs.github.com/rest/repos/tags#delete-a-tag-protection-state-for-a-repository
+ url: https://docs.github.com/rest/repos/tags#deprecated---delete-a-tag-protection-state-for-a-repository
parameters:
- "$ref": "#/components/parameters/owner"
- "$ref": "#/components/parameters/repo"
@@ -37487,6 +37725,9 @@ paths:
enabledForGitHubApps: true
category: repos
subcategory: tags
+ deprecationDate: '2024-05-29'
+ removalDate: '2024-08-30'
+ deprecated: true
"/repos/{owner}/{repo}/tarball/{ref}":
get:
summary: Download a repository archive (tar)
@@ -38882,7 +39123,7 @@ paths:
Creates a new discussion post on a team's page.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.
tags:
@@ -39107,7 +39348,7 @@ paths:
Creates a new comment on a team discussion.
- This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
+ This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api)."
OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.
tags:
@@ -40088,7 +40329,7 @@ paths:
**Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Check team permissions for a repository](https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-repository) endpoint.
- You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `Accept` header:
+ You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types/) via the `Accept` header:
tags:
- teams
operationId: teams/check-permissions-for-repo-legacy
@@ -42238,8 +42479,9 @@ paths:
"/user/installations/{installation_id}/repositories/{repository_id}":
put:
summary: Add a repository to an app installation
- description: Add a single repository to an installation. The authenticated user
- must have admin access to the repository.
+ description: "Add a single repository to an installation. The authenticated
+ user must have admin access to the repository. \n\nThis endpoint only works
+ for PATs (classic) with the `repo` scope."
tags:
- apps
operationId: apps/add-repo-to-installation-for-authenticated-user
@@ -42265,9 +42507,10 @@ paths:
subcategory: installations
delete:
summary: Remove a repository from an app installation
- description: Remove a single repository from an installation. The authenticated
+ description: "Remove a single repository from an installation. The authenticated
user must have admin access to the repository. The installation must have
- the `repository_selection` of `selected`.
+ the `repository_selection` of `selected`. \n\nThis endpoint only works for
+ PATs (classic) with the `repo` scope."
tags:
- apps
operationId: apps/remove-repo-from-installation-for-authenticated-user
@@ -57968,7 +58211,7 @@ x-webhooks:
To subscribe to this event, a GitHub App must have at least read-level access for the "Contents" repository permission.
- **Note**: An event will not be created when more than three tags are pushed at once.
+ **Note**: Events will not be created if more than 5000 branches are pushed at once. Events will not be created for tags when more than three tags are pushed at once.
operationId: push
externalDocs:
url: https://docs.github.com/webhooks/webhook-events-and-payloads#push
@@ -60178,72 +60421,6 @@ x-webhooks:
- repository
- organization
- app
- secret-scanning-alert-revoked:
- post:
- summary: |-
- This event occurs when there is activity relating to a secret scanning alert. For more information about secret scanning, see "[About secret scanning](https://docs.github.com/code-security/secret-scanning/about-secret-scanning)." For information about the API to manage secret scanning alerts, see "[Secret scanning](https://docs.github.com/rest/secret-scanning)" in the REST API documentation.
-
- For activity relating to secret scanning alert locations, use the `secret_scanning_alert_location` event.
-
- To subscribe to this event, a GitHub App must have at least read-level access for the "Secret scanning alerts" repository permission.
- description: A secret scanning alert was marked as revoked.
- operationId: secret-scanning-alert/revoked
- externalDocs:
- url: https://docs.github.com/webhooks/webhook-events-and-payloads#secret_scanning_alert
- parameters:
- - name: User-Agent
- in: header
- example: GitHub-Hookshot/123abc
- schema:
- type: string
- - name: X-Github-Hook-Id
- in: header
- example: 12312312
- schema:
- type: string
- - name: X-Github-Event
- in: header
- example: issues
- schema:
- type: string
- - name: X-Github-Hook-Installation-Target-Id
- in: header
- example: 123123
- schema:
- type: string
- - name: X-Github-Hook-Installation-Target-Type
- in: header
- example: repository
- schema:
- type: string
- - name: X-GitHub-Delivery
- in: header
- example: 0b989ba4-242f-11e5-81e1-c7b6966d2516
- schema:
- type: string
- - name: X-Hub-Signature-256
- in: header
- example: sha256=6dcb09b5b57875f334f61aebed695e2e4193db5e
- schema:
- type: string
- requestBody:
- required: true
- content:
- application/json:
- schema:
- "$ref": "#/components/schemas/webhook-secret-scanning-alert-revoked"
- responses:
- '200':
- description: Return a 200 status to indicate that the data was received
- successfully
- x-github:
- githubCloudOnly: false
- category: webhooks
- subcategory: secret_scanning_alert
- supported-webhook-types:
- - repository
- - organization
- - app
secret-scanning-alert-validated:
post:
summary: |-
@@ -62945,6 +63122,12 @@ components:
type: integer
example: 123
nullable: true
+ throttled_at:
+ description: Time when the webhook delivery was throttled.
+ type: string
+ format: date-time
+ example: '2021-05-12T20:33:44Z'
+ nullable: true
required:
- id
- guid
@@ -63074,6 +63257,12 @@ components:
type: integer
example: 123
nullable: true
+ throttled_at:
+ description: Time when the webhook delivery was throttled.
+ type: string
+ format: date-time
+ example: '2021-05-12T20:33:44Z'
+ nullable: true
url:
description: The URL target of the delivery.
type: string
@@ -64827,6 +65016,427 @@ components:
- html_url
- key
- name
+ nullable-team-simple:
+ title: Team Simple
+ description: Groups of organization members that gives permissions on specified
+ repositories.
+ type: object
+ properties:
+ id:
+ description: Unique identifier of the team
+ type: integer
+ example: 1
+ node_id:
+ type: string
+ example: MDQ6VGVhbTE=
+ url:
+ description: URL for the team
+ type: string
+ format: uri
+ example: https://api.github.com/organizations/1/team/1
+ members_url:
+ type: string
+ example: https://api.github.com/organizations/1/team/1/members{/member}
+ name:
+ description: Name of the team
+ type: string
+ example: Justice League
+ description:
+ description: Description of the team
+ type: string
+ nullable: true
+ example: A great team.
+ permission:
+ description: Permission that the team will have for its repositories
+ type: string
+ example: admin
+ privacy:
+ description: The level of privacy this team should have
+ type: string
+ example: closed
+ notification_setting:
+ description: The notification setting the team has set
+ type: string
+ example: notifications_enabled
+ html_url:
+ type: string
+ format: uri
+ example: https://github.com/orgs/rails/teams/core
+ repositories_url:
+ type: string
+ format: uri
+ example: https://api.github.com/organizations/1/team/1/repos
+ slug:
+ type: string
+ example: justice-league
+ ldap_dn:
+ description: Distinguished Name (DN) that team maps to within LDAP environment
+ example: uid=example,ou=users,dc=github,dc=com
+ type: string
+ required:
+ - id
+ - node_id
+ - url
+ - members_url
+ - name
+ - description
+ - permission
+ - html_url
+ - repositories_url
+ - slug
+ nullable: true
+ team:
+ title: Team
+ description: Groups of organization members that gives permissions on specified
+ repositories.
+ type: object
+ properties:
+ id:
+ type: integer
+ node_id:
+ type: string
+ name:
+ type: string
+ slug:
+ type: string
+ description:
+ type: string
+ nullable: true
+ privacy:
+ type: string
+ notification_setting:
+ type: string
+ permission:
+ type: string
+ permissions:
+ type: object
+ properties:
+ pull:
+ type: boolean
+ triage:
+ type: boolean
+ push:
+ type: boolean
+ maintain:
+ type: boolean
+ admin:
+ type: boolean
+ required:
+ - pull
+ - triage
+ - push
+ - maintain
+ - admin
+ url:
+ type: string
+ format: uri
+ html_url:
+ type: string
+ format: uri
+ example: https://github.com/orgs/rails/teams/core
+ members_url:
+ type: string
+ repositories_url:
+ type: string
+ format: uri
+ parent:
+ "$ref": "#/components/schemas/nullable-team-simple"
+ required:
+ - id
+ - node_id
+ - url
+ - members_url
+ - name
+ - description
+ - permission
+ - html_url
+ - repositories_url
+ - slug
+ - parent
+ organization:
+ title: Organization
+ description: GitHub account for managing multiple users, teams, and repositories
+ type: object
+ properties:
+ login:
+ description: Unique login name of the organization
+ example: new-org
+ type: string
+ url:
+ description: URL for the organization
+ example: https://api.github.com/orgs/github
+ type: string
+ format: uri
+ id:
+ type: integer
+ node_id:
+ type: string
+ repos_url:
+ type: string
+ format: uri
+ events_url:
+ type: string
+ format: uri
+ hooks_url:
+ type: string
+ issues_url:
+ type: string
+ members_url:
+ type: string
+ public_members_url:
+ type: string
+ avatar_url:
+ type: string
+ description:
+ type: string
+ nullable: true
+ blog:
+ description: Display blog url for the organization
+ example: blog.example-org.com
+ type: string
+ format: uri
+ html_url:
+ type: string
+ format: uri
+ name:
+ description: Display name for the organization
+ example: New Org
+ type: string
+ company:
+ description: Display company name for the organization
+ example: Acme corporation
+ type: string
+ location:
+ description: Display location for the organization
+ example: Berlin, Germany
+ type: string
+ email:
+ description: Display email for the organization
+ example: org@example.com
+ type: string
+ format: email
+ has_organization_projects:
+ description: Specifies if organization projects are enabled for this org
+ type: boolean
+ has_repository_projects:
+ description: Specifies if repository projects are enabled for repositories
+ that belong to this org
+ type: boolean
+ is_verified:
+ type: boolean
+ public_repos:
+ type: integer
+ public_gists:
+ type: integer
+ followers:
+ type: integer
+ following:
+ type: integer
+ type:
+ type: string
+ created_at:
+ type: string
+ format: date-time
+ updated_at:
+ type: string
+ format: date-time
+ plan:
+ type: object
+ properties:
+ name:
+ type: string
+ space:
+ type: integer
+ private_repos:
+ type: integer
+ filled_seats:
+ type: integer
+ seats:
+ type: integer
+ required:
+ - login
+ - url
+ - id
+ - node_id
+ - repos_url
+ - events_url
+ - hooks_url
+ - issues_url
+ - members_url
+ - public_members_url
+ - avatar_url
+ - description
+ - html_url
+ - has_organization_projects
+ - has_repository_projects
+ - public_repos
+ - public_gists
+ - followers
+ - following
+ - type
+ - created_at
+ - updated_at
+ organization-simple:
+ title: Organization Simple
+ description: A GitHub organization.
+ type: object
+ properties:
+ login:
+ type: string
+ example: github
+ id:
+ type: integer
+ example: 1
+ node_id:
+ type: string
+ example: MDEyOk9yZ2FuaXphdGlvbjE=
+ url:
+ type: string
+ format: uri
+ example: https://api.github.com/orgs/github
+ repos_url:
+ type: string
+ format: uri
+ example: https://api.github.com/orgs/github/repos
+ events_url:
+ type: string
+ format: uri
+ example: https://api.github.com/orgs/github/events
+ hooks_url:
+ type: string
+ example: https://api.github.com/orgs/github/hooks
+ issues_url:
+ type: string
+ example: https://api.github.com/orgs/github/issues
+ members_url:
+ type: string
+ example: https://api.github.com/orgs/github/members{/member}
+ public_members_url:
+ type: string
+ example: https://api.github.com/orgs/github/public_members{/member}
+ avatar_url:
+ type: string
+ example: https://github.com/images/error/octocat_happy.gif
+ description:
+ type: string
+ example: A great organization
+ nullable: true
+ required:
+ - login
+ - url
+ - id
+ - node_id
+ - repos_url
+ - events_url
+ - hooks_url
+ - issues_url
+ - members_url
+ - public_members_url
+ - avatar_url
+ - description
+ enterprise-team:
+ title: Enterprise Team
+ description: Group of enterprise owners and/or members
+ type: object
+ properties:
+ id:
+ type: integer
+ name:
+ type: string
+ slug:
+ type: string
+ url:
+ type: string
+ format: uri
+ sync_to_organizations:
+ type: string
+ example: disabled | all
+ group_id:
+ nullable: true
+ type: integer
+ example: 1
+ html_url:
+ type: string
+ format: uri
+ example: https://github.com/enterprises/dc/teams/justice-league
+ members_url:
+ type: string
+ created_at:
+ type: string
+ format: date-time
+ updated_at:
+ type: string
+ format: date-time
+ required:
+ - id
+ - url
+ - members_url
+ - sync_to_organizations
+ - name
+ - html_url
+ - slug
+ - created_at
+ - updated_at
+ copilot-seat-details:
+ title: Copilot Business Seat Detail
+ description: Information about a Copilot Business seat assignment for a user,
+ team, or organization.
+ type: object
+ properties:
+ assignee:
+ type: object
+ description: The assignee that has been granted access to GitHub Copilot.
+ additionalProperties: true
+ oneOf:
+ - "$ref": "#/components/schemas/simple-user"
+ - "$ref": "#/components/schemas/team"
+ - "$ref": "#/components/schemas/organization"
+ organization:
+ type: object
+ description: The organization to which this seat belongs.
+ nullable: true
+ oneOf:
+ - "$ref": "#/components/schemas/organization-simple"
+ assigning_team:
+ description: The team through which the assignee is granted access to GitHub
+ Copilot, if applicable.
+ oneOf:
+ - "$ref": "#/components/schemas/team"
+ - "$ref": "#/components/schemas/enterprise-team"
+ nullable: true
+ pending_cancellation_date:
+ type: string
+ format: date
+ nullable: true
+ description: The pending cancellation date for the seat, in `YYYY-MM-DD`
+ format. This will be null unless the assignee's Copilot access has been
+ canceled during the current billing cycle. If the seat has been cancelled,
+ this corresponds to the start of the organization's next billing cycle.
+ last_activity_at:
+ type: string
+ format: date-time
+ nullable: true
+ description: Timestamp of user's last GitHub Copilot activity, in ISO 8601
+ format.
+ last_activity_editor:
+ type: string
+ nullable: true
+ description: Last editor that was used by the user for a GitHub Copilot
+ completion.
+ created_at:
+ type: string
+ format: date-time
+ description: Timestamp of when the assignee was last granted access to GitHub
+ Copilot, in ISO 8601 format.
+ updated_at:
+ type: string
+ format: date-time
+ description: Timestamp of when the assignee's GitHub Copilot access was
+ last updated, in ISO 8601 format.
+ required:
+ - assignee
+ - created_at
+ additionalProperties: false
copilot-usage-metrics:
title: Copilot Usage Metrics
description: Summary of Copilot usage.
@@ -66432,6 +67042,10 @@ components:
type: string
format: email
nullable: true
+ notification_email:
+ type: string
+ format: email
+ nullable: true
hireable:
type: boolean
nullable: true
@@ -67169,6 +67783,12 @@ components:
type: string
example:
- 192.0.2.1
+ actions_macos:
+ type: array
+ items:
+ type: string
+ example:
+ - 192.0.2.1
dependabot:
type: array
items:
@@ -67663,64 +68283,6 @@ components:
- reason
- url
- subscribed
- organization-simple:
- title: Organization Simple
- description: A GitHub organization.
- type: object
- properties:
- login:
- type: string
- example: github
- id:
- type: integer
- example: 1
- node_id:
- type: string
- example: MDEyOk9yZ2FuaXphdGlvbjE=
- url:
- type: string
- format: uri
- example: https://api.github.com/orgs/github
- repos_url:
- type: string
- format: uri
- example: https://api.github.com/orgs/github/repos
- events_url:
- type: string
- format: uri
- example: https://api.github.com/orgs/github/events
- hooks_url:
- type: string
- example: https://api.github.com/orgs/github/hooks
- issues_url:
- type: string
- example: https://api.github.com/orgs/github/issues
- members_url:
- type: string
- example: https://api.github.com/orgs/github/members{/member}
- public_members_url:
- type: string
- example: https://api.github.com/orgs/github/public_members{/member}
- avatar_url:
- type: string
- example: https://github.com/images/error/octocat_happy.gif
- description:
- type: string
- example: A great organization
- nullable: true
- required:
- - login
- - url
- - id
- - node_id
- - repos_url
- - events_url
- - hooks_url
- - issues_url
- - members_url
- - public_members_url
- - avatar_url
- - description
organization-full:
title: Organization Full
description: Organization Full
@@ -68993,319 +69555,6 @@ components:
- public_code_suggestions
- seat_management_setting
additionalProperties: true
- nullable-team-simple:
- title: Team Simple
- description: Groups of organization members that gives permissions on specified
- repositories.
- type: object
- properties:
- id:
- description: Unique identifier of the team
- type: integer
- example: 1
- node_id:
- type: string
- example: MDQ6VGVhbTE=
- url:
- description: URL for the team
- type: string
- format: uri
- example: https://api.github.com/organizations/1/team/1
- members_url:
- type: string
- example: https://api.github.com/organizations/1/team/1/members{/member}
- name:
- description: Name of the team
- type: string
- example: Justice League
- description:
- description: Description of the team
- type: string
- nullable: true
- example: A great team.
- permission:
- description: Permission that the team will have for its repositories
- type: string
- example: admin
- privacy:
- description: The level of privacy this team should have
- type: string
- example: closed
- notification_setting:
- description: The notification setting the team has set
- type: string
- example: notifications_enabled
- html_url:
- type: string
- format: uri
- example: https://github.com/orgs/rails/teams/core
- repositories_url:
- type: string
- format: uri
- example: https://api.github.com/organizations/1/team/1/repos
- slug:
- type: string
- example: justice-league
- ldap_dn:
- description: Distinguished Name (DN) that team maps to within LDAP environment
- example: uid=example,ou=users,dc=github,dc=com
- type: string
- required:
- - id
- - node_id
- - url
- - members_url
- - name
- - description
- - permission
- - html_url
- - repositories_url
- - slug
- nullable: true
- team:
- title: Team
- description: Groups of organization members that gives permissions on specified
- repositories.
- type: object
- properties:
- id:
- type: integer
- node_id:
- type: string
- name:
- type: string
- slug:
- type: string
- description:
- type: string
- nullable: true
- privacy:
- type: string
- notification_setting:
- type: string
- permission:
- type: string
- permissions:
- type: object
- properties:
- pull:
- type: boolean
- triage:
- type: boolean
- push:
- type: boolean
- maintain:
- type: boolean
- admin:
- type: boolean
- required:
- - pull
- - triage
- - push
- - maintain
- - admin
- url:
- type: string
- format: uri
- html_url:
- type: string
- format: uri
- example: https://github.com/orgs/rails/teams/core
- members_url:
- type: string
- repositories_url:
- type: string
- format: uri
- parent:
- "$ref": "#/components/schemas/nullable-team-simple"
- required:
- - id
- - node_id
- - url
- - members_url
- - name
- - description
- - permission
- - html_url
- - repositories_url
- - slug
- - parent
- organization:
- title: Organization
- description: GitHub account for managing multiple users, teams, and repositories
- type: object
- properties:
- login:
- description: Unique login name of the organization
- example: new-org
- type: string
- url:
- description: URL for the organization
- example: https://api.github.com/orgs/github
- type: string
- format: uri
- id:
- type: integer
- node_id:
- type: string
- repos_url:
- type: string
- format: uri
- events_url:
- type: string
- format: uri
- hooks_url:
- type: string
- issues_url:
- type: string
- members_url:
- type: string
- public_members_url:
- type: string
- avatar_url:
- type: string
- description:
- type: string
- nullable: true
- blog:
- description: Display blog url for the organization
- example: blog.example-org.com
- type: string
- format: uri
- html_url:
- type: string
- format: uri
- name:
- description: Display name for the organization
- example: New Org
- type: string
- company:
- description: Display company name for the organization
- example: Acme corporation
- type: string
- location:
- description: Display location for the organization
- example: Berlin, Germany
- type: string
- email:
- description: Display email for the organization
- example: org@example.com
- type: string
- format: email
- has_organization_projects:
- description: Specifies if organization projects are enabled for this org
- type: boolean
- has_repository_projects:
- description: Specifies if repository projects are enabled for repositories
- that belong to this org
- type: boolean
- is_verified:
- type: boolean
- public_repos:
- type: integer
- public_gists:
- type: integer
- followers:
- type: integer
- following:
- type: integer
- type:
- type: string
- created_at:
- type: string
- format: date-time
- updated_at:
- type: string
- format: date-time
- plan:
- type: object
- properties:
- name:
- type: string
- space:
- type: integer
- private_repos:
- type: integer
- filled_seats:
- type: integer
- seats:
- type: integer
- required:
- - login
- - url
- - id
- - node_id
- - repos_url
- - events_url
- - hooks_url
- - issues_url
- - members_url
- - public_members_url
- - avatar_url
- - description
- - html_url
- - has_organization_projects
- - has_repository_projects
- - public_repos
- - public_gists
- - followers
- - following
- - type
- - created_at
- - updated_at
- copilot-seat-details:
- title: Copilot Business Seat Detail
- description: Information about a Copilot Business seat assignment for a user,
- team, or organization.
- type: object
- properties:
- assignee:
- type: object
- description: The assignee that has been granted access to GitHub Copilot.
- additionalProperties: true
- oneOf:
- - "$ref": "#/components/schemas/simple-user"
- - "$ref": "#/components/schemas/team"
- - "$ref": "#/components/schemas/organization"
- assigning_team:
- description: The team that granted access to GitHub Copilot to the assignee.
- This will be null if the user was assigned a seat individually.
- oneOf:
- - "$ref": "#/components/schemas/team"
- nullable: true
- pending_cancellation_date:
- type: string
- format: date
- nullable: true
- description: The pending cancellation date for the seat, in `YYYY-MM-DD`
- format. This will be null unless the assignee's Copilot access has been
- canceled during the current billing cycle. If the seat has been cancelled,
- this corresponds to the start of the organization's next billing cycle.
- last_activity_at:
- type: string
- format: date-time
- nullable: true
- description: Timestamp of user's last GitHub Copilot activity, in ISO 8601
- format.
- last_activity_editor:
- type: string
- nullable: true
- description: Last editor that was used by the user for a GitHub Copilot
- completion.
- created_at:
- type: string
- format: date-time
- description: Timestamp of when the assignee was last granted access to GitHub
- Copilot, in ISO 8601 format.
- updated_at:
- type: string
- format: date-time
- description: Timestamp of when the assignee's GitHub Copilot access was
- last updated, in ISO 8601 format.
- required:
- - assignee
- - created_at
- additionalProperties: false
organization-dependabot-secret:
title: Dependabot Secret for an Organization
description: Secrets for GitHub Dependabot for an organization.
@@ -70082,6 +70331,236 @@ components:
- organization
- created_at
- updated_at
+ team-role-assignment:
+ title: A Role Assignment for a Team
+ description: The Relationship a Team has with a role.
+ type: object
+ properties:
+ id:
+ type: integer
+ node_id:
+ type: string
+ name:
+ type: string
+ slug:
+ type: string
+ description:
+ type: string
+ nullable: true
+ privacy:
+ type: string
+ notification_setting:
+ type: string
+ permission:
+ type: string
+ permissions:
+ type: object
+ properties:
+ pull:
+ type: boolean
+ triage:
+ type: boolean
+ push:
+ type: boolean
+ maintain:
+ type: boolean
+ admin:
+ type: boolean
+ required:
+ - pull
+ - triage
+ - push
+ - maintain
+ - admin
+ url:
+ type: string
+ format: uri
+ html_url:
+ type: string
+ format: uri
+ example: https://github.com/orgs/rails/teams/core
+ members_url:
+ type: string
+ repositories_url:
+ type: string
+ format: uri
+ parent:
+ "$ref": "#/components/schemas/nullable-team-simple"
+ required:
+ - id
+ - node_id
+ - url
+ - members_url
+ - name
+ - description
+ - permission
+ - html_url
+ - repositories_url
+ - slug
+ - parent
+ team-simple:
+ title: Team Simple
+ description: Groups of organization members that gives permissions on specified
+ repositories.
+ type: object
+ properties:
+ id:
+ description: Unique identifier of the team
+ type: integer
+ example: 1
+ node_id:
+ type: string
+ example: MDQ6VGVhbTE=
+ url:
+ description: URL for the team
+ type: string
+ format: uri
+ example: https://api.github.com/organizations/1/team/1
+ members_url:
+ type: string
+ example: https://api.github.com/organizations/1/team/1/members{/member}
+ name:
+ description: Name of the team
+ type: string
+ example: Justice League
+ description:
+ description: Description of the team
+ type: string
+ nullable: true
+ example: A great team.
+ permission:
+ description: Permission that the team will have for its repositories
+ type: string
+ example: admin
+ privacy:
+ description: The level of privacy this team should have
+ type: string
+ example: closed
+ notification_setting:
+ description: The notification setting the team has set
+ type: string
+ example: notifications_enabled
+ html_url:
+ type: string
+ format: uri
+ example: https://github.com/orgs/rails/teams/core
+ repositories_url:
+ type: string
+ format: uri
+ example: https://api.github.com/organizations/1/team/1/repos
+ slug:
+ type: string
+ example: justice-league
+ ldap_dn:
+ description: Distinguished Name (DN) that team maps to within LDAP environment
+ example: uid=example,ou=users,dc=github,dc=com
+ type: string
+ required:
+ - id
+ - node_id
+ - url
+ - members_url
+ - name
+ - description
+ - permission
+ - html_url
+ - repositories_url
+ - slug
+ user-role-assignment:
+ title: A Role Assignment for a User
+ description: The Relationship a User has with a role.
+ type: object
+ properties:
+ name:
+ nullable: true
+ type: string
+ email:
+ nullable: true
+ type: string
+ login:
+ type: string
+ example: octocat
+ id:
+ type: integer
+ example: 1
+ node_id:
+ type: string
+ example: MDQ6VXNlcjE=
+ avatar_url:
+ type: string
+ format: uri
+ example: https://github.com/images/error/octocat_happy.gif
+ gravatar_id:
+ type: string
+ example: 41d064eb2195891e12d0413f63227ea7
+ nullable: true
+ url:
+ type: string
+ format: uri
+ example: https://api.github.com/users/octocat
+ html_url:
+ type: string
+ format: uri
+ example: https://github.com/octocat
+ followers_url:
+ type: string
+ format: uri
+ example: https://api.github.com/users/octocat/followers
+ following_url:
+ type: string
+ example: https://api.github.com/users/octocat/following{/other_user}
+ gists_url:
+ type: string
+ example: https://api.github.com/users/octocat/gists{/gist_id}
+ starred_url:
+ type: string
+ example: https://api.github.com/users/octocat/starred{/owner}{/repo}
+ subscriptions_url:
+ type: string
+ format: uri
+ example: https://api.github.com/users/octocat/subscriptions
+ organizations_url:
+ type: string
+ format: uri
+ example: https://api.github.com/users/octocat/orgs
+ repos_url:
+ type: string
+ format: uri
+ example: https://api.github.com/users/octocat/repos
+ events_url:
+ type: string
+ example: https://api.github.com/users/octocat/events{/privacy}
+ received_events_url:
+ type: string
+ format: uri
+ example: https://api.github.com/users/octocat/received_events
+ type:
+ type: string
+ example: User
+ site_admin:
+ type: boolean
+ starred_at:
+ type: string
+ example: '"2020-07-09T00:17:55Z"'
+ required:
+ - avatar_url
+ - events_url
+ - followers_url
+ - following_url
+ - gists_url
+ - gravatar_id
+ - html_url
+ - id
+ - node_id
+ - login
+ - organizations_url
+ - received_events_url
+ - repos_url
+ - site_admin
+ - starred_url
+ - subscriptions_url
+ - type
+ - url
package-version:
title: Package Version
description: A version of a software package
@@ -70398,6 +70877,8 @@ components:
enum:
- string
- single_select
+ - multi_select
+ - true_false
description: The type of the value for the property
required:
type: boolean
@@ -72052,6 +72533,30 @@ components:
- alerts_threshold
- security_alerts_threshold
- tool
+ repository-rule-code-scanning:
+ title: code_scanning
+ description: Choose which tools must provide code scanning results before the
+ reference is updated. When configured, code scanning must be enabled and have
+ results for both the commit and the reference being updated.
+ type: object
+ required:
+ - type
+ properties:
+ type:
+ type: string
+ enum:
+ - code_scanning
+ parameters:
+ type: object
+ properties:
+ code_scanning_tools:
+ type: array
+ description: Tools that must provide code scanning results for this
+ rule to pass.
+ items:
+ "$ref": "#/components/schemas/repository-rule-params-code-scanning-tool"
+ required:
+ - code_scanning_tools
repository-rule:
title: Repository Rule
type: object
@@ -72167,6 +72672,7 @@ components:
required:
- max_file_size
- "$ref": "#/components/schemas/repository-rule-workflows"
+ - "$ref": "#/components/schemas/repository-rule-code-scanning"
repository-ruleset:
title: Repository ruleset
type: object
@@ -72686,74 +73192,6 @@ components:
- collaborating_teams
- private_fork
additionalProperties: false
- team-simple:
- title: Team Simple
- description: Groups of organization members that gives permissions on specified
- repositories.
- type: object
- properties:
- id:
- description: Unique identifier of the team
- type: integer
- example: 1
- node_id:
- type: string
- example: MDQ6VGVhbTE=
- url:
- description: URL for the team
- type: string
- format: uri
- example: https://api.github.com/organizations/1/team/1
- members_url:
- type: string
- example: https://api.github.com/organizations/1/team/1/members{/member}
- name:
- description: Name of the team
- type: string
- example: Justice League
- description:
- description: Description of the team
- type: string
- nullable: true
- example: A great team.
- permission:
- description: Permission that the team will have for its repositories
- type: string
- example: admin
- privacy:
- description: The level of privacy this team should have
- type: string
- example: closed
- notification_setting:
- description: The notification setting the team has set
- type: string
- example: notifications_enabled
- html_url:
- type: string
- format: uri
- example: https://github.com/orgs/rails/teams/core
- repositories_url:
- type: string
- format: uri
- example: https://api.github.com/organizations/1/team/1/repos
- slug:
- type: string
- example: justice-league
- ldap_dn:
- description: Distinguished Name (DN) that team maps to within LDAP environment
- example: uid=example,ou=users,dc=github,dc=com
- type: string
- required:
- - id
- - node_id
- - url
- - members_url
- - name
- - description
- - permission
- - html_url
- - repositories_url
- - slug
actions-billing-usage:
type: object
properties:
@@ -76851,6 +77289,233 @@ components:
- created_at
- updated_at
- url
+ code-scanning-variant-analysis-language:
+ type: string
+ description: The language targeted by the CodeQL query
+ enum:
+ - cpp
+ - csharp
+ - go
+ - java
+ - javascript
+ - python
+ - ruby
+ - swift
+ code-scanning-variant-analysis-repository:
+ title: Repository Identifier
+ description: Repository Identifier
+ type: object
+ properties:
+ id:
+ type: integer
+ example: 1296269
+ description: A unique identifier of the repository.
+ name:
+ type: string
+ example: Hello-World
+ description: The name of the repository.
+ full_name:
+ type: string
+ example: octocat/Hello-World
+ description: The full, globally unique, name of the repository.
+ private:
+ type: boolean
+ description: Whether the repository is private.
+ stargazers_count:
+ type: integer
+ example: 80
+ updated_at:
+ type: string
+ format: date-time
+ example: '2011-01-26T19:14:43Z'
+ nullable: true
+ required:
+ - full_name
+ - id
+ - name
+ - private
+ - stargazers_count
+ - updated_at
+ code-scanning-variant-analysis-status:
+ type: string
+ description: The new status of the CodeQL variant analysis repository task.
+ enum:
+ - pending
+ - in_progress
+ - succeeded
+ - failed
+ - canceled
+ - timed_out
+ code-scanning-variant-analysis-skipped-repo-group:
+ type: object
+ properties:
+ repository_count:
+ type: integer
+ description: The total number of repositories that were skipped for this
+ reason.
+ example: 2
+ repositories:
+ type: array
+ description: A list of repositories that were skipped. This list may not
+ include all repositories that were skipped. This is only available when
+ the repository was found and the user has access to it.
+ items:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-repository"
+ required:
+ - repository_count
+ - repositories
+ code-scanning-variant-analysis:
+ title: Variant Analysis
+ description: A run of a CodeQL query against one or more repositories.
+ type: object
+ properties:
+ id:
+ type: integer
+ description: The ID of the variant analysis.
+ controller_repo:
+ "$ref": "#/components/schemas/simple-repository"
+ actor:
+ "$ref": "#/components/schemas/simple-user"
+ query_language:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-language"
+ query_pack_url:
+ type: string
+ description: The download url for the query pack.
+ created_at:
+ type: string
+ format: date-time
+ description: The date and time at which the variant analysis was created,
+ in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ.
+ updated_at:
+ type: string
+ format: date-time
+ description: The date and time at which the variant analysis was last updated,
+ in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ.
+ completed_at:
+ type: string
+ format: date-time
+ nullable: true
+ description: The date and time at which the variant analysis was completed,
+ in ISO 8601 format':' YYYY-MM-DDTHH:MM:SSZ. Will be null if the variant
+ analysis has not yet completed or this information is not available.
+ status:
+ type: string
+ enum:
+ - in_progress
+ - succeeded
+ - failed
+ - cancelled
+ actions_workflow_run_id:
+ type: integer
+ description: The GitHub Actions workflow run used to execute this variant
+ analysis. This is only available if the workflow run has started.
+ failure_reason:
+ type: string
+ enum:
+ - no_repos_queried
+ - actions_workflow_run_failed
+ - internal_error
+ description: The reason for a failure of the variant analysis. This is only
+ available if the variant analysis has failed.
+ scanned_repositories:
+ type: array
+ items:
+ type: object
+ properties:
+ repository:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-repository"
+ analysis_status:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-status"
+ result_count:
+ type: integer
+ description: The number of results in the case of a successful analysis.
+ This is only available for successful analyses.
+ artifact_size_in_bytes:
+ type: integer
+ description: The size of the artifact. This is only available for
+ successful analyses.
+ failure_message:
+ type: string
+ description: The reason of the failure of this repo task. This is
+ only available if the repository task has failed.
+ required:
+ - repository
+ - analysis_status
+ skipped_repositories:
+ type: object
+ description: Information about repositories that were skipped from processing.
+ This information is only available to the user that initiated the variant
+ analysis.
+ properties:
+ access_mismatch_repos:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-skipped-repo-group"
+ not_found_repos:
+ type: object
+ properties:
+ repository_count:
+ type: integer
+ description: The total number of repositories that were skipped
+ for this reason.
+ example: 2
+ repository_full_names:
+ type: array
+ description: A list of full repository names that were skipped.
+ This list may not include all repositories that were skipped.
+ items:
+ type: string
+ required:
+ - repository_count
+ - repository_full_names
+ no_codeql_db_repos:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-skipped-repo-group"
+ over_limit_repos:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-skipped-repo-group"
+ required:
+ - access_mismatch_repos
+ - not_found_repos
+ - no_codeql_db_repos
+ - over_limit_repos
+ required:
+ - id
+ - controller_repo
+ - actor
+ - query_language
+ - query_pack_url
+ - status
+ code-scanning-variant-analysis-repo-task:
+ type: object
+ properties:
+ repository:
+ "$ref": "#/components/schemas/simple-repository"
+ analysis_status:
+ "$ref": "#/components/schemas/code-scanning-variant-analysis-status"
+ artifact_size_in_bytes:
+ type: integer
+ description: The size of the artifact. This is only available for successful
+ analyses.
+ result_count:
+ type: integer
+ description: The number of results in the case of a successful analysis.
+ This is only available for successful analyses.
+ failure_message:
+ type: string
+ description: The reason of the failure of this repo task. This is only available
+ if the repository task has failed.
+ database_commit_sha:
+ type: string
+ description: The SHA of the commit the CodeQL database was built against.
+ This is only available for successful analyses.
+ source_location_prefix:
+ type: string
+ description: The source location prefix to use. This is only available for
+ successful analyses.
+ artifact_url:
+ type: string
+ description: The URL of the artifact. This is only available for successful
+ analyses.
+ required:
+ - repository
+ - analysis_status
code-scanning-default-setup:
description: Configuration for code scanning default setup.
type: object
@@ -83996,6 +84661,9 @@ components:
- allOf:
- "$ref": "#/components/schemas/repository-rule-workflows"
- "$ref": "#/components/schemas/repository-rule-ruleset-info"
+ - allOf:
+ - "$ref": "#/components/schemas/repository-rule-code-scanning"
+ - "$ref": "#/components/schemas/repository-rule-ruleset-info"
secret-scanning-alert:
type: object
properties:
@@ -85876,6 +86544,11 @@ components:
format: email
example: octocat@github.com
nullable: true
+ notification_email:
+ type: string
+ format: email
+ example: octocat@github.com
+ nullable: true
hireable:
type: boolean
nullable: true
@@ -92872,6 +93545,42 @@ components:
- created_at
- updated_at
- archived_at
+ projects-v2-single-select-option:
+ title: Projects v2 Single Select Option
+ description: An option for a single select field
+ type: object
+ properties:
+ id:
+ type: string
+ name:
+ type: string
+ color:
+ type: string
+ nullable: true
+ description:
+ type: string
+ nullable: true
+ required:
+ - id
+ - name
+ projects-v2-iteration-setting:
+ title: Projects v2 Iteration Setting
+ description: An iteration setting for an iteration field
+ type: object
+ properties:
+ id:
+ type: string
+ title:
+ type: string
+ duration:
+ type: number
+ nullable: true
+ start_date:
+ type: string
+ nullable: true
+ required:
+ - id
+ - title
webhooks_number:
description: The pull request number.
type: integer
@@ -96356,6 +97065,11 @@ components:
secret_type:
type: string
description: The type of secret that secret scanning detected.
+ secret_type_display_name:
+ type: string
+ description: |-
+ User-friendly name for the detected secret, matching the `secret_type`.
+ For a list of built-in patterns, see "[Secret scanning patterns](https://docs.github.com/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-advanced-security)."
validity:
type: string
description: The token status as of the latest validity check.
@@ -106376,12 +107090,6 @@ components:
- type: integer
- type: string
format: date-time
- custom_properties:
- type: object
- description: The custom properties that were defined for the repository.
- The keys are the custom property names, and the values are the corresponding
- custom property values.
- additionalProperties: true
default_branch:
description: The default branch of the repository.
type: string
@@ -125818,6 +126526,8 @@ components:
- approved
personal_access_token_request:
"$ref": "#/components/schemas/personal-access-token-request"
+ enterprise:
+ "$ref": "#/components/schemas/enterprise-webhooks"
organization:
"$ref": "#/components/schemas/organization-simple-webhooks"
sender:
@@ -125840,6 +126550,8 @@ components:
- cancelled
personal_access_token_request:
"$ref": "#/components/schemas/personal-access-token-request"
+ enterprise:
+ "$ref": "#/components/schemas/enterprise-webhooks"
organization:
"$ref": "#/components/schemas/organization-simple-webhooks"
sender:
@@ -125862,6 +126574,8 @@ components:
- created
personal_access_token_request:
"$ref": "#/components/schemas/personal-access-token-request"
+ enterprise:
+ "$ref": "#/components/schemas/enterprise-webhooks"
organization:
"$ref": "#/components/schemas/organization-simple-webhooks"
sender:
@@ -125873,7 +126587,6 @@ components:
- personal_access_token_request
- organization
- sender
- - installation
webhook-personal-access-token-request-denied:
title: personal_access_token_request denied event
type: object
@@ -125886,6 +126599,8 @@ components:
"$ref": "#/components/schemas/personal-access-token-request"
organization:
"$ref": "#/components/schemas/organization-simple-webhooks"
+ enterprise:
+ "$ref": "#/components/schemas/enterprise-webhooks"
sender:
"$ref": "#/components/schemas/simple-user-webhooks"
installation:
@@ -126924,6 +127639,9 @@ components:
enum:
- edited
changes:
+ description: |-
+ The changes made to the item may involve modifications in the item's fields and draft issue body.
+ It includes altered values for text, number, date, single select, and iteration fields, along with the GraphQL node ID of the changed field.
oneOf:
- type: object
properties:
@@ -126934,6 +127652,24 @@ components:
type: string
field_type:
type: string
+ field_name:
+ type: string
+ project_number:
+ type: integer
+ from:
+ nullable: true
+ oneOf:
+ - type: string
+ - type: integer
+ - "$ref": "#/components/schemas/projects-v2-single-select-option"
+ - "$ref": "#/components/schemas/projects-v2-iteration-setting"
+ to:
+ nullable: true
+ oneOf:
+ - type: string
+ - type: integer
+ - "$ref": "#/components/schemas/projects-v2-single-select-option"
+ - "$ref": "#/components/schemas/projects-v2-iteration-setting"
required:
- field_value
- type: object
@@ -182765,30 +183501,6 @@ components:
- action
- alert
- repository
- webhook-secret-scanning-alert-revoked:
- title: secret_scanning_alert revoked event
- type: object
- properties:
- action:
- type: string
- enum:
- - revoked
- alert:
- "$ref": "#/components/schemas/secret-scanning-alert-webhook"
- enterprise:
- "$ref": "#/components/schemas/enterprise-webhooks"
- installation:
- "$ref": "#/components/schemas/simple-installation"
- organization:
- "$ref": "#/components/schemas/organization-simple-webhooks"
- repository:
- "$ref": "#/components/schemas/repository-webhooks"
- sender:
- "$ref": "#/components/schemas/simple-user-webhooks"
- required:
- - action
- - alert
- - repository
webhook-secret-scanning-alert-validated:
title: secret_scanning_alert validated event
type: object
@@ -190072,6 +190784,7 @@ components:
action: opened
installation_id: 123
repository_id: 456
+ throttled_at: '2019-06-03T00:57:16Z'
- id: 123456789
guid: 0b989ba4-242f-11e5-81e1-c7b6966d2516
delivered_at: '2019-06-04T00:57:16Z'
@@ -190083,6 +190796,7 @@ components:
action: opened
installation_id: 123
repository_id: 456
+ throttled_at:
hook-delivery:
value:
id: 12345678
@@ -190097,6 +190811,7 @@ components:
installation_id: 123
repository_id: 456
url: https://www.example.com
+ throttled_at: '2019-06-03T00:57:16Z'
request:
headers:
X-GitHub-Delivery: 0b989ba4-242f-11e5-81e1-c7b6966d2516
@@ -192562,6 +193277,72 @@ components:
zombie_man: https://github.githubassets.com/images/icons/emoji/unicode/1f9df-2642.png?v8
zombie_woman: https://github.githubassets.com/images/icons/emoji/unicode/1f9df-2640.png?v8
zzz: https://github.githubassets.com/images/icons/emoji/unicode/1f4a4.png?v8
+ copilot-seats-list:
+ value:
+ total_seats: 2
+ seats:
+ - created_at: '2021-08-03T18:00:00-06:00'
+ updated_at: '2021-09-23T15:00:00-06:00'
+ pending_cancellation_date:
+ last_activity_at: '2021-10-14T00:53:32-06:00'
+ last_activity_editor: vscode/1.77.3/copilot/1.86.82
+ assignee:
+ login: octocat
+ id: 1
+ node_id: MDQ6VXNlcjE=
+ avatar_url: https://github.com/images/error/octocat_happy.gif
+ gravatar_id: ''
+ url: https://api.github.com/users/octocat
+ html_url: https://github.com/octocat
+ followers_url: https://api.github.com/users/octocat/followers
+ following_url: https://api.github.com/users/octocat/following{/other_user}
+ gists_url: https://api.github.com/users/octocat/gists{/gist_id}
+ starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo}
+ subscriptions_url: https://api.github.com/users/octocat/subscriptions
+ organizations_url: https://api.github.com/users/octocat/orgs
+ repos_url: https://api.github.com/users/octocat/repos
+ events_url: https://api.github.com/users/octocat/events{/privacy}
+ received_events_url: https://api.github.com/users/octocat/received_events
+ type: User
+ site_admin: false
+ assigning_team:
+ id: 1
+ node_id: MDQ6VGVhbTE=
+ url: https://api.github.com/teams/1
+ html_url: https://github.com/orgs/github/teams/justice-league
+ name: Justice League
+ slug: justice-league
+ description: A great team.
+ privacy: closed
+ notification_setting: notifications_enabled
+ permission: admin
+ members_url: https://api.github.com/teams/1/members{/member}
+ repositories_url: https://api.github.com/teams/1/repos
+ parent:
+ - created_at: '2021-09-23T18:00:00-06:00'
+ updated_at: '2021-09-23T15:00:00-06:00'
+ pending_cancellation_date: '2021-11-01'
+ last_activity_at: '2021-10-13T00:53:32-06:00'
+ last_activity_editor: vscode/1.77.3/copilot/1.86.82
+ assignee:
+ login: octokitten
+ id: 1
+ node_id: MDQ76VNlcjE=
+ avatar_url: https://github.com/images/error/octokitten_happy.gif
+ gravatar_id: ''
+ url: https://api.github.com/users/octokitten
+ html_url: https://github.com/octokitten
+ followers_url: https://api.github.com/users/octokitten/followers
+ following_url: https://api.github.com/users/octokitten/following{/other_user}
+ gists_url: https://api.github.com/users/octokitten/gists{/gist_id}
+ starred_url: https://api.github.com/users/octokitten/starred{/owner}{/repo}
+ subscriptions_url: https://api.github.com/users/octokitten/subscriptions
+ organizations_url: https://api.github.com/users/octokitten/orgs
+ repos_url: https://api.github.com/users/octokitten/repos
+ events_url: https://api.github.com/users/octokitten/events{/privacy}
+ received_events_url: https://api.github.com/users/octokitten/received_events
+ type: User
+ site_admin: false
copilot-usage-metrics-enterprise:
value:
- day: '2023-10-15'
@@ -194255,6 +195036,8 @@ components:
- 192.0.2.1
actions:
- 192.0.2.1
+ actions_macos:
+ - 192.0.2.1
dependabot:
- 192.0.2.1
domains:
@@ -195700,72 +196483,6 @@ components:
inactive_this_cycle: 11
seat_management_setting: assign_selected
public_code_suggestions: block
- copilot-seats-list:
- value:
- total_seats: 2
- seats:
- - created_at: '2021-08-03T18:00:00-06:00'
- updated_at: '2021-09-23T15:00:00-06:00'
- pending_cancellation_date:
- last_activity_at: '2021-10-14T00:53:32-06:00'
- last_activity_editor: vscode/1.77.3/copilot/1.86.82
- assignee:
- login: octocat
- id: 1
- node_id: MDQ6VXNlcjE=
- avatar_url: https://github.com/images/error/octocat_happy.gif
- gravatar_id: ''
- url: https://api.github.com/users/octocat
- html_url: https://github.com/octocat
- followers_url: https://api.github.com/users/octocat/followers
- following_url: https://api.github.com/users/octocat/following{/other_user}
- gists_url: https://api.github.com/users/octocat/gists{/gist_id}
- starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo}
- subscriptions_url: https://api.github.com/users/octocat/subscriptions
- organizations_url: https://api.github.com/users/octocat/orgs
- repos_url: https://api.github.com/users/octocat/repos
- events_url: https://api.github.com/users/octocat/events{/privacy}
- received_events_url: https://api.github.com/users/octocat/received_events
- type: User
- site_admin: false
- assigning_team:
- id: 1
- node_id: MDQ6VGVhbTE=
- url: https://api.github.com/teams/1
- html_url: https://github.com/orgs/github/teams/justice-league
- name: Justice League
- slug: justice-league
- description: A great team.
- privacy: closed
- notification_setting: notifications_enabled
- permission: admin
- members_url: https://api.github.com/teams/1/members{/member}
- repositories_url: https://api.github.com/teams/1/repos
- parent:
- - created_at: '2021-09-23T18:00:00-06:00'
- updated_at: '2021-09-23T15:00:00-06:00'
- pending_cancellation_date: '2021-11-01'
- last_activity_at: '2021-10-13T00:53:32-06:00'
- last_activity_editor: vscode/1.77.3/copilot/1.86.82
- assignee:
- login: octokitten
- id: 1
- node_id: MDQ76VNlcjE=
- avatar_url: https://github.com/images/error/octokitten_happy.gif
- gravatar_id: ''
- url: https://api.github.com/users/octokitten
- html_url: https://github.com/octokitten
- followers_url: https://api.github.com/users/octokitten/followers
- following_url: https://api.github.com/users/octokitten/following{/other_user}
- gists_url: https://api.github.com/users/octokitten/gists{/gist_id}
- starred_url: https://api.github.com/users/octokitten/starred{/owner}{/repo}
- subscriptions_url: https://api.github.com/users/octokitten/subscriptions
- organizations_url: https://api.github.com/users/octokitten/orgs
- repos_url: https://api.github.com/users/octokitten/repos
- events_url: https://api.github.com/users/octokitten/events{/privacy}
- received_events_url: https://api.github.com/users/octokitten/received_events
- type: User
- site_admin: false
copilot-usage-metrics-org:
value:
- day: '2023-10-15'
@@ -199318,6 +200035,7 @@ components:
allow_auto_merge: false
delete_branch_on_merge: true
allow_merge_commit: true
+ allow_forking: true
subscribers_count: 42
network_count: 0
license:
@@ -202440,6 +203158,230 @@ components:
updated_at: '2022-09-12T12:14:32Z'
url: https://api.github.com/repos/octocat/Hello-World/code-scanning/codeql/databases/java
commit_oid: 1927de39fefa25a9d0e64e3f540ff824a72f538c
+ code-scanning-variant-analysis:
+ summary: Default response
+ value:
+ id: 1
+ controller_repo:
+ id: 1296269
+ node_id: MDEwOlJlcG9zaXRvcnkxMjk2MjY5
+ name: Hello-World
+ full_name: octocat/Hello-World
+ owner:
+ login: octocat
+ id: 1
+ node_id: MDQ6VXNlcjE=
+ avatar_url: https://github.com/images/error/octocat_happy.gif
+ gravatar_id: ''
+ url: https://api.github.com/users/octocat
+ html_url: https://github.com/octocat
+ followers_url: https://api.github.com/users/octocat/followers
+ following_url: https://api.github.com/users/octocat/following{/other_user}
+ gists_url: https://api.github.com/users/octocat/gists{/gist_id}
+ starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo}
+ subscriptions_url: https://api.github.com/users/octocat/subscriptions
+ organizations_url: https://api.github.com/users/octocat/orgs
+ repos_url: https://api.github.com/users/octocat/repos
+ events_url: https://api.github.com/users/octocat/events{/privacy}
+ received_events_url: https://api.github.com/users/octocat/received_events
+ type: User
+ site_admin: false
+ private: false
+ html_url: https://github.com/octocat/Hello-World
+ description: This your first repo!
+ fork: false
+ url: https://api.github.com/repos/octocat/Hello-World
+ archive_url: https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}
+ assignees_url: https://api.github.com/repos/octocat/Hello-World/assignees{/user}
+ blobs_url: https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}
+ branches_url: https://api.github.com/repos/octocat/Hello-World/branches{/branch}
+ collaborators_url: https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}
+ comments_url: https://api.github.com/repos/octocat/Hello-World/comments{/number}
+ commits_url: https://api.github.com/repos/octocat/Hello-World/commits{/sha}
+ compare_url: https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}
+ contents_url: https://api.github.com/repos/octocat/Hello-World/contents/{+path}
+ contributors_url: https://api.github.com/repos/octocat/Hello-World/contributors
+ deployments_url: https://api.github.com/repos/octocat/Hello-World/deployments
+ downloads_url: https://api.github.com/repos/octocat/Hello-World/downloads
+ events_url: https://api.github.com/repos/octocat/Hello-World/events
+ forks_url: https://api.github.com/repos/octocat/Hello-World/forks
+ git_commits_url: https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}
+ git_refs_url: https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}
+ git_tags_url: https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}
+ issue_comment_url: https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}
+ issue_events_url: https://api.github.com/repos/octocat/Hello-World/issues/events{/number}
+ issues_url: https://api.github.com/repos/octocat/Hello-World/issues{/number}
+ keys_url: https://api.github.com/repos/octocat/Hello-World/keys{/key_id}
+ labels_url: https://api.github.com/repos/octocat/Hello-World/labels{/name}
+ languages_url: https://api.github.com/repos/octocat/Hello-World/languages
+ merges_url: https://api.github.com/repos/octocat/Hello-World/merges
+ milestones_url: https://api.github.com/repos/octocat/Hello-World/milestones{/number}
+ notifications_url: https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}
+ pulls_url: https://api.github.com/repos/octocat/Hello-World/pulls{/number}
+ releases_url: https://api.github.com/repos/octocat/Hello-World/releases{/id}
+ stargazers_url: https://api.github.com/repos/octocat/Hello-World/stargazers
+ statuses_url: https://api.github.com/repos/octocat/Hello-World/statuses/{sha}
+ subscribers_url: https://api.github.com/repos/octocat/Hello-World/subscribers
+ subscription_url: https://api.github.com/repos/octocat/Hello-World/subscription
+ tags_url: https://api.github.com/repos/octocat/Hello-World/tags
+ teams_url: https://api.github.com/repos/octocat/Hello-World/teams
+ trees_url: https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}
+ hooks_url: https://api.github.com/repos/octocat/Hello-World/hooks
+ actor:
+ login: octocat
+ id: 1
+ node_id: MDQ6VXNlcjE=
+ avatar_url: https://github.com/images/error/octocat_happy.gif
+ gravatar_id: ''
+ url: https://api.github.com/users/octocat
+ html_url: https://github.com/octocat
+ followers_url: https://api.github.com/users/octocat/followers
+ following_url: https://api.github.com/users/octocat/following{/other_user}
+ gists_url: https://api.github.com/users/octocat/gists{/gist_id}
+ starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo}
+ subscriptions_url: https://api.github.com/users/octocat/subscriptions
+ organizations_url: https://api.github.com/users/octocat/orgs
+ repos_url: https://api.github.com/users/octocat/repos
+ events_url: https://api.github.com/users/octocat/events{/privacy}
+ received_events_url: https://api.github.com/users/octocat/received_events
+ type: User
+ site_admin: false
+ query_language: python
+ query_pack_url: https://www.example.com
+ created_at: '2022-09-12T12:14:32Z'
+ updated_at: '2022-09-12T12:14:32Z'
+ completed_at: '2022-09-12T13:15:33Z'
+ status: completed
+ actions_workflow_run_id: 3453588
+ scanned_repositories:
+ - repository:
+ id: 1296269
+ name: Hello-World
+ full_name: octocat/Hello-World
+ private: false
+ analysis_status: succeeded
+ result_count: 532
+ artifact_size_in_bytes: 12345
+ skipped_repositories:
+ access_mismatch_repos:
+ repository_count: 2
+ repositories:
+ - id: 1
+ node_id: MDQ6VXNlcjE=
+ name: octo-repo1
+ full_name: octo-org/octo-repo1
+ private: false
+ - id: 2
+ node_id: MDQ6VXNlcjE=
+ name: octo-repo2
+ full_name: octo-org/octo-repo2
+ private: false
+ not_found_repos:
+ repository_count: 3
+ repository_full_names:
+ - octo-org/octo-repo4
+ - octo-org/octo-repo5
+ - octo-org/octo-repo6
+ no_codeql_db_repos:
+ repository_count: 2
+ repositories:
+ - id: 7
+ node_id: MDQ6VXNlcjE=
+ name: octo-repo7
+ full_name: octo-org/octo-repo7
+ private: false
+ - id: 8
+ node_id: MDQ6VXNlcjE=
+ name: octo-repo8
+ full_name: octo-org/octo-repo8
+ private: false
+ over_limit_repos:
+ repository_count: 2
+ repositories:
+ - id: 9
+ node_id: MDQ6VXNlcjE=
+ name: octo-repo9
+ full_name: octo-org/octo-repo9
+ private: false
+ - id: 10
+ node_id: MDQ6VXNlcjE=
+ name: octo-repo10
+ full_name: octo-org/octo-repo10
+ private: false
+ code-scanning-variant-analysis-repo-task:
+ summary: Default response
+ value:
+ repository:
+ id: 1296269
+ node_id: MDEwOlJlcG9zaXRvcnkxMjk2MjY5
+ name: Hello-World
+ full_name: octocat/Hello-World
+ owner:
+ login: octocat
+ id: 1
+ node_id: MDQ6VXNlcjE=
+ avatar_url: https://github.com/images/error/octocat_happy.gif
+ gravatar_id: ''
+ url: https://api.github.com/users/octocat
+ html_url: https://github.com/octocat
+ followers_url: https://api.github.com/users/octocat/followers
+ following_url: https://api.github.com/users/octocat/following{/other_user}
+ gists_url: https://api.github.com/users/octocat/gists{/gist_id}
+ starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo}
+ subscriptions_url: https://api.github.com/users/octocat/subscriptions
+ organizations_url: https://api.github.com/users/octocat/orgs
+ repos_url: https://api.github.com/users/octocat/repos
+ events_url: https://api.github.com/users/octocat/events{/privacy}
+ received_events_url: https://api.github.com/users/octocat/received_events
+ type: User
+ site_admin: false
+ private: false
+ html_url: https://github.com/octocat/Hello-World
+ description: This your first repo!
+ fork: false
+ url: https://api.github.com/repos/octocat/Hello-World
+ archive_url: https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}
+ assignees_url: https://api.github.com/repos/octocat/Hello-World/assignees{/user}
+ blobs_url: https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}
+ branches_url: https://api.github.com/repos/octocat/Hello-World/branches{/branch}
+ collaborators_url: https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}
+ comments_url: https://api.github.com/repos/octocat/Hello-World/comments{/number}
+ commits_url: https://api.github.com/repos/octocat/Hello-World/commits{/sha}
+ compare_url: https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}
+ contents_url: https://api.github.com/repos/octocat/Hello-World/contents/{+path}
+ contributors_url: https://api.github.com/repos/octocat/Hello-World/contributors
+ deployments_url: https://api.github.com/repos/octocat/Hello-World/deployments
+ downloads_url: https://api.github.com/repos/octocat/Hello-World/downloads
+ events_url: https://api.github.com/repos/octocat/Hello-World/events
+ forks_url: https://api.github.com/repos/octocat/Hello-World/forks
+ git_commits_url: https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}
+ git_refs_url: https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}
+ git_tags_url: https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}
+ issue_comment_url: https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}
+ issue_events_url: https://api.github.com/repos/octocat/Hello-World/issues/events{/number}
+ issues_url: https://api.github.com/repos/octocat/Hello-World/issues{/number}
+ keys_url: https://api.github.com/repos/octocat/Hello-World/keys{/key_id}
+ labels_url: https://api.github.com/repos/octocat/Hello-World/labels{/name}
+ languages_url: https://api.github.com/repos/octocat/Hello-World/languages
+ merges_url: https://api.github.com/repos/octocat/Hello-World/merges
+ milestones_url: https://api.github.com/repos/octocat/Hello-World/milestones{/number}
+ notifications_url: https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}
+ pulls_url: https://api.github.com/repos/octocat/Hello-World/pulls{/number}
+ releases_url: https://api.github.com/repos/octocat/Hello-World/releases{/id}
+ stargazers_url: https://api.github.com/repos/octocat/Hello-World/stargazers
+ statuses_url: https://api.github.com/repos/octocat/Hello-World/statuses/{sha}
+ subscribers_url: https://api.github.com/repos/octocat/Hello-World/subscribers
+ subscription_url: https://api.github.com/repos/octocat/Hello-World/subscription
+ tags_url: https://api.github.com/repos/octocat/Hello-World/tags
+ teams_url: https://api.github.com/repos/octocat/Hello-World/teams
+ trees_url: https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}
+ hooks_url: https://api.github.com/repos/octocat/Hello-World/hooks
+ analysis_status: succeeded
+ artifact_size_in_bytes: 12345
+ result_count: 532
+ database_commit_sha: 2d870c2a717a524627af38fa2da382188a096f90
+ source_location_prefix: "/"
+ artifact_url: https://example.com
code-scanning-default-setup:
value:
state: configured
@@ -207112,6 +208054,8 @@ components:
branch: master
path: "/"
public: true
+ pending_domain_unverified_at: '2024-04-30T19:33:31Z'
+ protected_domain_state: verified
https_certificate:
state: approved
description: Certificate is approved
diff --git a/packages/openapi-typescript/examples/stripe-api.ts b/packages/openapi-typescript/examples/stripe-api.ts
index 0b42cd956..bcceed1ea 100644
--- a/packages/openapi-typescript/examples/stripe-api.ts
+++ b/packages/openapi-typescript/examples/stripe-api.ts
@@ -1104,7 +1104,7 @@ export interface paths {
};
get?: never;
put?: never;
- /** @description Cancels a Climate order. You can cancel an order within 30 days of creation. Stripe refunds the
+ /** @description
Cancels a Climate order. You can cancel an order within 24 hours of creation. Stripe refunds the
* reservation amount_subtotal
, but not the amount_fees
for user-triggered cancellations. Frontier
* might cancel reservations if suppliers fail to deliver. If Frontier cancels the reservation, Stripe
* provides 90 days advance notice and refunds the amount_total
.
*/
@@ -1345,7 +1345,7 @@ export interface paths {
path?: never;
cookie?: never;
};
- /** @description When retrieving a credit note, you’ll get a lines property containing the the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of line items.
*/
+ /** @description When retrieving a credit note, you’ll get a lines property containing the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of line items.
*/
get: operations["GetCreditNotesCreditNoteLines"];
put?: never;
post?: never;
@@ -2616,7 +2616,9 @@ export interface paths {
*
* Note that when you are viewing an upcoming invoice, you are simply viewing a preview – the invoice has not yet been created. As such, the upcoming invoice will not show up in invoice listing calls, and you cannot use the API to pay or edit the invoice. If you want to change the amount that your customer will be billed, you can add, remove, or update pending invoice items, or update the customer’s discount.
*
- * You can preview the effects of updating a subscription, including a preview of what proration will take place. To ensure that the actual proration is calculated exactly the same as the previewed proration, you should pass the subscription_details.proration_date
parameter when doing the actual subscription update. The recommended way to get only the prorations being previewed is to consider only proration line items where period[start]
is equal to the subscription_details.proration_date
value passed in the request.
*/
+ * You can preview the effects of updating a subscription, including a preview of what proration will take place. To ensure that the actual proration is calculated exactly the same as the previewed proration, you should pass the subscription_details.proration_date
parameter when doing the actual subscription update. The recommended way to get only the prorations being previewed is to consider only proration line items where period[start]
is equal to the subscription_details.proration_date
value passed in the request.
+ *
+ * Note: Currency conversion calculations use the latest exchange rates. Exchange rates may vary between the time of the preview and the time of the actual invoice creation. Learn more
*/
post: operations["PostInvoicesCreatePreview"];
delete?: never;
options?: never;
@@ -2655,7 +2657,9 @@ export interface paths {
*
* Note that when you are viewing an upcoming invoice, you are simply viewing a preview – the invoice has not yet been created. As such, the upcoming invoice will not show up in invoice listing calls, and you cannot use the API to pay or edit the invoice. If you want to change the amount that your customer will be billed, you can add, remove, or update pending invoice items, or update the customer’s discount.
*
- * You can preview the effects of updating a subscription, including a preview of what proration will take place. To ensure that the actual proration is calculated exactly the same as the previewed proration, you should pass the subscription_details.proration_date
parameter when doing the actual subscription update. The recommended way to get only the prorations being previewed is to consider only proration line items where period[start]
is equal to the subscription_details.proration_date
value passed in the request.
*/
+ * You can preview the effects of updating a subscription, including a preview of what proration will take place. To ensure that the actual proration is calculated exactly the same as the previewed proration, you should pass the subscription_details.proration_date
parameter when doing the actual subscription update. The recommended way to get only the prorations being previewed is to consider only proration line items where period[start]
is equal to the subscription_details.proration_date
value passed in the request.
+ *
+ * Note: Currency conversion calculations use the latest exchange rates. Exchange rates may vary between the time of the preview and the time of the actual invoice creation. Learn more
*/
get: operations["GetInvoicesUpcoming"];
put?: never;
post?: never;
@@ -3104,23 +3108,6 @@ export interface paths {
patch?: never;
trace?: never;
};
- "/v1/issuing/settlements": {
- parameters: {
- query?: never;
- header?: never;
- path?: never;
- cookie?: never;
- };
- /** @description Returns a list of Issuing Settlement
objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
*/
- get: operations["GetIssuingSettlements"];
- put?: never;
- post?: never;
- delete?: never;
- options?: never;
- head?: never;
- patch?: never;
- trace?: never;
- };
"/v1/issuing/settlements/{settlement}": {
parameters: {
query?: never;
@@ -4608,7 +4595,7 @@ export interface paths {
put?: never;
/** @description You can cancel a SetupIntent object when it’s in one of these statuses: requires_payment_method
, requires_confirmation
, or requires_action
.
*
- * After you cancel it, setup is abandoned and any operations on the SetupIntent fail with an error.
*/
+ * After you cancel it, setup is abandoned and any operations on the SetupIntent fail with an error. You can’t cancel the SetupIntent for a Checkout Session. Expire the Checkout Session instead.
*/
post: operations["PostSetupIntentsIntentCancel"];
delete?: never;
options?: never;
@@ -5132,7 +5119,7 @@ export interface paths {
path?: never;
cookie?: never;
};
- /** @description Retrieves the line items of a persisted tax calculation as a collection.
*/
+ /** @description Retrieves the line items of a tax calculation as a collection, if the calculation hasn’t expired.
*/
get: operations["GetTaxCalculationsCalculationLineItems"];
put?: never;
post?: never;
@@ -5207,7 +5194,7 @@ export interface paths {
};
get?: never;
put?: never;
- /** @description Creates a Tax Transaction
from a calculation.
*/
+ /** @description Creates a Tax Transaction from a calculation, if that calculation hasn’t expired. Calculations expire after 90 days.
*/
post: operations["PostTaxTransactionsCreateFromCalculation"];
delete?: never;
options?: never;
@@ -6013,6 +6000,23 @@ export interface paths {
patch?: never;
trace?: never;
};
+ "/v1/test_helpers/treasury/outbound_payments/{id}": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get?: never;
+ put?: never;
+ /** @description Updates a test mode created OutboundPayment with tracking details. The OutboundPayment must not be cancelable, and cannot be in the canceled
or failed
states.
*/
+ post: operations["PostTestHelpersTreasuryOutboundPaymentsId"];
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
"/v1/test_helpers/treasury/outbound_payments/{id}/fail": {
parameters: {
query?: never;
@@ -6064,6 +6068,23 @@ export interface paths {
patch?: never;
trace?: never;
};
+ "/v1/test_helpers/treasury/outbound_transfers/{outbound_transfer}": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get?: never;
+ put?: never;
+ /** @description Updates a test mode created OutboundTransfer with tracking details. The OutboundTransfer must not be cancelable, and cannot be in the canceled
or failed
states.
*/
+ post: operations["PostTestHelpersTreasuryOutboundTransfersOutboundTransfer"];
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
"/v1/test_helpers/treasury/outbound_transfers/{outbound_transfer}/fail": {
parameters: {
query?: never;
@@ -6811,7 +6832,7 @@ export interface components {
created?: number;
/** @description Three-letter ISO currency code representing the default currency for the account. This must be a currency that [Stripe supports in the account's country](https://stripe.com/docs/payouts). */
default_currency?: string;
- /** @description Whether account details have been submitted. Accounts with Stripe Dashboard access, which includes Standard accounts, cannot receive payouts before this is true. */
+ /** @description Whether account details have been submitted. Accounts with Stripe Dashboard access, which includes Standard accounts, cannot receive payouts before this is true. Accounts where this is false should be directed to [an onboarding flow](/connect/onboarding) to finish submitting account details. */
details_submitted?: boolean;
/** @description An email address associated with the account. It's not used for authentication and Stripe doesn't market to this field without explicit approval from the platform. */
email?: string | null;
@@ -6990,6 +7011,11 @@ export interface components {
* @enum {string}
*/
fpx_payments?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the GB customer_balance payments (GBP currency) capability of the account, or whether the account can directly process GB customer_balance charges.
+ * @enum {string}
+ */
+ gb_bank_transfer_payments?: "active" | "inactive" | "pending";
/**
* @description The status of the giropay payments capability of the account, or whether the account can directly process giropay charges.
* @enum {string}
@@ -7015,6 +7041,11 @@ export interface components {
* @enum {string}
*/
jcb_payments?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the Japanese customer_balance payments (JPY currency) capability of the account, or whether the account can directly process Japanese customer_balance charges.
+ * @enum {string}
+ */
+ jp_bank_transfer_payments?: "active" | "inactive" | "pending";
/**
* @description The status of the Klarna payments capability of the account, or whether the account can directly process Klarna charges.
* @enum {string}
@@ -7036,10 +7067,20 @@ export interface components {
*/
link_payments?: "active" | "inactive" | "pending";
/**
- * @description The status of the MobilepPay capability of the account, or whether the account can directly process MobilePay charges.
+ * @description The status of the MobilePay capability of the account, or whether the account can directly process MobilePay charges.
* @enum {string}
*/
mobilepay_payments?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the Multibanco payments capability of the account, or whether the account can directly process Multibanco charges.
+ * @enum {string}
+ */
+ multibanco_payments?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the Mexican customer_balance payments (MXN currency) capability of the account, or whether the account can directly process Mexican customer_balance charges.
+ * @enum {string}
+ */
+ mx_bank_transfer_payments?: "active" | "inactive" | "pending";
/**
* @description The status of the OXXO payments capability of the account, or whether the account can directly process OXXO charges.
* @enum {string}
@@ -7065,6 +7106,11 @@ export interface components {
* @enum {string}
*/
revolut_pay_payments?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the SEPA customer_balance payments (EUR currency) capability of the account, or whether the account can directly process SEPA customer_balance charges.
+ * @enum {string}
+ */
+ sepa_bank_transfer_payments?: "active" | "inactive" | "pending";
/**
* @description The status of the SEPA Direct Debits payments capability of the account, or whether the account can directly process SEPA Direct Debits charges.
* @enum {string}
@@ -7100,11 +7146,21 @@ export interface components {
* @enum {string}
*/
treasury?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the TWINT capability of the account, or whether the account can directly process TWINT charges.
+ * @enum {string}
+ */
+ twint_payments?: "active" | "inactive" | "pending";
/**
* @description The status of the US bank account ACH payments capability of the account, or whether the account can directly process US bank account charges.
* @enum {string}
*/
us_bank_account_ach_payments?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the US customer_balance payments (USD currency) capability of the account, or whether the account can directly process US customer_balance charges.
+ * @enum {string}
+ */
+ us_bank_transfer_payments?: "active" | "inactive" | "pending";
/**
* @description The status of the Zip capability of the account, or whether the account can directly process Zip charges.
* @enum {string}
@@ -7144,13 +7200,11 @@ export interface components {
current_deadline?: number | null;
/** @description Fields that need to be collected to keep the capability enabled. If not collected by `current_deadline`, these fields appear in `past_due` as well, and the capability is disabled. */
currently_due: string[];
- /** @description If the capability is disabled, this string describes why. Can be `requirements.fields_needed`, `pending.onboarding`, `pending.review`, `rejected.fraud`, `rejected.other`, `platform_paused`, `action_required.requested_capabilities`, `rejected.inactivty`, or `rejected.unsupported_business`.
+ /** @description If the capability is disabled, this string describes why. [Learn more about handling verification issues](https://stripe.com/docs/connect/handling-api-verification). Can be `requirements.fields_needed`, `pending.onboarding`, `pending.review`, `rejected.other`, `platform_paused`, `rejected.inactivty`, or `rejected.unsupported_business`.
*
* `rejected.unsupported_business` means that the account's business is not supported by the capability. For example, payment methods may restrict the businesses they support in their terms of service, such as in [Afterpay Clearpay's terms of service](/afterpay-clearpay/legal#restricted-businesses).
*
- * `rejected.inactivity` means that the capability has been paused for inactivity. This disabled reason currently only applies to the Issuing capability. See [Issuing: Managing Inactive Connects](https://support.stripe.com/questions/issuing-managing-inactive-connect-accounts) for more details.
- *
- * If you believe that a rejection is in error, please contact support at https://support.stripe.com/contact/ for assistance. */
+ * `rejected.inactivity` means that the capability has been paused for inactivity. This disabled reason currently only applies to the Issuing capability. See [Issuing: Managing Inactive Connects](https://support.stripe.com/questions/issuing-managing-inactive-connect-accounts) for more details. */
disabled_reason?: string | null;
/** @description Fields that are `currently_due` and need to be collected again because validation or verification failed. */
errors: components["schemas"]["account_requirements_error"][];
@@ -7305,7 +7359,7 @@ export interface components {
* @description The code for the type of error.
* @enum {string}
*/
- code: "invalid_address_city_state_postal_code" | "invalid_address_highway_contract_box" | "invalid_address_private_mailbox" | "invalid_business_profile_name" | "invalid_business_profile_name_denylisted" | "invalid_company_name_denylisted" | "invalid_dob_age_over_maximum" | "invalid_dob_age_under_18" | "invalid_dob_age_under_minimum" | "invalid_product_description_length" | "invalid_product_description_url_match" | "invalid_representative_country" | "invalid_statement_descriptor_business_mismatch" | "invalid_statement_descriptor_denylisted" | "invalid_statement_descriptor_length" | "invalid_statement_descriptor_prefix_denylisted" | "invalid_statement_descriptor_prefix_mismatch" | "invalid_street_address" | "invalid_tax_id" | "invalid_tax_id_format" | "invalid_tos_acceptance" | "invalid_url_denylisted" | "invalid_url_format" | "invalid_url_web_presence_detected" | "invalid_url_website_business_information_mismatch" | "invalid_url_website_empty" | "invalid_url_website_inaccessible" | "invalid_url_website_inaccessible_geoblocked" | "invalid_url_website_inaccessible_password_protected" | "invalid_url_website_incomplete" | "invalid_url_website_incomplete_cancellation_policy" | "invalid_url_website_incomplete_customer_service_details" | "invalid_url_website_incomplete_legal_restrictions" | "invalid_url_website_incomplete_refund_policy" | "invalid_url_website_incomplete_return_policy" | "invalid_url_website_incomplete_terms_and_conditions" | "invalid_url_website_incomplete_under_construction" | "invalid_url_website_other" | "invalid_value_other" | "verification_directors_mismatch" | "verification_document_address_mismatch" | "verification_document_address_missing" | "verification_document_corrupt" | "verification_document_country_not_supported" | "verification_document_directors_mismatch" | "verification_document_dob_mismatch" | "verification_document_duplicate_type" | "verification_document_expired" | "verification_document_failed_copy" | "verification_document_failed_greyscale" | "verification_document_failed_other" | "verification_document_failed_test_mode" | "verification_document_fraudulent" | "verification_document_id_number_mismatch" | "verification_document_id_number_missing" | "verification_document_incomplete" | "verification_document_invalid" | "verification_document_issue_or_expiry_date_missing" | "verification_document_manipulated" | "verification_document_missing_back" | "verification_document_missing_front" | "verification_document_name_mismatch" | "verification_document_name_missing" | "verification_document_nationality_mismatch" | "verification_document_not_readable" | "verification_document_not_signed" | "verification_document_not_uploaded" | "verification_document_photo_mismatch" | "verification_document_too_large" | "verification_document_type_not_supported" | "verification_extraneous_directors" | "verification_failed_address_match" | "verification_failed_business_iec_number" | "verification_failed_document_match" | "verification_failed_id_number_match" | "verification_failed_keyed_identity" | "verification_failed_keyed_match" | "verification_failed_name_match" | "verification_failed_other" | "verification_failed_representative_authority" | "verification_failed_residential_address" | "verification_failed_tax_id_match" | "verification_failed_tax_id_not_issued" | "verification_missing_directors" | "verification_missing_executives" | "verification_missing_owners" | "verification_requires_additional_memorandum_of_associations";
+ code: "invalid_address_city_state_postal_code" | "invalid_address_highway_contract_box" | "invalid_address_private_mailbox" | "invalid_business_profile_name" | "invalid_business_profile_name_denylisted" | "invalid_company_name_denylisted" | "invalid_dob_age_over_maximum" | "invalid_dob_age_under_18" | "invalid_dob_age_under_minimum" | "invalid_product_description_length" | "invalid_product_description_url_match" | "invalid_representative_country" | "invalid_statement_descriptor_business_mismatch" | "invalid_statement_descriptor_denylisted" | "invalid_statement_descriptor_length" | "invalid_statement_descriptor_prefix_denylisted" | "invalid_statement_descriptor_prefix_mismatch" | "invalid_street_address" | "invalid_tax_id" | "invalid_tax_id_format" | "invalid_tos_acceptance" | "invalid_url_denylisted" | "invalid_url_format" | "invalid_url_web_presence_detected" | "invalid_url_website_business_information_mismatch" | "invalid_url_website_empty" | "invalid_url_website_inaccessible" | "invalid_url_website_inaccessible_geoblocked" | "invalid_url_website_inaccessible_password_protected" | "invalid_url_website_incomplete" | "invalid_url_website_incomplete_cancellation_policy" | "invalid_url_website_incomplete_customer_service_details" | "invalid_url_website_incomplete_legal_restrictions" | "invalid_url_website_incomplete_refund_policy" | "invalid_url_website_incomplete_return_policy" | "invalid_url_website_incomplete_terms_and_conditions" | "invalid_url_website_incomplete_under_construction" | "invalid_url_website_other" | "invalid_value_other" | "verification_directors_mismatch" | "verification_document_address_mismatch" | "verification_document_address_missing" | "verification_document_corrupt" | "verification_document_country_not_supported" | "verification_document_directors_mismatch" | "verification_document_dob_mismatch" | "verification_document_duplicate_type" | "verification_document_expired" | "verification_document_failed_copy" | "verification_document_failed_greyscale" | "verification_document_failed_other" | "verification_document_failed_test_mode" | "verification_document_fraudulent" | "verification_document_id_number_mismatch" | "verification_document_id_number_missing" | "verification_document_incomplete" | "verification_document_invalid" | "verification_document_issue_or_expiry_date_missing" | "verification_document_manipulated" | "verification_document_missing_back" | "verification_document_missing_front" | "verification_document_name_mismatch" | "verification_document_name_missing" | "verification_document_nationality_mismatch" | "verification_document_not_readable" | "verification_document_not_signed" | "verification_document_not_uploaded" | "verification_document_photo_mismatch" | "verification_document_too_large" | "verification_document_type_not_supported" | "verification_extraneous_directors" | "verification_failed_address_match" | "verification_failed_business_iec_number" | "verification_failed_document_match" | "verification_failed_id_number_match" | "verification_failed_keyed_identity" | "verification_failed_keyed_match" | "verification_failed_name_match" | "verification_failed_other" | "verification_failed_representative_authority" | "verification_failed_residential_address" | "verification_failed_tax_id_match" | "verification_failed_tax_id_not_issued" | "verification_missing_directors" | "verification_missing_executives" | "verification_missing_owners" | "verification_requires_additional_memorandum_of_associations" | "verification_requires_additional_proof_of_registration";
/** @description An informative message that indicates the error type and provides additional details about the error. */
reason: string;
/** @description The specific user onboarding requirement field (in the requirements hash) that needs to be resolved. */
@@ -7526,6 +7580,8 @@ export interface components {
created: number;
/** @description Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies). */
currency: string;
+ /** @description Polymorphic source of the application fee. Includes the ID of the object the application fee was created from. */
+ fee_source?: components["schemas"]["platform_earning_fee_source"] | null;
/** @description Unique identifier for the object. */
id: string;
/** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
@@ -7664,6 +7720,8 @@ export interface components {
amount: number;
/** @description Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies). */
currency: string;
+ /** @description Breakdown of balance by destination. */
+ net_available?: components["schemas"]["balance_net_available"][];
source_types?: components["schemas"]["balance_amount_by_source_type"];
};
/** BalanceDetail */
@@ -7671,6 +7729,14 @@ export interface components {
/** @description Funds that are available for use. */
available: components["schemas"]["balance_amount"][];
};
+ /** BalanceNetAvailable */
+ balance_net_available: {
+ /** @description Net balance amount, subtracting fees from platform-set pricing. */
+ amount: number;
+ /** @description ID of the external account for this net balance (not expandable). */
+ destination: string;
+ source_types?: components["schemas"]["balance_amount_by_source_type"];
+ };
/**
* BalanceTransaction
* @description Balance transactions represent funds moving through your Stripe account.
@@ -7713,7 +7779,7 @@ export interface components {
/** @description Learn more about how [reporting categories](https://stripe.com/docs/reports/reporting-categories) can help you understand balance transactions from an accounting perspective. */
reporting_category: string;
/** @description This transaction relates to the Stripe object. */
- source?: (string | components["schemas"]["application_fee"] | components["schemas"]["charge"] | components["schemas"]["connect_collection_transfer"] | components["schemas"]["customer_cash_balance_transaction"] | components["schemas"]["dispute"] | components["schemas"]["fee_refund"] | components["schemas"]["issuing.authorization"] | components["schemas"]["issuing.dispute"] | components["schemas"]["issuing.transaction"] | components["schemas"]["payout"] | components["schemas"]["platform_tax_fee"] | components["schemas"]["refund"] | components["schemas"]["reserve_transaction"] | components["schemas"]["tax_deducted_at_source"] | components["schemas"]["topup"] | components["schemas"]["transfer"] | components["schemas"]["transfer_reversal"]) | null;
+ source?: (string | components["schemas"]["application_fee"] | components["schemas"]["charge"] | components["schemas"]["connect_collection_transfer"] | components["schemas"]["customer_cash_balance_transaction"] | components["schemas"]["dispute"] | components["schemas"]["fee_refund"] | components["schemas"]["issuing.authorization"] | components["schemas"]["issuing.dispute"] | components["schemas"]["issuing.transaction"] | components["schemas"]["payout"] | components["schemas"]["refund"] | components["schemas"]["reserve_transaction"] | components["schemas"]["tax_deducted_at_source"] | components["schemas"]["topup"] | components["schemas"]["transfer"] | components["schemas"]["transfer_reversal"]) | null;
/** @description The transaction's net funds status in the Stripe balance, which are either `available` or `pending`. */
status: string;
/**
@@ -7727,8 +7793,7 @@ export interface components {
* @description These bank accounts are payment methods on `Customer` objects.
*
* On the other hand [External Accounts](/api#external_accounts) are transfer
- * destinations on `Account` objects for accounts where [controller.requirement_collection](/api/accounts/object#account_object-controller-requirement_collection)
- * is `application`, which includes [Custom accounts](/connect/custom-accounts).
+ * destinations on `Account` objects for connected accounts.
* They can be bank accounts or debit cards as well, and are documented in the links above.
*
* Related guide: [Bank debits and transfers](/payments/bank-debits-transfers)
@@ -8615,7 +8680,7 @@ export interface components {
* @enum {string}
*/
object: "checkout.session";
- /** @description The ID of the PaymentIntent for Checkout Sessions in `payment` mode. */
+ /** @description The ID of the PaymentIntent for Checkout Sessions in `payment` mode. You can't confirm or cancel the PaymentIntent for a Checkout Session. To cancel, [expire the Checkout Session](https://stripe.com/docs/api/checkout/sessions/expire) instead. */
payment_intent?: (string | components["schemas"]["payment_intent"]) | null;
/** @description The ID of the Payment Link that created this Session. */
payment_link?: (string | components["schemas"]["payment_link"]) | null;
@@ -8649,7 +8714,7 @@ export interface components {
return_url?: string;
/** @description Controls saved payment method settings for the session. Only available in `payment` and `subscription` mode. */
saved_payment_method_options?: components["schemas"]["payment_pages_checkout_session_saved_payment_method_options"] | null;
- /** @description The ID of the SetupIntent for Checkout Sessions in `setup` mode. */
+ /** @description The ID of the SetupIntent for Checkout Sessions in `setup` mode. You can't confirm or cancel the SetupIntent for a Checkout Session. To cancel, [expire the Checkout Session](https://stripe.com/docs/api/checkout/sessions/expire) instead. */
setup_intent?: (string | components["schemas"]["setup_intent"]) | null;
/** @description When set, provides configuration for Checkout to collect a shipping address from a customer. */
shipping_address_collection?: components["schemas"]["payment_pages_checkout_session_shipping_address_collection"] | null;
@@ -9008,6 +9073,18 @@ export interface components {
*/
setup_future_usage?: "none";
};
+ /** CheckoutMultibancoPaymentMethodOptions */
+ checkout_multibanco_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * Providing this parameter will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntent's Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes.
+ *
+ * When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
/** CheckoutOxxoPaymentMethodOptions */
checkout_oxxo_payment_method_options: {
/** @description The number of calendar days before an OXXO invoice expires. For example, if you create an OXXO invoice on Monday and you set expires_after_days to 2, the OXXO invoice will expire on Wednesday at 23:59 America/Mexico_City time. */
@@ -9119,6 +9196,7 @@ export interface components {
konbini?: components["schemas"]["checkout_konbini_payment_method_options"];
link?: components["schemas"]["checkout_link_payment_method_options"];
mobilepay?: components["schemas"]["checkout_mobilepay_payment_method_options"];
+ multibanco?: components["schemas"]["checkout_multibanco_payment_method_options"];
oxxo?: components["schemas"]["checkout_oxxo_payment_method_options"];
p24?: components["schemas"]["checkout_p24_payment_method_options"];
paynow?: components["schemas"]["checkout_paynow_payment_method_options"];
@@ -9444,6 +9522,11 @@ export interface components {
affirm?: components["schemas"]["payment_method_affirm"];
afterpay_clearpay?: components["schemas"]["payment_method_afterpay_clearpay"];
alipay?: components["schemas"]["payment_flows_private_payment_methods_alipay"];
+ /**
+ * @description This field indicates whether this payment method can be shown again to its customer in a checkout flow. Stripe products such as Checkout and Elements use this field to determine whether a payment method can be shown as a saved payment method in a checkout flow. The field defaults to “unspecified”.
+ * @enum {string}
+ */
+ allow_redisplay?: "always" | "limited" | "unspecified";
amazon_pay?: components["schemas"]["payment_method_amazon_pay"];
au_becs_debit?: components["schemas"]["payment_method_au_becs_debit"];
bacs_debit?: components["schemas"]["payment_method_bacs_debit"];
@@ -9465,6 +9548,7 @@ export interface components {
konbini?: components["schemas"]["payment_method_konbini"];
link?: components["schemas"]["payment_method_link"];
mobilepay?: components["schemas"]["payment_method_mobilepay"];
+ multibanco?: components["schemas"]["payment_method_multibanco"];
oxxo?: components["schemas"]["payment_method_oxxo"];
p24?: components["schemas"]["payment_method_p24"];
paynow?: components["schemas"]["payment_method_paynow"];
@@ -9475,11 +9559,12 @@ export interface components {
sepa_debit?: components["schemas"]["payment_method_sepa_debit"];
sofort?: components["schemas"]["payment_method_sofort"];
swish?: components["schemas"]["payment_method_swish"];
+ twint?: components["schemas"]["payment_method_twint"];
/**
* @description The type of the PaymentMethod. An additional hash is included on the PaymentMethod with a name matching this value. It contains additional information specific to the PaymentMethod type.
* @enum {string}
*/
- type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "card_present" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "interac_present" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay" | "zip";
+ type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "card_present" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "interac_present" | "klarna" | "konbini" | "link" | "mobilepay" | "multibanco" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "twint" | "us_bank_account" | "wechat_pay" | "zip";
us_bank_account?: components["schemas"]["payment_method_us_bank_account"];
wechat_pay?: components["schemas"]["payment_method_wechat_pay"];
zip?: components["schemas"]["payment_method_zip"];
@@ -9578,6 +9663,8 @@ export interface components {
connect_embedded_payouts_features: {
/** @description Whether to allow payout schedule to be changed. Default `true` when Stripe owns Loss Liability, default `false` otherwise. */
edit_payout_schedule: boolean;
+ /** @description Whether to allow platforms to control bank account collection for their connected accounts. This feature can only be false for custom accounts (or accounts where the platform is compliance owner). Otherwise, bank account collection is determined by compliance requirements. */
+ external_account_collection: boolean;
/** @description Whether to allow creation of instant payouts. Default `true` when Stripe owns Loss Liability, default `false` otherwise. */
instant_payouts: boolean;
/** @description Whether to allow creation of standard payouts. Default `true` when Stripe owns Loss Liability, default `false` otherwise. */
@@ -10868,11 +10955,13 @@ export interface components {
/** DisputePaymentMethodDetails */
dispute_payment_method_details: {
card?: components["schemas"]["dispute_payment_method_details_card"];
+ klarna?: components["schemas"]["dispute_payment_method_details_klarna"];
+ paypal?: components["schemas"]["dispute_payment_method_details_paypal"];
/**
* @description Payment method type.
* @enum {string}
*/
- type: "card";
+ type: "card" | "klarna" | "paypal";
};
/** DisputePaymentMethodDetailsCard */
dispute_payment_method_details_card: {
@@ -10881,6 +10970,18 @@ export interface components {
/** @description The card network's specific dispute reason code, which maps to one of Stripe's primary dispute categories to simplify response guidance. The [Network code map](https://stripe.com/docs/disputes/categories#network-code-map) lists all available dispute reason codes by network. */
network_reason_code?: string | null;
};
+ /** DisputePaymentMethodDetailsKlarna */
+ dispute_payment_method_details_klarna: {
+ /** @description The reason for the dispute as defined by Klarna */
+ reason_code?: string | null;
+ };
+ /** DisputePaymentMethodDetailsPaypal */
+ dispute_payment_method_details_paypal: {
+ /** @description The ID of the dispute in PayPal. */
+ case_id?: string | null;
+ /** @description The reason for the dispute as defined by PayPal */
+ reason_code?: string | null;
+ };
/** EmailSent */
email_sent: {
/**
@@ -12225,7 +12326,7 @@ export interface components {
application?: (string | components["schemas"]["application"] | components["schemas"]["deleted_application"]) | null;
/** @description The fee in cents (or local equivalent) that will be applied to the invoice and transferred to the application owner's Stripe account when the invoice is paid. */
application_fee_amount?: number | null;
- /** @description Number of payment attempts made for this invoice, from the perspective of the payment retry schedule. Any payment attempt counts as the first attempt, and subsequently only automatic retries increment the attempt count. In other words, manual payment attempts after the first attempt do not affect the retry schedule. */
+ /** @description Number of payment attempts made for this invoice, from the perspective of the payment retry schedule. Any payment attempt counts as the first attempt, and subsequently only automatic retries increment the attempt count. In other words, manual payment attempts after the first attempt do not affect the retry schedule. If a failure is returned with a non-retryable return code, the invoice can no longer be retried unless a new payment method is obtained. Retries will continue to be scheduled, and attempt_count will continue to increment, but retries will only be executed if a new payment method is obtained. */
attempt_count: number;
/** @description Whether an attempt has been made to pay the invoice. An invoice is not attempted until 1 hour after the `invoice.created` webhook, for example, so you might not want to display that invoice as unpaid to your users. */
attempted: boolean;
@@ -12725,7 +12826,7 @@ export interface components {
/** @description Payment-method-specific configuration to provide to the invoice’s PaymentIntent. */
payment_method_options?: components["schemas"]["invoices_payment_method_options"] | null;
/** @description The list of payment method types (e.g. card) to provide to the invoice’s PaymentIntent. If not set, Stripe attempts to automatically determine the types to use by looking at the invoice’s default payment method, the subscription’s default payment method, the customer’s default payment method, and your [invoice template settings](https://dashboard.stripe.com/settings/billing/invoice). */
- payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "us_bank_account" | "wechat_pay")[] | null;
+ payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay")[] | null;
};
/** InvoicesResourceFromInvoice */
invoices_resource_from_invoice: {
@@ -12744,10 +12845,10 @@ export interface components {
/** InvoicesResourceInvoiceTaxID */
invoices_resource_invoice_tax_id: {
/**
- * @description The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, or `unknown`
+ * @description The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, or `unknown`
* @enum {string}
*/
- type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "unknown" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
+ type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "de_stn" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "unknown" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
/** @description The value of the tax ID. */
value?: string | null;
};
@@ -13018,6 +13119,11 @@ export interface components {
id: string;
/** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
livemode: boolean;
+ /**
+ * @description The enum that describes the dispute loss outcome. If the dispute is not lost, this field will be absent. New enum values may be added in the future, so be sure to handle unknown values.
+ * @enum {string}
+ */
+ loss_reason?: "cardholder_authentication_issuer_liability" | "eci5_token_transaction_with_tavv" | "excess_disputes_in_timeframe" | "has_not_met_the_minimum_dispute_amount_requirements" | "invalid_duplicate_dispute" | "invalid_incorrect_amount_dispute" | "invalid_no_authorization" | "invalid_use_of_disputes" | "merchandise_delivered_or_shipped" | "merchandise_or_service_as_described" | "not_cancelled" | "other" | "refund_issued" | "submitted_beyond_allowable_time_limit" | "transaction_3ds_required" | "transaction_approved_after_prior_fraud_dispute" | "transaction_authorized" | "transaction_electronically_read" | "transaction_qualifies_for_visa_easy_payment_service" | "transaction_unattended";
/** @description Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. */
metadata: {
[key: string]: string | undefined;
@@ -13083,7 +13189,7 @@ export interface components {
* @description A Physical Bundle represents the bundle of physical items - card stock, carrier letter, and envelope - that is shipped to a cardholder when you create a physical card.
*/
"issuing.physical_bundle": {
- features?: components["schemas"]["issuing_physical_bundle_features"];
+ features: components["schemas"]["issuing_physical_bundle_features"];
/** @description Unique identifier for the object. */
id: string;
/** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
@@ -13676,13 +13782,14 @@ export interface components {
duplicate?: components["schemas"]["issuing_dispute_duplicate_evidence"];
fraudulent?: components["schemas"]["issuing_dispute_fraudulent_evidence"];
merchandise_not_as_described?: components["schemas"]["issuing_dispute_merchandise_not_as_described_evidence"];
+ no_valid_authorization?: components["schemas"]["issuing_dispute_no_valid_authorization_evidence"];
not_received?: components["schemas"]["issuing_dispute_not_received_evidence"];
other?: components["schemas"]["issuing_dispute_other_evidence"];
/**
* @description The reason for filing the dispute. Its value will match the field containing the evidence.
* @enum {string}
*/
- reason: "canceled" | "duplicate" | "fraudulent" | "merchandise_not_as_described" | "not_received" | "other" | "service_not_as_described";
+ reason: "canceled" | "duplicate" | "fraudulent" | "merchandise_not_as_described" | "no_valid_authorization" | "not_received" | "other" | "service_not_as_described";
service_not_as_described?: components["schemas"]["issuing_dispute_service_not_as_described_evidence"];
};
/** IssuingDisputeFraudulentEvidence */
@@ -13716,6 +13823,13 @@ export interface components {
*/
returned_at?: number | null;
};
+ /** IssuingDisputeNoValidAuthorizationEvidence */
+ issuing_dispute_no_valid_authorization_evidence: {
+ /** @description (ID of a [file upload](https://stripe.com/docs/guides/file-upload)) Additional documentation supporting the dispute. */
+ additional_documentation?: (string | components["schemas"]["file"]) | null;
+ /** @description Explanation of why the cardholder is disputing this transaction. */
+ explanation?: string | null;
+ };
/** IssuingDisputeNotReceivedEvidence */
issuing_dispute_not_received_evidence: {
/** @description (ID of a [file upload](https://stripe.com/docs/guides/file-upload)) Additional documentation supporting the dispute. */
@@ -13942,20 +14056,20 @@ export interface components {
};
/** IssuingTransactionFuelData */
issuing_transaction_fuel_data: {
+ /**
+ * Format: decimal
+ * @description The quantity of `unit`s of fuel that was dispensed, represented as a decimal string with at most 12 decimal places.
+ */
+ quantity_decimal?: string | null;
/** @description The type of fuel that was purchased. One of `diesel`, `unleaded_plus`, `unleaded_regular`, `unleaded_super`, or `other`. */
type: string;
- /** @description The units for `volume_decimal`. One of `liter`, `us_gallon`, or `other`. */
+ /** @description The units for `quantity_decimal`. One of `charging_minute`, `imperial_gallon`, `kilogram`, `kilowatt_hour`, `liter`, `pound`, `us_gallon`, or `other`. */
unit: string;
/**
* Format: decimal
* @description The cost in cents per each unit of fuel, represented as a decimal string with at most 12 decimal places.
*/
unit_cost_decimal: string;
- /**
- * Format: decimal
- * @description The volume of the fuel that was pumped, represented as a decimal string with at most 12 decimal places.
- */
- volume_decimal?: string | null;
};
/** IssuingTransactionLodgingData */
issuing_transaction_lodging_data: {
@@ -14751,6 +14865,7 @@ export interface components {
cashapp_handle_redirect_or_display_qr_code?: components["schemas"]["payment_intent_next_action_cashapp_handle_redirect_or_display_qr_code"];
display_bank_transfer_instructions?: components["schemas"]["payment_intent_next_action_display_bank_transfer_instructions"];
konbini_display_details?: components["schemas"]["payment_intent_next_action_konbini"];
+ multibanco_display_details?: components["schemas"]["payment_intent_next_action_display_multibanco_details"];
oxxo_display_details?: components["schemas"]["payment_intent_next_action_display_oxxo_details"];
paynow_display_qr_code?: components["schemas"]["payment_intent_next_action_paynow_display_qr_code"];
pix_display_qr_code?: components["schemas"]["payment_intent_next_action_pix_display_qr_code"];
@@ -14839,6 +14954,20 @@ export interface components {
*/
type: "eu_bank_transfer" | "gb_bank_transfer" | "jp_bank_transfer" | "mx_bank_transfer" | "us_bank_transfer";
};
+ /** PaymentIntentNextActionDisplayMultibancoDetails */
+ payment_intent_next_action_display_multibanco_details: {
+ /** @description Entity number associated with this Multibanco payment. */
+ entity?: string | null;
+ /**
+ * Format: unix-time
+ * @description The timestamp at which the Multibanco voucher expires.
+ */
+ expires_at?: number | null;
+ /** @description The URL for the hosted Multibanco voucher page, which allows customers to view a Multibanco voucher. */
+ hosted_voucher_url?: string | null;
+ /** @description Reference number associated with this Multibanco payment. */
+ reference?: string | null;
+ };
/** PaymentIntentNextActionDisplayOxxoDetails */
payment_intent_next_action_display_oxxo_details: {
/**
@@ -15034,6 +15163,7 @@ export interface components {
konbini?: components["schemas"]["payment_method_options_konbini"] | components["schemas"]["payment_intent_type_specific_payment_method_options_client"];
link?: components["schemas"]["payment_intent_payment_method_options_link"] | components["schemas"]["payment_intent_type_specific_payment_method_options_client"];
mobilepay?: components["schemas"]["payment_intent_payment_method_options_mobilepay"] | components["schemas"]["payment_intent_type_specific_payment_method_options_client"];
+ multibanco?: components["schemas"]["payment_method_options_multibanco"] | components["schemas"]["payment_intent_type_specific_payment_method_options_client"];
oxxo?: components["schemas"]["payment_method_options_oxxo"] | components["schemas"]["payment_intent_type_specific_payment_method_options_client"];
p24?: components["schemas"]["payment_method_options_p24"] | components["schemas"]["payment_intent_type_specific_payment_method_options_client"];
paynow?: components["schemas"]["payment_method_options_paynow"] | components["schemas"]["payment_intent_type_specific_payment_method_options_client"];
@@ -15044,6 +15174,7 @@ export interface components {
sepa_debit?: components["schemas"]["payment_intent_payment_method_options_sepa_debit"] | components["schemas"]["payment_intent_type_specific_payment_method_options_client"];
sofort?: components["schemas"]["payment_method_options_sofort"] | components["schemas"]["payment_intent_type_specific_payment_method_options_client"];
swish?: components["schemas"]["payment_intent_payment_method_options_swish"] | components["schemas"]["payment_intent_type_specific_payment_method_options_client"];
+ twint?: components["schemas"]["payment_method_options_twint"] | components["schemas"]["payment_intent_type_specific_payment_method_options_client"];
us_bank_account?: components["schemas"]["payment_intent_payment_method_options_us_bank_account"] | components["schemas"]["payment_intent_type_specific_payment_method_options_client"];
wechat_pay?: components["schemas"]["payment_method_options_wechat_pay"] | components["schemas"]["payment_intent_type_specific_payment_method_options_client"];
zip?: components["schemas"]["payment_method_options_zip"] | components["schemas"]["payment_intent_type_specific_payment_method_options_client"];
@@ -15294,6 +15425,7 @@ export interface components {
installments?: components["schemas"]["payment_flows_installment_options"];
/** @description When enabled, using a card that is attached to a customer will require the CVC to be provided again (i.e. using the cvc_token parameter). */
require_cvc_recollection?: boolean;
+ routing?: components["schemas"]["payment_method_options_card_present_routing"];
/**
* @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
*
@@ -15391,7 +15523,7 @@ export interface components {
*/
payment_method_collection: "always" | "if_required";
/** @description The list of payment method types that customers can use. When `null`, Stripe will dynamically show relevant payment methods you've enabled in your [payment method settings](https://dashboard.stripe.com/settings/payment_methods). */
- payment_method_types?: ("affirm" | "afterpay_clearpay" | "alipay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "cashapp" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay")[] | null;
+ payment_method_types?: ("affirm" | "afterpay_clearpay" | "alipay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "cashapp" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay")[] | null;
phone_number_collection: components["schemas"]["payment_links_resource_phone_number_collection"];
/** @description Settings that restrict the usage of a payment link. */
restrictions?: components["schemas"]["payment_links_resource_restrictions"] | null;
@@ -15654,6 +15786,11 @@ export interface components {
affirm?: components["schemas"]["payment_method_affirm"];
afterpay_clearpay?: components["schemas"]["payment_method_afterpay_clearpay"];
alipay?: components["schemas"]["payment_flows_private_payment_methods_alipay"];
+ /**
+ * @description This field indicates whether this payment method can be shown again to its customer in a checkout flow. Stripe products such as Checkout and Elements use this field to determine whether a payment method can be shown as a saved payment method in a checkout flow. The field defaults to “unspecified”.
+ * @enum {string}
+ */
+ allow_redisplay?: "always" | "limited" | "unspecified";
amazon_pay?: components["schemas"]["payment_method_amazon_pay"];
au_becs_debit?: components["schemas"]["payment_method_au_becs_debit"];
bacs_debit?: components["schemas"]["payment_method_bacs_debit"];
@@ -15690,6 +15827,7 @@ export interface components {
[key: string]: string | undefined;
} | null;
mobilepay?: components["schemas"]["payment_method_mobilepay"];
+ multibanco?: components["schemas"]["payment_method_multibanco"];
/**
* @description String representing the object's type. Objects of the same type share the same value.
* @enum {string}
@@ -15706,11 +15844,12 @@ export interface components {
sepa_debit?: components["schemas"]["payment_method_sepa_debit"];
sofort?: components["schemas"]["payment_method_sofort"];
swish?: components["schemas"]["payment_method_swish"];
+ twint?: components["schemas"]["payment_method_twint"];
/**
* @description The type of the PaymentMethod. An additional hash is included on the PaymentMethod with a name matching this value. It contains additional information specific to the PaymentMethod type.
* @enum {string}
*/
- type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "card_present" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "interac_present" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay" | "zip";
+ type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "card_present" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "interac_present" | "klarna" | "konbini" | "link" | "mobilepay" | "multibanco" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "twint" | "us_bank_account" | "wechat_pay" | "zip";
us_bank_account?: components["schemas"]["payment_method_us_bank_account"];
wechat_pay?: components["schemas"]["payment_method_wechat_pay"];
zip?: components["schemas"]["payment_method_zip"];
@@ -15832,6 +15971,8 @@ export interface components {
last4?: string | null;
/** @description Contains information about card networks that can be used to process the payment. */
networks?: components["schemas"]["payment_method_card_present_networks"] | null;
+ /** @description EMV tag 5F2D. Preferred languages specified by the integrated circuit chip. */
+ preferred_locales?: string[] | null;
/**
* @description How card details were read in this transaction.
* @enum {string|null}
@@ -15941,8 +16082,6 @@ export interface components {
*
* Child configurations have a `parent` that sets default values and controls which settings connected accounts may override. You can specify a parent ID at payment time, and Stripe will automatically resolve the connected account’s associated child configuration. Parent configurations are [managed in the dashboard](https://dashboard.stripe.com/settings/payment_methods/connected_accounts) and are not available in this API.
*
- * **Note:** The ability to turn off cards is in limited preview. Please [contact us](https://support.stripe.com/contact) if you require this functionality.
- *
* Related guides:
* - [Payment Method Configurations API](https://stripe.com/docs/connect/payment-method-configurations)
* - [Multiple configurations on dynamic payment methods](https://stripe.com/docs/payments/multiple-payment-method-configs)
@@ -15985,6 +16124,7 @@ export interface components {
/** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
livemode: boolean;
mobilepay?: components["schemas"]["payment_method_config_resource_payment_method_properties"];
+ multibanco?: components["schemas"]["payment_method_config_resource_payment_method_properties"];
/** @description The configuration's name. */
name: string;
/**
@@ -16049,6 +16189,7 @@ export interface components {
sofort?: components["schemas"]["payment_method_details_sofort"];
stripe_account?: components["schemas"]["payment_method_details_stripe_account"];
swish?: components["schemas"]["payment_method_details_swish"];
+ twint?: components["schemas"]["payment_method_details_twint"];
/** @description The type of transaction-specific details of the payment method used in the payment, one of `ach_credit_transfer`, `ach_debit`, `acss_debit`, `alipay`, `au_becs_debit`, `bancontact`, `card`, `card_present`, `eps`, `giropay`, `ideal`, `klarna`, `multibanco`, `p24`, `sepa_debit`, `sofort`, `stripe_account`, or `wechat`.
* An additional hash is included on `payment_method_details` with a name matching this value.
* It contains information specific to the payment method. */
@@ -16286,6 +16427,8 @@ export interface components {
offline?: components["schemas"]["payment_method_details_card_present_offline"] | null;
/** @description Defines whether the authorized amount can be over-captured or not */
overcapture_supported: boolean;
+ /** @description EMV tag 5F2D. Preferred languages specified by the integrated circuit chip. */
+ preferred_locales?: string[] | null;
/**
* @description How card details were read in this transaction.
* @enum {string|null}
@@ -16512,7 +16655,7 @@ export interface components {
* Can be one of `pay_later`, `pay_now`, `pay_with_financing`, or `pay_in_installments` */
payment_method_category?: string | null;
/** @description Preferred language of the Klarna authorization page that the customer is redirected to.
- * Can be one of `de-AT`, `en-AT`, `nl-BE`, `fr-BE`, `en-BE`, `de-DE`, `en-DE`, `da-DK`, `en-DK`, `es-ES`, `en-ES`, `fi-FI`, `sv-FI`, `en-FI`, `en-GB`, `en-IE`, `it-IT`, `en-IT`, `nl-NL`, `en-NL`, `nb-NO`, `en-NO`, `sv-SE`, `en-SE`, `en-US`, `es-US`, `fr-FR`, `en-FR`, `cs-CZ`, `en-CZ`, `el-GR`, `en-GR`, `en-AU`, `en-NZ`, `en-CA`, `fr-CA`, `pl-PL`, `en-PL`, `pt-PT`, `en-PT`, `de-CH`, `fr-CH`, `it-CH`, or `en-CH` */
+ * Can be one of `de-AT`, `en-AT`, `nl-BE`, `fr-BE`, `en-BE`, `de-DE`, `en-DE`, `da-DK`, `en-DK`, `es-ES`, `en-ES`, `fi-FI`, `sv-FI`, `en-FI`, `en-GB`, `en-IE`, `it-IT`, `en-IT`, `nl-NL`, `en-NL`, `nb-NO`, `en-NO`, `sv-SE`, `en-SE`, `en-US`, `es-US`, `fr-FR`, `en-FR`, `cs-CZ`, `en-CZ`, `ro-RO`, `en-RO`, `el-GR`, `en-GR`, `en-AU`, `en-NZ`, `en-CA`, `fr-CA`, `pl-PL`, `en-PL`, `pt-PT`, `en-PT`, `de-CH`, `fr-CH`, `it-CH`, or `en-CH` */
preferred_locale?: string | null;
};
/** payment_method_details_konbini */
@@ -16536,6 +16679,7 @@ export interface components {
};
/** payment_method_details_mobilepay */
payment_method_details_mobilepay: {
+ /** @description Internal card details */
card?: components["schemas"]["internal_card"] | null;
};
/** payment_method_details_multibanco */
@@ -16648,6 +16792,8 @@ export interface components {
/** @description The last four digits of the Swish account phone number */
verified_phone_last4?: string | null;
};
+ /** payment_method_details_twint */
+ payment_method_details_twint: Record;
/** payment_method_details_us_bank_account */
payment_method_details_us_bank_account: {
/**
@@ -16812,6 +16958,8 @@ export interface components {
};
/** payment_method_mobilepay */
payment_method_mobilepay: Record;
+ /** payment_method_multibanco */
+ payment_method_multibanco: Record;
/** payment_method_options_affirm */
payment_method_options_affirm: {
/**
@@ -16971,6 +17119,15 @@ export interface components {
request_extended_authorization?: boolean | null;
/** @description Request ability to [increment](https://stripe.com/docs/terminal/features/incremental-authorizations) this PaymentIntent if the combination of MCC and card brand is eligible. Check [incremental_authorization_supported](https://stripe.com/docs/api/charges/object#charge_object-payment_method_details-card_present-incremental_authorization_supported) in the [Confirm](https://stripe.com/docs/api/payment_intents/confirm) response to verify support. */
request_incremental_authorization_support?: boolean | null;
+ routing?: components["schemas"]["payment_method_options_card_present_routing"];
+ };
+ /** payment_method_options_card_present_routing */
+ payment_method_options_card_present_routing: {
+ /**
+ * @description Requested routing priority
+ * @enum {string|null}
+ */
+ requested_priority?: "domestic" | "international" | null;
};
/** payment_method_options_cashapp */
payment_method_options_cashapp: {
@@ -17120,6 +17277,18 @@ export interface components {
*/
setup_future_usage?: "none";
};
+ /** payment_method_options_multibanco */
+ payment_method_options_multibanco: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * Providing this parameter will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntent's Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes.
+ *
+ * When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
/** payment_method_options_oxxo */
payment_method_options_oxxo: {
/** @description The number of calendar days before an OXXO invoice expires. For example, if you create an OXXO invoice on Monday and you set expires_after_days to 2, the OXXO invoice will expire on Wednesday at 23:59 America/Mexico_City time. */
@@ -17241,6 +17410,18 @@ export interface components {
*/
setup_future_usage?: "none" | "off_session";
};
+ /** payment_method_options_twint */
+ payment_method_options_twint: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * Providing this parameter will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntent's Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes.
+ *
+ * When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
/** payment_method_options_us_bank_account_mandate_options */
payment_method_options_us_bank_account_mandate_options: {
/**
@@ -17328,6 +17509,8 @@ export interface components {
};
/** payment_method_swish */
payment_method_swish: Record;
+ /** payment_method_twint */
+ payment_method_twint: Record;
/** payment_method_us_bank_account */
payment_method_us_bank_account: {
/**
@@ -17472,6 +17655,8 @@ export interface components {
};
/** PaymentPagesCheckoutSessionCustomFieldsDropdown */
payment_pages_checkout_session_custom_fields_dropdown: {
+ /** @description The value that will pre-fill on the payment page. */
+ default_value?: string | null;
/** @description The options available for the customer to select. Up to 200 options allowed. */
options: components["schemas"]["payment_pages_checkout_session_custom_fields_option"][];
/** @description The option selected by the customer. This will be the `value` for the option. */
@@ -17489,6 +17674,8 @@ export interface components {
};
/** PaymentPagesCheckoutSessionCustomFieldsNumeric */
payment_pages_checkout_session_custom_fields_numeric: {
+ /** @description The value that will pre-fill the field on the payment page. */
+ default_value?: string | null;
/** @description The maximum character length constraint for the customer's input. */
maximum_length?: number | null;
/** @description The minimum character length requirement for the customer's input. */
@@ -17505,6 +17692,8 @@ export interface components {
};
/** PaymentPagesCheckoutSessionCustomFieldsText */
payment_pages_checkout_session_custom_fields_text: {
+ /** @description The value that will pre-fill the field on the payment page. */
+ default_value?: string | null;
/** @description The maximum character length constraint for the customer's input. */
maximum_length?: number | null;
/** @description The minimum character length requirement for the customer's input. */
@@ -17589,10 +17778,15 @@ export interface components {
};
/** PaymentPagesCheckoutSessionSavedPaymentMethodOptions */
payment_pages_checkout_session_saved_payment_method_options: {
- /** @description Controls which payment methods are eligible to be redisplayed to returning customers. Corresponds to `allow_redisplay` on the payment method. */
+ /** @description Uses the `allow_redisplay` value of each saved payment method to filter the set presented to a returning customer. By default, only saved payment methods with ’allow_redisplay: ‘always’ are shown in Checkout. */
allow_redisplay_filters?: ("always" | "limited" | "unspecified")[] | null;
/**
- * @description Enable customers to choose if they wish to save their payment method for future use.
+ * @description Enable customers to choose if they wish to remove their saved payment methods. Disabled by default.
+ * @enum {string|null}
+ */
+ payment_method_remove?: "disabled" | "enabled" | null;
+ /**
+ * @description Enable customers to choose if they wish to save their payment method for future use. Disabled by default.
* @enum {string|null}
*/
payment_method_save?: "disabled" | "enabled" | null;
@@ -17626,10 +17820,10 @@ export interface components {
/** PaymentPagesCheckoutSessionTaxID */
payment_pages_checkout_session_tax_id: {
/**
- * @description The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, or `unknown`
+ * @description The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, or `unknown`
* @enum {string}
*/
- type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "unknown" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
+ type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "de_stn" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "unknown" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
/** @description The value of the tax ID. */
value?: string | null;
};
@@ -17671,6 +17865,10 @@ export interface components {
payout: {
/** @description The amount (in cents (or local equivalent)) that transfers to your bank account or debit card. */
amount: number;
+ /** @description The application fee (if any) for the payout. [See the Connect documentation](https://stripe.com/docs/connect/instant-payouts#monetization-and-fees) for details. */
+ application_fee?: (string | components["schemas"]["application_fee"]) | null;
+ /** @description The amount of the application fee (if any) requested for the payout. [See the Connect documentation](https://stripe.com/docs/connect/instant-payouts#monetization-and-fees) for details. */
+ application_fee_amount?: number | null;
/**
* Format: unix-time
* @description Date that you can expect the payout to arrive in the bank. This factors in delays to account for weekends or bank holidays.
@@ -17992,21 +18190,17 @@ export interface components {
/** @description Up to and including to this quantity will be contained in the tier. */
up_to?: number | null;
};
- /** PlatformTax */
- platform_tax_fee: {
- /** @description The Connected account that incurred this charge. */
- account: string;
- /** @description Unique identifier for the object. */
- id: string;
+ /** PlatformEarningFeeSource */
+ platform_earning_fee_source: {
+ /** @description Charge ID that created this application fee. */
+ charge?: string;
+ /** @description Payout ID that created this application fee. */
+ payout?: string;
/**
- * @description String representing the object's type. Objects of the same type share the same value.
+ * @description Type of object that created the application fee, either `charge` or `payout`.
* @enum {string}
*/
- object: "platform_tax_fee";
- /** @description The payment object that caused this tax to be inflicted. */
- source_transaction: string;
- /** @description The type of tax (VAT). */
- type: string;
+ type: "charge" | "payout";
};
/** PortalBusinessProfile */
portal_business_profile: {
@@ -18327,7 +18521,7 @@ export interface components {
package_dimensions?: components["schemas"]["package_dimensions"] | null;
/** @description Whether this product is shipped (i.e., physical goods). */
shippable?: boolean | null;
- /** @description Extra information about a product which will appear on your customer's credit card statement. In the case that multiple products are billed at once, the first statement descriptor will be used. */
+ /** @description Extra information about a product which will appear on your customer's credit card statement. In the case that multiple products are billed at once, the first statement descriptor will be used. Only used for subscription payments. */
statement_descriptor?: string | null;
/** @description A [tax code](https://stripe.com/docs/tax/tax-categories) ID. */
tax_code?: (string | components["schemas"]["tax_code"]) | null;
@@ -18906,6 +19100,7 @@ export interface components {
grabpay?: components["schemas"]["destination_details_unimplemented"];
jp_bank_transfer?: components["schemas"]["refund_destination_details_generic"];
klarna?: components["schemas"]["destination_details_unimplemented"];
+ multibanco?: components["schemas"]["refund_destination_details_generic"];
mx_bank_transfer?: components["schemas"]["refund_destination_details_generic"];
p24?: components["schemas"]["refund_destination_details_generic"];
paynow?: components["schemas"]["destination_details_unimplemented"];
@@ -19715,7 +19910,7 @@ export interface components {
/** @description A [tax code](https://stripe.com/docs/tax/tax-categories) ID. The Shipping tax code is `txcd_92010001`. */
tax_code?: (string | components["schemas"]["tax_code"]) | null;
/**
- * @description The type of calculation to use on the shipping rate. Can only be `fixed_amount` for now.
+ * @description The type of calculation to use on the shipping rate.
* @enum {string}
*/
type: "fixed_amount";
@@ -20341,6 +20536,7 @@ export interface components {
ended_at?: number | null;
/** @description Unique identifier for the object. */
id: string;
+ invoice_settings: components["schemas"]["subscriptions_resource_subscription_invoice_settings"];
/**
* SubscriptionItemList
* @description List of subscription items, each with an attached price.
@@ -20782,7 +20978,7 @@ export interface components {
/** @description Payment-method-specific configuration to provide to invoices created by the subscription. */
payment_method_options?: components["schemas"]["subscriptions_resource_payment_method_options"] | null;
/** @description The list of payment method types to provide to every invoice created by the subscription. If not set, Stripe attempts to automatically determine the types to use by looking at the invoice’s default payment method, the subscription’s default payment method, the customer’s default payment method, and your [invoice template settings](https://dashboard.stripe.com/settings/billing/invoice). */
- payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "us_bank_account" | "wechat_pay")[] | null;
+ payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay")[] | null;
/**
* @description Either `off`, or `on_subscription`. With `on_subscription` Stripe updates `subscription.default_payment_method` when a subscription payment succeeds.
* @enum {string|null}
@@ -20815,6 +21011,12 @@ export interface components {
/** @description Indicates if a plan's `trial_period_days` should be applied to the subscription. Setting `trial_end` per subscription is preferred, and this defaults to `false`. Setting this flag to `true` together with `trial_end` is not allowed. See [Using trial periods on subscriptions](https://stripe.com/docs/billing/subscriptions/trials) to learn more. */
trial_from_plan?: boolean | null;
};
+ /** SubscriptionsResourceSubscriptionInvoiceSettings */
+ subscriptions_resource_subscription_invoice_settings: {
+ /** @description The account tax IDs associated with the subscription. Will be set on invoices generated by the subscription. */
+ account_tax_ids?: (string | components["schemas"]["tax_id"] | components["schemas"]["deleted_tax_id"])[] | null;
+ issuer: components["schemas"]["connect_account_reference"];
+ };
/**
* SubscriptionsTrialsResourceEndBehavior
* @description Defines how a subscription behaves when a free trial ends.
@@ -21179,10 +21381,10 @@ export interface components {
/** @description The account or customer the tax ID belongs to. */
owner?: components["schemas"]["tax_i_ds_owner"] | null;
/**
- * @description Type of the tax ID, one of `ad_nrt`, `ae_trn`, `ar_cuit`, `au_abn`, `au_arn`, `bg_uic`, `bh_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `ca_qst`, `ch_vat`, `cl_tin`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`, `hk_br`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kr_brn`, `kz_bin`, `li_uid`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`, `no_voec`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`, `si_tin`, `sv_nit`, `th_vat`, `tr_tin`, `tw_vat`, `ua_vat`, `us_ein`, `uy_ruc`, `ve_rif`, `vn_tin`, or `za_vat`. Note that some legacy tax IDs have type `unknown`
+ * @description Type of the tax ID, one of `ad_nrt`, `ae_trn`, `ar_cuit`, `au_abn`, `au_arn`, `bg_uic`, `bh_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `ca_qst`, `ch_vat`, `cl_tin`, `cn_tin`, `co_nit`, `cr_tin`, `de_stn`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`, `hk_br`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kr_brn`, `kz_bin`, `li_uid`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`, `no_voec`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`, `si_tin`, `sv_nit`, `th_vat`, `tr_tin`, `tw_vat`, `ua_vat`, `us_ein`, `uy_ruc`, `ve_rif`, `vn_tin`, or `za_vat`. Note that some legacy tax IDs have type `unknown`
* @enum {string}
*/
- type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "unknown" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
+ type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "de_stn" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "unknown" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
/** @description Value of the tax ID. */
value: string;
/** @description Tax ID verification information. */
@@ -21207,6 +21409,7 @@ export interface components {
au?: components["schemas"]["tax_product_registrations_resource_country_options_default"];
be?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
bg?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
+ bh?: components["schemas"]["tax_product_registrations_resource_country_options_default"];
ca?: components["schemas"]["tax_product_registrations_resource_country_options_canada"];
ch?: components["schemas"]["tax_product_registrations_resource_country_options_default"];
cl?: components["schemas"]["tax_product_registrations_resource_country_options_simplified"];
@@ -21216,10 +21419,12 @@ export interface components {
de?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
dk?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
ee?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
+ eg?: components["schemas"]["tax_product_registrations_resource_country_options_simplified"];
es?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
fi?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
fr?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
gb?: components["schemas"]["tax_product_registrations_resource_country_options_default"];
+ ge?: components["schemas"]["tax_product_registrations_resource_country_options_simplified"];
gr?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
hr?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
hu?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
@@ -21228,16 +21433,20 @@ export interface components {
is?: components["schemas"]["tax_product_registrations_resource_country_options_default"];
it?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
jp?: components["schemas"]["tax_product_registrations_resource_country_options_default"];
+ ke?: components["schemas"]["tax_product_registrations_resource_country_options_simplified"];
kr?: components["schemas"]["tax_product_registrations_resource_country_options_simplified"];
+ kz?: components["schemas"]["tax_product_registrations_resource_country_options_simplified"];
lt?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
lu?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
lv?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
mt?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
mx?: components["schemas"]["tax_product_registrations_resource_country_options_simplified"];
my?: components["schemas"]["tax_product_registrations_resource_country_options_simplified"];
+ ng?: components["schemas"]["tax_product_registrations_resource_country_options_simplified"];
nl?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
no?: components["schemas"]["tax_product_registrations_resource_country_options_default"];
nz?: components["schemas"]["tax_product_registrations_resource_country_options_default"];
+ om?: components["schemas"]["tax_product_registrations_resource_country_options_default"];
pl?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
pt?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
ro?: components["schemas"]["tax_product_registrations_resource_country_options_europe"];
@@ -21343,10 +21552,10 @@ export interface components {
/** TaxProductResourceCustomerDetailsResourceTaxId */
tax_product_resource_customer_details_resource_tax_id: {
/**
- * @description The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, or `unknown`
+ * @description The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, or `unknown`
* @enum {string}
*/
- type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "unknown" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
+ type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "de_stn" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "unknown" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
/** @description The value of the tax ID. */
value: string;
};
@@ -21590,6 +21799,7 @@ export interface components {
*/
object: "terminal.configuration";
offline?: components["schemas"]["terminal_configuration_configuration_resource_offline_config"];
+ stripe_s700?: components["schemas"]["terminal_configuration_configuration_resource_device_type_specific_config"];
tipping?: components["schemas"]["terminal_configuration_configuration_resource_tipping"];
verifone_p400?: components["schemas"]["terminal_configuration_configuration_resource_device_type_specific_config"];
};
@@ -21600,7 +21810,7 @@ export interface components {
* Related guide: [Fleet management](https://stripe.com/docs/terminal/fleet/locations)
*/
"terminal.connection_token": {
- /** @description The id of the location that this connection token is scoped to. Note that location scoping only applies to internet-connected readers. For more details, see [the docs on scoping connection tokens](https://stripe.com/docs/terminal/fleet/locations#connection-tokens). */
+ /** @description The id of the location that this connection token is scoped to. Note that location scoping only applies to internet-connected readers. For more details, see [the docs on scoping connection tokens](https://docs.stripe.com/terminal/fleet/locations-and-zones?dashboard-or-api=api#connection-tokens). */
location?: string;
/**
* @description String representing the object's type. Objects of the same type share the same value.
@@ -22521,6 +22731,8 @@ export interface components {
*/
status: "canceled" | "failed" | "posted" | "processing" | "returned";
status_transitions: components["schemas"]["treasury_outbound_payments_resource_outbound_payment_resource_status_transitions"];
+ /** @description Details about network-specific tracking information if available. */
+ tracking_details?: components["schemas"]["treasury_outbound_payments_resource_outbound_payment_resource_tracking_details"] | null;
/** @description The Transaction associated with this object. */
transaction: string | components["schemas"]["treasury.transaction"];
};
@@ -22579,6 +22791,8 @@ export interface components {
*/
status: "canceled" | "failed" | "posted" | "processing" | "returned";
status_transitions: components["schemas"]["treasury_outbound_transfers_resource_status_transitions"];
+ /** @description Details about network-specific tracking information if available. */
+ tracking_details?: components["schemas"]["treasury_outbound_transfers_resource_outbound_transfer_resource_tracking_details"] | null;
/** @description The Transaction associated with this object. */
transaction: string | components["schemas"]["treasury.transaction"];
};
@@ -22992,6 +23206,11 @@ export interface components {
*/
succeeded_at?: number | null;
};
+ /** TreasuryOutboundPaymentsResourceACHTrackingDetails */
+ treasury_outbound_payments_resource_ach_tracking_details: {
+ /** @description ACH trace ID of the OutboundPayment for payments sent over the `ach` network. */
+ trace_id: string;
+ };
/** TreasuryOutboundPaymentsResourceOutboundPaymentResourceEndUserDetails */
treasury_outbound_payments_resource_outbound_payment_resource_end_user_details: {
/** @description IP address of the user initiating the OutboundPayment. Set if `present` is set to `true`. IP address collection is required for risk and compliance reasons. This will be used to help determine if the OutboundPayment is authorized or should be blocked. */
@@ -23022,6 +23241,16 @@ export interface components {
*/
returned_at?: number | null;
};
+ /** TreasuryOutboundPaymentsResourceOutboundPaymentResourceTrackingDetails */
+ treasury_outbound_payments_resource_outbound_payment_resource_tracking_details: {
+ ach?: components["schemas"]["treasury_outbound_payments_resource_ach_tracking_details"];
+ /**
+ * @description The US bank account network used to send funds.
+ * @enum {string}
+ */
+ type: "ach" | "us_domestic_wire";
+ us_domestic_wire?: components["schemas"]["treasury_outbound_payments_resource_us_domestic_wire_tracking_details"];
+ };
/** TreasuryOutboundPaymentsResourceReturnedStatus */
treasury_outbound_payments_resource_returned_status: {
/**
@@ -23032,6 +23261,28 @@ export interface components {
/** @description The Transaction associated with this object. */
transaction: string | components["schemas"]["treasury.transaction"];
};
+ /** TreasuryOutboundPaymentsResourceUSDomesticWireTrackingDetails */
+ treasury_outbound_payments_resource_us_domestic_wire_tracking_details: {
+ /** @description IMAD of the OutboundPayment for payments sent over the `us_domestic_wire` network. */
+ imad: string;
+ /** @description OMAD of the OutboundPayment for payments sent over the `us_domestic_wire` network. */
+ omad?: string | null;
+ };
+ /** TreasuryOutboundTransfersResourceACHTrackingDetails */
+ treasury_outbound_transfers_resource_ach_tracking_details: {
+ /** @description ACH trace ID of the OutboundTransfer for transfers sent over the `ach` network. */
+ trace_id: string;
+ };
+ /** TreasuryOutboundTransfersResourceOutboundTransferResourceTrackingDetails */
+ treasury_outbound_transfers_resource_outbound_transfer_resource_tracking_details: {
+ ach?: components["schemas"]["treasury_outbound_transfers_resource_ach_tracking_details"];
+ /**
+ * @description The US bank account network used to send funds.
+ * @enum {string}
+ */
+ type: "ach" | "us_domestic_wire";
+ us_domestic_wire?: components["schemas"]["treasury_outbound_transfers_resource_us_domestic_wire_tracking_details"];
+ };
/** TreasuryOutboundTransfersResourceReturnedDetails */
treasury_outbound_transfers_resource_returned_details: {
/**
@@ -23065,6 +23316,13 @@ export interface components {
*/
returned_at?: number | null;
};
+ /** TreasuryOutboundTransfersResourceUSDomesticWireTrackingDetails */
+ treasury_outbound_transfers_resource_us_domestic_wire_tracking_details: {
+ /** @description IMAD of the OutboundTransfer for transfers sent over the `us_domestic_wire` network. */
+ imad: string;
+ /** @description OMAD of the OutboundTransfer for transfers sent over the `us_domestic_wire` network. */
+ omad?: string | null;
+ };
/** TreasuryReceivedCreditsResourceLinkedFlows */
treasury_received_credits_resource_linked_flows: {
/** @description The CreditReversal created as a result of this ReceivedCredit being reversed. */
@@ -23480,6 +23738,7 @@ export interface operations {
/** payouts_features_param */
features?: {
edit_payout_schedule?: boolean;
+ external_account_collection?: boolean;
instant_payouts?: boolean;
standard_payouts?: boolean;
};
@@ -23526,6 +23785,7 @@ export interface operations {
/** payouts_features_param */
features?: {
edit_payout_schedule?: boolean;
+ external_account_collection?: boolean;
instant_payouts?: boolean;
standard_payouts?: boolean;
};
@@ -23772,6 +24032,10 @@ export interface operations {
requested?: boolean;
};
/** capability_param */
+ gb_bank_transfer_payments?: {
+ requested?: boolean;
+ };
+ /** capability_param */
giropay_payments?: {
requested?: boolean;
};
@@ -23792,6 +24056,10 @@ export interface operations {
requested?: boolean;
};
/** capability_param */
+ jp_bank_transfer_payments?: {
+ requested?: boolean;
+ };
+ /** capability_param */
klarna_payments?: {
requested?: boolean;
};
@@ -23812,6 +24080,14 @@ export interface operations {
requested?: boolean;
};
/** capability_param */
+ multibanco_payments?: {
+ requested?: boolean;
+ };
+ /** capability_param */
+ mx_bank_transfer_payments?: {
+ requested?: boolean;
+ };
+ /** capability_param */
oxxo_payments?: {
requested?: boolean;
};
@@ -23832,6 +24108,10 @@ export interface operations {
requested?: boolean;
};
/** capability_param */
+ sepa_bank_transfer_payments?: {
+ requested?: boolean;
+ };
+ /** capability_param */
sepa_debit_payments?: {
requested?: boolean;
};
@@ -23860,10 +24140,18 @@ export interface operations {
requested?: boolean;
};
/** capability_param */
+ twint_payments?: {
+ requested?: boolean;
+ };
+ /** capability_param */
us_bank_account_ach_payments?: {
requested?: boolean;
};
/** capability_param */
+ us_bank_transfer_payments?: {
+ requested?: boolean;
+ };
+ /** capability_param */
zip_payments?: {
requested?: boolean;
};
@@ -23873,7 +24161,7 @@ export interface operations {
* @description Information about the company or business. This field is available for any `business_type`. Once you create an [Account Link](/api/account_links) or [Account Session](/api/account_sessions), this property can only be updated for accounts where [controller.requirement_collection](/api/accounts/object#account_object-controller-requirement_collection) is `application`, which includes Custom accounts.
*/
company?: {
- /** address_specs */
+ /** legal_entity_and_kyc_address_specs */
address?: {
city?: string;
country?: string;
@@ -24163,7 +24451,7 @@ export interface operations {
};
/**
* tos_acceptance_specs
- * @description Details on the account's acceptance of the [Stripe Services Agreement](/connect/updating-accounts#tos-acceptance). This property can only be updated for accounts where [controller.requirement_collection](/api/accounts/object#account_object-controller-requirement_collection) is `application`, which includes Custom accounts.
+ * @description Details on the account's acceptance of the [Stripe Services Agreement](/connect/updating-accounts#tos-acceptance). This property can only be updated for accounts where [controller.requirement_collection](/api/accounts/object#account_object-controller-requirement_collection) is `application`, which includes Custom accounts. This property defaults to a `full` service agreement when empty.
*/
tos_acceptance?: {
/** Format: unix-time */
@@ -24369,6 +24657,10 @@ export interface operations {
requested?: boolean;
};
/** capability_param */
+ gb_bank_transfer_payments?: {
+ requested?: boolean;
+ };
+ /** capability_param */
giropay_payments?: {
requested?: boolean;
};
@@ -24389,6 +24681,10 @@ export interface operations {
requested?: boolean;
};
/** capability_param */
+ jp_bank_transfer_payments?: {
+ requested?: boolean;
+ };
+ /** capability_param */
klarna_payments?: {
requested?: boolean;
};
@@ -24409,6 +24705,14 @@ export interface operations {
requested?: boolean;
};
/** capability_param */
+ multibanco_payments?: {
+ requested?: boolean;
+ };
+ /** capability_param */
+ mx_bank_transfer_payments?: {
+ requested?: boolean;
+ };
+ /** capability_param */
oxxo_payments?: {
requested?: boolean;
};
@@ -24429,6 +24733,10 @@ export interface operations {
requested?: boolean;
};
/** capability_param */
+ sepa_bank_transfer_payments?: {
+ requested?: boolean;
+ };
+ /** capability_param */
sepa_debit_payments?: {
requested?: boolean;
};
@@ -24457,10 +24765,18 @@ export interface operations {
requested?: boolean;
};
/** capability_param */
+ twint_payments?: {
+ requested?: boolean;
+ };
+ /** capability_param */
us_bank_account_ach_payments?: {
requested?: boolean;
};
/** capability_param */
+ us_bank_transfer_payments?: {
+ requested?: boolean;
+ };
+ /** capability_param */
zip_payments?: {
requested?: boolean;
};
@@ -24470,7 +24786,7 @@ export interface operations {
* @description Information about the company or business. This field is available for any `business_type`. Once you create an [Account Link](/api/account_links) or [Account Session](/api/account_sessions), this property can only be updated for accounts where [controller.requirement_collection](/api/accounts/object#account_object-controller-requirement_collection) is `application`, which includes Custom accounts.
*/
company?: {
- /** address_specs */
+ /** legal_entity_and_kyc_address_specs */
address?: {
city?: string;
country?: string;
@@ -24739,7 +25055,7 @@ export interface operations {
};
/**
* tos_acceptance_specs
- * @description Details on the account's acceptance of the [Stripe Services Agreement](/connect/updating-accounts#tos-acceptance). This property can only be updated for accounts where [controller.requirement_collection](/api/accounts/object#account_object-controller-requirement_collection) is `application`, which includes Custom accounts.
+ * @description Details on the account's acceptance of the [Stripe Services Agreement](/connect/updating-accounts#tos-acceptance). This property can only be updated for accounts where [controller.requirement_collection](/api/accounts/object#account_object-controller-requirement_collection) is `application`, which includes Custom accounts. This property defaults to a `full` service agreement when empty.
*/
tos_acceptance?: {
/** Format: unix-time */
@@ -25139,7 +25455,7 @@ export interface operations {
expand?: string[];
/** @description To request a new capability for an account, pass true. There can be a delay before the requested capability becomes active. If the capability has any activation requirements, the response includes them in the `requirements` arrays.
*
- * If a capability isn't permanent, you can remove it from the account by passing false. Most capabilities are permanent after they've been requested. Attempting to remove a permanent capability returns an error. */
+ * If a capability isn't permanent, you can remove it from the account by passing false. Some capabilities are permanent after they've been requested. Attempting to remove a permanent capability returns an error. */
requested?: boolean;
};
};
@@ -25577,7 +25893,7 @@ export interface operations {
};
};
/**
- * address_specs
+ * legal_entity_and_kyc_address_specs
* @description The person's address.
*/
address?: {
@@ -25809,7 +26125,7 @@ export interface operations {
};
};
/**
- * address_specs
+ * legal_entity_and_kyc_address_specs
* @description The person's address.
*/
address?: {
@@ -26100,7 +26416,7 @@ export interface operations {
};
};
/**
- * address_specs
+ * legal_entity_and_kyc_address_specs
* @description The person's address.
*/
address?: {
@@ -26332,7 +26648,7 @@ export interface operations {
};
};
/**
- * address_specs
+ * legal_entity_and_kyc_address_specs
* @description The person's address.
*/
address?: {
@@ -29330,6 +29646,7 @@ export interface operations {
custom_fields?: {
/** custom_field_dropdown_param */
dropdown?: {
+ default_value?: string;
options: {
label: string;
value: string;
@@ -29344,12 +29661,14 @@ export interface operations {
};
/** custom_field_numeric_param */
numeric?: {
+ default_value?: string;
maximum_length?: number;
minimum_length?: number;
};
optional?: boolean;
/** custom_field_text_param */
text?: {
+ default_value?: string;
maximum_length?: number;
minimum_length?: number;
};
@@ -29724,6 +30043,11 @@ export interface operations {
setup_future_usage?: "none";
};
/** payment_method_options_param */
+ multibanco?: {
+ /** @enum {string} */
+ setup_future_usage?: "none";
+ };
+ /** payment_method_options_param */
oxxo?: {
expires_after_days?: number;
/** @enum {string} */
@@ -29806,7 +30130,7 @@ export interface operations {
* If multiple payment methods are passed, Checkout will dynamically reorder them to
* prioritize the most relevant payment methods based on the customer's location and
* other characteristics. */
- payment_method_types?: ("acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay" | "zip")[];
+ payment_method_types?: ("acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "multibanco" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "twint" | "us_bank_account" | "wechat_pay" | "zip")[];
/**
* phone_number_collection_params
* @description Controls phone number collection settings for the session.
@@ -29953,7 +30277,7 @@ export interface operations {
success_url?: string;
/**
* tax_id_collection_params
- * @description Controls tax ID collection settings for the session.
+ * @description Controls tax ID collection during checkout.
*/
tax_id_collection?: {
enabled: boolean;
@@ -31653,7 +31977,7 @@ export interface operations {
/** @description The customer's tax IDs. */
tax_id_data?: {
/** @enum {string} */
- type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
+ type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "de_stn" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
value: string;
}[];
/** @description ID of the test clock to attach to the customer. */
@@ -33118,7 +33442,7 @@ export interface operations {
/** @description A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. */
starting_after?: string;
/** @description An optional filter on the list, based on the object `type` field. Without the filter, the list includes all current and future payment method types. If your integration expects only one type of payment method in the response, make sure to provide a type value in the request. */
- type?: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay" | "zip";
+ type?: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "multibanco" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "twint" | "us_bank_account" | "wechat_pay" | "zip";
};
header?: never;
path: {
@@ -33813,7 +34137,7 @@ export interface operations {
verification_method?: "automatic" | "instant" | "microdeposits";
} | "";
};
- payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "us_bank_account" | "wechat_pay")[] | "";
+ payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay")[] | "";
/** @enum {string} */
save_default_payment_method?: "off" | "on_subscription";
};
@@ -34142,7 +34466,7 @@ export interface operations {
verification_method?: "automatic" | "instant" | "microdeposits";
} | "";
};
- payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "us_bank_account" | "wechat_pay")[] | "";
+ payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay")[] | "";
/** @enum {string} */
save_default_payment_method?: "off" | "on_subscription";
};
@@ -34397,10 +34721,10 @@ export interface operations {
/** @description Specifies which fields in the response should be expanded. */
expand?: string[];
/**
- * @description Type of the tax ID, one of `ad_nrt`, `ae_trn`, `ar_cuit`, `au_abn`, `au_arn`, `bg_uic`, `bh_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `ca_qst`, `ch_vat`, `cl_tin`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`, `hk_br`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kr_brn`, `kz_bin`, `li_uid`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`, `no_voec`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`, `si_tin`, `sv_nit`, `th_vat`, `tr_tin`, `tw_vat`, `ua_vat`, `us_ein`, `uy_ruc`, `ve_rif`, `vn_tin`, or `za_vat`
+ * @description Type of the tax ID, one of `ad_nrt`, `ae_trn`, `ar_cuit`, `au_abn`, `au_arn`, `bg_uic`, `bh_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `ca_qst`, `ch_vat`, `cl_tin`, `cn_tin`, `co_nit`, `cr_tin`, `de_stn`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`, `hk_br`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kr_brn`, `kz_bin`, `li_uid`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`, `no_voec`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`, `si_tin`, `sv_nit`, `th_vat`, `tr_tin`, `tw_vat`, `ua_vat`, `us_ein`, `uy_ruc`, `ve_rif`, `vn_tin`, or `za_vat`
* @enum {string}
*/
- type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
+ type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "de_stn" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
/** @description Value of the tax ID. */
value: string;
};
@@ -34815,12 +35139,16 @@ export interface operations {
GetEntitlementsFeatures: {
parameters: {
query?: {
+ /** @description If set, filter results to only include features with the given archive status. */
+ archived?: boolean;
/** @description A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. */
ending_before?: string;
/** @description Specifies which fields in the response should be expanded. */
expand?: string[];
/** @description A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10. */
limit?: number;
+ /** @description If set, filter results to only include features with the given lookup_key. */
+ lookup_key?: string;
/** @description A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. */
starting_after?: string;
};
@@ -34967,7 +35295,7 @@ export interface operations {
/** @description Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. */
metadata?: {
[key: string]: string | undefined;
- };
+ } | "";
/** @description The feature's name, for your own purpose, not meant to be displayable to the customer. */
name?: string;
};
@@ -35965,7 +36293,7 @@ export interface operations {
* @description Filters to restrict the kinds of accounts to collect.
*/
filters?: {
- countries: string[];
+ countries?: string[];
};
/** @description List of data features that you would like to request access to.
*
@@ -36823,11 +37151,11 @@ export interface operations {
/** Format: unix-time */
start: number;
};
- /** @description The ID of the price object. */
+ /** @description The ID of the price object. One of `price` or `price_data` is required. */
price?: string;
/**
* one_time_price_data
- * @description Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline.
+ * @description Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline. One of `price` or `price_data` is required.
*/
price_data?: {
currency: string;
@@ -36840,7 +37168,7 @@ export interface operations {
};
/** @description Non-negative integer. The quantity of units for the invoice item. */
quantity?: number;
- /** @description The ID of a subscription to add this invoice item to. When left blank, the invoice item will be be added to the next upcoming scheduled invoice. When set, scheduled invoices for subscriptions other than the specified subscription will ignore the invoice item. Use this when you want to express that an invoice item has been accrued within the context of a particular subscription. */
+ /** @description The ID of a subscription to add this invoice item to. When left blank, the invoice item is added to the next upcoming scheduled invoice. When set, scheduled invoices for subscriptions other than the specified subscription will ignore the invoice item. Use this when you want to express that an invoice item has been accrued within the context of a particular subscription. */
subscription?: string;
/**
* @description Only required if a [default tax behavior](https://stripe.com/docs/tax/products-prices-tax-categories-tax-behavior#setting-a-default-tax-behavior-(recommended)) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`. Once specified as either `inclusive` or `exclusive`, it cannot be changed.
@@ -36960,11 +37288,11 @@ export interface operations {
/** Format: unix-time */
start: number;
};
- /** @description The ID of the price object. */
+ /** @description The ID of the price object. One of `price` or `price_data` is required. */
price?: string;
/**
* one_time_price_data
- * @description Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline.
+ * @description Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline. One of `price` or `price_data` is required.
*/
price_data?: {
currency: string;
@@ -37284,7 +37612,7 @@ export interface operations {
verification_method?: "automatic" | "instant" | "microdeposits";
} | "";
};
- payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "us_bank_account" | "wechat_pay")[] | "";
+ payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay")[] | "";
};
/**
* @description How to handle pending invoice items on invoice creation. Defaults to `exclude` if the parameter is omitted.
@@ -37466,7 +37794,7 @@ export interface operations {
tax_exempt?: "" | "exempt" | "none" | "reverse";
tax_ids?: {
/** @enum {string} */
- type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
+ type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "de_stn" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
value: string;
}[];
};
@@ -37531,6 +37859,11 @@ export interface operations {
};
/** @description The account (if any) for which the funds of the invoice payment are intended. If set, the invoice will be presented with the branding and support information of the specified account. See the [Invoices with Connect](https://stripe.com/docs/billing/invoices/connect) documentation for details. */
on_behalf_of?: string | "";
+ /**
+ * @description Customizes the types of values to include when calculating the invoice. Defaults to `next` if unspecified.
+ * @enum {string}
+ */
+ preview_mode?: "next" | "recurring";
/** @description The identifier of the schedule whose upcoming invoice you'd like to retrieve. Cannot be used with subscription or subscription fields. */
schedule?: string;
/**
@@ -37652,7 +37985,7 @@ export interface operations {
/** @enum {string} */
proration_behavior?: "always_invoice" | "create_prorations" | "none";
};
- /** @description The identifier of the subscription for which you'd like to retrieve the upcoming invoice. If not provided, but a `subscription_items` is provided, you will preview creating a subscription with those items. If neither `subscription` nor `subscription_items` is provided, you will retrieve the next upcoming invoice from among the customer's subscriptions. */
+ /** @description The identifier of the subscription for which you'd like to retrieve the upcoming invoice. If not provided, but a `subscription_details.items` is provided, you will preview creating a subscription with those items. If neither `subscription` nor `subscription_details.items` is provided, you will retrieve the next upcoming invoice from among the customer's subscriptions. */
subscription?: string;
/**
* subscription_details_params
@@ -37837,7 +38170,7 @@ export interface operations {
tax_exempt?: "" | "exempt" | "none" | "reverse";
tax_ids?: {
/** @enum {string} */
- type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
+ type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "de_stn" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
value: string;
}[];
};
@@ -37899,6 +38232,8 @@ export interface operations {
};
/** @description The account (if any) for which the funds of the invoice payment are intended. If set, the invoice will be presented with the branding and support information of the specified account. See the [Invoices with Connect](https://stripe.com/docs/billing/invoices/connect) documentation for details. */
on_behalf_of?: string | "";
+ /** @description Customizes the types of values to include when calculating the invoice. Defaults to `next` if unspecified. */
+ preview_mode?: "next" | "recurring";
/** @description The identifier of the schedule whose upcoming invoice you'd like to retrieve. Cannot be used with subscription or subscription fields. */
schedule?: string;
/** @description The schedule creation or modification params to apply as a preview. Cannot be used with `subscription` or `subscription_` prefixed fields. */
@@ -38017,7 +38352,7 @@ export interface operations {
/** @enum {string} */
proration_behavior?: "always_invoice" | "create_prorations" | "none";
};
- /** @description The identifier of the subscription for which you'd like to retrieve the upcoming invoice. If not provided, but a `subscription_items` is provided, you will preview creating a subscription with those items. If neither `subscription` nor `subscription_items` is provided, you will retrieve the next upcoming invoice from among the customer's subscriptions. */
+ /** @description The identifier of the subscription for which you'd like to retrieve the upcoming invoice. If not provided, but a `subscription_details.items` is provided, you will preview creating a subscription with those items. If neither `subscription` nor `subscription_details.items` is provided, you will retrieve the next upcoming invoice from among the customer's subscriptions. */
subscription?: string;
/** @description For new subscriptions, a future timestamp to anchor the subscription's [billing cycle](https://stripe.com/docs/subscriptions/billing-cycle). This is used to determine the date of the first full invoice, and, for plans with `month` or `year` intervals, the day of the month for subsequent invoices. For existing subscriptions, the value can only be set to `now` or `unchanged`. This field has been deprecated and will be removed in a future API version. Use `subscription_details.billing_cycle_anchor` instead. */
subscription_billing_cycle_anchor?: ("now" | "unchanged") | number;
@@ -38208,7 +38543,7 @@ export interface operations {
tax_exempt?: "" | "exempt" | "none" | "reverse";
tax_ids?: {
/** @enum {string} */
- type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
+ type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "de_stn" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
value: string;
}[];
};
@@ -38274,6 +38609,8 @@ export interface operations {
limit?: number;
/** @description The account (if any) for which the funds of the invoice payment are intended. If set, the invoice will be presented with the branding and support information of the specified account. See the [Invoices with Connect](https://stripe.com/docs/billing/invoices/connect) documentation for details. */
on_behalf_of?: string | "";
+ /** @description Customizes the types of values to include when calculating the invoice. Defaults to `next` if unspecified. */
+ preview_mode?: "next" | "recurring";
/** @description The identifier of the schedule whose upcoming invoice you'd like to retrieve. Cannot be used with subscription or subscription fields. */
schedule?: string;
/** @description The schedule creation or modification params to apply as a preview. Cannot be used with `subscription` or `subscription_` prefixed fields. */
@@ -38394,7 +38731,7 @@ export interface operations {
};
/** @description A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. */
starting_after?: string;
- /** @description The identifier of the subscription for which you'd like to retrieve the upcoming invoice. If not provided, but a `subscription_items` is provided, you will preview creating a subscription with those items. If neither `subscription` nor `subscription_items` is provided, you will retrieve the next upcoming invoice from among the customer's subscriptions. */
+ /** @description The identifier of the subscription for which you'd like to retrieve the upcoming invoice. If not provided, but a `subscription_details.items` is provided, you will preview creating a subscription with those items. If neither `subscription` nor `subscription_details.items` is provided, you will retrieve the next upcoming invoice from among the customer's subscriptions. */
subscription?: string;
/** @description For new subscriptions, a future timestamp to anchor the subscription's [billing cycle](https://stripe.com/docs/subscriptions/billing-cycle). This is used to determine the date of the first full invoice, and, for plans with `month` or `year` intervals, the day of the month for subsequent invoices. For existing subscriptions, the value can only be set to `now` or `unchanged`. This field has been deprecated and will be removed in a future API version. Use `subscription_details.billing_cycle_anchor` instead. */
subscription_billing_cycle_anchor?: ("now" | "unchanged") | number;
@@ -38729,7 +39066,7 @@ export interface operations {
verification_method?: "automatic" | "instant" | "microdeposits";
} | "";
};
- payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "us_bank_account" | "wechat_pay")[] | "";
+ payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay")[] | "";
};
/**
* rendering_param
@@ -39006,11 +39343,11 @@ export interface operations {
/** Format: unix-time */
start: number;
};
- /** @description The ID of the price object. */
+ /** @description The ID of the price object. One of `price` or `price_data` is required. */
price?: string;
/**
* one_time_price_data_with_product_data
- * @description Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline.
+ * @description Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline. One of `price` or `price_data` is required.
*/
price_data?: {
currency: string;
@@ -40253,6 +40590,10 @@ export interface operations {
return_status?: "" | "merchant_rejected" | "successful";
returned_at?: number | "";
} | "";
+ no_valid_authorization?: {
+ additional_documentation?: string | "";
+ explanation?: string | "";
+ } | "";
not_received?: {
additional_documentation?: string | "";
expected_at?: number | "";
@@ -40269,7 +40610,7 @@ export interface operations {
product_type?: "" | "merchandise" | "service";
} | "";
/** @enum {string} */
- reason?: "canceled" | "duplicate" | "fraudulent" | "merchandise_not_as_described" | "not_received" | "other" | "service_not_as_described";
+ reason?: "canceled" | "duplicate" | "fraudulent" | "merchandise_not_as_described" | "no_valid_authorization" | "not_received" | "other" | "service_not_as_described";
service_not_as_described?: {
additional_documentation?: string | "";
canceled_at?: number | "";
@@ -40409,6 +40750,10 @@ export interface operations {
return_status?: "" | "merchant_rejected" | "successful";
returned_at?: number | "";
} | "";
+ no_valid_authorization?: {
+ additional_documentation?: string | "";
+ explanation?: string | "";
+ } | "";
not_received?: {
additional_documentation?: string | "";
expected_at?: number | "";
@@ -40425,7 +40770,7 @@ export interface operations {
product_type?: "" | "merchandise" | "service";
} | "";
/** @enum {string} */
- reason?: "canceled" | "duplicate" | "fraudulent" | "merchandise_not_as_described" | "not_received" | "other" | "service_not_as_described";
+ reason?: "canceled" | "duplicate" | "fraudulent" | "merchandise_not_as_described" | "no_valid_authorization" | "not_received" | "other" | "service_not_as_described";
service_not_as_described?: {
additional_documentation?: string | "";
canceled_at?: number | "";
@@ -40834,66 +41179,6 @@ export interface operations {
};
};
};
- GetIssuingSettlements: {
- parameters: {
- query?: {
- /** @description Only return issuing settlements that were created during the given date interval. */
- created?: {
- gt?: number;
- gte?: number;
- lt?: number;
- lte?: number;
- } | number;
- /** @description A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. */
- ending_before?: string;
- /** @description Specifies which fields in the response should be expanded. */
- expand?: string[];
- /** @description A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10. */
- limit?: number;
- /** @description A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. */
- starting_after?: string;
- };
- header?: never;
- path?: never;
- cookie?: never;
- };
- requestBody?: {
- content: {
- "application/x-www-form-urlencoded": Record;
- };
- };
- responses: {
- /** @description Successful response. */
- 200: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": {
- data: components["schemas"]["issuing.settlement"][];
- /** @description True if this list has another page of items after this one that can be fetched. */
- has_more: boolean;
- /**
- * @description String representing the object's type. Objects of the same type share the same value. Always has the value `list`.
- * @enum {string}
- */
- object: "list";
- /** @description The URL where this list can be accessed. */
- url: string;
- };
- };
- };
- /** @description Error response. */
- default: {
- headers: {
- [name: string]: unknown;
- };
- content: {
- "application/json": components["schemas"]["error"];
- };
- };
- };
- };
GetIssuingSettlementsSettlement: {
parameters: {
query?: {
@@ -41292,7 +41577,7 @@ export interface operations {
* @description Filters to restrict the kinds of accounts to collect.
*/
filters?: {
- countries: string[];
+ countries?: string[];
};
/** @description List of data features that you would like to request access to.
*
@@ -41884,6 +42169,8 @@ export interface operations {
/** param */
mobilepay?: Record;
/** param */
+ multibanco?: Record;
+ /** param */
oxxo?: Record;
/** param */
p24?: {
@@ -41915,8 +42202,10 @@ export interface operations {
};
/** param */
swish?: Record;
+ /** param */
+ twint?: Record;
/** @enum {string} */
- type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay" | "zip";
+ type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "multibanco" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "twint" | "us_bank_account" | "wechat_pay" | "zip";
/** payment_method_param */
us_bank_account?: {
/** @enum {string} */
@@ -42076,6 +42365,11 @@ export interface operations {
card_present?: {
request_extended_authorization?: boolean;
request_incremental_authorization_support?: boolean;
+ /** routing_payment_method_options_param */
+ routing?: {
+ /** @enum {string} */
+ requested_priority?: "domestic" | "international";
+ };
} | "";
cashapp?: {
/** @enum {string} */
@@ -42124,7 +42418,7 @@ export interface operations {
/** @enum {string} */
capture_method?: "" | "manual";
/** @enum {string} */
- preferred_locale?: "cs-CZ" | "da-DK" | "de-AT" | "de-CH" | "de-DE" | "el-GR" | "en-AT" | "en-AU" | "en-BE" | "en-CA" | "en-CH" | "en-CZ" | "en-DE" | "en-DK" | "en-ES" | "en-FI" | "en-FR" | "en-GB" | "en-GR" | "en-IE" | "en-IT" | "en-NL" | "en-NO" | "en-NZ" | "en-PL" | "en-PT" | "en-SE" | "en-US" | "es-ES" | "es-US" | "fi-FI" | "fr-BE" | "fr-CA" | "fr-CH" | "fr-FR" | "it-CH" | "it-IT" | "nb-NO" | "nl-BE" | "nl-NL" | "pl-PL" | "pt-PT" | "sv-FI" | "sv-SE";
+ preferred_locale?: "cs-CZ" | "da-DK" | "de-AT" | "de-CH" | "de-DE" | "el-GR" | "en-AT" | "en-AU" | "en-BE" | "en-CA" | "en-CH" | "en-CZ" | "en-DE" | "en-DK" | "en-ES" | "en-FI" | "en-FR" | "en-GB" | "en-GR" | "en-IE" | "en-IT" | "en-NL" | "en-NO" | "en-NZ" | "en-PL" | "en-PT" | "en-RO" | "en-SE" | "en-US" | "es-ES" | "es-US" | "fi-FI" | "fr-BE" | "fr-CA" | "fr-CH" | "fr-FR" | "it-CH" | "it-IT" | "nb-NO" | "nl-BE" | "nl-NL" | "pl-PL" | "pt-PT" | "ro-RO" | "sv-FI" | "sv-SE";
/** @enum {string} */
setup_future_usage?: "none";
} | "";
@@ -42148,6 +42442,10 @@ export interface operations {
/** @enum {string} */
setup_future_usage?: "none";
} | "";
+ multibanco?: {
+ /** @enum {string} */
+ setup_future_usage?: "none";
+ } | "";
oxxo?: {
expires_after_days?: number;
/** @enum {string} */
@@ -42206,6 +42504,10 @@ export interface operations {
/** @enum {string} */
setup_future_usage?: "none";
} | "";
+ twint?: {
+ /** @enum {string} */
+ setup_future_usage?: "none";
+ } | "";
us_bank_account?: {
/** linked_account_options_param */
financial_connections?: {
@@ -42557,6 +42859,8 @@ export interface operations {
/** param */
mobilepay?: Record;
/** param */
+ multibanco?: Record;
+ /** param */
oxxo?: Record;
/** param */
p24?: {
@@ -42588,8 +42892,10 @@ export interface operations {
};
/** param */
swish?: Record;
+ /** param */
+ twint?: Record;
/** @enum {string} */
- type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay" | "zip";
+ type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "multibanco" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "twint" | "us_bank_account" | "wechat_pay" | "zip";
/** payment_method_param */
us_bank_account?: {
/** @enum {string} */
@@ -42749,6 +43055,11 @@ export interface operations {
card_present?: {
request_extended_authorization?: boolean;
request_incremental_authorization_support?: boolean;
+ /** routing_payment_method_options_param */
+ routing?: {
+ /** @enum {string} */
+ requested_priority?: "domestic" | "international";
+ };
} | "";
cashapp?: {
/** @enum {string} */
@@ -42797,7 +43108,7 @@ export interface operations {
/** @enum {string} */
capture_method?: "" | "manual";
/** @enum {string} */
- preferred_locale?: "cs-CZ" | "da-DK" | "de-AT" | "de-CH" | "de-DE" | "el-GR" | "en-AT" | "en-AU" | "en-BE" | "en-CA" | "en-CH" | "en-CZ" | "en-DE" | "en-DK" | "en-ES" | "en-FI" | "en-FR" | "en-GB" | "en-GR" | "en-IE" | "en-IT" | "en-NL" | "en-NO" | "en-NZ" | "en-PL" | "en-PT" | "en-SE" | "en-US" | "es-ES" | "es-US" | "fi-FI" | "fr-BE" | "fr-CA" | "fr-CH" | "fr-FR" | "it-CH" | "it-IT" | "nb-NO" | "nl-BE" | "nl-NL" | "pl-PL" | "pt-PT" | "sv-FI" | "sv-SE";
+ preferred_locale?: "cs-CZ" | "da-DK" | "de-AT" | "de-CH" | "de-DE" | "el-GR" | "en-AT" | "en-AU" | "en-BE" | "en-CA" | "en-CH" | "en-CZ" | "en-DE" | "en-DK" | "en-ES" | "en-FI" | "en-FR" | "en-GB" | "en-GR" | "en-IE" | "en-IT" | "en-NL" | "en-NO" | "en-NZ" | "en-PL" | "en-PT" | "en-RO" | "en-SE" | "en-US" | "es-ES" | "es-US" | "fi-FI" | "fr-BE" | "fr-CA" | "fr-CH" | "fr-FR" | "it-CH" | "it-IT" | "nb-NO" | "nl-BE" | "nl-NL" | "pl-PL" | "pt-PT" | "ro-RO" | "sv-FI" | "sv-SE";
/** @enum {string} */
setup_future_usage?: "none";
} | "";
@@ -42821,6 +43132,10 @@ export interface operations {
/** @enum {string} */
setup_future_usage?: "none";
} | "";
+ multibanco?: {
+ /** @enum {string} */
+ setup_future_usage?: "none";
+ } | "";
oxxo?: {
expires_after_days?: number;
/** @enum {string} */
@@ -42879,6 +43194,10 @@ export interface operations {
/** @enum {string} */
setup_future_usage?: "none";
} | "";
+ twint?: {
+ /** @enum {string} */
+ setup_future_usage?: "none";
+ } | "";
us_bank_account?: {
/** linked_account_options_param */
financial_connections?: {
@@ -43292,6 +43611,8 @@ export interface operations {
/** param */
mobilepay?: Record;
/** param */
+ multibanco?: Record;
+ /** param */
oxxo?: Record;
/** param */
p24?: {
@@ -43323,8 +43644,10 @@ export interface operations {
};
/** param */
swish?: Record;
+ /** param */
+ twint?: Record;
/** @enum {string} */
- type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay" | "zip";
+ type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "multibanco" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "twint" | "us_bank_account" | "wechat_pay" | "zip";
/** payment_method_param */
us_bank_account?: {
/** @enum {string} */
@@ -43484,6 +43807,11 @@ export interface operations {
card_present?: {
request_extended_authorization?: boolean;
request_incremental_authorization_support?: boolean;
+ /** routing_payment_method_options_param */
+ routing?: {
+ /** @enum {string} */
+ requested_priority?: "domestic" | "international";
+ };
} | "";
cashapp?: {
/** @enum {string} */
@@ -43532,7 +43860,7 @@ export interface operations {
/** @enum {string} */
capture_method?: "" | "manual";
/** @enum {string} */
- preferred_locale?: "cs-CZ" | "da-DK" | "de-AT" | "de-CH" | "de-DE" | "el-GR" | "en-AT" | "en-AU" | "en-BE" | "en-CA" | "en-CH" | "en-CZ" | "en-DE" | "en-DK" | "en-ES" | "en-FI" | "en-FR" | "en-GB" | "en-GR" | "en-IE" | "en-IT" | "en-NL" | "en-NO" | "en-NZ" | "en-PL" | "en-PT" | "en-SE" | "en-US" | "es-ES" | "es-US" | "fi-FI" | "fr-BE" | "fr-CA" | "fr-CH" | "fr-FR" | "it-CH" | "it-IT" | "nb-NO" | "nl-BE" | "nl-NL" | "pl-PL" | "pt-PT" | "sv-FI" | "sv-SE";
+ preferred_locale?: "cs-CZ" | "da-DK" | "de-AT" | "de-CH" | "de-DE" | "el-GR" | "en-AT" | "en-AU" | "en-BE" | "en-CA" | "en-CH" | "en-CZ" | "en-DE" | "en-DK" | "en-ES" | "en-FI" | "en-FR" | "en-GB" | "en-GR" | "en-IE" | "en-IT" | "en-NL" | "en-NO" | "en-NZ" | "en-PL" | "en-PT" | "en-RO" | "en-SE" | "en-US" | "es-ES" | "es-US" | "fi-FI" | "fr-BE" | "fr-CA" | "fr-CH" | "fr-FR" | "it-CH" | "it-IT" | "nb-NO" | "nl-BE" | "nl-NL" | "pl-PL" | "pt-PT" | "ro-RO" | "sv-FI" | "sv-SE";
/** @enum {string} */
setup_future_usage?: "none";
} | "";
@@ -43556,6 +43884,10 @@ export interface operations {
/** @enum {string} */
setup_future_usage?: "none";
} | "";
+ multibanco?: {
+ /** @enum {string} */
+ setup_future_usage?: "none";
+ } | "";
oxxo?: {
expires_after_days?: number;
/** @enum {string} */
@@ -43614,6 +43946,10 @@ export interface operations {
/** @enum {string} */
setup_future_usage?: "none";
} | "";
+ twint?: {
+ /** @enum {string} */
+ setup_future_usage?: "none";
+ } | "";
us_bank_account?: {
/** linked_account_options_param */
financial_connections?: {
@@ -44072,7 +44408,7 @@ export interface operations {
*/
payment_method_collection?: "always" | "if_required";
/** @description The list of payment method types that customers can use. If no value is passed, Stripe will dynamically show relevant payment methods from your [payment method settings](https://dashboard.stripe.com/settings/payment_methods) (20+ payment methods [supported](https://stripe.com/docs/payments/payment-methods/integration-options#payment-method-product-support)). */
- payment_method_types?: ("affirm" | "afterpay_clearpay" | "alipay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "cashapp" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay")[];
+ payment_method_types?: ("affirm" | "afterpay_clearpay" | "alipay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "cashapp" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay")[];
/**
* phone_number_collection_params
* @description Controls phone number collection settings during checkout.
@@ -44388,7 +44724,7 @@ export interface operations {
*/
payment_method_collection?: "always" | "if_required";
/** @description The list of payment method types that customers can use. Pass an empty string to enable dynamic payment methods that use your [payment method settings](https://dashboard.stripe.com/settings/payment_methods). */
- payment_method_types?: ("affirm" | "afterpay_clearpay" | "alipay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "cashapp" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay")[] | "";
+ payment_method_types?: ("affirm" | "afterpay_clearpay" | "alipay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "cashapp" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay")[] | "";
/** @description Settings that restrict the usage of a payment link. */
restrictions?: {
/** completed_sessions_params */
@@ -44425,6 +44761,13 @@ export interface operations {
};
} | "";
};
+ /**
+ * tax_id_collection_params
+ * @description Controls tax ID collection during checkout.
+ */
+ tax_id_collection?: {
+ enabled: boolean;
+ };
};
};
};
@@ -44869,6 +45212,17 @@ export interface operations {
preference?: "none" | "off" | "on";
};
};
+ /**
+ * payment_method_param
+ * @description Stripe users in Europe and the United States can accept Multibanco payments from customers in Portugal using [Sources](https://stripe.com/docs/sources)—a single integration path for creating payments using any supported method.
+ */
+ multibanco?: {
+ /** display_preference_param */
+ display_preference?: {
+ /** @enum {string} */
+ preference?: "none" | "off" | "on";
+ };
+ };
/** @description Configuration name. */
name?: string;
/**
@@ -45380,6 +45734,17 @@ export interface operations {
preference?: "none" | "off" | "on";
};
};
+ /**
+ * payment_method_param
+ * @description Stripe users in Europe and the United States can accept Multibanco payments from customers in Portugal using [Sources](https://stripe.com/docs/sources)—a single integration path for creating payments using any supported method.
+ */
+ multibanco?: {
+ /** display_preference_param */
+ display_preference?: {
+ /** @enum {string} */
+ preference?: "none" | "off" | "on";
+ };
+ };
/** @description Configuration name. */
name?: string;
/**
@@ -45765,7 +46130,7 @@ export interface operations {
/** @description A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. */
starting_after?: string;
/** @description An optional filter on the list, based on the object `type` field. Without the filter, the list includes all current and future payment method types. If your integration expects only one type of payment method in the response, make sure to provide a type value in the request. */
- type?: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay" | "zip";
+ type?: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "multibanco" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "twint" | "us_bank_account" | "wechat_pay" | "zip";
};
header?: never;
path?: never;
@@ -46000,6 +46365,11 @@ export interface operations {
* @description If this is a `mobilepay` PaymentMethod, this hash contains details about the MobilePay payment method.
*/
mobilepay?: Record;
+ /**
+ * param
+ * @description If this is a `multibanco` PaymentMethod, this hash contains details about the Multibanco payment method.
+ */
+ multibanco?: Record;
/**
* param
* @description If this is an `oxxo` PaymentMethod, this hash contains details about the OXXO payment method.
@@ -46067,11 +46437,16 @@ export interface operations {
* @description If this is a `swish` PaymentMethod, this hash contains details about the Swish payment method.
*/
swish?: Record;
+ /**
+ * param
+ * @description If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method.
+ */
+ twint?: Record;
/**
* @description The type of the PaymentMethod. An additional hash is included on the PaymentMethod with a name matching this value. It contains additional information specific to the PaymentMethod type.
* @enum {string}
*/
- type?: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay" | "zip";
+ type?: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "multibanco" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "twint" | "us_bank_account" | "wechat_pay" | "zip";
/**
* payment_method_param
* @description If this is an `us_bank_account` PaymentMethod, this hash contains details about the US bank account payment method.
@@ -46735,6 +47110,7 @@ export interface operations {
nickname?: string;
product?: {
active?: boolean;
+ /** @deprecated */
id?: string;
metadata?: {
[key: string]: string | undefined;
@@ -46942,7 +47318,7 @@ export interface operations {
expand?: string[];
/** @description A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10. */
limit?: number;
- /** @description Only return the price with these lookup_keys, if any exist. */
+ /** @description Only return the price with these lookup_keys, if any exist. You can specify up to 10 lookup_keys. */
lookup_keys?: string[];
/** @description Only return prices for the given product. */
product?: string;
@@ -47074,6 +47450,7 @@ export interface operations {
*/
product_data?: {
active?: boolean;
+ /** @deprecated */
id?: string;
metadata?: {
[key: string]: string | undefined;
@@ -47489,7 +47866,7 @@ export interface operations {
/** @description An arbitrary string to be displayed on your customer's credit card or bank statement. While most banks display this information consistently, some may display it incorrectly or not at all.
*
* This may be up to 22 characters. The statement description may not include `<`, `>`, `\`, `"`, `'` characters, and will appear on your customer's statement in capital letters. Non-ASCII characters are automatically stripped.
- * It must contain at least one letter. */
+ * It must contain at least one letter. Only used for subscription payments. */
statement_descriptor?: string;
/** @description A [tax code](https://stripe.com/docs/tax/tax-categories) ID. */
tax_code?: string;
@@ -47657,7 +48034,7 @@ export interface operations {
/** @description An arbitrary string to be displayed on your customer's credit card or bank statement. While most banks display this information consistently, some may display it incorrectly or not at all.
*
* This may be up to 22 characters. The statement description may not include `<`, `>`, `\`, `"`, `'` characters, and will appear on your customer's statement in capital letters. Non-ASCII characters are automatically stripped.
- * It must contain at least one letter. May only be set if `type=service`. */
+ * It must contain at least one letter. May only be set if `type=service`. Only used for subscription payments. */
statement_descriptor?: string;
/** @description A [tax code](https://stripe.com/docs/tax/tax-categories) ID. */
tax_code?: string | "";
@@ -50223,6 +50600,8 @@ export interface operations {
/** param */
mobilepay?: Record;
/** param */
+ multibanco?: Record;
+ /** param */
oxxo?: Record;
/** param */
p24?: {
@@ -50254,8 +50633,10 @@ export interface operations {
};
/** param */
swish?: Record;
+ /** param */
+ twint?: Record;
/** @enum {string} */
- type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay" | "zip";
+ type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "multibanco" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "twint" | "us_bank_account" | "wechat_pay" | "zip";
/** payment_method_param */
us_bank_account?: {
/** @enum {string} */
@@ -50592,6 +50973,8 @@ export interface operations {
/** param */
mobilepay?: Record;
/** param */
+ multibanco?: Record;
+ /** param */
oxxo?: Record;
/** param */
p24?: {
@@ -50623,8 +51006,10 @@ export interface operations {
};
/** param */
swish?: Record;
+ /** param */
+ twint?: Record;
/** @enum {string} */
- type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay" | "zip";
+ type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "multibanco" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "twint" | "us_bank_account" | "wechat_pay" | "zip";
/** payment_method_param */
us_bank_account?: {
/** @enum {string} */
@@ -50960,6 +51345,8 @@ export interface operations {
/** param */
mobilepay?: Record;
/** param */
+ multibanco?: Record;
+ /** param */
oxxo?: Record;
/** param */
p24?: {
@@ -50991,8 +51378,10 @@ export interface operations {
};
/** param */
swish?: Record;
+ /** param */
+ twint?: Record;
/** @enum {string} */
- type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay" | "zip";
+ type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "multibanco" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "twint" | "us_bank_account" | "wechat_pay" | "zip";
/** payment_method_param */
us_bank_account?: {
/** @enum {string} */
@@ -51309,7 +51698,7 @@ export interface operations {
/** @description A [tax code](https://stripe.com/docs/tax/tax-categories) ID. The Shipping tax code is `txcd_92010001`. */
tax_code?: string;
/**
- * @description The type of calculation to use on the shipping rate. Can only be `fixed_amount` for now.
+ * @description The type of calculation to use on the shipping rate.
* @enum {string}
*/
type?: "fixed_amount";
@@ -52258,11 +52647,11 @@ export interface operations {
* @enum {string}
*/
payment_behavior?: "allow_incomplete" | "default_incomplete" | "error_if_incomplete" | "pending_if_incomplete";
- /** @description The ID of the price object. When changing a subscription item's price, `quantity` is set to 1 unless a `quantity` parameter is provided. */
+ /** @description The ID of the price object. One of `price` or `price_data` is required. When changing a subscription item's price, `quantity` is set to 1 unless a `quantity` parameter is provided. */
price?: string;
/**
* recurring_price_data
- * @description Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline.
+ * @description Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline. One of `price` or `price_data` is required.
*/
price_data?: {
currency: string;
@@ -53402,7 +53791,7 @@ export interface operations {
verification_method?: "automatic" | "instant" | "microdeposits";
} | "";
};
- payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "us_bank_account" | "wechat_pay")[] | "";
+ payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay")[] | "";
/** @enum {string} */
save_default_payment_method?: "off" | "on_subscription";
};
@@ -53787,7 +54176,7 @@ export interface operations {
verification_method?: "automatic" | "instant" | "microdeposits";
} | "";
};
- payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "us_bank_account" | "wechat_pay")[] | "";
+ payment_method_types?: ("ach_credit_transfer" | "ach_debit" | "acss_debit" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "boleto" | "card" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "konbini" | "link" | "p24" | "paynow" | "paypal" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay")[] | "";
/** @enum {string} */
save_default_payment_method?: "off" | "on_subscription";
};
@@ -53876,9 +54265,9 @@ export interface operations {
};
/** @description Specifies which fields in the response should be expanded. */
expand?: string[];
- /** @description Will generate a final invoice that invoices for any un-invoiced metered usage and new/pending proration invoice items. */
+ /** @description Will generate a final invoice that invoices for any un-invoiced metered usage and new/pending proration invoice items. Defaults to `true`. */
invoice_now?: boolean;
- /** @description Will generate a proration invoice item that credits remaining unused time until the subscription period end. */
+ /** @description Will generate a proration invoice item that credits remaining unused time until the subscription period end. Defaults to `false`. */
prorate?: boolean;
};
};
@@ -54025,7 +54414,7 @@ export interface operations {
ip_address?: string;
tax_ids?: {
/** @enum {string} */
- type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
+ type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "de_stn" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
value: string;
}[];
/** @enum {string} */
@@ -54265,6 +54654,11 @@ export interface operations {
/** @enum {string} */
type: "ioss" | "oss_non_union" | "oss_union" | "standard";
};
+ /** default */
+ bh?: {
+ /** @enum {string} */
+ type: "standard";
+ };
/** canada */
ca?: {
/** province_standard */
@@ -54339,6 +54733,11 @@ export interface operations {
/** @enum {string} */
type: "ioss" | "oss_non_union" | "oss_union" | "standard";
};
+ /** simplified */
+ eg?: {
+ /** @enum {string} */
+ type: "simplified";
+ };
/** europe */
es?: {
/** standard */
@@ -54374,6 +54773,11 @@ export interface operations {
/** @enum {string} */
type: "standard";
};
+ /** simplified */
+ ge?: {
+ /** @enum {string} */
+ type: "simplified";
+ };
/** europe */
gr?: {
/** standard */
@@ -54440,10 +54844,20 @@ export interface operations {
type: "standard";
};
/** simplified */
+ ke?: {
+ /** @enum {string} */
+ type: "simplified";
+ };
+ /** simplified */
kr?: {
/** @enum {string} */
type: "simplified";
};
+ /** simplified */
+ kz?: {
+ /** @enum {string} */
+ type: "simplified";
+ };
/** europe */
lt?: {
/** standard */
@@ -54494,6 +54908,11 @@ export interface operations {
/** @enum {string} */
type: "simplified";
};
+ /** simplified */
+ ng?: {
+ /** @enum {string} */
+ type: "simplified";
+ };
/** europe */
nl?: {
/** standard */
@@ -54514,6 +54933,11 @@ export interface operations {
/** @enum {string} */
type: "standard";
};
+ /** default */
+ om?: {
+ /** @enum {string} */
+ type: "standard";
+ };
/** europe */
pl?: {
/** standard */
@@ -55209,10 +55633,10 @@ export interface operations {
type: "account" | "application" | "customer" | "self";
};
/**
- * @description Type of the tax ID, one of `ad_nrt`, `ae_trn`, `ar_cuit`, `au_abn`, `au_arn`, `bg_uic`, `bh_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `ca_qst`, `ch_vat`, `cl_tin`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`, `hk_br`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kr_brn`, `kz_bin`, `li_uid`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`, `no_voec`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`, `si_tin`, `sv_nit`, `th_vat`, `tr_tin`, `tw_vat`, `ua_vat`, `us_ein`, `uy_ruc`, `ve_rif`, `vn_tin`, or `za_vat`
+ * @description Type of the tax ID, one of `ad_nrt`, `ae_trn`, `ar_cuit`, `au_abn`, `au_arn`, `bg_uic`, `bh_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `ca_qst`, `ch_vat`, `cl_tin`, `cn_tin`, `co_nit`, `cr_tin`, `de_stn`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`, `hk_br`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kr_brn`, `kz_bin`, `li_uid`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`, `no_voec`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`, `si_tin`, `sv_nit`, `th_vat`, `tr_tin`, `tw_vat`, `ua_vat`, `us_ein`, `uy_ruc`, `ve_rif`, `vn_tin`, or `za_vat`
* @enum {string}
*/
- type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
+ type: "ad_nrt" | "ae_trn" | "ar_cuit" | "au_abn" | "au_arn" | "bg_uic" | "bh_vat" | "bo_tin" | "br_cnpj" | "br_cpf" | "ca_bn" | "ca_gst_hst" | "ca_pst_bc" | "ca_pst_mb" | "ca_pst_sk" | "ca_qst" | "ch_vat" | "cl_tin" | "cn_tin" | "co_nit" | "cr_tin" | "de_stn" | "do_rcn" | "ec_ruc" | "eg_tin" | "es_cif" | "eu_oss_vat" | "eu_vat" | "gb_vat" | "ge_vat" | "hk_br" | "hu_tin" | "id_npwp" | "il_vat" | "in_gst" | "is_vat" | "jp_cn" | "jp_rn" | "jp_trn" | "ke_pin" | "kr_brn" | "kz_bin" | "li_uid" | "mx_rfc" | "my_frp" | "my_itn" | "my_sst" | "ng_tin" | "no_vat" | "no_voec" | "nz_gst" | "om_vat" | "pe_ruc" | "ph_tin" | "ro_tin" | "rs_pib" | "ru_inn" | "ru_kpp" | "sa_vat" | "sg_gst" | "sg_uen" | "si_tin" | "sv_nit" | "th_vat" | "tr_tin" | "tw_vat" | "ua_vat" | "us_ein" | "uy_ruc" | "ve_rif" | "vn_tin" | "za_vat";
/** @description Value of the tax ID. */
value: string;
};
@@ -55614,6 +56038,13 @@ export interface operations {
offline?: {
enabled: boolean;
} | "";
+ /**
+ * stripe_s700
+ * @description An object containing device type specific settings for Stripe S700 readers
+ */
+ stripe_s700?: {
+ splashscreen?: string | "";
+ };
/** @description Tipping configurations for readers supporting on-reader tips */
tipping?: {
/** currency_specific_config */
@@ -55794,6 +56225,10 @@ export interface operations {
offline?: {
enabled: boolean;
} | "";
+ /** @description An object containing device type specific settings for Stripe S700 readers */
+ stripe_s700?: {
+ splashscreen?: string | "";
+ } | "";
/** @description Tipping configurations for readers supporting on-reader tips */
tipping?: {
/** currency_specific_config */
@@ -55956,7 +56391,7 @@ export interface operations {
"application/x-www-form-urlencoded": {
/** @description Specifies which fields in the response should be expanded. */
expand?: string[];
- /** @description The id of the location that this connection token is scoped to. If specified the connection token will only be usable with readers assigned to that location, otherwise the connection token will be usable with all readers. Note that location scoping only applies to internet-connected readers. For more details, see [the docs on scoping connection tokens](https://stripe.com/docs/terminal/fleet/locations#connection-tokens). */
+ /** @description The id of the location that this connection token is scoped to. If specified the connection token will only be usable with readers assigned to that location, otherwise the connection token will be usable with all readers. Note that location scoping only applies to internet-connected readers. For more details, see [the docs on scoping connection tokens](https://docs.stripe.com/terminal/fleet/locations-and-zones?dashboard-or-api=api#connection-tokens). */
location?: string;
};
};
@@ -56143,7 +56578,7 @@ export interface operations {
"application/x-www-form-urlencoded": {
/**
* optional_fields_address
- * @description The full address of the location.
+ * @description The full address of the location. If you're updating the `address` field, avoid changing the `country`. If you need to modify the `country` field, create a new `Location` object and re-register any existing readers to that location.
*/
address?: {
city?: string;
@@ -56813,6 +57248,8 @@ export interface operations {
/** param */
mobilepay?: Record;
/** param */
+ multibanco?: Record;
+ /** param */
oxxo?: Record;
/** param */
p24?: {
@@ -56844,8 +57281,10 @@ export interface operations {
};
/** param */
swish?: Record;
+ /** param */
+ twint?: Record;
/** @enum {string} */
- type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "us_bank_account" | "wechat_pay" | "zip";
+ type: "acss_debit" | "affirm" | "afterpay_clearpay" | "alipay" | "amazon_pay" | "au_becs_debit" | "bacs_debit" | "bancontact" | "blik" | "boleto" | "cashapp" | "customer_balance" | "eps" | "fpx" | "giropay" | "grabpay" | "ideal" | "klarna" | "konbini" | "link" | "mobilepay" | "multibanco" | "oxxo" | "p24" | "paynow" | "paypal" | "pix" | "promptpay" | "revolut_pay" | "sepa_debit" | "sofort" | "swish" | "twint" | "us_bank_account" | "wechat_pay" | "zip";
/** payment_method_param */
us_bank_account?: {
/** @enum {string} */
@@ -57107,14 +57546,14 @@ export interface operations {
};
/** fuel_specs */
fuel?: {
+ /** Format: decimal */
+ quantity_decimal?: string;
/** @enum {string} */
type?: "diesel" | "other" | "unleaded_plus" | "unleaded_regular" | "unleaded_super";
/** @enum {string} */
- unit?: "liter" | "other" | "us_gallon";
+ unit?: "charging_minute" | "imperial_gallon" | "kilogram" | "kilowatt_hour" | "liter" | "other" | "pound" | "us_gallon";
/** Format: decimal */
unit_cost_decimal?: string;
- /** Format: decimal */
- volume_decimal?: string;
};
/** lodging_specs */
lodging?: {
@@ -57606,14 +58045,14 @@ export interface operations {
};
/** fuel_specs */
fuel?: {
+ /** Format: decimal */
+ quantity_decimal?: string;
/** @enum {string} */
type?: "diesel" | "other" | "unleaded_plus" | "unleaded_regular" | "unleaded_super";
/** @enum {string} */
- unit?: "liter" | "other" | "us_gallon";
+ unit?: "charging_minute" | "imperial_gallon" | "kilogram" | "kilowatt_hour" | "liter" | "other" | "pound" | "us_gallon";
/** Format: decimal */
unit_cost_decimal?: string;
- /** Format: decimal */
- volume_decimal?: string;
};
/** lodging_specs */
lodging?: {
@@ -57711,14 +58150,14 @@ export interface operations {
};
/** fuel_specs */
fuel?: {
+ /** Format: decimal */
+ quantity_decimal?: string;
/** @enum {string} */
type?: "diesel" | "other" | "unleaded_plus" | "unleaded_regular" | "unleaded_super";
/** @enum {string} */
- unit?: "liter" | "other" | "us_gallon";
+ unit?: "charging_minute" | "imperial_gallon" | "kilogram" | "kilowatt_hour" | "liter" | "other" | "pound" | "us_gallon";
/** Format: decimal */
unit_cost_decimal?: string;
- /** Format: decimal */
- volume_decimal?: string;
};
/** lodging_specs */
lodging?: {
@@ -58230,6 +58669,61 @@ export interface operations {
};
};
};
+ PostTestHelpersTreasuryOutboundPaymentsId: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ id: string;
+ };
+ cookie?: never;
+ };
+ requestBody: {
+ content: {
+ "application/x-www-form-urlencoded": {
+ /** @description Specifies which fields in the response should be expanded. */
+ expand?: string[];
+ /**
+ * tracking_details_params
+ * @description Details about network-specific tracking information.
+ */
+ tracking_details: {
+ /** ach_tracking_details_params */
+ ach?: {
+ trace_id: string;
+ };
+ /** @enum {string} */
+ type: "ach" | "us_domestic_wire";
+ /** us_domestic_wire_tracking_details_params */
+ us_domestic_wire?: {
+ imad?: string;
+ omad?: string;
+ };
+ };
+ };
+ };
+ };
+ responses: {
+ /** @description Successful response. */
+ 200: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["treasury.outbound_payment"];
+ };
+ };
+ /** @description Error response. */
+ default: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["error"];
+ };
+ };
+ };
+ };
PostTestHelpersTreasuryOutboundPaymentsIdFail: {
parameters: {
query?: never;
@@ -58322,7 +58816,7 @@ export interface operations {
expand?: string[];
/**
* returned_details_params
- * @description Optional hash to set the the return code.
+ * @description Optional hash to set the return code.
*/
returned_details?: {
/** @enum {string} */
@@ -58352,6 +58846,61 @@ export interface operations {
};
};
};
+ PostTestHelpersTreasuryOutboundTransfersOutboundTransfer: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ outbound_transfer: string;
+ };
+ cookie?: never;
+ };
+ requestBody: {
+ content: {
+ "application/x-www-form-urlencoded": {
+ /** @description Specifies which fields in the response should be expanded. */
+ expand?: string[];
+ /**
+ * tracking_details_params
+ * @description Details about network-specific tracking information.
+ */
+ tracking_details: {
+ /** ach_tracking_details_params */
+ ach?: {
+ trace_id: string;
+ };
+ /** @enum {string} */
+ type: "ach" | "us_domestic_wire";
+ /** us_domestic_wire_tracking_details_params */
+ us_domestic_wire?: {
+ imad?: string;
+ omad?: string;
+ };
+ };
+ };
+ };
+ };
+ responses: {
+ /** @description Successful response. */
+ 200: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["treasury.outbound_transfer"];
+ };
+ };
+ /** @description Error response. */
+ default: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["error"];
+ };
+ };
+ };
+ };
PostTestHelpersTreasuryOutboundTransfersOutboundTransferFail: {
parameters: {
query?: never;
@@ -58619,7 +59168,7 @@ export interface operations {
business_type?: "company" | "government_entity" | "individual" | "non_profit";
/** connect_js_account_token_company_specs */
company?: {
- /** address_specs */
+ /** legal_entity_and_kyc_address_specs */
address?: {
city?: string;
country?: string;
@@ -58830,7 +59379,7 @@ export interface operations {
user_agent?: string | "";
};
};
- /** address_specs */
+ /** legal_entity_and_kyc_address_specs */
address?: {
city?: string;
country?: string;
@@ -59433,7 +59982,7 @@ export interface operations {
"application/x-www-form-urlencoded": {
/** @description A positive integer in cents (or local equivalent) representing how much of this transfer to reverse. Can only reverse up to the unreversed amount remaining of the transfer. Partial transfer reversals are only allowed for transfers to Stripe Accounts. Defaults to the entire transfer amount. */
amount?: number;
- /** @description An arbitrary string which you can attach to a reversal object. It is displayed alongside the reversal in the Dashboard. This will be unset if you POST an empty value. */
+ /** @description An arbitrary string which you can attach to a reversal object. This will be unset if you POST an empty value. */
description?: string;
/** @description Specifies which fields in the response should be expanded. */
expand?: string[];
@@ -61490,13 +62039,13 @@ export interface operations {
* @description Events sent to this endpoint will be generated with this Stripe Version instead of your account's default Stripe Version.
* @enum {string}
*/
- api_version?: "2011-01-01" | "2011-06-21" | "2011-06-28" | "2011-08-01" | "2011-09-15" | "2011-11-17" | "2012-02-23" | "2012-03-25" | "2012-06-18" | "2012-06-28" | "2012-07-09" | "2012-09-24" | "2012-10-26" | "2012-11-07" | "2013-02-11" | "2013-02-13" | "2013-07-05" | "2013-08-12" | "2013-08-13" | "2013-10-29" | "2013-12-03" | "2014-01-31" | "2014-03-13" | "2014-03-28" | "2014-05-19" | "2014-06-13" | "2014-06-17" | "2014-07-22" | "2014-07-26" | "2014-08-04" | "2014-08-20" | "2014-09-08" | "2014-10-07" | "2014-11-05" | "2014-11-20" | "2014-12-08" | "2014-12-17" | "2014-12-22" | "2015-01-11" | "2015-01-26" | "2015-02-10" | "2015-02-16" | "2015-02-18" | "2015-03-24" | "2015-04-07" | "2015-06-15" | "2015-07-07" | "2015-07-13" | "2015-07-28" | "2015-08-07" | "2015-08-19" | "2015-09-03" | "2015-09-08" | "2015-09-23" | "2015-10-01" | "2015-10-12" | "2015-10-16" | "2016-02-03" | "2016-02-19" | "2016-02-22" | "2016-02-23" | "2016-02-29" | "2016-03-07" | "2016-06-15" | "2016-07-06" | "2016-10-19" | "2017-01-27" | "2017-02-14" | "2017-04-06" | "2017-05-25" | "2017-06-05" | "2017-08-15" | "2017-12-14" | "2018-01-23" | "2018-02-05" | "2018-02-06" | "2018-02-28" | "2018-05-21" | "2018-07-27" | "2018-08-23" | "2018-09-06" | "2018-09-24" | "2018-10-31" | "2018-11-08" | "2019-02-11" | "2019-02-19" | "2019-03-14" | "2019-05-16" | "2019-08-14" | "2019-09-09" | "2019-10-08" | "2019-10-17" | "2019-11-05" | "2019-12-03" | "2020-03-02" | "2020-08-27" | "2022-08-01" | "2022-11-15" | "2023-08-16" | "2023-10-16" | "2024-04-10";
+ api_version?: "2011-01-01" | "2011-06-21" | "2011-06-28" | "2011-08-01" | "2011-09-15" | "2011-11-17" | "2012-02-23" | "2012-03-25" | "2012-06-18" | "2012-06-28" | "2012-07-09" | "2012-09-24" | "2012-10-26" | "2012-11-07" | "2013-02-11" | "2013-02-13" | "2013-07-05" | "2013-08-12" | "2013-08-13" | "2013-10-29" | "2013-12-03" | "2014-01-31" | "2014-03-13" | "2014-03-28" | "2014-05-19" | "2014-06-13" | "2014-06-17" | "2014-07-22" | "2014-07-26" | "2014-08-04" | "2014-08-20" | "2014-09-08" | "2014-10-07" | "2014-11-05" | "2014-11-20" | "2014-12-08" | "2014-12-17" | "2014-12-22" | "2015-01-11" | "2015-01-26" | "2015-02-10" | "2015-02-16" | "2015-02-18" | "2015-03-24" | "2015-04-07" | "2015-06-15" | "2015-07-07" | "2015-07-13" | "2015-07-28" | "2015-08-07" | "2015-08-19" | "2015-09-03" | "2015-09-08" | "2015-09-23" | "2015-10-01" | "2015-10-12" | "2015-10-16" | "2016-02-03" | "2016-02-19" | "2016-02-22" | "2016-02-23" | "2016-02-29" | "2016-03-07" | "2016-06-15" | "2016-07-06" | "2016-10-19" | "2017-01-27" | "2017-02-14" | "2017-04-06" | "2017-05-25" | "2017-06-05" | "2017-08-15" | "2017-12-14" | "2018-01-23" | "2018-02-05" | "2018-02-06" | "2018-02-28" | "2018-05-21" | "2018-07-27" | "2018-08-23" | "2018-09-06" | "2018-09-24" | "2018-10-31" | "2018-11-08" | "2019-02-11" | "2019-02-19" | "2019-03-14" | "2019-05-16" | "2019-08-14" | "2019-09-09" | "2019-10-08" | "2019-10-17" | "2019-11-05" | "2019-12-03" | "2020-03-02" | "2020-08-27" | "2022-08-01" | "2022-11-15" | "2023-08-16" | "2023-10-16" | "2024-04-10" | "2024-06-20";
/** @description Whether this endpoint should receive events from connected accounts (`true`), or from your account (`false`). Defaults to `false`. */
connect?: boolean;
/** @description An optional description of what the webhook is used for. */
description?: string | "";
/** @description The list of events to enable for this endpoint. You may specify `['*']` to enable all events, except those that require explicit selection. */
- enabled_events: ("*" | "account.application.authorized" | "account.application.deauthorized" | "account.external_account.created" | "account.external_account.deleted" | "account.external_account.updated" | "account.updated" | "application_fee.created" | "application_fee.refund.updated" | "application_fee.refunded" | "balance.available" | "billing_portal.configuration.created" | "billing_portal.configuration.updated" | "billing_portal.session.created" | "capability.updated" | "cash_balance.funds_available" | "charge.captured" | "charge.dispute.closed" | "charge.dispute.created" | "charge.dispute.funds_reinstated" | "charge.dispute.funds_withdrawn" | "charge.dispute.updated" | "charge.expired" | "charge.failed" | "charge.pending" | "charge.refund.updated" | "charge.refunded" | "charge.succeeded" | "charge.updated" | "checkout.session.async_payment_failed" | "checkout.session.async_payment_succeeded" | "checkout.session.completed" | "checkout.session.expired" | "climate.order.canceled" | "climate.order.created" | "climate.order.delayed" | "climate.order.delivered" | "climate.order.product_substituted" | "climate.product.created" | "climate.product.pricing_updated" | "coupon.created" | "coupon.deleted" | "coupon.updated" | "credit_note.created" | "credit_note.updated" | "credit_note.voided" | "customer.created" | "customer.deleted" | "customer.discount.created" | "customer.discount.deleted" | "customer.discount.updated" | "customer.source.created" | "customer.source.deleted" | "customer.source.expiring" | "customer.source.updated" | "customer.subscription.created" | "customer.subscription.deleted" | "customer.subscription.paused" | "customer.subscription.pending_update_applied" | "customer.subscription.pending_update_expired" | "customer.subscription.resumed" | "customer.subscription.trial_will_end" | "customer.subscription.updated" | "customer.tax_id.created" | "customer.tax_id.deleted" | "customer.tax_id.updated" | "customer.updated" | "customer_cash_balance_transaction.created" | "entitlements.active_entitlement_summary.updated" | "file.created" | "financial_connections.account.created" | "financial_connections.account.deactivated" | "financial_connections.account.disconnected" | "financial_connections.account.reactivated" | "financial_connections.account.refreshed_balance" | "financial_connections.account.refreshed_ownership" | "financial_connections.account.refreshed_transactions" | "identity.verification_session.canceled" | "identity.verification_session.created" | "identity.verification_session.processing" | "identity.verification_session.redacted" | "identity.verification_session.requires_input" | "identity.verification_session.verified" | "invoice.created" | "invoice.deleted" | "invoice.finalization_failed" | "invoice.finalized" | "invoice.marked_uncollectible" | "invoice.paid" | "invoice.payment_action_required" | "invoice.payment_failed" | "invoice.payment_succeeded" | "invoice.sent" | "invoice.upcoming" | "invoice.updated" | "invoice.voided" | "invoiceitem.created" | "invoiceitem.deleted" | "issuing_authorization.created" | "issuing_authorization.request" | "issuing_authorization.updated" | "issuing_card.created" | "issuing_card.updated" | "issuing_cardholder.created" | "issuing_cardholder.updated" | "issuing_dispute.closed" | "issuing_dispute.created" | "issuing_dispute.funds_reinstated" | "issuing_dispute.submitted" | "issuing_dispute.updated" | "issuing_token.created" | "issuing_token.updated" | "issuing_transaction.created" | "issuing_transaction.updated" | "mandate.updated" | "payment_intent.amount_capturable_updated" | "payment_intent.canceled" | "payment_intent.created" | "payment_intent.partially_funded" | "payment_intent.payment_failed" | "payment_intent.processing" | "payment_intent.requires_action" | "payment_intent.succeeded" | "payment_link.created" | "payment_link.updated" | "payment_method.attached" | "payment_method.automatically_updated" | "payment_method.detached" | "payment_method.updated" | "payout.canceled" | "payout.created" | "payout.failed" | "payout.paid" | "payout.reconciliation_completed" | "payout.updated" | "person.created" | "person.deleted" | "person.updated" | "plan.created" | "plan.deleted" | "plan.updated" | "price.created" | "price.deleted" | "price.updated" | "product.created" | "product.deleted" | "product.updated" | "promotion_code.created" | "promotion_code.updated" | "quote.accepted" | "quote.canceled" | "quote.created" | "quote.finalized" | "radar.early_fraud_warning.created" | "radar.early_fraud_warning.updated" | "refund.created" | "refund.updated" | "reporting.report_run.failed" | "reporting.report_run.succeeded" | "reporting.report_type.updated" | "review.closed" | "review.opened" | "setup_intent.canceled" | "setup_intent.created" | "setup_intent.requires_action" | "setup_intent.setup_failed" | "setup_intent.succeeded" | "sigma.scheduled_query_run.created" | "source.canceled" | "source.chargeable" | "source.failed" | "source.mandate_notification" | "source.refund_attributes_required" | "source.transaction.created" | "source.transaction.updated" | "subscription_schedule.aborted" | "subscription_schedule.canceled" | "subscription_schedule.completed" | "subscription_schedule.created" | "subscription_schedule.expiring" | "subscription_schedule.released" | "subscription_schedule.updated" | "tax.settings.updated" | "tax_rate.created" | "tax_rate.updated" | "terminal.reader.action_failed" | "terminal.reader.action_succeeded" | "test_helpers.test_clock.advancing" | "test_helpers.test_clock.created" | "test_helpers.test_clock.deleted" | "test_helpers.test_clock.internal_failure" | "test_helpers.test_clock.ready" | "topup.canceled" | "topup.created" | "topup.failed" | "topup.reversed" | "topup.succeeded" | "transfer.created" | "transfer.reversed" | "transfer.updated" | "treasury.credit_reversal.created" | "treasury.credit_reversal.posted" | "treasury.debit_reversal.completed" | "treasury.debit_reversal.created" | "treasury.debit_reversal.initial_credit_granted" | "treasury.financial_account.closed" | "treasury.financial_account.created" | "treasury.financial_account.features_status_updated" | "treasury.inbound_transfer.canceled" | "treasury.inbound_transfer.created" | "treasury.inbound_transfer.failed" | "treasury.inbound_transfer.succeeded" | "treasury.outbound_payment.canceled" | "treasury.outbound_payment.created" | "treasury.outbound_payment.expected_arrival_date_updated" | "treasury.outbound_payment.failed" | "treasury.outbound_payment.posted" | "treasury.outbound_payment.returned" | "treasury.outbound_transfer.canceled" | "treasury.outbound_transfer.created" | "treasury.outbound_transfer.expected_arrival_date_updated" | "treasury.outbound_transfer.failed" | "treasury.outbound_transfer.posted" | "treasury.outbound_transfer.returned" | "treasury.received_credit.created" | "treasury.received_credit.failed" | "treasury.received_credit.succeeded" | "treasury.received_debit.created")[];
+ enabled_events: ("*" | "account.application.authorized" | "account.application.deauthorized" | "account.external_account.created" | "account.external_account.deleted" | "account.external_account.updated" | "account.updated" | "application_fee.created" | "application_fee.refund.updated" | "application_fee.refunded" | "balance.available" | "billing_portal.configuration.created" | "billing_portal.configuration.updated" | "billing_portal.session.created" | "capability.updated" | "cash_balance.funds_available" | "charge.captured" | "charge.dispute.closed" | "charge.dispute.created" | "charge.dispute.funds_reinstated" | "charge.dispute.funds_withdrawn" | "charge.dispute.updated" | "charge.expired" | "charge.failed" | "charge.pending" | "charge.refund.updated" | "charge.refunded" | "charge.succeeded" | "charge.updated" | "checkout.session.async_payment_failed" | "checkout.session.async_payment_succeeded" | "checkout.session.completed" | "checkout.session.expired" | "climate.order.canceled" | "climate.order.created" | "climate.order.delayed" | "climate.order.delivered" | "climate.order.product_substituted" | "climate.product.created" | "climate.product.pricing_updated" | "coupon.created" | "coupon.deleted" | "coupon.updated" | "credit_note.created" | "credit_note.updated" | "credit_note.voided" | "customer.created" | "customer.deleted" | "customer.discount.created" | "customer.discount.deleted" | "customer.discount.updated" | "customer.source.created" | "customer.source.deleted" | "customer.source.expiring" | "customer.source.updated" | "customer.subscription.created" | "customer.subscription.deleted" | "customer.subscription.paused" | "customer.subscription.pending_update_applied" | "customer.subscription.pending_update_expired" | "customer.subscription.resumed" | "customer.subscription.trial_will_end" | "customer.subscription.updated" | "customer.tax_id.created" | "customer.tax_id.deleted" | "customer.tax_id.updated" | "customer.updated" | "customer_cash_balance_transaction.created" | "entitlements.active_entitlement_summary.updated" | "file.created" | "financial_connections.account.created" | "financial_connections.account.deactivated" | "financial_connections.account.disconnected" | "financial_connections.account.reactivated" | "financial_connections.account.refreshed_balance" | "financial_connections.account.refreshed_ownership" | "financial_connections.account.refreshed_transactions" | "identity.verification_session.canceled" | "identity.verification_session.created" | "identity.verification_session.processing" | "identity.verification_session.redacted" | "identity.verification_session.requires_input" | "identity.verification_session.verified" | "invoice.created" | "invoice.deleted" | "invoice.finalization_failed" | "invoice.finalized" | "invoice.marked_uncollectible" | "invoice.paid" | "invoice.payment_action_required" | "invoice.payment_failed" | "invoice.payment_succeeded" | "invoice.sent" | "invoice.upcoming" | "invoice.updated" | "invoice.voided" | "invoiceitem.created" | "invoiceitem.deleted" | "issuing_authorization.created" | "issuing_authorization.request" | "issuing_authorization.updated" | "issuing_card.created" | "issuing_card.updated" | "issuing_cardholder.created" | "issuing_cardholder.updated" | "issuing_dispute.closed" | "issuing_dispute.created" | "issuing_dispute.funds_reinstated" | "issuing_dispute.submitted" | "issuing_dispute.updated" | "issuing_personalization_design.activated" | "issuing_personalization_design.deactivated" | "issuing_personalization_design.rejected" | "issuing_personalization_design.updated" | "issuing_token.created" | "issuing_token.updated" | "issuing_transaction.created" | "issuing_transaction.updated" | "mandate.updated" | "payment_intent.amount_capturable_updated" | "payment_intent.canceled" | "payment_intent.created" | "payment_intent.partially_funded" | "payment_intent.payment_failed" | "payment_intent.processing" | "payment_intent.requires_action" | "payment_intent.succeeded" | "payment_link.created" | "payment_link.updated" | "payment_method.attached" | "payment_method.automatically_updated" | "payment_method.detached" | "payment_method.updated" | "payout.canceled" | "payout.created" | "payout.failed" | "payout.paid" | "payout.reconciliation_completed" | "payout.updated" | "person.created" | "person.deleted" | "person.updated" | "plan.created" | "plan.deleted" | "plan.updated" | "price.created" | "price.deleted" | "price.updated" | "product.created" | "product.deleted" | "product.updated" | "promotion_code.created" | "promotion_code.updated" | "quote.accepted" | "quote.canceled" | "quote.created" | "quote.finalized" | "radar.early_fraud_warning.created" | "radar.early_fraud_warning.updated" | "refund.created" | "refund.updated" | "reporting.report_run.failed" | "reporting.report_run.succeeded" | "reporting.report_type.updated" | "review.closed" | "review.opened" | "setup_intent.canceled" | "setup_intent.created" | "setup_intent.requires_action" | "setup_intent.setup_failed" | "setup_intent.succeeded" | "sigma.scheduled_query_run.created" | "source.canceled" | "source.chargeable" | "source.failed" | "source.mandate_notification" | "source.refund_attributes_required" | "source.transaction.created" | "source.transaction.updated" | "subscription_schedule.aborted" | "subscription_schedule.canceled" | "subscription_schedule.completed" | "subscription_schedule.created" | "subscription_schedule.expiring" | "subscription_schedule.released" | "subscription_schedule.updated" | "tax.settings.updated" | "tax_rate.created" | "tax_rate.updated" | "terminal.reader.action_failed" | "terminal.reader.action_succeeded" | "test_helpers.test_clock.advancing" | "test_helpers.test_clock.created" | "test_helpers.test_clock.deleted" | "test_helpers.test_clock.internal_failure" | "test_helpers.test_clock.ready" | "topup.canceled" | "topup.created" | "topup.failed" | "topup.reversed" | "topup.succeeded" | "transfer.created" | "transfer.reversed" | "transfer.updated" | "treasury.credit_reversal.created" | "treasury.credit_reversal.posted" | "treasury.debit_reversal.completed" | "treasury.debit_reversal.created" | "treasury.debit_reversal.initial_credit_granted" | "treasury.financial_account.closed" | "treasury.financial_account.created" | "treasury.financial_account.features_status_updated" | "treasury.inbound_transfer.canceled" | "treasury.inbound_transfer.created" | "treasury.inbound_transfer.failed" | "treasury.inbound_transfer.succeeded" | "treasury.outbound_payment.canceled" | "treasury.outbound_payment.created" | "treasury.outbound_payment.expected_arrival_date_updated" | "treasury.outbound_payment.failed" | "treasury.outbound_payment.posted" | "treasury.outbound_payment.returned" | "treasury.outbound_payment.tracking_details_updated" | "treasury.outbound_transfer.canceled" | "treasury.outbound_transfer.created" | "treasury.outbound_transfer.expected_arrival_date_updated" | "treasury.outbound_transfer.failed" | "treasury.outbound_transfer.posted" | "treasury.outbound_transfer.returned" | "treasury.outbound_transfer.tracking_details_updated" | "treasury.received_credit.created" | "treasury.received_credit.failed" | "treasury.received_credit.succeeded" | "treasury.received_debit.created")[];
/** @description Specifies which fields in the response should be expanded. */
expand?: string[];
/** @description Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`. */
@@ -61584,7 +62133,7 @@ export interface operations {
/** @description Disable the webhook endpoint if set to true. */
disabled?: boolean;
/** @description The list of events to enable for this endpoint. You may specify `['*']` to enable all events, except those that require explicit selection. */
- enabled_events?: ("*" | "account.application.authorized" | "account.application.deauthorized" | "account.external_account.created" | "account.external_account.deleted" | "account.external_account.updated" | "account.updated" | "application_fee.created" | "application_fee.refund.updated" | "application_fee.refunded" | "balance.available" | "billing_portal.configuration.created" | "billing_portal.configuration.updated" | "billing_portal.session.created" | "capability.updated" | "cash_balance.funds_available" | "charge.captured" | "charge.dispute.closed" | "charge.dispute.created" | "charge.dispute.funds_reinstated" | "charge.dispute.funds_withdrawn" | "charge.dispute.updated" | "charge.expired" | "charge.failed" | "charge.pending" | "charge.refund.updated" | "charge.refunded" | "charge.succeeded" | "charge.updated" | "checkout.session.async_payment_failed" | "checkout.session.async_payment_succeeded" | "checkout.session.completed" | "checkout.session.expired" | "climate.order.canceled" | "climate.order.created" | "climate.order.delayed" | "climate.order.delivered" | "climate.order.product_substituted" | "climate.product.created" | "climate.product.pricing_updated" | "coupon.created" | "coupon.deleted" | "coupon.updated" | "credit_note.created" | "credit_note.updated" | "credit_note.voided" | "customer.created" | "customer.deleted" | "customer.discount.created" | "customer.discount.deleted" | "customer.discount.updated" | "customer.source.created" | "customer.source.deleted" | "customer.source.expiring" | "customer.source.updated" | "customer.subscription.created" | "customer.subscription.deleted" | "customer.subscription.paused" | "customer.subscription.pending_update_applied" | "customer.subscription.pending_update_expired" | "customer.subscription.resumed" | "customer.subscription.trial_will_end" | "customer.subscription.updated" | "customer.tax_id.created" | "customer.tax_id.deleted" | "customer.tax_id.updated" | "customer.updated" | "customer_cash_balance_transaction.created" | "entitlements.active_entitlement_summary.updated" | "file.created" | "financial_connections.account.created" | "financial_connections.account.deactivated" | "financial_connections.account.disconnected" | "financial_connections.account.reactivated" | "financial_connections.account.refreshed_balance" | "financial_connections.account.refreshed_ownership" | "financial_connections.account.refreshed_transactions" | "identity.verification_session.canceled" | "identity.verification_session.created" | "identity.verification_session.processing" | "identity.verification_session.redacted" | "identity.verification_session.requires_input" | "identity.verification_session.verified" | "invoice.created" | "invoice.deleted" | "invoice.finalization_failed" | "invoice.finalized" | "invoice.marked_uncollectible" | "invoice.paid" | "invoice.payment_action_required" | "invoice.payment_failed" | "invoice.payment_succeeded" | "invoice.sent" | "invoice.upcoming" | "invoice.updated" | "invoice.voided" | "invoiceitem.created" | "invoiceitem.deleted" | "issuing_authorization.created" | "issuing_authorization.request" | "issuing_authorization.updated" | "issuing_card.created" | "issuing_card.updated" | "issuing_cardholder.created" | "issuing_cardholder.updated" | "issuing_dispute.closed" | "issuing_dispute.created" | "issuing_dispute.funds_reinstated" | "issuing_dispute.submitted" | "issuing_dispute.updated" | "issuing_token.created" | "issuing_token.updated" | "issuing_transaction.created" | "issuing_transaction.updated" | "mandate.updated" | "payment_intent.amount_capturable_updated" | "payment_intent.canceled" | "payment_intent.created" | "payment_intent.partially_funded" | "payment_intent.payment_failed" | "payment_intent.processing" | "payment_intent.requires_action" | "payment_intent.succeeded" | "payment_link.created" | "payment_link.updated" | "payment_method.attached" | "payment_method.automatically_updated" | "payment_method.detached" | "payment_method.updated" | "payout.canceled" | "payout.created" | "payout.failed" | "payout.paid" | "payout.reconciliation_completed" | "payout.updated" | "person.created" | "person.deleted" | "person.updated" | "plan.created" | "plan.deleted" | "plan.updated" | "price.created" | "price.deleted" | "price.updated" | "product.created" | "product.deleted" | "product.updated" | "promotion_code.created" | "promotion_code.updated" | "quote.accepted" | "quote.canceled" | "quote.created" | "quote.finalized" | "radar.early_fraud_warning.created" | "radar.early_fraud_warning.updated" | "refund.created" | "refund.updated" | "reporting.report_run.failed" | "reporting.report_run.succeeded" | "reporting.report_type.updated" | "review.closed" | "review.opened" | "setup_intent.canceled" | "setup_intent.created" | "setup_intent.requires_action" | "setup_intent.setup_failed" | "setup_intent.succeeded" | "sigma.scheduled_query_run.created" | "source.canceled" | "source.chargeable" | "source.failed" | "source.mandate_notification" | "source.refund_attributes_required" | "source.transaction.created" | "source.transaction.updated" | "subscription_schedule.aborted" | "subscription_schedule.canceled" | "subscription_schedule.completed" | "subscription_schedule.created" | "subscription_schedule.expiring" | "subscription_schedule.released" | "subscription_schedule.updated" | "tax.settings.updated" | "tax_rate.created" | "tax_rate.updated" | "terminal.reader.action_failed" | "terminal.reader.action_succeeded" | "test_helpers.test_clock.advancing" | "test_helpers.test_clock.created" | "test_helpers.test_clock.deleted" | "test_helpers.test_clock.internal_failure" | "test_helpers.test_clock.ready" | "topup.canceled" | "topup.created" | "topup.failed" | "topup.reversed" | "topup.succeeded" | "transfer.created" | "transfer.reversed" | "transfer.updated" | "treasury.credit_reversal.created" | "treasury.credit_reversal.posted" | "treasury.debit_reversal.completed" | "treasury.debit_reversal.created" | "treasury.debit_reversal.initial_credit_granted" | "treasury.financial_account.closed" | "treasury.financial_account.created" | "treasury.financial_account.features_status_updated" | "treasury.inbound_transfer.canceled" | "treasury.inbound_transfer.created" | "treasury.inbound_transfer.failed" | "treasury.inbound_transfer.succeeded" | "treasury.outbound_payment.canceled" | "treasury.outbound_payment.created" | "treasury.outbound_payment.expected_arrival_date_updated" | "treasury.outbound_payment.failed" | "treasury.outbound_payment.posted" | "treasury.outbound_payment.returned" | "treasury.outbound_transfer.canceled" | "treasury.outbound_transfer.created" | "treasury.outbound_transfer.expected_arrival_date_updated" | "treasury.outbound_transfer.failed" | "treasury.outbound_transfer.posted" | "treasury.outbound_transfer.returned" | "treasury.received_credit.created" | "treasury.received_credit.failed" | "treasury.received_credit.succeeded" | "treasury.received_debit.created")[];
+ enabled_events?: ("*" | "account.application.authorized" | "account.application.deauthorized" | "account.external_account.created" | "account.external_account.deleted" | "account.external_account.updated" | "account.updated" | "application_fee.created" | "application_fee.refund.updated" | "application_fee.refunded" | "balance.available" | "billing_portal.configuration.created" | "billing_portal.configuration.updated" | "billing_portal.session.created" | "capability.updated" | "cash_balance.funds_available" | "charge.captured" | "charge.dispute.closed" | "charge.dispute.created" | "charge.dispute.funds_reinstated" | "charge.dispute.funds_withdrawn" | "charge.dispute.updated" | "charge.expired" | "charge.failed" | "charge.pending" | "charge.refund.updated" | "charge.refunded" | "charge.succeeded" | "charge.updated" | "checkout.session.async_payment_failed" | "checkout.session.async_payment_succeeded" | "checkout.session.completed" | "checkout.session.expired" | "climate.order.canceled" | "climate.order.created" | "climate.order.delayed" | "climate.order.delivered" | "climate.order.product_substituted" | "climate.product.created" | "climate.product.pricing_updated" | "coupon.created" | "coupon.deleted" | "coupon.updated" | "credit_note.created" | "credit_note.updated" | "credit_note.voided" | "customer.created" | "customer.deleted" | "customer.discount.created" | "customer.discount.deleted" | "customer.discount.updated" | "customer.source.created" | "customer.source.deleted" | "customer.source.expiring" | "customer.source.updated" | "customer.subscription.created" | "customer.subscription.deleted" | "customer.subscription.paused" | "customer.subscription.pending_update_applied" | "customer.subscription.pending_update_expired" | "customer.subscription.resumed" | "customer.subscription.trial_will_end" | "customer.subscription.updated" | "customer.tax_id.created" | "customer.tax_id.deleted" | "customer.tax_id.updated" | "customer.updated" | "customer_cash_balance_transaction.created" | "entitlements.active_entitlement_summary.updated" | "file.created" | "financial_connections.account.created" | "financial_connections.account.deactivated" | "financial_connections.account.disconnected" | "financial_connections.account.reactivated" | "financial_connections.account.refreshed_balance" | "financial_connections.account.refreshed_ownership" | "financial_connections.account.refreshed_transactions" | "identity.verification_session.canceled" | "identity.verification_session.created" | "identity.verification_session.processing" | "identity.verification_session.redacted" | "identity.verification_session.requires_input" | "identity.verification_session.verified" | "invoice.created" | "invoice.deleted" | "invoice.finalization_failed" | "invoice.finalized" | "invoice.marked_uncollectible" | "invoice.paid" | "invoice.payment_action_required" | "invoice.payment_failed" | "invoice.payment_succeeded" | "invoice.sent" | "invoice.upcoming" | "invoice.updated" | "invoice.voided" | "invoiceitem.created" | "invoiceitem.deleted" | "issuing_authorization.created" | "issuing_authorization.request" | "issuing_authorization.updated" | "issuing_card.created" | "issuing_card.updated" | "issuing_cardholder.created" | "issuing_cardholder.updated" | "issuing_dispute.closed" | "issuing_dispute.created" | "issuing_dispute.funds_reinstated" | "issuing_dispute.submitted" | "issuing_dispute.updated" | "issuing_personalization_design.activated" | "issuing_personalization_design.deactivated" | "issuing_personalization_design.rejected" | "issuing_personalization_design.updated" | "issuing_token.created" | "issuing_token.updated" | "issuing_transaction.created" | "issuing_transaction.updated" | "mandate.updated" | "payment_intent.amount_capturable_updated" | "payment_intent.canceled" | "payment_intent.created" | "payment_intent.partially_funded" | "payment_intent.payment_failed" | "payment_intent.processing" | "payment_intent.requires_action" | "payment_intent.succeeded" | "payment_link.created" | "payment_link.updated" | "payment_method.attached" | "payment_method.automatically_updated" | "payment_method.detached" | "payment_method.updated" | "payout.canceled" | "payout.created" | "payout.failed" | "payout.paid" | "payout.reconciliation_completed" | "payout.updated" | "person.created" | "person.deleted" | "person.updated" | "plan.created" | "plan.deleted" | "plan.updated" | "price.created" | "price.deleted" | "price.updated" | "product.created" | "product.deleted" | "product.updated" | "promotion_code.created" | "promotion_code.updated" | "quote.accepted" | "quote.canceled" | "quote.created" | "quote.finalized" | "radar.early_fraud_warning.created" | "radar.early_fraud_warning.updated" | "refund.created" | "refund.updated" | "reporting.report_run.failed" | "reporting.report_run.succeeded" | "reporting.report_type.updated" | "review.closed" | "review.opened" | "setup_intent.canceled" | "setup_intent.created" | "setup_intent.requires_action" | "setup_intent.setup_failed" | "setup_intent.succeeded" | "sigma.scheduled_query_run.created" | "source.canceled" | "source.chargeable" | "source.failed" | "source.mandate_notification" | "source.refund_attributes_required" | "source.transaction.created" | "source.transaction.updated" | "subscription_schedule.aborted" | "subscription_schedule.canceled" | "subscription_schedule.completed" | "subscription_schedule.created" | "subscription_schedule.expiring" | "subscription_schedule.released" | "subscription_schedule.updated" | "tax.settings.updated" | "tax_rate.created" | "tax_rate.updated" | "terminal.reader.action_failed" | "terminal.reader.action_succeeded" | "test_helpers.test_clock.advancing" | "test_helpers.test_clock.created" | "test_helpers.test_clock.deleted" | "test_helpers.test_clock.internal_failure" | "test_helpers.test_clock.ready" | "topup.canceled" | "topup.created" | "topup.failed" | "topup.reversed" | "topup.succeeded" | "transfer.created" | "transfer.reversed" | "transfer.updated" | "treasury.credit_reversal.created" | "treasury.credit_reversal.posted" | "treasury.debit_reversal.completed" | "treasury.debit_reversal.created" | "treasury.debit_reversal.initial_credit_granted" | "treasury.financial_account.closed" | "treasury.financial_account.created" | "treasury.financial_account.features_status_updated" | "treasury.inbound_transfer.canceled" | "treasury.inbound_transfer.created" | "treasury.inbound_transfer.failed" | "treasury.inbound_transfer.succeeded" | "treasury.outbound_payment.canceled" | "treasury.outbound_payment.created" | "treasury.outbound_payment.expected_arrival_date_updated" | "treasury.outbound_payment.failed" | "treasury.outbound_payment.posted" | "treasury.outbound_payment.returned" | "treasury.outbound_payment.tracking_details_updated" | "treasury.outbound_transfer.canceled" | "treasury.outbound_transfer.created" | "treasury.outbound_transfer.expected_arrival_date_updated" | "treasury.outbound_transfer.failed" | "treasury.outbound_transfer.posted" | "treasury.outbound_transfer.returned" | "treasury.outbound_transfer.tracking_details_updated" | "treasury.received_credit.created" | "treasury.received_credit.failed" | "treasury.received_credit.succeeded" | "treasury.received_debit.created")[];
/** @description Specifies which fields in the response should be expanded. */
expand?: string[];
/** @description Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`. */
diff --git a/packages/openapi-typescript/examples/stripe-api.yaml b/packages/openapi-typescript/examples/stripe-api.yaml
index 7246768b7..3865b9968 100644
--- a/packages/openapi-typescript/examples/stripe-api.yaml
+++ b/packages/openapi-typescript/examples/stripe-api.yaml
@@ -83,7 +83,9 @@ components:
description: >-
Whether account details have been submitted. Accounts with Stripe
Dashboard access, which includes Standard accounts, cannot receive
- payouts before this is true.
+ payouts before this is true. Accounts where this is false should be
+ directed to [an onboarding flow](/connect/onboarding) to finish
+ submitting account details.
type: boolean
email:
description: >-
@@ -523,6 +525,16 @@ components:
- inactive
- pending
type: string
+ gb_bank_transfer_payments:
+ description: >-
+ The status of the GB customer_balance payments (GBP currency)
+ capability of the account, or whether the account can directly
+ process GB customer_balance charges.
+ enum:
+ - active
+ - inactive
+ - pending
+ type: string
giropay_payments:
description: >-
The status of the giropay payments capability of the account, or
@@ -570,6 +582,16 @@ components:
- inactive
- pending
type: string
+ jp_bank_transfer_payments:
+ description: >-
+ The status of the Japanese customer_balance payments (JPY currency)
+ capability of the account, or whether the account can directly
+ process Japanese customer_balance charges.
+ enum:
+ - active
+ - inactive
+ - pending
+ type: string
klarna_payments:
description: >-
The status of the Klarna payments capability of the account, or
@@ -606,13 +628,32 @@ components:
type: string
mobilepay_payments:
description: >-
- The status of the MobilepPay capability of the account, or whether
+ The status of the MobilePay capability of the account, or whether
the account can directly process MobilePay charges.
enum:
- active
- inactive
- pending
type: string
+ multibanco_payments:
+ description: >-
+ The status of the Multibanco payments capability of the account, or
+ whether the account can directly process Multibanco charges.
+ enum:
+ - active
+ - inactive
+ - pending
+ type: string
+ mx_bank_transfer_payments:
+ description: >-
+ The status of the Mexican customer_balance payments (MXN currency)
+ capability of the account, or whether the account can directly
+ process Mexican customer_balance charges.
+ enum:
+ - active
+ - inactive
+ - pending
+ type: string
oxxo_payments:
description: >-
The status of the OXXO payments capability of the account, or
@@ -658,6 +699,16 @@ components:
- inactive
- pending
type: string
+ sepa_bank_transfer_payments:
+ description: >-
+ The status of the SEPA customer_balance payments (EUR currency)
+ capability of the account, or whether the account can directly
+ process SEPA customer_balance charges.
+ enum:
+ - active
+ - inactive
+ - pending
+ type: string
sepa_debit_payments:
description: >-
The status of the SEPA Direct Debits payments capability of the
@@ -722,6 +773,15 @@ components:
- inactive
- pending
type: string
+ twint_payments:
+ description: >-
+ The status of the TWINT capability of the account, or whether the
+ account can directly process TWINT charges.
+ enum:
+ - active
+ - inactive
+ - pending
+ type: string
us_bank_account_ach_payments:
description: >-
The status of the US bank account ACH payments capability of the
@@ -732,6 +792,16 @@ components:
- inactive
- pending
type: string
+ us_bank_transfer_payments:
+ description: >-
+ The status of the US customer_balance payments (USD currency)
+ capability of the account, or whether the account can directly
+ process US customer_balance charges.
+ enum:
+ - active
+ - inactive
+ - pending
+ type: string
zip_payments:
description: >-
The status of the Zip capability of the account, or whether the
@@ -865,10 +935,11 @@ components:
type: array
disabled_reason:
description: >-
- If the capability is disabled, this string describes why. Can be
- `requirements.fields_needed`, `pending.onboarding`,
- `pending.review`, `rejected.fraud`, `rejected.other`,
- `platform_paused`, `action_required.requested_capabilities`,
+ If the capability is disabled, this string describes why. [Learn
+ more about handling verification
+ issues](https://stripe.com/docs/connect/handling-api-verification).
+ Can be `requirements.fields_needed`, `pending.onboarding`,
+ `pending.review`, `rejected.other`, `platform_paused`,
`rejected.inactivty`, or `rejected.unsupported_business`.
@@ -884,10 +955,6 @@ components:
Issuing capability. See [Issuing: Managing Inactive
Connects](https://support.stripe.com/questions/issuing-managing-inactive-connect-accounts)
for more details.
-
-
- If you believe that a rejection is in error, please contact support
- at https://support.stripe.com/contact/ for assistance.
maxLength: 5000
nullable: true
type: string
@@ -1483,6 +1550,7 @@ components:
- verification_missing_executives
- verification_missing_owners
- verification_requires_additional_memorandum_of_associations
+ - verification_requires_additional_proof_of_registration
type: string
x-stripeBypassValidation: true
reason:
@@ -1892,6 +1960,7 @@ components:
description: >-
The [source object](https://stripe.com/docs/api/sources/object) for
errors returned on a request involving a source.
+ x-stripeBypassValidation: true
type:
description: >-
The type of error returned. One of `api_error`, `card_error`,
@@ -2037,6 +2106,13 @@ components:
lowercase. Must be a [supported
currency](https://stripe.com/docs/currencies).
type: string
+ fee_source:
+ anyOf:
+ - $ref: '#/components/schemas/platform_earning_fee_source'
+ description: >-
+ Polymorphic source of the application fee. Includes the ID of the
+ object the application fee was created from.
+ nullable: true
id:
description: Unique identifier for the object.
maxLength: 5000
@@ -2123,6 +2199,7 @@ components:
- application
- balance_transaction
- charge
+ - fee_source
- originating_transaction
- refunds
x-resourceId: application_fee
@@ -2378,6 +2455,11 @@ components:
lowercase. Must be a [supported
currency](https://stripe.com/docs/currencies).
type: string
+ net_available:
+ description: Breakdown of balance by destination.
+ items:
+ $ref: '#/components/schemas/balance_net_available'
+ type: array
source_types:
$ref: '#/components/schemas/balance_amount_by_source_type'
required:
@@ -2386,6 +2468,7 @@ components:
title: BalanceAmountNet
type: object
x-expandableFields:
+ - net_available
- source_types
balance_detail:
description: ''
@@ -2401,6 +2484,25 @@ components:
type: object
x-expandableFields:
- available
+ balance_net_available:
+ description: ''
+ properties:
+ amount:
+ description: 'Net balance amount, subtracting fees from platform-set pricing.'
+ type: integer
+ destination:
+ description: ID of the external account for this net balance (not expandable).
+ maxLength: 5000
+ type: string
+ source_types:
+ $ref: '#/components/schemas/balance_amount_by_source_type'
+ required:
+ - amount
+ - destination
+ title: BalanceNetAvailable
+ type: object
+ x-expandableFields:
+ - source_types
balance_transaction:
description: >-
Balance transactions represent funds moving through your Stripe account.
@@ -2508,7 +2610,6 @@ components:
- $ref: '#/components/schemas/issuing.dispute'
- $ref: '#/components/schemas/issuing.transaction'
- $ref: '#/components/schemas/payout'
- - $ref: '#/components/schemas/platform_tax_fee'
- $ref: '#/components/schemas/refund'
- $ref: '#/components/schemas/reserve_transaction'
- $ref: '#/components/schemas/tax_deducted_at_source'
@@ -2529,7 +2630,6 @@ components:
- $ref: '#/components/schemas/issuing.dispute'
- $ref: '#/components/schemas/issuing.transaction'
- $ref: '#/components/schemas/payout'
- - $ref: '#/components/schemas/platform_tax_fee'
- $ref: '#/components/schemas/refund'
- $ref: '#/components/schemas/reserve_transaction'
- $ref: '#/components/schemas/tax_deducted_at_source'
@@ -2633,11 +2733,7 @@ components:
On the other hand [External Accounts](/api#external_accounts) are
transfer
- destinations on `Account` objects for accounts where
- [controller.requirement_collection](/api/accounts/object#account_object-controller-requirement_collection)
-
- is `application`, which includes [Custom
- accounts](/connect/custom-accounts).
+ destinations on `Account` objects for connected accounts.
They can be bank accounts or debit cards as well, and are documented in
the links above.
@@ -5037,7 +5133,12 @@ components:
- maxLength: 5000
type: string
- $ref: '#/components/schemas/payment_intent'
- description: The ID of the PaymentIntent for Checkout Sessions in `payment` mode.
+ description: >-
+ The ID of the PaymentIntent for Checkout Sessions in `payment` mode.
+ You can't confirm or cancel the PaymentIntent for a Checkout
+ Session. To cancel, [expire the Checkout
+ Session](https://stripe.com/docs/api/checkout/sessions/expire)
+ instead.
nullable: true
x-expansionResources:
oneOf:
@@ -5137,7 +5238,12 @@ components:
- maxLength: 5000
type: string
- $ref: '#/components/schemas/setup_intent'
- description: The ID of the SetupIntent for Checkout Sessions in `setup` mode.
+ description: >-
+ The ID of the SetupIntent for Checkout Sessions in `setup` mode. You
+ can't confirm or cancel the SetupIntent for a Checkout Session. To
+ cancel, [expire the Checkout
+ Session](https://stripe.com/docs/api/checkout/sessions/expire)
+ instead.
nullable: true
x-expansionResources:
oneOf:
@@ -6075,6 +6181,34 @@ components:
title: CheckoutMobilepayPaymentMethodOptions
type: object
x-expandableFields: []
+ checkout_multibanco_payment_method_options:
+ description: ''
+ properties:
+ setup_future_usage:
+ description: >-
+ Indicates that you intend to make future payments with this
+ PaymentIntent's payment method.
+
+
+ Providing this parameter will [attach the payment
+ method](https://stripe.com/docs/payments/save-during-payment) to the
+ PaymentIntent's Customer, if present, after the PaymentIntent is
+ confirmed and any required actions from the user are complete. If no
+ Customer was provided, the payment method can still be
+ [attached](https://stripe.com/docs/api/payment_methods/attach) to a
+ Customer after the transaction completes.
+
+
+ When processing card payments, Stripe also uses `setup_future_usage`
+ to dynamically optimize your payment flow and comply with regional
+ legislation and network rules, such as
+ [SCA](https://stripe.com/docs/strong-customer-authentication).
+ enum:
+ - none
+ type: string
+ title: CheckoutMultibancoPaymentMethodOptions
+ type: object
+ x-expandableFields: []
checkout_oxxo_payment_method_options:
description: ''
properties:
@@ -6336,6 +6470,8 @@ components:
$ref: '#/components/schemas/checkout_link_payment_method_options'
mobilepay:
$ref: '#/components/schemas/checkout_mobilepay_payment_method_options'
+ multibanco:
+ $ref: '#/components/schemas/checkout_multibanco_payment_method_options'
oxxo:
$ref: '#/components/schemas/checkout_oxxo_payment_method_options'
p24:
@@ -6380,6 +6516,7 @@ components:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -7052,6 +7189,18 @@ components:
$ref: '#/components/schemas/payment_method_afterpay_clearpay'
alipay:
$ref: '#/components/schemas/payment_flows_private_payment_methods_alipay'
+ allow_redisplay:
+ description: >-
+ This field indicates whether this payment method can be shown again
+ to its customer in a checkout flow. Stripe products such as Checkout
+ and Elements use this field to determine whether a payment method
+ can be shown as a saved payment method in a checkout flow. The field
+ defaults to “unspecified”.
+ enum:
+ - always
+ - limited
+ - unspecified
+ type: string
amazon_pay:
$ref: '#/components/schemas/payment_method_amazon_pay'
au_becs_debit:
@@ -7094,6 +7243,8 @@ components:
$ref: '#/components/schemas/payment_method_link'
mobilepay:
$ref: '#/components/schemas/payment_method_mobilepay'
+ multibanco:
+ $ref: '#/components/schemas/payment_method_multibanco'
oxxo:
$ref: '#/components/schemas/payment_method_oxxo'
p24:
@@ -7114,6 +7265,8 @@ components:
$ref: '#/components/schemas/payment_method_sofort'
swish:
$ref: '#/components/schemas/payment_method_swish'
+ twint:
+ $ref: '#/components/schemas/payment_method_twint'
type:
description: >-
The type of the PaymentMethod. An additional hash is included on the
@@ -7144,6 +7297,7 @@ components:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -7154,6 +7308,7 @@ components:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -7196,6 +7351,7 @@ components:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -7206,6 +7362,7 @@ components:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -7465,6 +7622,14 @@ components:
Whether to allow payout schedule to be changed. Default `true` when
Stripe owns Loss Liability, default `false` otherwise.
type: boolean
+ external_account_collection:
+ description: >-
+ Whether to allow platforms to control bank account collection for
+ their connected accounts. This feature can only be false for custom
+ accounts (or accounts where the platform is compliance owner).
+ Otherwise, bank account collection is determined by compliance
+ requirements.
+ type: boolean
instant_payouts:
description: >-
Whether to allow creation of instant payouts. Default `true` when
@@ -7477,6 +7642,7 @@ components:
type: boolean
required:
- edit_payout_schedule
+ - external_account_collection
- instant_payouts
- standard_payouts
title: ConnectEmbeddedPayoutsFeatures
@@ -10725,18 +10891,25 @@ components:
properties:
card:
$ref: '#/components/schemas/dispute_payment_method_details_card'
+ klarna:
+ $ref: '#/components/schemas/dispute_payment_method_details_klarna'
+ paypal:
+ $ref: '#/components/schemas/dispute_payment_method_details_paypal'
type:
description: Payment method type.
enum:
- card
+ - klarna
+ - paypal
type: string
- x-stripeBypassValidation: true
required:
- type
title: DisputePaymentMethodDetails
type: object
x-expandableFields:
- card
+ - klarna
+ - paypal
dispute_payment_method_details_card:
description: ''
properties:
@@ -10761,6 +10934,33 @@ components:
title: DisputePaymentMethodDetailsCard
type: object
x-expandableFields: []
+ dispute_payment_method_details_klarna:
+ description: ''
+ properties:
+ reason_code:
+ description: The reason for the dispute as defined by Klarna
+ maxLength: 5000
+ nullable: true
+ type: string
+ title: DisputePaymentMethodDetailsKlarna
+ type: object
+ x-expandableFields: []
+ dispute_payment_method_details_paypal:
+ description: ''
+ properties:
+ case_id:
+ description: The ID of the dispute in PayPal.
+ maxLength: 5000
+ nullable: true
+ type: string
+ reason_code:
+ description: The reason for the dispute as defined by PayPal
+ maxLength: 5000
+ nullable: true
+ type: string
+ title: DisputePaymentMethodDetailsPaypal
+ type: object
+ x-expandableFields: []
email_sent:
description: ''
properties:
@@ -13809,7 +14009,12 @@ components:
perspective of the payment retry schedule. Any payment attempt
counts as the first attempt, and subsequently only automatic retries
increment the attempt count. In other words, manual payment attempts
- after the first attempt do not affect the retry schedule.
+ after the first attempt do not affect the retry schedule. If a
+ failure is returned with a non-retryable return code, the invoice
+ can no longer be retried unless a new payment method is obtained.
+ Retries will continue to be scheduled, and attempt_count will
+ continue to increment, but retries will only be executed if a new
+ payment method is obtained.
type: integer
attempted:
description: >-
@@ -15396,6 +15601,7 @@ components:
- revolut_pay
- sepa_debit
- sofort
+ - swish
- us_bank_account
- wechat_pay
type: string
@@ -15464,8 +15670,8 @@ components:
`ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`,
`sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`,
`is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`,
- `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, or
- `unknown`
+ `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`,
+ `de_stn`, or `unknown`
enum:
- ad_nrt
- ae_trn
@@ -15488,6 +15694,7 @@ components:
- cn_tin
- co_nit
- cr_tin
+ - de_stn
- do_rcn
- ec_ruc
- eg_tin
@@ -16245,6 +16452,33 @@ components:
Has the value `true` if the object exists in live mode or the value
`false` if the object exists in test mode.
type: boolean
+ loss_reason:
+ description: >-
+ The enum that describes the dispute loss outcome. If the dispute is
+ not lost, this field will be absent. New enum values may be added in
+ the future, so be sure to handle unknown values.
+ enum:
+ - cardholder_authentication_issuer_liability
+ - eci5_token_transaction_with_tavv
+ - excess_disputes_in_timeframe
+ - has_not_met_the_minimum_dispute_amount_requirements
+ - invalid_duplicate_dispute
+ - invalid_incorrect_amount_dispute
+ - invalid_no_authorization
+ - invalid_use_of_disputes
+ - merchandise_delivered_or_shipped
+ - merchandise_or_service_as_described
+ - not_cancelled
+ - other
+ - refund_issued
+ - submitted_beyond_allowable_time_limit
+ - transaction_3ds_required
+ - transaction_approved_after_prior_fraud_dispute
+ - transaction_authorized
+ - transaction_electronically_read
+ - transaction_qualifies_for_visa_easy_payment_service
+ - transaction_unattended
+ type: string
metadata:
additionalProperties:
maxLength: 500
@@ -16458,6 +16692,7 @@ components:
- standard
type: string
required:
+ - features
- id
- livemode
- name
@@ -19821,6 +20056,8 @@ components:
merchandise_not_as_described:
$ref: >-
#/components/schemas/issuing_dispute_merchandise_not_as_described_evidence
+ no_valid_authorization:
+ $ref: '#/components/schemas/issuing_dispute_no_valid_authorization_evidence'
not_received:
$ref: '#/components/schemas/issuing_dispute_not_received_evidence'
other:
@@ -19834,6 +20071,7 @@ components:
- duplicate
- fraudulent
- merchandise_not_as_described
+ - no_valid_authorization
- not_received
- other
- service_not_as_described
@@ -19851,6 +20089,7 @@ components:
- duplicate
- fraudulent
- merchandise_not_as_described
+ - no_valid_authorization
- not_received
- other
- service_not_as_described
@@ -19924,6 +20163,30 @@ components:
type: object
x-expandableFields:
- additional_documentation
+ issuing_dispute_no_valid_authorization_evidence:
+ description: ''
+ properties:
+ additional_documentation:
+ anyOf:
+ - maxLength: 5000
+ type: string
+ - $ref: '#/components/schemas/file'
+ description: >-
+ (ID of a [file upload](https://stripe.com/docs/guides/file-upload))
+ Additional documentation supporting the dispute.
+ nullable: true
+ x-expansionResources:
+ oneOf:
+ - $ref: '#/components/schemas/file'
+ explanation:
+ description: Explanation of why the cardholder is disputing this transaction.
+ maxLength: 5000
+ nullable: true
+ type: string
+ title: IssuingDisputeNoValidAuthorizationEvidence
+ type: object
+ x-expandableFields:
+ - additional_documentation
issuing_dispute_not_received_evidence:
description: ''
properties:
@@ -20499,6 +20762,13 @@ components:
issuing_transaction_fuel_data:
description: ''
properties:
+ quantity_decimal:
+ description: >-
+ The quantity of `unit`s of fuel that was dispensed, represented as a
+ decimal string with at most 12 decimal places.
+ format: decimal
+ nullable: true
+ type: string
type:
description: >-
The type of fuel that was purchased. One of `diesel`,
@@ -20507,8 +20777,9 @@ components:
type: string
unit:
description: >-
- The units for `volume_decimal`. One of `liter`, `us_gallon`, or
- `other`.
+ The units for `quantity_decimal`. One of `charging_minute`,
+ `imperial_gallon`, `kilogram`, `kilowatt_hour`, `liter`, `pound`,
+ `us_gallon`, or `other`.
maxLength: 5000
type: string
unit_cost_decimal:
@@ -20517,13 +20788,6 @@ components:
string with at most 12 decimal places.
format: decimal
type: string
- volume_decimal:
- description: >-
- The volume of the fuel that was pumped, represented as a decimal
- string with at most 12 decimal places.
- format: decimal
- nullable: true
- type: string
required:
- type
- unit
@@ -22721,6 +22985,9 @@ components:
#/components/schemas/payment_intent_next_action_display_bank_transfer_instructions
konbini_display_details:
$ref: '#/components/schemas/payment_intent_next_action_konbini'
+ multibanco_display_details:
+ $ref: >-
+ #/components/schemas/payment_intent_next_action_display_multibanco_details
oxxo_display_details:
$ref: '#/components/schemas/payment_intent_next_action_display_oxxo_details'
paynow_display_qr_code:
@@ -22773,6 +23040,7 @@ components:
- cashapp_handle_redirect_or_display_qr_code
- display_bank_transfer_instructions
- konbini_display_details
+ - multibanco_display_details
- oxxo_display_details
- paynow_display_qr_code
- pix_display_qr_code
@@ -22966,6 +23234,34 @@ components:
type: object
x-expandableFields:
- financial_addresses
+ payment_intent_next_action_display_multibanco_details:
+ description: ''
+ properties:
+ entity:
+ description: Entity number associated with this Multibanco payment.
+ maxLength: 5000
+ nullable: true
+ type: string
+ expires_at:
+ description: The timestamp at which the Multibanco voucher expires.
+ format: unix-time
+ nullable: true
+ type: integer
+ hosted_voucher_url:
+ description: >-
+ The URL for the hosted Multibanco voucher page, which allows
+ customers to view a Multibanco voucher.
+ maxLength: 5000
+ nullable: true
+ type: string
+ reference:
+ description: Reference number associated with this Multibanco payment.
+ maxLength: 5000
+ nullable: true
+ type: string
+ title: PaymentIntentNextActionDisplayMultibancoDetails
+ type: object
+ x-expandableFields: []
payment_intent_next_action_display_oxxo_details:
description: ''
properties:
@@ -23507,6 +23803,11 @@ components:
#/components/schemas/payment_intent_payment_method_options_mobilepay
- $ref: >-
#/components/schemas/payment_intent_type_specific_payment_method_options_client
+ multibanco:
+ anyOf:
+ - $ref: '#/components/schemas/payment_method_options_multibanco'
+ - $ref: >-
+ #/components/schemas/payment_intent_type_specific_payment_method_options_client
oxxo:
anyOf:
- $ref: '#/components/schemas/payment_method_options_oxxo'
@@ -23558,6 +23859,11 @@ components:
- $ref: '#/components/schemas/payment_intent_payment_method_options_swish'
- $ref: >-
#/components/schemas/payment_intent_type_specific_payment_method_options_client
+ twint:
+ anyOf:
+ - $ref: '#/components/schemas/payment_method_options_twint'
+ - $ref: >-
+ #/components/schemas/payment_intent_type_specific_payment_method_options_client
us_bank_account:
anyOf:
- $ref: >-
@@ -23601,6 +23907,7 @@ components:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -23611,6 +23918,7 @@ components:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -24187,6 +24495,8 @@ components:
require the CVC to be provided again (i.e. using the cvc_token
parameter).
type: boolean
+ routing:
+ $ref: '#/components/schemas/payment_method_options_card_present_routing'
setup_future_usage:
description: >-
Indicates that you intend to make future payments with this
@@ -24223,6 +24533,7 @@ components:
type: object
x-expandableFields:
- installments
+ - routing
payment_link:
description: >-
A payment link is a shareable URL that will take your customers to a
@@ -24439,6 +24750,7 @@ components:
- klarna
- konbini
- link
+ - mobilepay
- oxxo
- p24
- paynow
@@ -25441,6 +25753,18 @@ components:
$ref: '#/components/schemas/payment_method_afterpay_clearpay'
alipay:
$ref: '#/components/schemas/payment_flows_private_payment_methods_alipay'
+ allow_redisplay:
+ description: >-
+ This field indicates whether this payment method can be shown again
+ to its customer in a checkout flow. Stripe products such as Checkout
+ and Elements use this field to determine whether a payment method
+ can be shown as a saved payment method in a checkout flow. The field
+ defaults to “unspecified”.
+ enum:
+ - always
+ - limited
+ - unspecified
+ type: string
amazon_pay:
$ref: '#/components/schemas/payment_method_amazon_pay'
au_becs_debit:
@@ -25521,6 +25845,8 @@ components:
type: object
mobilepay:
$ref: '#/components/schemas/payment_method_mobilepay'
+ multibanco:
+ $ref: '#/components/schemas/payment_method_multibanco'
object:
description: >-
String representing the object's type. Objects of the same type
@@ -25550,6 +25876,8 @@ components:
$ref: '#/components/schemas/payment_method_sofort'
swish:
$ref: '#/components/schemas/payment_method_swish'
+ twint:
+ $ref: '#/components/schemas/payment_method_twint'
type:
description: >-
The type of the PaymentMethod. An additional hash is included on the
@@ -25580,6 +25908,7 @@ components:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -25590,6 +25919,7 @@ components:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -25637,6 +25967,7 @@ components:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -25648,6 +25979,7 @@ components:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -26009,6 +26341,15 @@ components:
Contains information about card networks that can be used to process
the payment.
nullable: true
+ preferred_locales:
+ description: >-
+ EMV tag 5F2D. Preferred languages specified by the integrated
+ circuit chip.
+ items:
+ maxLength: 5000
+ type: string
+ nullable: true
+ type: array
read_method:
description: How card details were read in this transaction.
enum:
@@ -26321,11 +26662,6 @@ components:
and are not available in this API.
- **Note:** The ability to turn off cards is in limited preview. Please
- [contact us](https://support.stripe.com/contact) if you require this
- functionality.
-
-
Related guides:
- [Payment Method Configurations
@@ -26439,6 +26775,9 @@ components:
mobilepay:
$ref: >-
#/components/schemas/payment_method_config_resource_payment_method_properties
+ multibanco:
+ $ref: >-
+ #/components/schemas/payment_method_config_resource_payment_method_properties
name:
description: The configuration's name.
maxLength: 5000
@@ -26527,6 +26866,7 @@ components:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -26626,6 +26966,8 @@ components:
$ref: '#/components/schemas/payment_method_details_stripe_account'
swish:
$ref: '#/components/schemas/payment_method_details_swish'
+ twint:
+ $ref: '#/components/schemas/payment_method_details_twint'
type:
description: >-
The type of transaction-specific details of the payment method used
@@ -26691,6 +27033,7 @@ components:
- sofort
- stripe_account
- swish
+ - twint
- us_bank_account
- wechat
- wechat_pay
@@ -27311,6 +27654,15 @@ components:
overcapture_supported:
description: Defines whether the authorized amount can be over-captured or not
type: boolean
+ preferred_locales:
+ description: >-
+ EMV tag 5F2D. Preferred languages specified by the integrated
+ circuit chip.
+ items:
+ maxLength: 5000
+ type: string
+ nullable: true
+ type: array
read_method:
description: How card details were read in this transaction.
enum:
@@ -28057,9 +28409,9 @@ components:
`en-DE`, `da-DK`, `en-DK`, `es-ES`, `en-ES`, `fi-FI`, `sv-FI`,
`en-FI`, `en-GB`, `en-IE`, `it-IT`, `en-IT`, `nl-NL`, `en-NL`,
`nb-NO`, `en-NO`, `sv-SE`, `en-SE`, `en-US`, `es-US`, `fr-FR`,
- `en-FR`, `cs-CZ`, `en-CZ`, `el-GR`, `en-GR`, `en-AU`, `en-NZ`,
- `en-CA`, `fr-CA`, `pl-PL`, `en-PL`, `pt-PT`, `en-PT`, `de-CH`,
- `fr-CH`, `it-CH`, or `en-CH`
+ `en-FR`, `cs-CZ`, `en-CZ`, `ro-RO`, `en-RO`, `el-GR`, `en-GR`,
+ `en-AU`, `en-NZ`, `en-CA`, `fr-CA`, `pl-PL`, `en-PL`, `pt-PT`,
+ `en-PT`, `de-CH`, `fr-CH`, `it-CH`, or `en-CH`
maxLength: 5000
nullable: true
type: string
@@ -28118,6 +28470,7 @@ components:
card:
anyOf:
- $ref: '#/components/schemas/internal_card'
+ description: Internal card details
nullable: true
title: payment_method_details_mobilepay
type: object
@@ -28455,6 +28808,12 @@ components:
title: payment_method_details_swish
type: object
x-expandableFields: []
+ payment_method_details_twint:
+ description: ''
+ properties: {}
+ title: payment_method_details_twint
+ type: object
+ x-expandableFields: []
payment_method_details_us_bank_account:
description: ''
properties:
@@ -28944,6 +29303,12 @@ components:
title: payment_method_mobilepay
type: object
x-expandableFields: []
+ payment_method_multibanco:
+ description: ''
+ properties: {}
+ title: payment_method_multibanco
+ type: object
+ x-expandableFields: []
payment_method_options_affirm:
description: ''
properties:
@@ -29333,8 +29698,24 @@ components:
response to verify support.
nullable: true
type: boolean
+ routing:
+ $ref: '#/components/schemas/payment_method_options_card_present_routing'
title: payment_method_options_card_present
type: object
+ x-expandableFields:
+ - routing
+ payment_method_options_card_present_routing:
+ description: ''
+ properties:
+ requested_priority:
+ description: Requested routing priority
+ enum:
+ - domestic
+ - international
+ nullable: true
+ type: string
+ title: payment_method_options_card_present_routing
+ type: object
x-expandableFields: []
payment_method_options_cashapp:
description: ''
@@ -29697,72 +30078,7 @@ components:
title: payment_method_options_konbini
type: object
x-expandableFields: []
- payment_method_options_oxxo:
- description: ''
- properties:
- expires_after_days:
- description: >-
- The number of calendar days before an OXXO invoice expires. For
- example, if you create an OXXO invoice on Monday and you set
- expires_after_days to 2, the OXXO invoice will expire on Wednesday
- at 23:59 America/Mexico_City time.
- type: integer
- setup_future_usage:
- description: >-
- Indicates that you intend to make future payments with this
- PaymentIntent's payment method.
-
-
- Providing this parameter will [attach the payment
- method](https://stripe.com/docs/payments/save-during-payment) to the
- PaymentIntent's Customer, if present, after the PaymentIntent is
- confirmed and any required actions from the user are complete. If no
- Customer was provided, the payment method can still be
- [attached](https://stripe.com/docs/api/payment_methods/attach) to a
- Customer after the transaction completes.
-
-
- When processing card payments, Stripe also uses `setup_future_usage`
- to dynamically optimize your payment flow and comply with regional
- legislation and network rules, such as
- [SCA](https://stripe.com/docs/strong-customer-authentication).
- enum:
- - none
- type: string
- required:
- - expires_after_days
- title: payment_method_options_oxxo
- type: object
- x-expandableFields: []
- payment_method_options_p24:
- description: ''
- properties:
- setup_future_usage:
- description: >-
- Indicates that you intend to make future payments with this
- PaymentIntent's payment method.
-
-
- Providing this parameter will [attach the payment
- method](https://stripe.com/docs/payments/save-during-payment) to the
- PaymentIntent's Customer, if present, after the PaymentIntent is
- confirmed and any required actions from the user are complete. If no
- Customer was provided, the payment method can still be
- [attached](https://stripe.com/docs/api/payment_methods/attach) to a
- Customer after the transaction completes.
-
-
- When processing card payments, Stripe also uses `setup_future_usage`
- to dynamically optimize your payment flow and comply with regional
- legislation and network rules, such as
- [SCA](https://stripe.com/docs/strong-customer-authentication).
- enum:
- - none
- type: string
- title: payment_method_options_p24
- type: object
- x-expandableFields: []
- payment_method_options_paynow:
+ payment_method_options_multibanco:
description: ''
properties:
setup_future_usage:
@@ -29787,35 +30103,19 @@ components:
enum:
- none
type: string
- title: payment_method_options_paynow
+ title: payment_method_options_multibanco
type: object
x-expandableFields: []
- payment_method_options_paypal:
+ payment_method_options_oxxo:
description: ''
properties:
- capture_method:
- description: >-
- Controls when the funds will be captured from the customer's
- account.
- enum:
- - manual
- type: string
- preferred_locale:
- description: >-
- Preferred locale of the PayPal checkout page that the customer is
- redirected to.
- maxLength: 5000
- nullable: true
- type: string
- reference:
+ expires_after_days:
description: >-
- A reference of the PayPal transaction visible to customer which is
- mapped to PayPal's invoice ID. This must be a globally unique ID if
- you have configured in your PayPal settings to block multiple
- payments per invoice ID.
- maxLength: 5000
- nullable: true
- type: string
+ The number of calendar days before an OXXO invoice expires. For
+ example, if you create an OXXO invoice on Monday and you set
+ expires_after_days to 2, the OXXO invoice will expire on Wednesday
+ at 23:59 America/Mexico_City time.
+ type: integer
setup_future_usage:
description: >-
Indicates that you intend to make future payments with this
@@ -29837,24 +30137,15 @@ components:
[SCA](https://stripe.com/docs/strong-customer-authentication).
enum:
- none
- - off_session
type: string
- title: payment_method_options_paypal
+ required:
+ - expires_after_days
+ title: payment_method_options_oxxo
type: object
x-expandableFields: []
- payment_method_options_pix:
+ payment_method_options_p24:
description: ''
properties:
- expires_after_seconds:
- description: >-
- The number of seconds (between 10 and 1209600) after which Pix
- payment will expire.
- nullable: true
- type: integer
- expires_at:
- description: The timestamp at which the Pix expires.
- nullable: true
- type: integer
setup_future_usage:
description: >-
Indicates that you intend to make future payments with this
@@ -29877,10 +30168,10 @@ components:
enum:
- none
type: string
- title: payment_method_options_pix
+ title: payment_method_options_p24
type: object
x-expandableFields: []
- payment_method_options_promptpay:
+ payment_method_options_paynow:
description: ''
properties:
setup_future_usage:
@@ -29905,10 +30196,10 @@ components:
enum:
- none
type: string
- title: payment_method_options_promptpay
+ title: payment_method_options_paynow
type: object
x-expandableFields: []
- payment_method_options_revolut_pay:
+ payment_method_options_paypal:
description: ''
properties:
capture_method:
@@ -29918,134 +30209,280 @@ components:
enum:
- manual
type: string
- setup_future_usage:
- description: >-
- Indicates that you intend to make future payments with this
- PaymentIntent's payment method.
-
-
- Providing this parameter will [attach the payment
- method](https://stripe.com/docs/payments/save-during-payment) to the
- PaymentIntent's Customer, if present, after the PaymentIntent is
- confirmed and any required actions from the user are complete. If no
- Customer was provided, the payment method can still be
- [attached](https://stripe.com/docs/api/payment_methods/attach) to a
- Customer after the transaction completes.
-
-
- When processing card payments, Stripe also uses `setup_future_usage`
- to dynamically optimize your payment flow and comply with regional
- legislation and network rules, such as
- [SCA](https://stripe.com/docs/strong-customer-authentication).
- enum:
- - none
- - off_session
- type: string
- title: payment_method_options_revolut_pay
- type: object
- x-expandableFields: []
- payment_method_options_sofort:
- description: ''
- properties:
- preferred_language:
+ preferred_locale:
description: >-
- Preferred language of the SOFORT authorization page that the
- customer is redirected to.
- enum:
- - de
- - en
- - es
- - fr
- - it
- - nl
- - pl
+ Preferred locale of the PayPal checkout page that the customer is
+ redirected to.
+ maxLength: 5000
nullable: true
type: string
- setup_future_usage:
- description: >-
- Indicates that you intend to make future payments with this
- PaymentIntent's payment method.
-
-
- Providing this parameter will [attach the payment
- method](https://stripe.com/docs/payments/save-during-payment) to the
- PaymentIntent's Customer, if present, after the PaymentIntent is
- confirmed and any required actions from the user are complete. If no
- Customer was provided, the payment method can still be
- [attached](https://stripe.com/docs/api/payment_methods/attach) to a
- Customer after the transaction completes.
-
-
- When processing card payments, Stripe also uses `setup_future_usage`
- to dynamically optimize your payment flow and comply with regional
- legislation and network rules, such as
- [SCA](https://stripe.com/docs/strong-customer-authentication).
- enum:
- - none
- - off_session
- type: string
- title: payment_method_options_sofort
- type: object
- x-expandableFields: []
- payment_method_options_us_bank_account_mandate_options:
- description: ''
- properties:
- collection_method:
- description: Mandate collection method
- enum:
- - paper
- type: string
- x-stripeBypassValidation: true
- title: payment_method_options_us_bank_account_mandate_options
- type: object
- x-expandableFields: []
- payment_method_options_wechat_pay:
- description: ''
- properties:
- app_id:
+ reference:
description: >-
- The app ID registered with WeChat Pay. Only required when client is
- ios or android.
+ A reference of the PayPal transaction visible to customer which is
+ mapped to PayPal's invoice ID. This must be a globally unique ID if
+ you have configured in your PayPal settings to block multiple
+ payments per invoice ID.
maxLength: 5000
nullable: true
type: string
- client:
- description: The client type that the end customer will pay from
- enum:
- - android
- - ios
- - web
- nullable: true
- type: string
- x-stripeBypassValidation: true
- setup_future_usage:
- description: >-
- Indicates that you intend to make future payments with this
- PaymentIntent's payment method.
-
-
- Providing this parameter will [attach the payment
- method](https://stripe.com/docs/payments/save-during-payment) to the
- PaymentIntent's Customer, if present, after the PaymentIntent is
- confirmed and any required actions from the user are complete. If no
- Customer was provided, the payment method can still be
- [attached](https://stripe.com/docs/api/payment_methods/attach) to a
- Customer after the transaction completes.
-
-
- When processing card payments, Stripe also uses `setup_future_usage`
- to dynamically optimize your payment flow and comply with regional
- legislation and network rules, such as
- [SCA](https://stripe.com/docs/strong-customer-authentication).
- enum:
- - none
- type: string
- title: payment_method_options_wechat_pay
- type: object
- x-expandableFields: []
- payment_method_options_zip:
- description: ''
- properties:
+ setup_future_usage:
+ description: >-
+ Indicates that you intend to make future payments with this
+ PaymentIntent's payment method.
+
+
+ Providing this parameter will [attach the payment
+ method](https://stripe.com/docs/payments/save-during-payment) to the
+ PaymentIntent's Customer, if present, after the PaymentIntent is
+ confirmed and any required actions from the user are complete. If no
+ Customer was provided, the payment method can still be
+ [attached](https://stripe.com/docs/api/payment_methods/attach) to a
+ Customer after the transaction completes.
+
+
+ When processing card payments, Stripe also uses `setup_future_usage`
+ to dynamically optimize your payment flow and comply with regional
+ legislation and network rules, such as
+ [SCA](https://stripe.com/docs/strong-customer-authentication).
+ enum:
+ - none
+ - off_session
+ type: string
+ title: payment_method_options_paypal
+ type: object
+ x-expandableFields: []
+ payment_method_options_pix:
+ description: ''
+ properties:
+ expires_after_seconds:
+ description: >-
+ The number of seconds (between 10 and 1209600) after which Pix
+ payment will expire.
+ nullable: true
+ type: integer
+ expires_at:
+ description: The timestamp at which the Pix expires.
+ nullable: true
+ type: integer
+ setup_future_usage:
+ description: >-
+ Indicates that you intend to make future payments with this
+ PaymentIntent's payment method.
+
+
+ Providing this parameter will [attach the payment
+ method](https://stripe.com/docs/payments/save-during-payment) to the
+ PaymentIntent's Customer, if present, after the PaymentIntent is
+ confirmed and any required actions from the user are complete. If no
+ Customer was provided, the payment method can still be
+ [attached](https://stripe.com/docs/api/payment_methods/attach) to a
+ Customer after the transaction completes.
+
+
+ When processing card payments, Stripe also uses `setup_future_usage`
+ to dynamically optimize your payment flow and comply with regional
+ legislation and network rules, such as
+ [SCA](https://stripe.com/docs/strong-customer-authentication).
+ enum:
+ - none
+ type: string
+ title: payment_method_options_pix
+ type: object
+ x-expandableFields: []
+ payment_method_options_promptpay:
+ description: ''
+ properties:
+ setup_future_usage:
+ description: >-
+ Indicates that you intend to make future payments with this
+ PaymentIntent's payment method.
+
+
+ Providing this parameter will [attach the payment
+ method](https://stripe.com/docs/payments/save-during-payment) to the
+ PaymentIntent's Customer, if present, after the PaymentIntent is
+ confirmed and any required actions from the user are complete. If no
+ Customer was provided, the payment method can still be
+ [attached](https://stripe.com/docs/api/payment_methods/attach) to a
+ Customer after the transaction completes.
+
+
+ When processing card payments, Stripe also uses `setup_future_usage`
+ to dynamically optimize your payment flow and comply with regional
+ legislation and network rules, such as
+ [SCA](https://stripe.com/docs/strong-customer-authentication).
+ enum:
+ - none
+ type: string
+ title: payment_method_options_promptpay
+ type: object
+ x-expandableFields: []
+ payment_method_options_revolut_pay:
+ description: ''
+ properties:
+ capture_method:
+ description: >-
+ Controls when the funds will be captured from the customer's
+ account.
+ enum:
+ - manual
+ type: string
+ setup_future_usage:
+ description: >-
+ Indicates that you intend to make future payments with this
+ PaymentIntent's payment method.
+
+
+ Providing this parameter will [attach the payment
+ method](https://stripe.com/docs/payments/save-during-payment) to the
+ PaymentIntent's Customer, if present, after the PaymentIntent is
+ confirmed and any required actions from the user are complete. If no
+ Customer was provided, the payment method can still be
+ [attached](https://stripe.com/docs/api/payment_methods/attach) to a
+ Customer after the transaction completes.
+
+
+ When processing card payments, Stripe also uses `setup_future_usage`
+ to dynamically optimize your payment flow and comply with regional
+ legislation and network rules, such as
+ [SCA](https://stripe.com/docs/strong-customer-authentication).
+ enum:
+ - none
+ - off_session
+ type: string
+ title: payment_method_options_revolut_pay
+ type: object
+ x-expandableFields: []
+ payment_method_options_sofort:
+ description: ''
+ properties:
+ preferred_language:
+ description: >-
+ Preferred language of the SOFORT authorization page that the
+ customer is redirected to.
+ enum:
+ - de
+ - en
+ - es
+ - fr
+ - it
+ - nl
+ - pl
+ nullable: true
+ type: string
+ setup_future_usage:
+ description: >-
+ Indicates that you intend to make future payments with this
+ PaymentIntent's payment method.
+
+
+ Providing this parameter will [attach the payment
+ method](https://stripe.com/docs/payments/save-during-payment) to the
+ PaymentIntent's Customer, if present, after the PaymentIntent is
+ confirmed and any required actions from the user are complete. If no
+ Customer was provided, the payment method can still be
+ [attached](https://stripe.com/docs/api/payment_methods/attach) to a
+ Customer after the transaction completes.
+
+
+ When processing card payments, Stripe also uses `setup_future_usage`
+ to dynamically optimize your payment flow and comply with regional
+ legislation and network rules, such as
+ [SCA](https://stripe.com/docs/strong-customer-authentication).
+ enum:
+ - none
+ - off_session
+ type: string
+ title: payment_method_options_sofort
+ type: object
+ x-expandableFields: []
+ payment_method_options_twint:
+ description: ''
+ properties:
+ setup_future_usage:
+ description: >-
+ Indicates that you intend to make future payments with this
+ PaymentIntent's payment method.
+
+
+ Providing this parameter will [attach the payment
+ method](https://stripe.com/docs/payments/save-during-payment) to the
+ PaymentIntent's Customer, if present, after the PaymentIntent is
+ confirmed and any required actions from the user are complete. If no
+ Customer was provided, the payment method can still be
+ [attached](https://stripe.com/docs/api/payment_methods/attach) to a
+ Customer after the transaction completes.
+
+
+ When processing card payments, Stripe also uses `setup_future_usage`
+ to dynamically optimize your payment flow and comply with regional
+ legislation and network rules, such as
+ [SCA](https://stripe.com/docs/strong-customer-authentication).
+ enum:
+ - none
+ type: string
+ title: payment_method_options_twint
+ type: object
+ x-expandableFields: []
+ payment_method_options_us_bank_account_mandate_options:
+ description: ''
+ properties:
+ collection_method:
+ description: Mandate collection method
+ enum:
+ - paper
+ type: string
+ x-stripeBypassValidation: true
+ title: payment_method_options_us_bank_account_mandate_options
+ type: object
+ x-expandableFields: []
+ payment_method_options_wechat_pay:
+ description: ''
+ properties:
+ app_id:
+ description: >-
+ The app ID registered with WeChat Pay. Only required when client is
+ ios or android.
+ maxLength: 5000
+ nullable: true
+ type: string
+ client:
+ description: The client type that the end customer will pay from
+ enum:
+ - android
+ - ios
+ - web
+ nullable: true
+ type: string
+ x-stripeBypassValidation: true
+ setup_future_usage:
+ description: >-
+ Indicates that you intend to make future payments with this
+ PaymentIntent's payment method.
+
+
+ Providing this parameter will [attach the payment
+ method](https://stripe.com/docs/payments/save-during-payment) to the
+ PaymentIntent's Customer, if present, after the PaymentIntent is
+ confirmed and any required actions from the user are complete. If no
+ Customer was provided, the payment method can still be
+ [attached](https://stripe.com/docs/api/payment_methods/attach) to a
+ Customer after the transaction completes.
+
+
+ When processing card payments, Stripe also uses `setup_future_usage`
+ to dynamically optimize your payment flow and comply with regional
+ legislation and network rules, such as
+ [SCA](https://stripe.com/docs/strong-customer-authentication).
+ enum:
+ - none
+ type: string
+ title: payment_method_options_wechat_pay
+ type: object
+ x-expandableFields: []
+ payment_method_options_zip:
+ description: ''
+ properties:
setup_future_usage:
description: >-
Indicates that you intend to make future payments with this
@@ -30221,6 +30658,12 @@ components:
title: payment_method_swish
type: object
x-expandableFields: []
+ payment_method_twint:
+ description: ''
+ properties: {}
+ title: payment_method_twint
+ type: object
+ x-expandableFields: []
payment_method_us_bank_account:
description: ''
properties:
@@ -30569,6 +31012,11 @@ components:
payment_pages_checkout_session_custom_fields_dropdown:
description: ''
properties:
+ default_value:
+ description: The value that will pre-fill on the payment page.
+ maxLength: 5000
+ nullable: true
+ type: string
options:
description: >-
The options available for the customer to select. Up to 200 options
@@ -30613,6 +31061,11 @@ components:
payment_pages_checkout_session_custom_fields_numeric:
description: ''
properties:
+ default_value:
+ description: The value that will pre-fill the field on the payment page.
+ maxLength: 5000
+ nullable: true
+ type: string
maximum_length:
description: The maximum character length constraint for the customer's input.
nullable: true
@@ -30655,6 +31108,11 @@ components:
payment_pages_checkout_session_custom_fields_text:
description: ''
properties:
+ default_value:
+ description: The value that will pre-fill the field on the payment page.
+ maxLength: 5000
+ nullable: true
+ type: string
maximum_length:
description: The maximum character length constraint for the customer's input.
nullable: true
@@ -30898,9 +31356,10 @@ components:
properties:
allow_redisplay_filters:
description: >-
- Controls which payment methods are eligible to be redisplayed to
- returning customers. Corresponds to `allow_redisplay` on the payment
- method.
+ Uses the `allow_redisplay` value of each saved payment method to
+ filter the set presented to a returning customer. By default, only
+ saved payment methods with ’allow_redisplay: ‘always’ are shown in
+ Checkout.
items:
enum:
- always
@@ -30909,10 +31368,19 @@ components:
type: string
nullable: true
type: array
+ payment_method_remove:
+ description: >-
+ Enable customers to choose if they wish to remove their saved
+ payment methods. Disabled by default.
+ enum:
+ - disabled
+ - enabled
+ nullable: true
+ type: string
payment_method_save:
description: >-
Enable customers to choose if they wish to save their payment method
- for future use.
+ for future use. Disabled by default.
enum:
- disabled
- enabled
@@ -31253,8 +31721,8 @@ components:
`ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`,
`sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`,
`is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`,
- `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, or
- `unknown`
+ `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`,
+ `de_stn`, or `unknown`
enum:
- ad_nrt
- ae_trn
@@ -31277,6 +31745,7 @@ components:
- cn_tin
- co_nit
- cr_tin
+ - de_stn
- do_rcn
- ec_ruc
- eg_tin
@@ -31428,6 +31897,27 @@ components:
The amount (in cents (or local equivalent)) that transfers to your
bank account or debit card.
type: integer
+ application_fee:
+ anyOf:
+ - maxLength: 5000
+ type: string
+ - $ref: '#/components/schemas/application_fee'
+ description: >-
+ The application fee (if any) for the payout. [See the Connect
+ documentation](https://stripe.com/docs/connect/instant-payouts#monetization-and-fees)
+ for details.
+ nullable: true
+ x-expansionResources:
+ oneOf:
+ - $ref: '#/components/schemas/application_fee'
+ application_fee_amount:
+ description: >-
+ The amount of the application fee (if any) requested for the payout.
+ [See the Connect
+ documentation](https://stripe.com/docs/connect/instant-payouts#monetization-and-fees)
+ for details.
+ nullable: true
+ type: integer
arrival_date:
description: >-
Date that you can expect the payout to arrive in the bank. This
@@ -31632,6 +32122,7 @@ components:
title: Payout
type: object
x-expandableFields:
+ - application_fee
- balance_transaction
- destination
- failure_balance_transaction
@@ -32342,39 +32833,28 @@ components:
title: PlanTier
type: object
x-expandableFields: []
- platform_tax_fee:
+ platform_earning_fee_source:
description: ''
properties:
- account:
- description: The Connected account that incurred this charge.
+ charge:
+ description: Charge ID that created this application fee.
maxLength: 5000
type: string
- id:
- description: Unique identifier for the object.
+ payout:
+ description: Payout ID that created this application fee.
maxLength: 5000
type: string
- object:
+ type:
description: >-
- String representing the object's type. Objects of the same type
- share the same value.
+ Type of object that created the application fee, either `charge` or
+ `payout`.
enum:
- - platform_tax_fee
- type: string
- source_transaction:
- description: The payment object that caused this tax to be inflicted.
- maxLength: 5000
- type: string
- type:
- description: The type of tax (VAT).
- maxLength: 5000
+ - charge
+ - payout
type: string
required:
- - account
- - id
- - object
- - source_transaction
- type
- title: PlatformTax
+ title: PlatformEarningFeeSource
type: object
x-expandableFields: []
portal_business_profile:
@@ -33205,6 +33685,7 @@ components:
Extra information about a product which will appear on your
customer's credit card statement. In the case that multiple products
are billed at once, the first statement descriptor will be used.
+ Only used for subscription payments.
maxLength: 5000
nullable: true
type: string
@@ -34727,6 +35208,8 @@ components:
$ref: '#/components/schemas/refund_destination_details_generic'
klarna:
$ref: '#/components/schemas/destination_details_unimplemented'
+ multibanco:
+ $ref: '#/components/schemas/refund_destination_details_generic'
mx_bank_transfer:
$ref: '#/components/schemas/refund_destination_details_generic'
p24:
@@ -34781,6 +35264,7 @@ components:
- grabpay
- jp_bank_transfer
- klarna
+ - multibanco
- mx_bank_transfer
- p24
- paynow
@@ -36981,9 +37465,7 @@ components:
oneOf:
- $ref: '#/components/schemas/tax_code'
type:
- description: >-
- The type of calculation to use on the shipping rate. Can only be
- `fixed_amount` for now.
+ description: The type of calculation to use on the shipping rate.
enum:
- fixed_amount
type: string
@@ -38619,6 +39101,9 @@ components:
description: Unique identifier for the object.
maxLength: 5000
type: string
+ invoice_settings:
+ $ref: >-
+ #/components/schemas/subscriptions_resource_subscription_invoice_settings
items:
description: 'List of subscription items, each with an attached price.'
properties:
@@ -38869,6 +39354,7 @@ components:
- customer
- discounts
- id
+ - invoice_settings
- items
- livemode
- metadata
@@ -38889,6 +39375,7 @@ components:
- default_tax_rates
- discount
- discounts
+ - invoice_settings
- items
- latest_invoice
- on_behalf_of
@@ -39953,6 +40440,7 @@ components:
- revolut_pay
- sepa_debit
- sofort
+ - swish
- us_bank_account
- wechat_pay
type: string
@@ -40026,6 +40514,34 @@ components:
type: object
x-expandableFields:
- subscription_items
+ subscriptions_resource_subscription_invoice_settings:
+ description: ''
+ properties:
+ account_tax_ids:
+ description: >-
+ The account tax IDs associated with the subscription. Will be set on
+ invoices generated by the subscription.
+ items:
+ anyOf:
+ - maxLength: 5000
+ type: string
+ - $ref: '#/components/schemas/tax_id'
+ - $ref: '#/components/schemas/deleted_tax_id'
+ x-expansionResources:
+ oneOf:
+ - $ref: '#/components/schemas/tax_id'
+ - $ref: '#/components/schemas/deleted_tax_id'
+ nullable: true
+ type: array
+ issuer:
+ $ref: '#/components/schemas/connect_account_reference'
+ required:
+ - issuer
+ title: SubscriptionsResourceSubscriptionInvoiceSettings
+ type: object
+ x-expandableFields:
+ - account_tax_ids
+ - issuer
subscriptions_trials_resource_end_behavior:
description: Defines how a subscription behaves when a free trial ends.
properties:
@@ -40836,15 +41352,16 @@ components:
`au_arn`, `bg_uic`, `bh_vat`, `bo_tin`, `br_cnpj`, `br_cpf`,
`ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`,
`ca_qst`, `ch_vat`, `cl_tin`, `cn_tin`, `co_nit`, `cr_tin`,
- `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `eu_oss_vat`, `eu_vat`,
- `gb_vat`, `ge_vat`, `hk_br`, `hu_tin`, `id_npwp`, `il_vat`,
- `in_gst`, `is_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kr_brn`,
- `kz_bin`, `li_uid`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`,
- `ng_tin`, `no_vat`, `no_voec`, `nz_gst`, `om_vat`, `pe_ruc`,
- `ph_tin`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`,
- `sg_gst`, `sg_uen`, `si_tin`, `sv_nit`, `th_vat`, `tr_tin`,
- `tw_vat`, `ua_vat`, `us_ein`, `uy_ruc`, `ve_rif`, `vn_tin`, or
- `za_vat`. Note that some legacy tax IDs have type `unknown`
+ `de_stn`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `eu_oss_vat`,
+ `eu_vat`, `gb_vat`, `ge_vat`, `hk_br`, `hu_tin`, `id_npwp`,
+ `il_vat`, `in_gst`, `is_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`,
+ `kr_brn`, `kz_bin`, `li_uid`, `mx_rfc`, `my_frp`, `my_itn`,
+ `my_sst`, `ng_tin`, `no_vat`, `no_voec`, `nz_gst`, `om_vat`,
+ `pe_ruc`, `ph_tin`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`,
+ `sa_vat`, `sg_gst`, `sg_uen`, `si_tin`, `sv_nit`, `th_vat`,
+ `tr_tin`, `tw_vat`, `ua_vat`, `us_ein`, `uy_ruc`, `ve_rif`,
+ `vn_tin`, or `za_vat`. Note that some legacy tax IDs have type
+ `unknown`
enum:
- ad_nrt
- ae_trn
@@ -40867,6 +41384,7 @@ components:
- cn_tin
- co_nit
- cr_tin
+ - de_stn
- do_rcn
- ec_ruc
- eg_tin
@@ -40988,6 +41506,9 @@ components:
bg:
$ref: >-
#/components/schemas/tax_product_registrations_resource_country_options_europe
+ bh:
+ $ref: >-
+ #/components/schemas/tax_product_registrations_resource_country_options_default
ca:
$ref: >-
#/components/schemas/tax_product_registrations_resource_country_options_canada
@@ -41015,6 +41536,9 @@ components:
ee:
$ref: >-
#/components/schemas/tax_product_registrations_resource_country_options_europe
+ eg:
+ $ref: >-
+ #/components/schemas/tax_product_registrations_resource_country_options_simplified
es:
$ref: >-
#/components/schemas/tax_product_registrations_resource_country_options_europe
@@ -41027,6 +41551,9 @@ components:
gb:
$ref: >-
#/components/schemas/tax_product_registrations_resource_country_options_default
+ ge:
+ $ref: >-
+ #/components/schemas/tax_product_registrations_resource_country_options_simplified
gr:
$ref: >-
#/components/schemas/tax_product_registrations_resource_country_options_europe
@@ -41051,9 +41578,15 @@ components:
jp:
$ref: >-
#/components/schemas/tax_product_registrations_resource_country_options_default
+ ke:
+ $ref: >-
+ #/components/schemas/tax_product_registrations_resource_country_options_simplified
kr:
$ref: >-
#/components/schemas/tax_product_registrations_resource_country_options_simplified
+ kz:
+ $ref: >-
+ #/components/schemas/tax_product_registrations_resource_country_options_simplified
lt:
$ref: >-
#/components/schemas/tax_product_registrations_resource_country_options_europe
@@ -41072,6 +41605,9 @@ components:
my:
$ref: >-
#/components/schemas/tax_product_registrations_resource_country_options_simplified
+ ng:
+ $ref: >-
+ #/components/schemas/tax_product_registrations_resource_country_options_simplified
nl:
$ref: >-
#/components/schemas/tax_product_registrations_resource_country_options_europe
@@ -41081,6 +41617,9 @@ components:
nz:
$ref: >-
#/components/schemas/tax_product_registrations_resource_country_options_default
+ om:
+ $ref: >-
+ #/components/schemas/tax_product_registrations_resource_country_options_default
pl:
$ref: >-
#/components/schemas/tax_product_registrations_resource_country_options_europe
@@ -41128,6 +41667,7 @@ components:
- au
- be
- bg
+ - bh
- ca
- ch
- cl
@@ -41137,10 +41677,12 @@ components:
- de
- dk
- ee
+ - eg
- es
- fi
- fr
- gb
+ - ge
- gr
- hr
- hu
@@ -41149,16 +41691,20 @@ components:
- is
- it
- jp
+ - ke
- kr
+ - kz
- lt
- lu
- lv
- mt
- mx
- my
+ - ng
- nl
- 'no'
- nz
+ - om
- pl
- pt
- ro
@@ -41386,8 +41932,8 @@ components:
`ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`,
`sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`,
`is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`,
- `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, or
- `unknown`
+ `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`,
+ `de_stn`, or `unknown`
enum:
- ad_nrt
- ae_trn
@@ -41410,6 +41956,7 @@ components:
- cn_tin
- co_nit
- cr_tin
+ - de_stn
- do_rcn
- ec_ruc
- eg_tin
@@ -42142,6 +42689,9 @@ components:
offline:
$ref: >-
#/components/schemas/terminal_configuration_configuration_resource_offline_config
+ stripe_s700:
+ $ref: >-
+ #/components/schemas/terminal_configuration_configuration_resource_device_type_specific_config
tipping:
$ref: >-
#/components/schemas/terminal_configuration_configuration_resource_tipping
@@ -42157,6 +42707,7 @@ components:
x-expandableFields:
- bbpos_wisepos_e
- offline
+ - stripe_s700
- tipping
- verifone_p400
x-resourceId: terminal.configuration
@@ -42174,7 +42725,7 @@ components:
The id of the location that this connection token is scoped to. Note
that location scoping only applies to internet-connected readers.
For more details, see [the docs on scoping connection
- tokens](https://stripe.com/docs/terminal/fleet/locations#connection-tokens).
+ tokens](https://docs.stripe.com/terminal/fleet/locations-and-zones?dashboard-or-api=api#connection-tokens).
maxLength: 5000
type: string
object:
@@ -44413,6 +44964,12 @@ components:
status_transitions:
$ref: >-
#/components/schemas/treasury_outbound_payments_resource_outbound_payment_resource_status_transitions
+ tracking_details:
+ anyOf:
+ - $ref: >-
+ #/components/schemas/treasury_outbound_payments_resource_outbound_payment_resource_tracking_details
+ description: Details about network-specific tracking information if available.
+ nullable: true
transaction:
anyOf:
- maxLength: 5000
@@ -44444,6 +45001,7 @@ components:
- end_user_details
- returned_details
- status_transitions
+ - tracking_details
- transaction
x-resourceId: treasury.outbound_payment
treasury.outbound_transfer:
@@ -44573,6 +45131,12 @@ components:
status_transitions:
$ref: >-
#/components/schemas/treasury_outbound_transfers_resource_status_transitions
+ tracking_details:
+ anyOf:
+ - $ref: >-
+ #/components/schemas/treasury_outbound_transfers_resource_outbound_transfer_resource_tracking_details
+ description: Details about network-specific tracking information if available.
+ nullable: true
transaction:
anyOf:
- maxLength: 5000
@@ -44604,6 +45168,7 @@ components:
- destination_payment_method_details
- returned_details
- status_transitions
+ - tracking_details
- transaction
x-resourceId: treasury.outbound_transfer
treasury.received_credit:
@@ -45510,6 +46075,20 @@ components:
title: TreasuryInboundTransfersResourceInboundTransferResourceStatusTransitions
type: object
x-expandableFields: []
+ treasury_outbound_payments_resource_ach_tracking_details:
+ description: ''
+ properties:
+ trace_id:
+ description: >-
+ ACH trace ID of the OutboundPayment for payments sent over the `ach`
+ network.
+ maxLength: 5000
+ type: string
+ required:
+ - trace_id
+ title: TreasuryOutboundPaymentsResourceACHTrackingDetails
+ type: object
+ x-expandableFields: []
treasury_outbound_payments_resource_outbound_payment_resource_end_user_details:
description: ''
properties:
@@ -45566,6 +46145,28 @@ components:
title: TreasuryOutboundPaymentsResourceOutboundPaymentResourceStatusTransitions
type: object
x-expandableFields: []
+ treasury_outbound_payments_resource_outbound_payment_resource_tracking_details:
+ description: ''
+ properties:
+ ach:
+ $ref: >-
+ #/components/schemas/treasury_outbound_payments_resource_ach_tracking_details
+ type:
+ description: The US bank account network used to send funds.
+ enum:
+ - ach
+ - us_domestic_wire
+ type: string
+ us_domestic_wire:
+ $ref: >-
+ #/components/schemas/treasury_outbound_payments_resource_us_domestic_wire_tracking_details
+ required:
+ - type
+ title: TreasuryOutboundPaymentsResourceOutboundPaymentResourceTrackingDetails
+ type: object
+ x-expandableFields:
+ - ach
+ - us_domestic_wire
treasury_outbound_payments_resource_returned_status:
description: ''
properties:
@@ -45599,6 +46200,63 @@ components:
type: object
x-expandableFields:
- transaction
+ treasury_outbound_payments_resource_us_domestic_wire_tracking_details:
+ description: ''
+ properties:
+ imad:
+ description: >-
+ IMAD of the OutboundPayment for payments sent over the
+ `us_domestic_wire` network.
+ maxLength: 5000
+ type: string
+ omad:
+ description: >-
+ OMAD of the OutboundPayment for payments sent over the
+ `us_domestic_wire` network.
+ maxLength: 5000
+ nullable: true
+ type: string
+ required:
+ - imad
+ title: TreasuryOutboundPaymentsResourceUSDomesticWireTrackingDetails
+ type: object
+ x-expandableFields: []
+ treasury_outbound_transfers_resource_ach_tracking_details:
+ description: ''
+ properties:
+ trace_id:
+ description: >-
+ ACH trace ID of the OutboundTransfer for transfers sent over the
+ `ach` network.
+ maxLength: 5000
+ type: string
+ required:
+ - trace_id
+ title: TreasuryOutboundTransfersResourceACHTrackingDetails
+ type: object
+ x-expandableFields: []
+ treasury_outbound_transfers_resource_outbound_transfer_resource_tracking_details:
+ description: ''
+ properties:
+ ach:
+ $ref: >-
+ #/components/schemas/treasury_outbound_transfers_resource_ach_tracking_details
+ type:
+ description: The US bank account network used to send funds.
+ enum:
+ - ach
+ - us_domestic_wire
+ type: string
+ us_domestic_wire:
+ $ref: >-
+ #/components/schemas/treasury_outbound_transfers_resource_us_domestic_wire_tracking_details
+ required:
+ - type
+ title: TreasuryOutboundTransfersResourceOutboundTransferResourceTrackingDetails
+ type: object
+ x-expandableFields:
+ - ach
+ - us_domestic_wire
treasury_outbound_transfers_resource_returned_details:
description: ''
properties:
@@ -45666,6 +46324,27 @@ components:
title: TreasuryOutboundTransfersResourceStatusTransitions
type: object
x-expandableFields: []
+ treasury_outbound_transfers_resource_us_domestic_wire_tracking_details:
+ description: ''
+ properties:
+ imad:
+ description: >-
+ IMAD of the OutboundTransfer for transfers sent over the
+ `us_domestic_wire` network.
+ maxLength: 5000
+ type: string
+ omad:
+ description: >-
+ OMAD of the OutboundTransfer for transfers sent over the
+ `us_domestic_wire` network.
+ maxLength: 5000
+ nullable: true
+ type: string
+ required:
+ - imad
+ title: TreasuryOutboundTransfersResourceUSDomesticWireTrackingDetails
+ type: object
+ x-expandableFields: []
treasury_received_credits_resource_linked_flows:
description: ''
properties:
@@ -46302,7 +46981,7 @@ info:
details.
termsOfService: 'https://stripe.com/us/terms/'
title: Stripe API
- version: '2024-04-10'
+ version: '2024-06-20'
x-stripeSpecFilename: spec3
openapi: 3.0.0
paths:
@@ -46512,6 +47191,8 @@ paths:
properties:
edit_payout_schedule:
type: boolean
+ external_account_collection:
+ type: boolean
instant_payouts:
type: boolean
standard_payouts:
@@ -46596,6 +47277,8 @@ paths:
properties:
edit_payout_schedule:
type: boolean
+ external_account_collection:
+ type: boolean
instant_payouts:
type: boolean
standard_payouts:
@@ -47107,6 +47790,12 @@ paths:
type: boolean
title: capability_param
type: object
+ gb_bank_transfer_payments:
+ properties:
+ requested:
+ type: boolean
+ title: capability_param
+ type: object
giropay_payments:
properties:
requested:
@@ -47137,6 +47826,12 @@ paths:
type: boolean
title: capability_param
type: object
+ jp_bank_transfer_payments:
+ properties:
+ requested:
+ type: boolean
+ title: capability_param
+ type: object
klarna_payments:
properties:
requested:
@@ -47167,6 +47862,18 @@ paths:
type: boolean
title: capability_param
type: object
+ multibanco_payments:
+ properties:
+ requested:
+ type: boolean
+ title: capability_param
+ type: object
+ mx_bank_transfer_payments:
+ properties:
+ requested:
+ type: boolean
+ title: capability_param
+ type: object
oxxo_payments:
properties:
requested:
@@ -47197,6 +47904,12 @@ paths:
type: boolean
title: capability_param
type: object
+ sepa_bank_transfer_payments:
+ properties:
+ requested:
+ type: boolean
+ title: capability_param
+ type: object
sepa_debit_payments:
properties:
requested:
@@ -47239,12 +47952,24 @@ paths:
type: boolean
title: capability_param
type: object
+ twint_payments:
+ properties:
+ requested:
+ type: boolean
+ title: capability_param
+ type: object
us_bank_account_ach_payments:
properties:
requested:
type: boolean
title: capability_param
type: object
+ us_bank_transfer_payments:
+ properties:
+ requested:
+ type: boolean
+ title: capability_param
+ type: object
zip_payments:
properties:
requested:
@@ -47283,7 +48008,7 @@ paths:
state:
maxLength: 5000
type: string
- title: address_specs
+ title: legal_entity_and_kyc_address_specs
type: object
address_kana:
properties:
@@ -47998,7 +48723,8 @@ paths:
Agreement](/connect/updating-accounts#tos-acceptance). This
property can only be updated for accounts where
[controller.requirement_collection](/api/accounts/object#account_object-controller-requirement_collection)
- is `application`, which includes Custom accounts.
+ is `application`, which includes Custom accounts. This
+ property defaults to a `full` service agreement when empty.
properties:
date:
format: unix-time
@@ -48427,6 +49153,12 @@ paths:
type: boolean
title: capability_param
type: object
+ gb_bank_transfer_payments:
+ properties:
+ requested:
+ type: boolean
+ title: capability_param
+ type: object
giropay_payments:
properties:
requested:
@@ -48457,6 +49189,12 @@ paths:
type: boolean
title: capability_param
type: object
+ jp_bank_transfer_payments:
+ properties:
+ requested:
+ type: boolean
+ title: capability_param
+ type: object
klarna_payments:
properties:
requested:
@@ -48487,6 +49225,18 @@ paths:
type: boolean
title: capability_param
type: object
+ multibanco_payments:
+ properties:
+ requested:
+ type: boolean
+ title: capability_param
+ type: object
+ mx_bank_transfer_payments:
+ properties:
+ requested:
+ type: boolean
+ title: capability_param
+ type: object
oxxo_payments:
properties:
requested:
@@ -48517,6 +49267,12 @@ paths:
type: boolean
title: capability_param
type: object
+ sepa_bank_transfer_payments:
+ properties:
+ requested:
+ type: boolean
+ title: capability_param
+ type: object
sepa_debit_payments:
properties:
requested:
@@ -48559,12 +49315,24 @@ paths:
type: boolean
title: capability_param
type: object
+ twint_payments:
+ properties:
+ requested:
+ type: boolean
+ title: capability_param
+ type: object
us_bank_account_ach_payments:
properties:
requested:
type: boolean
title: capability_param
type: object
+ us_bank_transfer_payments:
+ properties:
+ requested:
+ type: boolean
+ title: capability_param
+ type: object
zip_payments:
properties:
requested:
@@ -48603,7 +49371,7 @@ paths:
state:
maxLength: 5000
type: string
- title: address_specs
+ title: legal_entity_and_kyc_address_specs
type: object
address_kana:
properties:
@@ -49276,7 +50044,8 @@ paths:
Agreement](/connect/updating-accounts#tos-acceptance). This
property can only be updated for accounts where
[controller.requirement_collection](/api/accounts/object#account_object-controller-requirement_collection)
- is `application`, which includes Custom accounts.
+ is `application`, which includes Custom accounts. This
+ property defaults to a `full` service agreement when empty.
properties:
date:
format: unix-time
@@ -49877,7 +50646,7 @@ paths:
If a capability isn't permanent, you can remove it from the
- account by passing false. Most capabilities are permanent
+ account by passing false. Some capabilities are permanent
after they've been requested. Attempting to remove a
permanent capability returns an error.
type: boolean
@@ -50704,7 +51473,7 @@ paths:
state:
maxLength: 5000
type: string
- title: address_specs
+ title: legal_entity_and_kyc_address_specs
type: object
address_kana:
description: The Kana variation of the person's address (Japan only).
@@ -51235,7 +52004,7 @@ paths:
state:
maxLength: 5000
type: string
- title: address_specs
+ title: legal_entity_and_kyc_address_specs
type: object
address_kana:
description: The Kana variation of the person's address (Japan only).
@@ -51796,7 +52565,7 @@ paths:
state:
maxLength: 5000
type: string
- title: address_specs
+ title: legal_entity_and_kyc_address_specs
type: object
address_kana:
description: The Kana variation of the person's address (Japan only).
@@ -52327,7 +53096,7 @@ paths:
state:
maxLength: 5000
type: string
- title: address_specs
+ title: legal_entity_and_kyc_address_specs
type: object
address_kana:
description: The Kana variation of the person's address (Japan only).
@@ -58002,6 +58771,9 @@ paths:
properties:
dropdown:
properties:
+ default_value:
+ maxLength: 100
+ type: string
options:
items:
properties:
@@ -58040,6 +58812,9 @@ paths:
type: object
numeric:
properties:
+ default_value:
+ maxLength: 255
+ type: string
maximum_length:
type: integer
minimum_length:
@@ -58050,6 +58825,9 @@ paths:
type: boolean
text:
properties:
+ default_value:
+ maxLength: 255
+ type: string
maximum_length:
type: integer
minimum_length:
@@ -58942,6 +59720,14 @@ paths:
type: string
title: payment_method_options_param
type: object
+ multibanco:
+ properties:
+ setup_future_usage:
+ enum:
+ - none
+ type: string
+ title: payment_method_options_param
+ type: object
oxxo:
properties:
expires_after_days:
@@ -59171,6 +59957,7 @@ paths:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -59181,6 +59968,7 @@ paths:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -59732,7 +60520,7 @@ paths:
maxLength: 5000
type: string
tax_id_collection:
- description: Controls tax ID collection settings for the session.
+ description: Controls tax ID collection during checkout.
properties:
enabled:
type: boolean
@@ -60308,7 +61096,7 @@ paths:
'/v1/climate/orders/{order}/cancel':
post:
description: >-
- Cancels a Climate order. You can cancel an order within 30 days of
+
Cancels a Climate order. You can cancel an order within 24 hours of
creation. Stripe refunds the
reservation amount_subtotal
, but not the
@@ -62184,9 +62972,8 @@ paths:
get:
description: >-
When retrieving a credit note, you’ll get a lines
- property containing the the first handful of those items. There is also
- a URL where you can retrieve the full (paginated) list of line
- items.
+ property containing the first handful of those items. There is also a
+ URL where you can retrieve the full (paginated) list of line items.
operationId: GetCreditNotesCreditNoteLines
parameters:
- in: path
@@ -62976,6 +63763,7 @@ paths:
- cn_tin
- co_nit
- cr_tin
+ - de_stn
- do_rcn
- ec_ruc
- eg_tin
@@ -65785,6 +66573,7 @@ paths:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -65795,6 +66584,7 @@ paths:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -67364,6 +68154,7 @@ paths:
- revolut_pay
- sepa_debit
- sofort
+ - swish
- us_bank_account
- wechat_pay
type: string
@@ -68431,6 +69222,7 @@ paths:
- revolut_pay
- sepa_debit
- sofort
+ - swish
- us_bank_account
- wechat_pay
type: string
@@ -68819,15 +69611,16 @@ paths:
`au_abn`, `au_arn`, `bg_uic`, `bh_vat`, `bo_tin`, `br_cnpj`,
`br_cpf`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`,
`ca_pst_sk`, `ca_qst`, `ch_vat`, `cl_tin`, `cn_tin`,
- `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`,
- `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`, `hk_br`,
- `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `jp_cn`,
- `jp_rn`, `jp_trn`, `ke_pin`, `kr_brn`, `kz_bin`, `li_uid`,
- `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`,
- `no_voec`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `ro_tin`,
- `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`,
- `si_tin`, `sv_nit`, `th_vat`, `tr_tin`, `tw_vat`, `ua_vat`,
- `us_ein`, `uy_ruc`, `ve_rif`, `vn_tin`, or `za_vat`
+ `co_nit`, `cr_tin`, `de_stn`, `do_rcn`, `ec_ruc`, `eg_tin`,
+ `es_cif`, `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`,
+ `hk_br`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`,
+ `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kr_brn`, `kz_bin`,
+ `li_uid`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`,
+ `no_vat`, `no_voec`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`,
+ `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`,
+ `sg_uen`, `si_tin`, `sv_nit`, `th_vat`, `tr_tin`, `tw_vat`,
+ `ua_vat`, `us_ein`, `uy_ruc`, `ve_rif`, `vn_tin`, or
+ `za_vat`
enum:
- ad_nrt
- ae_trn
@@ -68850,6 +69643,7 @@ paths:
- cn_tin
- co_nit
- cr_tin
+ - de_stn
- do_rcn
- ec_ruc
- eg_tin
@@ -69581,6 +70375,15 @@ paths:
description: Retrieve a list of features
operationId: GetEntitlementsFeatures
parameters:
+ - description: >-
+ If set, filter results to only include features with the given
+ archive status.
+ in: query
+ name: archived
+ required: false
+ schema:
+ type: boolean
+ style: form
- description: >-
A cursor for use in pagination. `ending_before` is an object ID that
defines your place in the list. For instance, if you make a list
@@ -69614,6 +70417,16 @@ paths:
schema:
type: integer
style: form
+ - description: >-
+ If set, filter results to only include features with the given
+ lookup_key.
+ in: query
+ name: lookup_key
+ required: false
+ schema:
+ maxLength: 5000
+ type: string
+ style: form
- description: >-
A cursor for use in pagination. `starting_after` is an object ID
that defines your place in the list. For instance, if you make a
@@ -69822,13 +70635,17 @@ paths:
type: string
type: array
metadata:
- additionalProperties:
- type: string
+ anyOf:
+ - additionalProperties:
+ type: string
+ type: object
+ - enum:
+ - ''
+ type: string
description: >-
Set of key-value pairs that you can attach to an object.
This can be useful for storing additional information about
the object in a structured format.
- type: object
name:
description: >-
The feature's name, for your own purpose, not meant to be
@@ -71541,8 +72358,6 @@ paths:
maxLength: 5000
type: string
type: array
- required:
- - countries
title: filters_params
type: object
permissions:
@@ -73208,13 +74023,16 @@ paths:
title: period
type: object
price:
- description: The ID of the price object.
+ description: >-
+ The ID of the price object. One of `price` or `price_data`
+ is required.
maxLength: 5000
type: string
price_data:
description: >-
Data used to generate a new
[Price](https://stripe.com/docs/api/prices) object inline.
+ One of `price` or `price_data` is required.
properties:
currency:
type: string
@@ -73245,8 +74063,8 @@ paths:
subscription:
description: >-
The ID of a subscription to add this invoice item to. When
- left blank, the invoice item will be be added to the next
- upcoming scheduled invoice. When set, scheduled invoices for
+ left blank, the invoice item is added to the next upcoming
+ scheduled invoice. When set, scheduled invoices for
subscriptions other than the specified subscription will
ignore the invoice item. Use this when you want to express
that an invoice item has been accrued within the context of
@@ -73528,13 +74346,16 @@ paths:
title: period
type: object
price:
- description: The ID of the price object.
+ description: >-
+ The ID of the price object. One of `price` or `price_data`
+ is required.
maxLength: 5000
type: string
price_data:
description: >-
Data used to generate a new
[Price](https://stripe.com/docs/api/prices) object inline.
+ One of `price` or `price_data` is required.
properties:
currency:
type: string
@@ -74339,6 +75160,7 @@ paths:
- revolut_pay
- sepa_debit
- sofort
+ - swish
- us_bank_account
- wechat_pay
type: string
@@ -74594,7 +75416,13 @@ paths:
to get only the prorations being previewed is to consider only proration
line items where period[start]
is equal to the
subscription_details.proration_date
value passed in the
- request.
+ request.
+
+
+ Note: Currency conversion calculations use the latest exchange rates.
+ Exchange rates may vary between the time of the preview and the time of
+ the actual invoice creation. Learn more
operationId: PostInvoicesCreatePreview
requestBody:
content:
@@ -74788,6 +75616,7 @@ paths:
- cn_tin
- co_nit
- cr_tin
+ - de_stn
- do_rcn
- ec_ruc
- eg_tin
@@ -75028,6 +75857,14 @@ paths:
account. See the [Invoices with
Connect](https://stripe.com/docs/billing/invoices/connect)
documentation for details.
+ preview_mode:
+ description: >-
+ Customizes the types of values to include when calculating
+ the invoice. Defaults to `next` if unspecified.
+ enum:
+ - next
+ - recurring
+ type: string
schedule:
description: >-
The identifier of the schedule whose upcoming invoice you'd
@@ -75382,11 +76219,11 @@ paths:
description: >-
The identifier of the subscription for which you'd like to
retrieve the upcoming invoice. If not provided, but a
- `subscription_items` is provided, you will preview creating
- a subscription with those items. If neither `subscription`
- nor `subscription_items` is provided, you will retrieve the
- next upcoming invoice from among the customer's
- subscriptions.
+ `subscription_details.items` is provided, you will preview
+ creating a subscription with those items. If neither
+ `subscription` nor `subscription_details.items` is provided,
+ you will retrieve the next upcoming invoice from among the
+ customer's subscriptions.
maxLength: 5000
type: string
subscription_details:
@@ -75713,6 +76550,12 @@ paths:
line items where period[start]
is equal to the
subscription_details.proration_date
value passed in the
request.
+
+
+ Note: Currency conversion calculations use the latest exchange rates.
+ Exchange rates may vary between the time of the preview and the time of
+ the actual invoice creation. Learn more
operationId: GetInvoicesUpcoming
parameters:
- description: Settings for automatic tax lookup for this invoice preview.
@@ -75892,6 +76735,7 @@ paths:
- cn_tin
- co_nit
- cr_tin
+ - de_stn
- do_rcn
- ec_ruc
- eg_tin
@@ -76156,6 +77000,18 @@ paths:
- ''
type: string
style: deepObject
+ - description: >-
+ Customizes the types of values to include when calculating the
+ invoice. Defaults to `next` if unspecified.
+ in: query
+ name: preview_mode
+ required: false
+ schema:
+ enum:
+ - next
+ - recurring
+ type: string
+ style: form
- description: >-
The identifier of the schedule whose upcoming invoice you'd like to
retrieve. Cannot be used with subscription or subscription fields.
@@ -76516,11 +77372,11 @@ paths:
style: deepObject
- description: >-
The identifier of the subscription for which you'd like to retrieve
- the upcoming invoice. If not provided, but a `subscription_items` is
- provided, you will preview creating a subscription with those items.
- If neither `subscription` nor `subscription_items` is provided, you
- will retrieve the next upcoming invoice from among the customer's
- subscriptions.
+ the upcoming invoice. If not provided, but a
+ `subscription_details.items` is provided, you will preview creating
+ a subscription with those items. If neither `subscription` nor
+ `subscription_details.items` is provided, you will retrieve the next
+ upcoming invoice from among the customer's subscriptions.
in: query
name: subscription
required: false
@@ -77186,6 +78042,7 @@ paths:
- cn_tin
- co_nit
- cr_tin
+ - de_stn
- do_rcn
- ec_ruc
- eg_tin
@@ -77472,6 +78329,18 @@ paths:
- ''
type: string
style: deepObject
+ - description: >-
+ Customizes the types of values to include when calculating the
+ invoice. Defaults to `next` if unspecified.
+ in: query
+ name: preview_mode
+ required: false
+ schema:
+ enum:
+ - next
+ - recurring
+ type: string
+ style: form
- description: >-
The identifier of the schedule whose upcoming invoice you'd like to
retrieve. Cannot be used with subscription or subscription fields.
@@ -77845,11 +78714,11 @@ paths:
style: form
- description: >-
The identifier of the subscription for which you'd like to retrieve
- the upcoming invoice. If not provided, but a `subscription_items` is
- provided, you will preview creating a subscription with those items.
- If neither `subscription` nor `subscription_items` is provided, you
- will retrieve the next upcoming invoice from among the customer's
- subscriptions.
+ the upcoming invoice. If not provided, but a
+ `subscription_details.items` is provided, you will preview creating
+ a subscription with those items. If neither `subscription` nor
+ `subscription_details.items` is provided, you will retrieve the next
+ upcoming invoice from among the customer's subscriptions.
in: query
name: subscription
required: false
@@ -78976,6 +79845,7 @@ paths:
- revolut_pay
- sepa_debit
- sofort
+ - swish
- us_bank_account
- wechat_pay
type: string
@@ -79523,13 +80393,16 @@ paths:
title: period
type: object
price:
- description: The ID of the price object.
+ description: >-
+ The ID of the price object. One of `price` or `price_data`
+ is required.
maxLength: 5000
type: string
price_data:
description: >-
Data used to generate a new
[Price](https://stripe.com/docs/api/prices) object inline.
+ One of `price` or `price_data` is required.
properties:
currency:
type: string
@@ -85793,6 +86666,27 @@ paths:
- enum:
- ''
type: string
+ no_valid_authorization:
+ anyOf:
+ - properties:
+ additional_documentation:
+ anyOf:
+ - type: string
+ - enum:
+ - ''
+ type: string
+ explanation:
+ anyOf:
+ - maxLength: 1500
+ type: string
+ - enum:
+ - ''
+ type: string
+ title: no_valid_authorization
+ type: object
+ - enum:
+ - ''
+ type: string
not_received:
anyOf:
- properties:
@@ -85874,6 +86768,7 @@ paths:
- duplicate
- fraudulent
- merchandise_not_as_described
+ - no_valid_authorization
- not_received
- other
- service_not_as_described
@@ -86243,6 +87138,27 @@ paths:
- enum:
- ''
type: string
+ no_valid_authorization:
+ anyOf:
+ - properties:
+ additional_documentation:
+ anyOf:
+ - type: string
+ - enum:
+ - ''
+ type: string
+ explanation:
+ anyOf:
+ - maxLength: 1500
+ type: string
+ - enum:
+ - ''
+ type: string
+ title: no_valid_authorization
+ type: object
+ - enum:
+ - ''
+ type: string
not_received:
anyOf:
- properties:
@@ -86324,6 +87240,7 @@ paths:
- duplicate
- fraudulent
- merchandise_not_as_described
+ - no_valid_authorization
- not_received
- other
- service_not_as_described
@@ -87136,135 +88053,6 @@ paths:
schema:
$ref: '#/components/schemas/error'
description: Error response.
- /v1/issuing/settlements:
- get:
- description: >-
- Returns a list of Issuing Settlement
objects. The
- objects are sorted in descending order by creation date, with the most
- recently created object appearing first.
- operationId: GetIssuingSettlements
- parameters:
- - description: >-
- Only return issuing settlements that were created during the given
- date interval.
- explode: true
- in: query
- name: created
- required: false
- schema:
- anyOf:
- - properties:
- gt:
- type: integer
- gte:
- type: integer
- lt:
- type: integer
- lte:
- type: integer
- title: range_query_specs
- type: object
- - type: integer
- style: deepObject
- - description: >-
- A cursor for use in pagination. `ending_before` is an object ID that
- defines your place in the list. For instance, if you make a list
- request and receive 100 objects, starting with `obj_bar`, your
- subsequent call can include `ending_before=obj_bar` in order to
- fetch the previous page of the list.
- in: query
- name: ending_before
- required: false
- schema:
- maxLength: 5000
- type: string
- style: form
- - description: Specifies which fields in the response should be expanded.
- explode: true
- in: query
- name: expand
- required: false
- schema:
- items:
- maxLength: 5000
- type: string
- type: array
- style: deepObject
- - description: >-
- A limit on the number of objects to be returned. Limit can range
- between 1 and 100, and the default is 10.
- in: query
- name: limit
- required: false
- schema:
- type: integer
- style: form
- - description: >-
- A cursor for use in pagination. `starting_after` is an object ID
- that defines your place in the list. For instance, if you make a
- list request and receive 100 objects, ending with `obj_foo`, your
- subsequent call can include `starting_after=obj_foo` in order to
- fetch the next page of the list.
- in: query
- name: starting_after
- required: false
- schema:
- maxLength: 5000
- type: string
- style: form
- requestBody:
- content:
- application/x-www-form-urlencoded:
- encoding: {}
- schema:
- additionalProperties: false
- properties: {}
- type: object
- required: false
- responses:
- '200':
- content:
- application/json:
- schema:
- description: ''
- properties:
- data:
- items:
- $ref: '#/components/schemas/issuing.settlement'
- type: array
- has_more:
- description: >-
- True if this list has another page of items after this one
- that can be fetched.
- type: boolean
- object:
- description: >-
- String representing the object's type. Objects of the same
- type share the same value. Always has the value `list`.
- enum:
- - list
- type: string
- url:
- description: The URL where this list can be accessed.
- maxLength: 5000
- pattern: ^/v1/issuing/settlements
- type: string
- required:
- - data
- - has_more
- - object
- - url
- title: IssuingSettlementList
- type: object
- x-expandableFields:
- - data
- description: Successful response.
- default:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/error'
- description: Error response.
'/v1/issuing/settlements/{settlement}':
get:
description: Retrieves an Issuing Settlement
object.
@@ -87940,8 +88728,6 @@ paths:
maxLength: 5000
type: string
type: array
- required:
- - countries
title: filters_params
type: object
permissions:
@@ -89219,6 +90005,10 @@ paths:
properties: {}
title: param
type: object
+ multibanco:
+ properties: {}
+ title: param
+ type: object
oxxo:
properties: {}
title: param
@@ -89312,6 +90102,10 @@ paths:
properties: {}
title: param
type: object
+ twint:
+ properties: {}
+ title: param
+ type: object
type:
enum:
- acss_debit
@@ -89335,6 +90129,7 @@ paths:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -89345,6 +90140,7 @@ paths:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -89830,6 +90626,15 @@ paths:
type: boolean
request_incremental_authorization_support:
type: boolean
+ routing:
+ properties:
+ requested_priority:
+ enum:
+ - domestic
+ - international
+ type: string
+ title: routing_payment_method_options_param
+ type: object
title: payment_method_options_param
type: object
- enum:
@@ -90014,6 +90819,7 @@ paths:
- en-NZ
- en-PL
- en-PT
+ - en-RO
- en-SE
- en-US
- es-ES
@@ -90030,6 +90836,7 @@ paths:
- nl-NL
- pl-PL
- pt-PT
+ - ro-RO
- sv-FI
- sv-SE
type: string
@@ -90119,6 +90926,18 @@ paths:
- enum:
- ''
type: string
+ multibanco:
+ anyOf:
+ - properties:
+ setup_future_usage:
+ enum:
+ - none
+ type: string
+ title: payment_method_options_param
+ type: object
+ - enum:
+ - ''
+ type: string
oxxo:
anyOf:
- properties:
@@ -90320,6 +91139,18 @@ paths:
- enum:
- ''
type: string
+ twint:
+ anyOf:
+ - properties:
+ setup_future_usage:
+ enum:
+ - none
+ type: string
+ title: payment_method_options_param
+ type: object
+ - enum:
+ - ''
+ type: string
us_bank_account:
anyOf:
- properties:
@@ -91235,6 +92066,10 @@ paths:
properties: {}
title: param
type: object
+ multibanco:
+ properties: {}
+ title: param
+ type: object
oxxo:
properties: {}
title: param
@@ -91328,6 +92163,10 @@ paths:
properties: {}
title: param
type: object
+ twint:
+ properties: {}
+ title: param
+ type: object
type:
enum:
- acss_debit
@@ -91351,6 +92190,7 @@ paths:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -91361,6 +92201,7 @@ paths:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -91846,6 +92687,15 @@ paths:
type: boolean
request_incremental_authorization_support:
type: boolean
+ routing:
+ properties:
+ requested_priority:
+ enum:
+ - domestic
+ - international
+ type: string
+ title: routing_payment_method_options_param
+ type: object
title: payment_method_options_param
type: object
- enum:
@@ -92030,6 +92880,7 @@ paths:
- en-NZ
- en-PL
- en-PT
+ - en-RO
- en-SE
- en-US
- es-ES
@@ -92046,6 +92897,7 @@ paths:
- nl-NL
- pl-PL
- pt-PT
+ - ro-RO
- sv-FI
- sv-SE
type: string
@@ -92135,6 +92987,18 @@ paths:
- enum:
- ''
type: string
+ multibanco:
+ anyOf:
+ - properties:
+ setup_future_usage:
+ enum:
+ - none
+ type: string
+ title: payment_method_options_param
+ type: object
+ - enum:
+ - ''
+ type: string
oxxo:
anyOf:
- properties:
@@ -92336,6 +93200,18 @@ paths:
- enum:
- ''
type: string
+ twint:
+ anyOf:
+ - properties:
+ setup_future_usage:
+ enum:
+ - none
+ type: string
+ title: payment_method_options_param
+ type: object
+ - enum:
+ - ''
+ type: string
us_bank_account:
anyOf:
- properties:
@@ -93398,6 +94274,10 @@ paths:
properties: {}
title: param
type: object
+ multibanco:
+ properties: {}
+ title: param
+ type: object
oxxo:
properties: {}
title: param
@@ -93491,6 +94371,10 @@ paths:
properties: {}
title: param
type: object
+ twint:
+ properties: {}
+ title: param
+ type: object
type:
enum:
- acss_debit
@@ -93514,6 +94398,7 @@ paths:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -93524,6 +94409,7 @@ paths:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -94009,6 +94895,15 @@ paths:
type: boolean
request_incremental_authorization_support:
type: boolean
+ routing:
+ properties:
+ requested_priority:
+ enum:
+ - domestic
+ - international
+ type: string
+ title: routing_payment_method_options_param
+ type: object
title: payment_method_options_param
type: object
- enum:
@@ -94193,6 +95088,7 @@ paths:
- en-NZ
- en-PL
- en-PT
+ - en-RO
- en-SE
- en-US
- es-ES
@@ -94209,6 +95105,7 @@ paths:
- nl-NL
- pl-PL
- pt-PT
+ - ro-RO
- sv-FI
- sv-SE
type: string
@@ -94298,6 +95195,18 @@ paths:
- enum:
- ''
type: string
+ multibanco:
+ anyOf:
+ - properties:
+ setup_future_usage:
+ enum:
+ - none
+ type: string
+ title: payment_method_options_param
+ type: object
+ - enum:
+ - ''
+ type: string
oxxo:
anyOf:
- properties:
@@ -94499,6 +95408,18 @@ paths:
- enum:
- ''
type: string
+ twint:
+ anyOf:
+ - properties:
+ setup_future_usage:
+ enum:
+ - none
+ type: string
+ title: payment_method_options_param
+ type: object
+ - enum:
+ - ''
+ type: string
us_bank_account:
anyOf:
- properties:
@@ -95633,6 +96554,7 @@ paths:
- klarna
- konbini
- link
+ - mobilepay
- oxxo
- p24
- paynow
@@ -96148,6 +97070,9 @@ paths:
subscription_data:
explode: true
style: deepObject
+ tax_id_collection:
+ explode: true
+ style: deepObject
schema:
additionalProperties: false
properties:
@@ -96594,6 +97519,7 @@ paths:
- klarna
- konbini
- link
+ - mobilepay
- oxxo
- p24
- paynow
@@ -96945,6 +97871,15 @@ paths:
type: string
title: subscription_data_update_params
type: object
+ tax_id_collection:
+ description: Controls tax ID collection during checkout.
+ properties:
+ enabled:
+ type: boolean
+ required:
+ - enabled
+ title: tax_id_collection_params
+ type: object
type: object
required: false
responses:
@@ -97283,6 +98218,9 @@ paths:
mobilepay:
explode: true
style: deepObject
+ multibanco:
+ explode: true
+ style: deepObject
oxxo:
explode: true
style: deepObject
@@ -97897,6 +98835,26 @@ paths:
type: object
title: payment_method_param
type: object
+ multibanco:
+ description: >-
+ Stripe users in Europe and the United States can accept
+ Multibanco payments from customers in Portugal using
+ [Sources](https://stripe.com/docs/sources)—a single
+ integration path for creating payments using any supported
+ method.
+ properties:
+ display_preference:
+ properties:
+ preference:
+ enum:
+ - none
+ - 'off'
+ - 'on'
+ type: string
+ title: display_preference_param
+ type: object
+ title: payment_method_param
+ type: object
name:
description: Configuration name.
maxLength: 100
@@ -98324,6 +99282,9 @@ paths:
mobilepay:
explode: true
style: deepObject
+ multibanco:
+ explode: true
+ style: deepObject
oxxo:
explode: true
style: deepObject
@@ -98941,6 +99902,26 @@ paths:
type: object
title: payment_method_param
type: object
+ multibanco:
+ description: >-
+ Stripe users in Europe and the United States can accept
+ Multibanco payments from customers in Portugal using
+ [Sources](https://stripe.com/docs/sources)—a single
+ integration path for creating payments using any supported
+ method.
+ properties:
+ display_preference:
+ properties:
+ preference:
+ enum:
+ - none
+ - 'off'
+ - 'on'
+ type: string
+ title: display_preference_param
+ type: object
+ title: payment_method_param
+ type: object
name:
description: Configuration name.
maxLength: 100
@@ -99633,6 +100614,7 @@ paths:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -99643,6 +100625,7 @@ paths:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -99797,6 +100780,9 @@ paths:
mobilepay:
explode: true
style: deepObject
+ multibanco:
+ explode: true
+ style: deepObject
oxxo:
explode: true
style: deepObject
@@ -99830,6 +100816,9 @@ paths:
swish:
explode: true
style: deepObject
+ twint:
+ explode: true
+ style: deepObject
us_bank_account:
explode: true
style: deepObject
@@ -100263,6 +101252,13 @@ paths:
properties: {}
title: param
type: object
+ multibanco:
+ description: >-
+ If this is a `multibanco` PaymentMethod, this hash contains
+ details about the Multibanco payment method.
+ properties: {}
+ title: param
+ type: object
oxxo:
description: >-
If this is an `oxxo` PaymentMethod, this hash contains
@@ -100394,6 +101390,13 @@ paths:
properties: {}
title: param
type: object
+ twint:
+ description: >-
+ If this is a TWINT PaymentMethod, this hash contains details
+ about the TWINT payment method.
+ properties: {}
+ title: param
+ type: object
type:
description: >-
The type of the PaymentMethod. An additional hash is
@@ -100423,6 +101426,7 @@ paths:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -100433,6 +101437,7 @@ paths:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -101670,6 +102675,7 @@ paths:
active:
type: boolean
id:
+ deprecated: true
maxLength: 5000
type: string
metadata:
@@ -102036,7 +103042,9 @@ paths:
schema:
type: integer
style: form
- - description: 'Only return the price with these lookup_keys, if any exist.'
+ - description: >-
+ Only return the price with these lookup_keys, if any exist. You can
+ specify up to 10 lookup_keys.
explode: true
in: query
name: lookup_keys
@@ -102338,6 +103346,7 @@ paths:
active:
type: boolean
id:
+ deprecated: true
maxLength: 5000
type: string
metadata:
@@ -103218,7 +104227,7 @@ paths:
may not include `<`, `>`, `\`, `"`, `'` characters, and will
appear on your customer's statement in capital letters.
Non-ASCII characters are automatically stripped.
- It must contain at least one letter.
+ It must contain at least one letter. Only used for subscription payments.
maxLength: 22
type: string
tax_code:
@@ -103614,7 +104623,7 @@ paths:
may not include `<`, `>`, `\`, `"`, `'` characters, and will
appear on your customer's statement in capital letters.
Non-ASCII characters are automatically stripped.
- It must contain at least one letter. May only be set if `type=service`.
+ It must contain at least one letter. May only be set if `type=service`. Only used for subscription payments.
maxLength: 22
type: string
tax_code:
@@ -109055,6 +110064,10 @@ paths:
properties: {}
title: param
type: object
+ multibanco:
+ properties: {}
+ title: param
+ type: object
oxxo:
properties: {}
title: param
@@ -109148,6 +110161,10 @@ paths:
properties: {}
title: param
type: object
+ twint:
+ properties: {}
+ title: param
+ type: object
type:
enum:
- acss_debit
@@ -109171,6 +110188,7 @@ paths:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -109181,6 +110199,7 @@ paths:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -110028,6 +111047,10 @@ paths:
properties: {}
title: param
type: object
+ multibanco:
+ properties: {}
+ title: param
+ type: object
oxxo:
properties: {}
title: param
@@ -110121,6 +111144,10 @@ paths:
properties: {}
title: param
type: object
+ twint:
+ properties: {}
+ title: param
+ type: object
type:
enum:
- acss_debit
@@ -110144,6 +111171,7 @@ paths:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -110154,6 +111182,7 @@ paths:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -110505,7 +111534,9 @@ paths:
After you cancel it, setup is abandoned and any operations on the
- SetupIntent fail with an error.
+ SetupIntent fail with an error. You can’t cancel the SetupIntent for a
+ Checkout Session. Expire
+ the Checkout Session instead.
operationId: PostSetupIntentsIntentCancel
parameters:
- in: path
@@ -110994,6 +112025,10 @@ paths:
properties: {}
title: param
type: object
+ multibanco:
+ properties: {}
+ title: param
+ type: object
oxxo:
properties: {}
title: param
@@ -111087,6 +112122,10 @@ paths:
properties: {}
title: param
type: object
+ twint:
+ properties: {}
+ title: param
+ type: object
type:
enum:
- acss_debit
@@ -111110,6 +112149,7 @@ paths:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -111120,6 +112160,7 @@ paths:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -111807,9 +112848,7 @@ paths:
The Shipping tax code is `txcd_92010001`.
type: string
type:
- description: >-
- The type of calculation to use on the shipping rate. Can
- only be `fixed_amount` for now.
+ description: The type of calculation to use on the shipping rate.
enum:
- fixed_amount
type: string
@@ -113687,15 +114726,17 @@ paths:
type: string
price:
description: >-
- The ID of the price object. When changing a subscription
- item's price, `quantity` is set to 1 unless a `quantity`
- parameter is provided.
+ The ID of the price object. One of `price` or `price_data`
+ is required. When changing a subscription item's price,
+ `quantity` is set to 1 unless a `quantity` parameter is
+ provided.
maxLength: 5000
type: string
price_data:
description: >-
Data used to generate a new
[Price](https://stripe.com/docs/api/prices) object inline.
+ One of `price` or `price_data` is required.
properties:
currency:
type: string
@@ -116476,6 +117517,7 @@ paths:
- revolut_pay
- sepa_debit
- sofort
+ - swish
- us_bank_account
- wechat_pay
type: string
@@ -116817,12 +117859,13 @@ paths:
description: >-
Will generate a final invoice that invoices for any
un-invoiced metered usage and new/pending proration invoice
- items.
+ items. Defaults to `true`.
type: boolean
prorate:
description: >-
Will generate a proration invoice item that credits
remaining unused time until the subscription period end.
+ Defaults to `false`.
type: boolean
type: object
required: false
@@ -117749,6 +118792,7 @@ paths:
- revolut_pay
- sepa_debit
- sofort
+ - swish
- us_bank_account
- wechat_pay
type: string
@@ -118144,6 +119188,7 @@ paths:
- cn_tin
- co_nit
- cr_tin
+ - de_stn
- do_rcn
- ec_ruc
- eg_tin
@@ -118343,8 +119388,8 @@ paths:
'/v1/tax/calculations/{calculation}/line_items':
get:
description: >-
- Retrieves the line items of a persisted tax calculation as a
- collection.
+ Retrieves the line items of a tax calculation as a collection, if the
+ calculation hasn’t expired.
operationId: GetTaxCalculationsCalculationLineItems
parameters:
- in: path
@@ -118704,6 +119749,16 @@ paths:
- type
title: europe
type: object
+ bh:
+ properties:
+ type:
+ enum:
+ - standard
+ type: string
+ required:
+ - type
+ title: default
+ type: object
ca:
properties:
province_standard:
@@ -118875,6 +119930,16 @@ paths:
- type
title: europe
type: object
+ eg:
+ properties:
+ type:
+ enum:
+ - simplified
+ type: string
+ required:
+ - type
+ title: simplified
+ type: object
es:
properties:
standard:
@@ -118957,6 +120022,16 @@ paths:
- type
title: default
type: object
+ ge:
+ properties:
+ type:
+ enum:
+ - simplified
+ type: string
+ required:
+ - type
+ title: simplified
+ type: object
gr:
properties:
standard:
@@ -119107,6 +120182,16 @@ paths:
- type
title: default
type: object
+ ke:
+ properties:
+ type:
+ enum:
+ - simplified
+ type: string
+ required:
+ - type
+ title: simplified
+ type: object
kr:
properties:
type:
@@ -119117,6 +120202,16 @@ paths:
- type
title: simplified
type: object
+ kz:
+ properties:
+ type:
+ enum:
+ - simplified
+ type: string
+ required:
+ - type
+ title: simplified
+ type: object
lt:
properties:
standard:
@@ -119233,6 +120328,16 @@ paths:
- type
title: simplified
type: object
+ ng:
+ properties:
+ type:
+ enum:
+ - simplified
+ type: string
+ required:
+ - type
+ title: simplified
+ type: object
nl:
properties:
standard:
@@ -119277,6 +120382,16 @@ paths:
- type
title: default
type: object
+ om:
+ properties:
+ type:
+ enum:
+ - standard
+ type: string
+ required:
+ - type
+ title: default
+ type: object
pl:
properties:
standard:
@@ -119804,7 +120919,9 @@ paths:
description: Error response.
/v1/tax/transactions/create_from_calculation:
post:
- description: Creates a Tax Transaction
from a calculation.
+ description: >-
+ Creates a Tax Transaction from a calculation, if that calculation
+ hasn’t expired. Calculations expire after 90 days.
operationId: PostTaxTransactionsCreateFromCalculation
requestBody:
content:
@@ -120489,15 +121606,16 @@ paths:
`au_abn`, `au_arn`, `bg_uic`, `bh_vat`, `bo_tin`, `br_cnpj`,
`br_cpf`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`,
`ca_pst_sk`, `ca_qst`, `ch_vat`, `cl_tin`, `cn_tin`,
- `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`,
- `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`, `hk_br`,
- `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `jp_cn`,
- `jp_rn`, `jp_trn`, `ke_pin`, `kr_brn`, `kz_bin`, `li_uid`,
- `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`,
- `no_voec`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `ro_tin`,
- `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`,
- `si_tin`, `sv_nit`, `th_vat`, `tr_tin`, `tw_vat`, `ua_vat`,
- `us_ein`, `uy_ruc`, `ve_rif`, `vn_tin`, or `za_vat`
+ `co_nit`, `cr_tin`, `de_stn`, `do_rcn`, `ec_ruc`, `eg_tin`,
+ `es_cif`, `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`,
+ `hk_br`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`,
+ `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kr_brn`, `kz_bin`,
+ `li_uid`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`,
+ `no_vat`, `no_voec`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`,
+ `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`,
+ `sg_uen`, `si_tin`, `sv_nit`, `th_vat`, `tr_tin`, `tw_vat`,
+ `ua_vat`, `us_ein`, `uy_ruc`, `ve_rif`, `vn_tin`, or
+ `za_vat`
enum:
- ad_nrt
- ae_trn
@@ -120520,6 +121638,7 @@ paths:
- cn_tin
- co_nit
- cr_tin
+ - de_stn
- do_rcn
- ec_ruc
- eg_tin
@@ -121227,6 +122346,9 @@ paths:
offline:
explode: true
style: deepObject
+ stripe_s700:
+ explode: true
+ style: deepObject
tipping:
explode: true
style: deepObject
@@ -121272,6 +122394,19 @@ paths:
- ''
type: string
description: Configurations for collecting transactions offline.
+ stripe_s700:
+ description: >-
+ An object containing device type specific settings for
+ Stripe S700 readers
+ properties:
+ splashscreen:
+ anyOf:
+ - type: string
+ - enum:
+ - ''
+ type: string
+ title: stripe_s700
+ type: object
tipping:
anyOf:
- properties:
@@ -121609,6 +122744,9 @@ paths:
offline:
explode: true
style: deepObject
+ stripe_s700:
+ explode: true
+ style: deepObject
tipping:
explode: true
style: deepObject
@@ -121658,6 +122796,23 @@ paths:
- ''
type: string
description: Configurations for collecting transactions offline.
+ stripe_s700:
+ anyOf:
+ - properties:
+ splashscreen:
+ anyOf:
+ - type: string
+ - enum:
+ - ''
+ type: string
+ title: stripe_s700
+ type: object
+ - enum:
+ - ''
+ type: string
+ description: >-
+ An object containing device type specific settings for
+ Stripe S700 readers
tipping:
anyOf:
- properties:
@@ -121929,7 +123084,7 @@ paths:
connection token will be usable with all readers. Note that
location scoping only applies to internet-connected readers.
For more details, see [the docs on scoping connection
- tokens](https://stripe.com/docs/terminal/fleet/locations#connection-tokens).
+ tokens](https://docs.stripe.com/terminal/fleet/locations-and-zones?dashboard-or-api=api#connection-tokens).
maxLength: 5000
type: string
type: object
@@ -122264,7 +123419,12 @@ paths:
additionalProperties: false
properties:
address:
- description: The full address of the location.
+ description: >-
+ The full address of the location. If you're updating the
+ `address` field, avoid changing the `country`. If you need
+ to modify the `country` field, create a new `Location`
+ object and re-register any existing readers to that
+ location.
properties:
city:
maxLength: 5000
@@ -123386,6 +124546,10 @@ paths:
properties: {}
title: param
type: object
+ multibanco:
+ properties: {}
+ title: param
+ type: object
oxxo:
properties: {}
title: param
@@ -123479,6 +124643,10 @@ paths:
properties: {}
title: param
type: object
+ twint:
+ properties: {}
+ title: param
+ type: object
type:
enum:
- acss_debit
@@ -123502,6 +124670,7 @@ paths:
- konbini
- link
- mobilepay
+ - multibanco
- oxxo
- p24
- paynow
@@ -123512,6 +124681,7 @@ paths:
- sepa_debit
- sofort
- swish
+ - twint
- us_bank_account
- wechat_pay
- zip
@@ -124302,6 +125472,9 @@ paths:
type: object
fuel:
properties:
+ quantity_decimal:
+ format: decimal
+ type: string
type:
enum:
- diesel
@@ -124313,17 +125486,19 @@ paths:
type: string
unit:
enum:
+ - charging_minute
+ - imperial_gallon
+ - kilogram
+ - kilowatt_hour
- liter
- other
+ - pound
- us_gallon
maxLength: 5000
type: string
unit_cost_decimal:
format: decimal
type: string
- volume_decimal:
- format: decimal
- type: string
title: fuel_specs
type: object
lodging:
@@ -125302,6 +126477,9 @@ paths:
type: object
fuel:
properties:
+ quantity_decimal:
+ format: decimal
+ type: string
type:
enum:
- diesel
@@ -125313,17 +126491,19 @@ paths:
type: string
unit:
enum:
+ - charging_minute
+ - imperial_gallon
+ - kilogram
+ - kilowatt_hour
- liter
- other
+ - pound
- us_gallon
maxLength: 5000
type: string
unit_cost_decimal:
format: decimal
type: string
- volume_decimal:
- format: decimal
- type: string
title: fuel_specs
type: object
lodging:
@@ -125803,6 +126983,9 @@ paths:
type: object
fuel:
properties:
+ quantity_decimal:
+ format: decimal
+ type: string
type:
enum:
- diesel
@@ -125814,17 +126997,19 @@ paths:
type: string
unit:
enum:
+ - charging_minute
+ - imperial_gallon
+ - kilogram
+ - kilowatt_hour
- liter
- other
+ - pound
- us_gallon
maxLength: 5000
type: string
unit_cost_decimal:
format: decimal
type: string
- volume_decimal:
- format: decimal
- type: string
title: fuel_specs
type: object
lodging:
@@ -126491,6 +127676,88 @@ paths:
schema:
$ref: '#/components/schemas/error'
description: Error response.
+ '/v1/test_helpers/treasury/outbound_payments/{id}':
+ post:
+ description: >-
+ Updates a test mode created OutboundPayment with tracking details.
+ The OutboundPayment must not be cancelable, and cannot be in the
+ canceled
or failed
states.
+ operationId: PostTestHelpersTreasuryOutboundPaymentsId
+ parameters:
+ - in: path
+ name: id
+ required: true
+ schema:
+ maxLength: 5000
+ type: string
+ style: simple
+ requestBody:
+ content:
+ application/x-www-form-urlencoded:
+ encoding:
+ expand:
+ explode: true
+ style: deepObject
+ tracking_details:
+ explode: true
+ style: deepObject
+ schema:
+ additionalProperties: false
+ properties:
+ expand:
+ description: Specifies which fields in the response should be expanded.
+ items:
+ maxLength: 5000
+ type: string
+ type: array
+ tracking_details:
+ description: Details about network-specific tracking information.
+ properties:
+ ach:
+ properties:
+ trace_id:
+ maxLength: 5000
+ type: string
+ required:
+ - trace_id
+ title: ach_tracking_details_params
+ type: object
+ type:
+ enum:
+ - ach
+ - us_domestic_wire
+ type: string
+ us_domestic_wire:
+ properties:
+ imad:
+ maxLength: 5000
+ type: string
+ omad:
+ maxLength: 5000
+ type: string
+ title: us_domestic_wire_tracking_details_params
+ type: object
+ required:
+ - type
+ title: tracking_details_params
+ type: object
+ required:
+ - tracking_details
+ type: object
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/treasury.outbound_payment'
+ description: Successful response.
+ default:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/error'
+ description: Error response.
'/v1/test_helpers/treasury/outbound_payments/{id}/fail':
post:
description: >-
@@ -126618,7 +127885,7 @@ paths:
type: string
type: array
returned_details:
- description: Optional hash to set the the return code.
+ description: Optional hash to set the return code.
properties:
code:
enum:
@@ -126650,6 +127917,88 @@ paths:
schema:
$ref: '#/components/schemas/error'
description: Error response.
+ '/v1/test_helpers/treasury/outbound_transfers/{outbound_transfer}':
+ post:
+ description: >-
+ Updates a test mode created OutboundTransfer with tracking details.
+ The OutboundTransfer must not be cancelable, and cannot be in the
+ canceled
or failed
states.
+ operationId: PostTestHelpersTreasuryOutboundTransfersOutboundTransfer
+ parameters:
+ - in: path
+ name: outbound_transfer
+ required: true
+ schema:
+ maxLength: 5000
+ type: string
+ style: simple
+ requestBody:
+ content:
+ application/x-www-form-urlencoded:
+ encoding:
+ expand:
+ explode: true
+ style: deepObject
+ tracking_details:
+ explode: true
+ style: deepObject
+ schema:
+ additionalProperties: false
+ properties:
+ expand:
+ description: Specifies which fields in the response should be expanded.
+ items:
+ maxLength: 5000
+ type: string
+ type: array
+ tracking_details:
+ description: Details about network-specific tracking information.
+ properties:
+ ach:
+ properties:
+ trace_id:
+ maxLength: 5000
+ type: string
+ required:
+ - trace_id
+ title: ach_tracking_details_params
+ type: object
+ type:
+ enum:
+ - ach
+ - us_domestic_wire
+ type: string
+ us_domestic_wire:
+ properties:
+ imad:
+ maxLength: 5000
+ type: string
+ omad:
+ maxLength: 5000
+ type: string
+ title: us_domestic_wire_tracking_details_params
+ type: object
+ required:
+ - type
+ title: tracking_details_params
+ type: object
+ required:
+ - tracking_details
+ type: object
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/treasury.outbound_transfer'
+ description: Successful response.
+ default:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/error'
+ description: Error response.
'/v1/test_helpers/treasury/outbound_transfers/{outbound_transfer}/fail':
post:
description: >-
@@ -127080,7 +128429,7 @@ paths:
state:
maxLength: 5000
type: string
- title: address_specs
+ title: legal_entity_and_kyc_address_specs
type: object
address_kana:
properties:
@@ -127622,7 +128971,7 @@ paths:
state:
maxLength: 5000
type: string
- title: address_specs
+ title: legal_entity_and_kyc_address_specs
type: object
address_kana:
properties:
@@ -128765,8 +130114,7 @@ paths:
description:
description: >-
An arbitrary string which you can attach to a reversal
- object. It is displayed alongside the reversal in the
- Dashboard. This will be unset if you POST an empty value.
+ object. This will be unset if you POST an empty value.
maxLength: 5000
type: string
expand:
@@ -132439,6 +133787,7 @@ paths:
- '2023-08-16'
- '2023-10-16'
- '2024-04-10'
+ - '2024-06-20'
maxLength: 5000
type: string
x-stripeBypassValidation: true
@@ -132573,6 +133922,10 @@ paths:
- issuing_dispute.funds_reinstated
- issuing_dispute.submitted
- issuing_dispute.updated
+ - issuing_personalization_design.activated
+ - issuing_personalization_design.deactivated
+ - issuing_personalization_design.rejected
+ - issuing_personalization_design.updated
- issuing_token.created
- issuing_token.updated
- issuing_transaction.created
@@ -132681,12 +134034,14 @@ paths:
- treasury.outbound_payment.failed
- treasury.outbound_payment.posted
- treasury.outbound_payment.returned
+ - treasury.outbound_payment.tracking_details_updated
- treasury.outbound_transfer.canceled
- treasury.outbound_transfer.created
- treasury.outbound_transfer.expected_arrival_date_updated
- treasury.outbound_transfer.failed
- treasury.outbound_transfer.posted
- treasury.outbound_transfer.returned
+ - treasury.outbound_transfer.tracking_details_updated
- treasury.received_credit.created
- treasury.received_credit.failed
- treasury.received_credit.succeeded
@@ -132979,6 +134334,10 @@ paths:
- issuing_dispute.funds_reinstated
- issuing_dispute.submitted
- issuing_dispute.updated
+ - issuing_personalization_design.activated
+ - issuing_personalization_design.deactivated
+ - issuing_personalization_design.rejected
+ - issuing_personalization_design.updated
- issuing_token.created
- issuing_token.updated
- issuing_transaction.created
@@ -133087,12 +134446,14 @@ paths:
- treasury.outbound_payment.failed
- treasury.outbound_payment.posted
- treasury.outbound_payment.returned
+ - treasury.outbound_payment.tracking_details_updated
- treasury.outbound_transfer.canceled
- treasury.outbound_transfer.created
- treasury.outbound_transfer.expected_arrival_date_updated
- treasury.outbound_transfer.failed
- treasury.outbound_transfer.posted
- treasury.outbound_transfer.returned
+ - treasury.outbound_transfer.tracking_details_updated
- treasury.received_credit.created
- treasury.received_credit.failed
- treasury.received_credit.succeeded
diff --git a/packages/openapi-typescript/package.json b/packages/openapi-typescript/package.json
index a708bf16f..e984bcd9d 100644
--- a/packages/openapi-typescript/package.json
+++ b/packages/openapi-typescript/package.json
@@ -1,7 +1,7 @@
{
"name": "openapi-typescript",
"description": "Convert OpenAPI 3.0 & 3.1 schemas to TypeScript",
- "version": "7.0.0-rc.0",
+ "version": "7.0.0",
"author": {
"name": "Drew Powers",
"email": "drew@pow.rs"
@@ -60,7 +60,7 @@
"typescript": "^5.x"
},
"dependencies": {
- "@redocly/openapi-core": "^1.12.2",
+ "@redocly/openapi-core": "^1.16.0",
"ansi-colors": "^4.1.3",
"parse-json": "^8.1.0",
"supports-color": "^9.4.0",
@@ -69,7 +69,7 @@
"devDependencies": {
"@types/degit": "^2.8.6",
"@types/js-yaml": "^4.0.9",
- "@types/node": "^20.12.12",
+ "@types/node": "^20.14.6",
"degit": "^2.8.4",
"del-cli": "^5.1.0",
"esbuild": "^0.20.2",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 45ecb8570..078710120 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -31,17 +31,20 @@ importers:
devDependencies:
vitepress:
specifier: 1.1.4
- version: 1.1.4(@algolia/client-search@4.23.3)(@types/node@20.12.12)(@types/react@18.3.1)(axios@1.6.8)(postcss@8.4.38)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.13.0)(typescript@5.4.5)
+ version: 1.1.4(@algolia/client-search@4.23.3)(@types/node@20.14.6)(@types/react@18.3.1)(axios@1.7.2)(postcss@8.4.38)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.13.0)(typescript@5.4.5)
packages/openapi-fetch:
dependencies:
+ nanoid:
+ specifier: ^5.0.7
+ version: 5.0.7
openapi-typescript-helpers:
specifier: workspace:^
version: link:../openapi-typescript-helpers
devDependencies:
axios:
- specifier: ^1.6.8
- version: 1.6.8
+ specifier: ^1.7.2
+ version: 1.7.2
del-cli:
specifier: ^5.1.0
version: 5.1.0
@@ -52,11 +55,11 @@ importers:
specifier: ^8.0.1
version: 8.0.1
msw:
- specifier: ^2.3.0
- version: 2.3.0(typescript@5.4.5)
+ specifier: ^2.3.1
+ version: 2.3.1(typescript@5.4.5)
openapi-typescript:
- specifier: ^6.x
- version: 6.7.6
+ specifier: workspace:^
+ version: link:../openapi-typescript
openapi-typescript-codegen:
specifier: ^0.25.0
version: 0.25.0
@@ -71,7 +74,7 @@ importers:
version: 5.4.5
vitest:
specifier: ^1.6.0
- version: 1.6.0(@types/node@20.12.12)(jsdom@20.0.3(supports-color@9.4.0))(supports-color@9.4.0)
+ version: 1.6.0(@types/node@20.14.6)(jsdom@20.0.3(supports-color@9.4.0))(supports-color@9.4.0)
packages/openapi-fetch/examples/nextjs:
dependencies:
@@ -89,8 +92,8 @@ importers:
version: 18.3.1(react@18.3.1)
devDependencies:
'@types/node':
- specifier: 20.12.12
- version: 20.12.12
+ specifier: 20.14.6
+ version: 20.14.6
'@types/react':
specifier: 18.3.1
version: 18.3.1
@@ -130,13 +133,13 @@ importers:
version: 18.3.0
'@vitejs/plugin-react-swc':
specifier: ^3.6.0
- version: 3.6.0(@swc/helpers@0.5.5)(vite@5.2.11(@types/node@20.12.12))
+ version: 3.6.0(@swc/helpers@0.5.5)(vite@5.2.11(@types/node@20.14.6))
typescript:
specifier: ^5.4.5
version: 5.4.5
vite:
specifier: ^5.2.11
- version: 5.2.11(@types/node@20.12.12)
+ version: 5.2.11(@types/node@20.14.6)
packages/openapi-fetch/examples/sveltekit:
dependencies:
@@ -146,13 +149,13 @@ importers:
devDependencies:
'@sveltejs/adapter-auto':
specifier: ^3.2.0
- version: 3.2.0(@sveltejs/kit@2.5.8(@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12)))(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12)))
+ version: 3.2.0(@sveltejs/kit@2.5.8(@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6)))(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6)))
'@sveltejs/kit':
specifier: ^2.5.8
- version: 2.5.8(@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12)))(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12))
+ version: 2.5.8(@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6)))(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6))
'@sveltejs/vite-plugin-svelte':
specifier: ^3.1.0
- version: 3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12))
+ version: 3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6))
openapi-typescript:
specifier: workspace:^
version: link:../../../openapi-typescript
@@ -170,7 +173,7 @@ importers:
version: 5.4.5
vite:
specifier: ^5.2.11
- version: 5.2.11(@types/node@20.12.12)
+ version: 5.2.11(@types/node@20.14.6)
packages/openapi-fetch/examples/vue-3:
dependencies:
@@ -185,11 +188,11 @@ importers:
specifier: ^20.1.4
version: 20.1.4
'@types/node':
- specifier: ^20.12.12
- version: 20.12.12
+ specifier: ^20.14.6
+ version: 20.14.6
'@vitejs/plugin-vue':
specifier: ^5.0.4
- version: 5.0.4(vite@5.2.11(@types/node@20.12.12))(vue@3.4.27(typescript@5.4.5))
+ version: 5.0.4(vite@5.2.11(@types/node@20.14.6))(vue@3.4.27(typescript@5.4.5))
'@vue/tsconfig':
specifier: ^0.5.1
version: 0.5.1
@@ -201,7 +204,7 @@ importers:
version: 5.4.5
vite:
specifier: ^5.2.11
- version: 5.2.11(@types/node@20.12.12)
+ version: 5.2.11(@types/node@20.14.6)
vue-tsc:
specifier: ^2.0.19
version: 2.0.19(typescript@5.4.5)
@@ -209,8 +212,8 @@ importers:
packages/openapi-typescript:
dependencies:
'@redocly/openapi-core':
- specifier: ^1.12.2
- version: 1.12.2
+ specifier: ^1.16.0
+ version: 1.16.0(supports-color@9.4.0)
ansi-colors:
specifier: ^4.1.3
version: 4.1.3
@@ -231,8 +234,8 @@ importers:
specifier: ^4.0.9
version: 4.0.9
'@types/node':
- specifier: ^20.12.12
- version: 20.12.12
+ specifier: ^20.14.6
+ version: 20.14.6
degit:
specifier: ^2.8.4
version: 2.8.4
@@ -253,10 +256,10 @@ importers:
version: 5.4.5
vite-node:
specifier: ^1.6.0
- version: 1.6.0(@types/node@20.12.12)(supports-color@9.4.0)
+ version: 1.6.0(@types/node@20.14.6)(supports-color@9.4.0)
vitest:
specifier: ^1.6.0
- version: 1.6.0(@types/node@20.12.12)(jsdom@20.0.3(supports-color@9.4.0))(supports-color@9.4.0)
+ version: 1.6.0(@types/node@20.14.6)(jsdom@20.0.3(supports-color@9.4.0))(supports-color@9.4.0)
packages/openapi-typescript-helpers:
devDependencies:
@@ -342,6 +345,10 @@ packages:
resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==}
engines: {node: '>=6.9.0'}
+ '@babel/code-frame@7.24.7':
+ resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==}
+ engines: {node: '>=6.9.0'}
+
'@babel/helper-string-parser@7.24.1':
resolution: {integrity: sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==}
engines: {node: '>=6.9.0'}
@@ -362,6 +369,10 @@ packages:
resolution: {integrity: sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==}
engines: {node: '>=6.9.0'}
+ '@babel/highlight@7.24.7':
+ resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==}
+ engines: {node: '>=6.9.0'}
+
'@babel/parser@7.24.5':
resolution: {integrity: sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==}
engines: {node: '>=6.0.0'}
@@ -803,24 +814,20 @@ packages:
cpu: [x64]
os: [win32]
- '@fastify/busboy@2.1.1':
- resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==}
- engines: {node: '>=14'}
-
- '@inquirer/confirm@3.1.7':
- resolution: {integrity: sha512-BZjjj19W8gnh5UGFTdP5ZxpgMNRjy03Dzq3k28sB2MDlEUFrcyTkMEoGgvBmGpUw0vNBoCJkTcbHZ3e9tb+d+w==}
+ '@inquirer/confirm@3.1.9':
+ resolution: {integrity: sha512-UF09aejxCi4Xqm6N/jJAiFXArXfi9al52AFaSD+2uIHnhZGtd1d6lIGTRMPouVSJxbGEi+HkOWSYaiEY/+szUw==}
engines: {node: '>=18'}
- '@inquirer/core@8.2.0':
- resolution: {integrity: sha512-pexNF9j2orvMMTgoQ/uKOw8V6/R7x/sIDwRwXRhl4i0pPSh6paRzFehpFKpfMbqix1/+gzCekhYTmVbQpWkVjQ==}
+ '@inquirer/core@8.2.2':
+ resolution: {integrity: sha512-K8SuNX45jEFlX3EBJpu9B+S2TISzMPGXZIuJ9ME924SqbdW6Pt6fIkKvXg7mOEOKJ4WxpQsxj0UTfcL/A434Ww==}
engines: {node: '>=18'}
- '@inquirer/figures@1.0.1':
- resolution: {integrity: sha512-mtup3wVKia3ZwULPHcbs4Mor8Voi+iIXEWD7wCNbIO6lYR62oPCTQyrddi5OMYVXHzeCSoneZwJuS8sBvlEwDw==}
+ '@inquirer/figures@1.0.3':
+ resolution: {integrity: sha512-ErXXzENMH5pJt5/ssXV0DfWUZqly8nGzf0UcBV9xTnP+KyffE2mqyxIMBrZ8ijQck2nU0TQm40EQB53YreyWHw==}
engines: {node: '>=18'}
- '@inquirer/type@1.3.1':
- resolution: {integrity: sha512-Pe3PFccjPVJV1vtlfVvm9OnlbxqdnP5QcscFEFEnK5quChf1ufZtM0r8mR5ToWHMxZOh0s8o/qp9ANGRTo/DAw==}
+ '@inquirer/type@1.3.3':
+ resolution: {integrity: sha512-xTUt0NulylX27/zMx04ZYar/kr1raaiFTVvQ5feljQsiAgdm0WPj4S73/ye0fbslh+15QrIuDvfCXTek7pMY5A==}
engines: {node: '>=18'}
'@jest/schemas@29.6.3':
@@ -854,8 +861,8 @@ packages:
'@manypkg/get-packages@1.1.3':
resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==}
- '@mswjs/cookies@1.1.0':
- resolution: {integrity: sha512-0ZcCVQxifZmhwNBoQIrystCb+2sWBY2Zw8lpfJBPCHGCA/HWqehITeCRVIv4VMy8MPlaHo2w2pTHFV2pFfqKPw==}
+ '@mswjs/cookies@1.1.1':
+ resolution: {integrity: sha512-W68qOHEjx1iD+4VjQudlx26CPIoxmIAtK4ZCexU0/UJBG6jYhcuyzKJx+Iw8uhBIGd9eba64XgWVgo20it1qwA==}
engines: {node: '>=18'}
'@mswjs/interceptors@0.29.1':
@@ -946,11 +953,11 @@ packages:
'@redocly/ajv@8.11.0':
resolution: {integrity: sha512-9GWx27t7xWhDIR02PA18nzBdLcKQRgc46xNQvjFkrYk4UOmvKhJ/dawwiX0cCOeetN5LcaaiqQbVOWYK62SGHw==}
- '@redocly/config@0.5.0':
- resolution: {integrity: sha512-oA1ezWPT2tSV9CLk0FtZlViaFKtp+id3iAVeKBme1DdP4xUCdxEdP8umB21iLKdc6leRd5uGa+T5Ox4nHBAXWg==}
+ '@redocly/config@0.6.0':
+ resolution: {integrity: sha512-hNVN3eTxFj2nHYX0gGzZxxXwdE0DXWeWou1TIK3HYf0S9VKVxTxjO9EZbMB7iVUqaHkeqy4PSjlBQcEgD0Ftjg==}
- '@redocly/openapi-core@1.12.2':
- resolution: {integrity: sha512-dImBZaKws54a4/QdoAVsLDm4/gfVnzAVD68pSGFPMTLNM2AZINvevfUfOrbUNTXwHvG2UJkthUxDGQZLsp3Vaw==}
+ '@redocly/openapi-core@1.16.0':
+ resolution: {integrity: sha512-z06h+svyqbUcdAaePq8LPSwTPlm6Ig7j2VlL8skPBYnJvyaQ2IN7x/JkOvRL4ta+wcOCBdAex5JWnZbKaNktJg==}
engines: {node: '>=14.19.0', npm: '>=7.0.0'}
'@rollup/rollup-android-arm-eabi@4.17.2':
@@ -1277,8 +1284,8 @@ packages:
'@types/node@12.20.55':
resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==}
- '@types/node@20.12.12':
- resolution: {integrity: sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==}
+ '@types/node@20.14.6':
+ resolution: {integrity: sha512-JbA0XIJPL1IiNnU7PFxDXyfAwcwVVrOoqyzzyQTyMeVhBzkJVMSkC1LlVsRQ2lpqiY4n6Bb9oCS6lzDKVQxbZw==}
'@types/normalize-package-data@2.4.4':
resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==}
@@ -1509,6 +1516,10 @@ packages:
resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
engines: {node: '>= 6.0.0'}
+ agent-base@7.1.1:
+ resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==}
+ engines: {node: '>= 14'}
+
aggregate-error@4.0.1:
resolution: {integrity: sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==}
engines: {node: '>=12'}
@@ -1590,8 +1601,8 @@ packages:
resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==}
engines: {node: '>= 0.4'}
- axios@1.6.8:
- resolution: {integrity: sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==}
+ axios@1.7.2:
+ resolution: {integrity: sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==}
axobject-query@4.0.0:
resolution: {integrity: sha512-+60uv1hiVFhHZeO+Lz0RYzsVHy5Wr1ayX0mwda9KPDVLNJgZ1T9Ny7VmFbLDzxsH0D87I86vgj3gFrjTJUYznw==}
@@ -2168,8 +2179,8 @@ packages:
grapheme-splitter@1.0.4:
resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==}
- graphql@16.8.1:
- resolution: {integrity: sha512-59LZHPdGZVh695Ud9lRzPBVTtlX9ZCV150Er2W43ro37wVof0ctenSaskPPjN7lVTIN8mSZt8PHUNKZuNQUuxw==}
+ graphql@16.8.2:
+ resolution: {integrity: sha512-cvVIBILwuoSyD54U4cF/UXDh5yAobhNV/tPygI4lZhgOIJQE/WLWC4waBRb4I6bDVYb3OVx3lfHbaQOEoUD5sg==}
engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0}
handlebars@4.7.8:
@@ -2244,6 +2255,10 @@ packages:
resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==}
engines: {node: '>= 6'}
+ https-proxy-agent@7.0.4:
+ resolution: {integrity: sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==}
+ engines: {node: '>= 14'}
+
human-id@1.0.2:
resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==}
@@ -2616,8 +2631,8 @@ packages:
ms@2.1.2:
resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
- msw@2.3.0:
- resolution: {integrity: sha512-cDr1q/QTMzaWhY8n9lpGhceY209k29UZtdTgJ3P8Bzne3TSMchX2EM/ldvn4ATLOktpCefCU2gcEgzHc31GTPw==}
+ msw@2.3.1:
+ resolution: {integrity: sha512-ocgvBCLn/5l3jpl1lssIb3cniuACJLoOfZu01e3n5dbJrpA5PeeWn28jCLgQDNt6d7QT8tF2fYRzm9JoEHtiig==}
engines: {node: '>=18'}
hasBin: true
peerDependencies:
@@ -2638,6 +2653,11 @@ packages:
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
hasBin: true
+ nanoid@5.0.7:
+ resolution: {integrity: sha512-oLxFY2gd2IqnjcYyOXD8XGCftpGtZP2AbHbOkthDkvRywH5ayNtPVy9YlOPcHckXzbLTCHpkb7FB+yuxKV13pQ==}
+ engines: {node: ^18 || >=20}
+ hasBin: true
+
neo-async@2.6.2:
resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
@@ -2712,10 +2732,6 @@ packages:
resolution: {integrity: sha512-9YkzVKIx9RVIET0lFjJOuf15VjI9AUsoNByBk5WYM66xVlAKDNy8anj08Ci3zZA+HgTwdDamYz5FCVYt2VoHkA==}
engines: {node: '>= 12.0.0', npm: '>= 7.0.0'}
- openapi-typescript@6.7.6:
- resolution: {integrity: sha512-c/hfooPx+RBIOPM09GSxABOZhYPblDoyaGhqBkD/59vtpN21jEuWKDlM0KYTvqJVlSYjKs0tBcIdeXKChlSPtw==}
- hasBin: true
-
os-tmpdir@1.0.2:
resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==}
engines: {node: '>=0.10.0'}
@@ -3391,8 +3407,8 @@ packages:
resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==}
engines: {node: '>=10'}
- type-fest@4.18.2:
- resolution: {integrity: sha512-+suCYpfJLAe4OXS6+PPXjW3urOS4IoP9waSiLuXfLgqZODKw/aWwASvzqE886wA0kQgGy0mIWyhd87VpqIy6Xg==}
+ type-fest@4.20.1:
+ resolution: {integrity: sha512-R6wDsVsoS9xYOpy8vgeBlqpdOyzJ12HNfQhC/aAKWM3YoCV9TtunJzh/QpkMgeDhkoynDcw5f1y+qF9yc/HHyg==}
engines: {node: '>=16'}
typed-array-buffer@1.0.2:
@@ -3419,8 +3435,8 @@ packages:
ufo@1.5.3:
resolution: {integrity: sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==}
- uglify-js@3.17.4:
- resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==}
+ uglify-js@3.18.0:
+ resolution: {integrity: sha512-SyVVbcNBCk0dzr9XL/R/ySrmYf0s372K6/hFklzgcp2lBFyXtw4I7BOdDjlLhE1aVqaI/SHWXWmYdlZxuyF38A==}
engines: {node: '>=0.8.0'}
hasBin: true
@@ -3430,10 +3446,6 @@ packages:
undici-types@5.26.5:
resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
- undici@5.28.4:
- resolution: {integrity: sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==}
- engines: {node: '>=14.0'}
-
universalify@0.1.2:
resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==}
engines: {node: '>= 4.0.0'}
@@ -3854,6 +3866,11 @@ snapshots:
'@babel/highlight': 7.24.5
picocolors: 1.0.0
+ '@babel/code-frame@7.24.7':
+ dependencies:
+ '@babel/highlight': 7.24.7
+ picocolors: 1.0.1
+
'@babel/helper-string-parser@7.24.1': {}
'@babel/helper-string-parser@7.24.7': {}
@@ -3869,6 +3886,13 @@ snapshots:
js-tokens: 4.0.0
picocolors: 1.0.0
+ '@babel/highlight@7.24.7':
+ dependencies:
+ '@babel/helper-validator-identifier': 7.24.7
+ chalk: 2.4.2
+ js-tokens: 4.0.0
+ picocolors: 1.0.1
+
'@babel/parser@7.24.5':
dependencies:
'@babel/types': 7.24.5
@@ -4273,19 +4297,17 @@ snapshots:
'@esbuild/win32-x64@0.21.5':
optional: true
- '@fastify/busboy@2.1.1': {}
-
- '@inquirer/confirm@3.1.7':
+ '@inquirer/confirm@3.1.9':
dependencies:
- '@inquirer/core': 8.2.0
- '@inquirer/type': 1.3.1
+ '@inquirer/core': 8.2.2
+ '@inquirer/type': 1.3.3
- '@inquirer/core@8.2.0':
+ '@inquirer/core@8.2.2':
dependencies:
- '@inquirer/figures': 1.0.1
- '@inquirer/type': 1.3.1
+ '@inquirer/figures': 1.0.3
+ '@inquirer/type': 1.3.3
'@types/mute-stream': 0.0.4
- '@types/node': 20.12.12
+ '@types/node': 20.14.6
'@types/wrap-ansi': 3.0.0
ansi-escapes: 4.3.2
chalk: 4.1.2
@@ -4296,9 +4318,9 @@ snapshots:
strip-ansi: 6.0.1
wrap-ansi: 6.2.0
- '@inquirer/figures@1.0.1': {}
+ '@inquirer/figures@1.0.3': {}
- '@inquirer/type@1.3.1': {}
+ '@inquirer/type@1.3.3': {}
'@jest/schemas@29.6.3':
dependencies:
@@ -4339,7 +4361,7 @@ snapshots:
globby: 11.1.0
read-yaml-file: 1.1.0
- '@mswjs/cookies@1.1.0': {}
+ '@mswjs/cookies@1.1.1': {}
'@mswjs/interceptors@0.29.1':
dependencies:
@@ -4409,13 +4431,14 @@ snapshots:
require-from-string: 2.0.2
uri-js: 4.4.1
- '@redocly/config@0.5.0': {}
+ '@redocly/config@0.6.0': {}
- '@redocly/openapi-core@1.12.2':
+ '@redocly/openapi-core@1.16.0(supports-color@9.4.0)':
dependencies:
'@redocly/ajv': 8.11.0
- '@redocly/config': 0.5.0
+ '@redocly/config': 0.6.0
colorette: 1.4.0
+ https-proxy-agent: 7.0.4(supports-color@9.4.0)
js-levenshtein: 1.1.6
js-yaml: 4.1.0
lodash.isequal: 4.5.0
@@ -4425,6 +4448,7 @@ snapshots:
yaml-ast-parser: 0.0.43
transitivePeerDependencies:
- encoding
+ - supports-color
'@rollup/rollup-android-arm-eabi@4.17.2':
optional: true
@@ -4530,14 +4554,14 @@ snapshots:
'@sinclair/typebox@0.27.8': {}
- '@sveltejs/adapter-auto@3.2.0(@sveltejs/kit@2.5.8(@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12)))(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12)))':
+ '@sveltejs/adapter-auto@3.2.0(@sveltejs/kit@2.5.8(@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6)))(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6)))':
dependencies:
- '@sveltejs/kit': 2.5.8(@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12)))(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12))
+ '@sveltejs/kit': 2.5.8(@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6)))(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6))
import-meta-resolve: 4.1.0
- '@sveltejs/kit@2.5.8(@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12)))(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12))':
+ '@sveltejs/kit@2.5.8(@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6)))(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6))':
dependencies:
- '@sveltejs/vite-plugin-svelte': 3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12))
+ '@sveltejs/vite-plugin-svelte': 3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6))
'@types/cookie': 0.6.0
cookie: 0.6.0
devalue: 5.0.0
@@ -4551,28 +4575,28 @@ snapshots:
sirv: 2.0.4
svelte: 4.2.17
tiny-glob: 0.2.9
- vite: 5.2.11(@types/node@20.12.12)
+ vite: 5.2.11(@types/node@20.14.6)
- '@sveltejs/vite-plugin-svelte-inspector@2.1.0(@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12)))(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12))':
+ '@sveltejs/vite-plugin-svelte-inspector@2.1.0(@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6)))(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6))':
dependencies:
- '@sveltejs/vite-plugin-svelte': 3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12))
+ '@sveltejs/vite-plugin-svelte': 3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6))
debug: 4.3.4(supports-color@9.4.0)
svelte: 4.2.17
- vite: 5.2.11(@types/node@20.12.12)
+ vite: 5.2.11(@types/node@20.14.6)
transitivePeerDependencies:
- supports-color
- '@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12))':
+ '@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6))':
dependencies:
- '@sveltejs/vite-plugin-svelte-inspector': 2.1.0(@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12)))(svelte@4.2.17)(vite@5.2.11(@types/node@20.12.12))
+ '@sveltejs/vite-plugin-svelte-inspector': 2.1.0(@sveltejs/vite-plugin-svelte@3.1.0(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6)))(svelte@4.2.17)(vite@5.2.11(@types/node@20.14.6))
debug: 4.3.4(supports-color@9.4.0)
deepmerge: 4.3.1
kleur: 4.1.5
magic-string: 0.30.10
svelte: 4.2.17
svelte-hmr: 0.16.0(svelte@4.2.17)
- vite: 5.2.11(@types/node@20.12.12)
- vitefu: 0.2.5(vite@5.2.11(@types/node@20.12.12))
+ vite: 5.2.11(@types/node@20.14.6)
+ vitefu: 0.2.5(vite@5.2.11(@types/node@20.14.6))
transitivePeerDependencies:
- supports-color
@@ -4669,11 +4693,11 @@ snapshots:
'@types/mute-stream@0.0.4':
dependencies:
- '@types/node': 20.12.12
+ '@types/node': 20.14.6
'@types/node@12.20.55': {}
- '@types/node@20.12.12':
+ '@types/node@20.14.6':
dependencies:
undici-types: 5.26.5
@@ -4700,21 +4724,21 @@ snapshots:
'@types/wrap-ansi@3.0.0': {}
- '@vitejs/plugin-react-swc@3.6.0(@swc/helpers@0.5.5)(vite@5.2.11(@types/node@20.12.12))':
+ '@vitejs/plugin-react-swc@3.6.0(@swc/helpers@0.5.5)(vite@5.2.11(@types/node@20.14.6))':
dependencies:
'@swc/core': 1.5.7(@swc/helpers@0.5.5)
- vite: 5.2.11(@types/node@20.12.12)
+ vite: 5.2.11(@types/node@20.14.6)
transitivePeerDependencies:
- '@swc/helpers'
- '@vitejs/plugin-vue@5.0.4(vite@5.2.11(@types/node@20.12.12))(vue@3.4.27(typescript@5.4.5))':
+ '@vitejs/plugin-vue@5.0.4(vite@5.2.11(@types/node@20.14.6))(vue@3.4.27(typescript@5.4.5))':
dependencies:
- vite: 5.2.11(@types/node@20.12.12)
+ vite: 5.2.11(@types/node@20.14.6)
vue: 3.4.27(typescript@5.4.5)
- '@vitejs/plugin-vue@5.0.5(vite@5.3.1(@types/node@20.12.12))(vue@3.4.28(typescript@5.4.5))':
+ '@vitejs/plugin-vue@5.0.5(vite@5.3.1(@types/node@20.14.6))(vue@3.4.28(typescript@5.4.5))':
dependencies:
- vite: 5.3.1(@types/node@20.12.12)
+ vite: 5.3.1(@types/node@20.14.6)
vue: 3.4.28(typescript@5.4.5)
'@vitest/expect@1.6.0':
@@ -4909,13 +4933,13 @@ snapshots:
- '@vue/composition-api'
- vue
- '@vueuse/integrations@10.11.0(axios@1.6.8)(focus-trap@7.5.4)(vue@3.4.28(typescript@5.4.5))':
+ '@vueuse/integrations@10.11.0(axios@1.7.2)(focus-trap@7.5.4)(vue@3.4.28(typescript@5.4.5))':
dependencies:
'@vueuse/core': 10.11.0(vue@3.4.28(typescript@5.4.5))
'@vueuse/shared': 10.11.0(vue@3.4.28(typescript@5.4.5))
vue-demi: 0.14.8(vue@3.4.28(typescript@5.4.5))
optionalDependencies:
- axios: 1.6.8
+ axios: 1.7.2
focus-trap: 7.5.4
transitivePeerDependencies:
- '@vue/composition-api'
@@ -4958,6 +4982,12 @@ snapshots:
- supports-color
optional: true
+ agent-base@7.1.1(supports-color@9.4.0):
+ dependencies:
+ debug: 4.3.5(supports-color@9.4.0)
+ transitivePeerDependencies:
+ - supports-color
+
aggregate-error@4.0.1:
dependencies:
clean-stack: 4.2.0
@@ -5053,7 +5083,7 @@ snapshots:
dependencies:
possible-typed-array-names: 1.0.0
- axios@1.6.8:
+ axios@1.7.2:
dependencies:
follow-redirects: 1.15.6
form-data: 4.0.0
@@ -5323,7 +5353,6 @@ snapshots:
ms: 2.1.2
optionalDependencies:
supports-color: 9.4.0
- optional: true
decamelize-keys@1.1.1:
dependencies:
@@ -5758,7 +5787,7 @@ snapshots:
grapheme-splitter@1.0.4: {}
- graphql@16.8.1: {}
+ graphql@16.8.2: {}
handlebars@4.7.8:
dependencies:
@@ -5767,7 +5796,7 @@ snapshots:
source-map: 0.6.1
wordwrap: 1.0.0
optionalDependencies:
- uglify-js: 3.17.4
+ uglify-js: 3.18.0
hard-rejection@2.1.0: {}
@@ -5829,6 +5858,13 @@ snapshots:
- supports-color
optional: true
+ https-proxy-agent@7.0.4(supports-color@9.4.0):
+ dependencies:
+ agent-base: 7.1.1(supports-color@9.4.0)
+ debug: 4.3.5(supports-color@9.4.0)
+ transitivePeerDependencies:
+ - supports-color
+
human-id@1.0.2: {}
human-signals@5.0.0: {}
@@ -6200,24 +6236,24 @@ snapshots:
ms@2.1.2: {}
- msw@2.3.0(typescript@5.4.5):
+ msw@2.3.1(typescript@5.4.5):
dependencies:
'@bundled-es-modules/cookie': 2.0.0
'@bundled-es-modules/statuses': 1.0.1
- '@inquirer/confirm': 3.1.7
- '@mswjs/cookies': 1.1.0
+ '@inquirer/confirm': 3.1.9
+ '@mswjs/cookies': 1.1.1
'@mswjs/interceptors': 0.29.1
'@open-draft/until': 2.1.0
'@types/cookie': 0.6.0
'@types/statuses': 2.0.5
chalk: 4.1.2
- graphql: 16.8.1
+ graphql: 16.8.2
headers-polyfill: 4.0.3
is-node-process: 1.2.0
outvariant: 1.4.2
path-to-regexp: 6.2.2
strict-event-emitter: 0.5.1
- type-fest: 4.18.2
+ type-fest: 4.20.1
yargs: 17.7.2
optionalDependencies:
typescript: 5.4.5
@@ -6228,6 +6264,8 @@ snapshots:
nanoid@3.3.7: {}
+ nanoid@5.0.7: {}
+
neo-async@2.6.2: {}
next@14.2.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
@@ -6311,15 +6349,6 @@ snapshots:
openapi-typescript-fetch@2.0.0: {}
- openapi-typescript@6.7.6:
- dependencies:
- ansi-colors: 4.1.3
- fast-glob: 3.3.2
- js-yaml: 4.1.0
- supports-color: 9.4.0
- undici: 5.28.4
- yargs-parser: 21.1.1
-
os-tmpdir@1.0.2: {}
outdent@0.5.0: {}
@@ -6371,9 +6400,9 @@ snapshots:
parse-json@8.1.0:
dependencies:
- '@babel/code-frame': 7.24.2
+ '@babel/code-frame': 7.24.7
index-to-position: 0.1.2
- type-fest: 4.18.2
+ type-fest: 4.20.1
parse5@7.1.2:
dependencies:
@@ -6849,7 +6878,7 @@ snapshots:
dependencies:
component-emitter: 1.3.1
cookiejar: 2.1.4
- debug: 4.3.4(supports-color@9.4.0)
+ debug: 4.3.5(supports-color@9.4.0)
fast-safe-stringify: 2.1.1
form-data: 4.0.0
formidable: 3.5.1
@@ -6999,7 +7028,7 @@ snapshots:
type-fest@1.4.0: {}
- type-fest@4.18.2: {}
+ type-fest@4.20.1: {}
typed-array-buffer@1.0.2:
dependencies:
@@ -7037,7 +7066,7 @@ snapshots:
ufo@1.5.3: {}
- uglify-js@3.17.4:
+ uglify-js@3.18.0:
optional: true
unbox-primitive@1.0.2:
@@ -7049,10 +7078,6 @@ snapshots:
undici-types@5.26.5: {}
- undici@5.28.4:
- dependencies:
- '@fastify/busboy': 2.1.1
-
universalify@0.1.2: {}
universalify@0.2.0:
@@ -7075,13 +7100,13 @@ snapshots:
spdx-correct: 3.2.0
spdx-expression-parse: 3.0.1
- vite-node@1.6.0(@types/node@20.12.12)(supports-color@9.4.0):
+ vite-node@1.6.0(@types/node@20.14.6)(supports-color@9.4.0):
dependencies:
cac: 6.7.14
- debug: 4.3.4(supports-color@9.4.0)
+ debug: 4.3.5(supports-color@9.4.0)
pathe: 1.1.2
picocolors: 1.0.1
- vite: 5.2.11(@types/node@20.12.12)
+ vite: 5.3.1(@types/node@20.14.6)
transitivePeerDependencies:
- '@types/node'
- less
@@ -7092,44 +7117,44 @@ snapshots:
- supports-color
- terser
- vite@5.2.11(@types/node@20.12.12):
+ vite@5.2.11(@types/node@20.14.6):
dependencies:
esbuild: 0.20.2
postcss: 8.4.38
rollup: 4.17.2
optionalDependencies:
- '@types/node': 20.12.12
+ '@types/node': 20.14.6
fsevents: 2.3.3
- vite@5.3.1(@types/node@20.12.12):
+ vite@5.3.1(@types/node@20.14.6):
dependencies:
esbuild: 0.21.5
postcss: 8.4.38
rollup: 4.18.0
optionalDependencies:
- '@types/node': 20.12.12
+ '@types/node': 20.14.6
fsevents: 2.3.3
- vitefu@0.2.5(vite@5.2.11(@types/node@20.12.12)):
+ vitefu@0.2.5(vite@5.2.11(@types/node@20.14.6)):
optionalDependencies:
- vite: 5.2.11(@types/node@20.12.12)
+ vite: 5.2.11(@types/node@20.14.6)
- vitepress@1.1.4(@algolia/client-search@4.23.3)(@types/node@20.12.12)(@types/react@18.3.1)(axios@1.6.8)(postcss@8.4.38)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.13.0)(typescript@5.4.5):
+ vitepress@1.1.4(@algolia/client-search@4.23.3)(@types/node@20.14.6)(@types/react@18.3.1)(axios@1.7.2)(postcss@8.4.38)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.13.0)(typescript@5.4.5):
dependencies:
'@docsearch/css': 3.6.0
'@docsearch/js': 3.6.0(@algolia/client-search@4.23.3)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.13.0)
'@shikijs/core': 1.6.4
'@shikijs/transformers': 1.6.4
'@types/markdown-it': 14.1.1
- '@vitejs/plugin-vue': 5.0.5(vite@5.3.1(@types/node@20.12.12))(vue@3.4.28(typescript@5.4.5))
+ '@vitejs/plugin-vue': 5.0.5(vite@5.3.1(@types/node@20.14.6))(vue@3.4.28(typescript@5.4.5))
'@vue/devtools-api': 7.2.1(vue@3.4.28(typescript@5.4.5))
'@vueuse/core': 10.11.0(vue@3.4.28(typescript@5.4.5))
- '@vueuse/integrations': 10.11.0(axios@1.6.8)(focus-trap@7.5.4)(vue@3.4.28(typescript@5.4.5))
+ '@vueuse/integrations': 10.11.0(axios@1.7.2)(focus-trap@7.5.4)(vue@3.4.28(typescript@5.4.5))
focus-trap: 7.5.4
mark.js: 8.11.1
minisearch: 6.3.0
shiki: 1.6.4
- vite: 5.3.1(@types/node@20.12.12)
+ vite: 5.3.1(@types/node@20.14.6)
vue: 3.4.28(typescript@5.4.5)
optionalDependencies:
postcss: 8.4.38
@@ -7160,7 +7185,7 @@ snapshots:
- typescript
- universal-cookie
- vitest@1.6.0(@types/node@20.12.12)(jsdom@20.0.3(supports-color@9.4.0))(supports-color@9.4.0):
+ vitest@1.6.0(@types/node@20.14.6)(jsdom@20.0.3(supports-color@9.4.0))(supports-color@9.4.0):
dependencies:
'@vitest/expect': 1.6.0
'@vitest/runner': 1.6.0
@@ -7179,11 +7204,11 @@ snapshots:
strip-literal: 2.1.0
tinybench: 2.8.0
tinypool: 0.8.4
- vite: 5.2.11(@types/node@20.12.12)
- vite-node: 1.6.0(@types/node@20.12.12)(supports-color@9.4.0)
+ vite: 5.2.11(@types/node@20.14.6)
+ vite-node: 1.6.0(@types/node@20.14.6)(supports-color@9.4.0)
why-is-node-running: 2.2.2
optionalDependencies:
- '@types/node': 20.12.12
+ '@types/node': 20.14.6
jsdom: 20.0.3(supports-color@9.4.0)
transitivePeerDependencies:
- less