Codespaces
Endpoints to manage Codespaces using the REST API.
Operations
| Method | Endpoint | Description |
|---|---|---|
GET | /orgs/{org}/codespaces | List codespaces for the organization |
PUT | /orgs/{org}/codespaces/access | Manage access control for organization codespaces (deprecated) |
POST | /orgs/{org}/codespaces/access/selected_users | Add users to Codespaces access for an organization (deprecated) |
DELETE | /orgs/{org}/codespaces/access/selected_users | Remove users from Codespaces access for an organization (deprecated) |
GET | /orgs/{org}/codespaces/secrets | List organization secrets |
GET | /orgs/{org}/codespaces/secrets/public-key | Get an organization public key |
GET | /orgs/{org}/codespaces/secrets/{secret_name} | Get an organization secret |
PUT | /orgs/{org}/codespaces/secrets/{secret_name} | Create or update an organization secret |
DELETE | /orgs/{org}/codespaces/secrets/{secret_name} | Delete an organization secret |
GET | /orgs/{org}/codespaces/secrets/{secret_name}/repositories | List selected repositories for an organization secret |
PUT | /orgs/{org}/codespaces/secrets/{secret_name}/repositories | Set selected repositories for an organization secret |
PUT | /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id} | Add selected repository to an organization secret |
DELETE | /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id} | Remove selected repository from an organization secret |
GET | /orgs/{org}/members/{username}/codespaces | List codespaces for a user in organization |
DELETE | /orgs/{org}/members/{username}/codespaces/{codespace_name} | Delete a codespace from the organization |
POST | /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop | Stop a codespace for an organization user |
GET | /repos/{owner}/{repo}/codespaces | List codespaces in a repository for the authenticated user |
POST | /repos/{owner}/{repo}/codespaces | Create a codespace in a repository |
GET | /repos/{owner}/{repo}/codespaces/devcontainers | List devcontainer configurations in a repository for the authenticated user |
GET | /repos/{owner}/{repo}/codespaces/machines | List available machine types for a repository |
GET | /repos/{owner}/{repo}/codespaces/new | Get default attributes for a codespace |
GET | /repos/{owner}/{repo}/codespaces/permissions_check | Check if permissions defined by a devcontainer have been accepted by the authenticated user |
GET | /repos/{owner}/{repo}/codespaces/secrets | List repository secrets |
GET | /repos/{owner}/{repo}/codespaces/secrets/public-key | Get a repository public key |
GET | /repos/{owner}/{repo}/codespaces/secrets/{secret_name} | Get a repository secret |
PUT | /repos/{owner}/{repo}/codespaces/secrets/{secret_name} | Create or update a repository secret |
DELETE | /repos/{owner}/{repo}/codespaces/secrets/{secret_name} | Delete a repository secret |
POST | /repos/{owner}/{repo}/pulls/{pull_number}/codespaces | Create a codespace from a pull request |
GET | /user/codespaces | List codespaces for the authenticated user |
POST | /user/codespaces | Create a codespace for the authenticated user |
GET | /user/codespaces/secrets | List secrets for the authenticated user |
GET | /user/codespaces/secrets/public-key | Get public key for the authenticated user |
GET | /user/codespaces/secrets/{secret_name} | Get a secret for the authenticated user |
PUT | /user/codespaces/secrets/{secret_name} | Create or update a secret for the authenticated user |
DELETE | /user/codespaces/secrets/{secret_name} | Delete a secret for the authenticated user |
GET | /user/codespaces/secrets/{secret_name}/repositories | List selected repositories for a user secret |
PUT | /user/codespaces/secrets/{secret_name}/repositories | Set selected repositories for a user secret |
PUT | /user/codespaces/secrets/{secret_name}/repositories/{repository_id} | Add a selected repository to a user secret |
DELETE | /user/codespaces/secrets/{secret_name}/repositories/{repository_id} | Remove a selected repository from a user secret |
GET | /user/codespaces/{codespace_name} | Get a codespace for the authenticated user |
The full set of 48 operations is in the API reference.
Example
List codespaces for the organization, with the TypeScript SDK:
ts
import { GitHubV3REST } from "github";
const client = new GitHubV3REST({
baseUrl: "https://api.github.com",
});
const result = await client.codespaces.listInOrganization({
org: "org",
});
console.log(result);Nine more languages
The same call exists in every SDK. See SDKs for the other nine.