Delete a GitHub Pages site

Deletes a GitHub Pages site. For more information, see "About GitHub Pages. To use this endpoint, you must be a repository administrator, maintainer, or have the 'manage GitHub Pages settings' permission. A token with the `repo` scope or Pages write permission is required. GitHub Apps must have the `administration:write` and `pages:write` permissions.

Script github Verified

by hugo697 ยท 10/25/2023

The script

Submitted by hugo697 Typescript (fetch-only)
Verified 367 days ago
1
type Github = {
2
  token: string;
3
};
4
/**
5
 * Delete a GitHub Pages site
6
 * Deletes a GitHub Pages site. For more information, see "About GitHub Pages.
7

8
To use this endpoint, you must be a repository administrator, maintainer, or have the 'manage GitHub Pages settings' permission. A token with the `repo` scope or Pages write permission is required. GitHub Apps must have the `administration:write` and `pages:write` permissions.
9
 */
10
export async function main(auth: Github, owner: string, repo: string) {
11
  const url = new URL(`https://api.github.com/repos/${owner}/${repo}/pages`);
12

13
  const response = await fetch(url, {
14
    method: "DELETE",
15
    headers: {
16
      Authorization: "Bearer " + auth.token,
17
    },
18
    body: undefined,
19
  });
20
  if (!response.ok) {
21
    const text = await response.text();
22
    throw new Error(`${response.status} ${text}`);
23
  }
24
  return await response.text();
25
}
26