Back to GithubUpdate a codespace for the authenticated user
Updates a codespace owned by the authenticated user. Currently only the codespace's machine type and recent folders can be modified using this endpoint.
If you specify a new machine type it will be applied the next time your codespace is started.
You must authenticate using an access token with the codespace
scope to use this endpoint.
GitHub Apps must have write access to the codespaces
repository permission to use this endpoint.
Input
type: object
properties:
parameters:
type: object
properties:
codespace_name:
type: string
description: The name of the codespace.
required:
- codespace_name
title: Parameters
data:
type: object
properties:
machine:
description: A valid machine to transition this codespace to.
type: string
display_name:
description: Display name for this codespace
type: string
recent_folders:
description: >-
Recently opened folders inside the codespace. It is currently used by
the clients to determine the folder path to load the codespace in.
type: array
items:
type: string
title: Data
Output
type: object
title: Codespace
properties:
id:
type: integer
example: 1
name:
description: Automatically generated name of this codespace.
type: string
example: monalisa-octocat-hello-world-g4wpq6h95q
display_name:
description: Display name for this codespace.
type: string
example: bookish space pancake
nullable: true
environment_id:
description: UUID identifying this codespace's environment.
type: string
example: 26a7c758-7299-4a73-b978-5a92a7ae98a0
nullable: true
owner:
type: object
title: Simple User
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"'
billable_owner:
type: object
title: Simple User
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"'
repository:
type: object
title: Minimal Repository
properties:
id:
type: integer
example: 1296269
node_id:
type: string
example: MDEwOlJlcG9zaXRvcnkxMjk2MjY5
name:
type: string
example: Hello-World
full_name:
type: string
example: octocat/Hello-World
owner:
type: object
title: Simple User
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"'
private:
type: boolean
html_url:
type: string
format: uri
example: https://github.com/octocat/Hello-World
description:
type: string
example: This your first repo!
nullable: true
fork:
type: boolean
url:
type: string
format: uri
example: https://api.github.com/repos/octocat/Hello-World
archive_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}
assignees_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/assignees{/user}
blobs_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}
branches_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/branches{/branch}
collaborators_url:
type: string
example: >-
http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}
comments_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/comments{/number}
commits_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/commits{/sha}
compare_url:
type: string
example: >-
http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}
contents_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/contents/{+path}
contributors_url:
type: string
format: uri
example: http://api.github.com/repos/octocat/Hello-World/contributors
deployments_url:
type: string
format: uri
example: http://api.github.com/repos/octocat/Hello-World/deployments
downloads_url:
type: string
format: uri
example: http://api.github.com/repos/octocat/Hello-World/downloads
events_url:
type: string
format: uri
example: http://api.github.com/repos/octocat/Hello-World/events
forks_url:
type: string
format: uri
example: http://api.github.com/repos/octocat/Hello-World/forks
git_commits_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}
git_refs_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}
git_tags_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}
git_url:
type: string
issue_comment_url:
type: string
example: >-
http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}
issue_events_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/issues/events{/number}
issues_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/issues{/number}
keys_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/keys{/key_id}
labels_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/labels{/name}
languages_url:
type: string
format: uri
example: http://api.github.com/repos/octocat/Hello-World/languages
merges_url:
type: string
format: uri
example: http://api.github.com/repos/octocat/Hello-World/merges
milestones_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/milestones{/number}
notifications_url:
type: string
example: >-
http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}
pulls_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/pulls{/number}
releases_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/releases{/id}
ssh_url:
type: string
stargazers_url:
type: string
format: uri
example: http://api.github.com/repos/octocat/Hello-World/stargazers
statuses_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/statuses/{sha}
subscribers_url:
type: string
format: uri
example: http://api.github.com/repos/octocat/Hello-World/subscribers
subscription_url:
type: string
format: uri
example: http://api.github.com/repos/octocat/Hello-World/subscription
tags_url:
type: string
format: uri
example: http://api.github.com/repos/octocat/Hello-World/tags
teams_url:
type: string
format: uri
example: http://api.github.com/repos/octocat/Hello-World/teams
trees_url:
type: string
example: http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}
clone_url:
type: string
mirror_url:
type: string
nullable: true
hooks_url:
type: string
format: uri
example: http://api.github.com/repos/octocat/Hello-World/hooks
svn_url:
type: string
homepage:
type: string
nullable: true
language:
type: string
nullable: true
forks_count:
type: integer
stargazers_count:
type: integer
watchers_count:
type: integer
size:
description: >-
The size of the repository. Size is calculated hourly. When a
repository is initially created, the size is 0.
type: integer
default_branch:
type: string
open_issues_count:
type: integer
is_template:
type: boolean
topics:
type: array
items:
type: string
has_issues:
type: boolean
has_projects:
type: boolean
has_wiki:
type: boolean
has_pages:
type: boolean
has_downloads:
type: boolean
has_discussions:
type: boolean
archived:
type: boolean
disabled:
type: boolean
visibility:
type: string
pushed_at:
type: string
format: date-time
example: '2011-01-26T19:06:43.000Z'
nullable: true
created_at:
type: string
format: date-time
example: '2011-01-26T19:01:12.000Z'
nullable: true
updated_at:
type: string
format: date-time
example: '2011-01-26T19:14:43.000Z'
nullable: true
permissions:
type: object
properties:
admin:
type: boolean
maintain:
type: boolean
push:
type: boolean
triage:
type: boolean
pull:
type: boolean
role_name:
type: string
example: admin
temp_clone_token:
type: string
delete_branch_on_merge:
type: boolean
subscribers_count:
type: integer
network_count:
type: integer
code_of_conduct:
type: object
title: Code Of Conduct
properties:
key:
type: string
example: contributor_covenant
name:
type: string
example: Contributor Covenant
url:
type: string
format: uri
example: https://api.github.com/codes_of_conduct/contributor_covenant
body:
type: string
example: >
# Contributor Covenant Code of Conduct
## Our Pledge
In the interest of fostering an open and welcoming environment, we
as contributors and maintainers pledge to making participation in
our project and our community a harassment-free experience for
everyone, regardless of age, body size, disability, ethnicity,
gender identity and expression, level of experience, nationality,
personal appearance, race, religion, or sexual identity and
orientation.
## Our Standards
Examples of behavior that contributes to creating a positive
environment include:
* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
* The use of sexualized language or imagery and unwelcome sexual
attention or advances
* Trolling, insulting/derogatory comments, and personal or
political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or
electronic address, without explicit permission
* Other conduct which could reasonably be considered inappropriate
in a professional setting
## Our Responsibilities
Project maintainers are responsible for clarifying the standards
of acceptable behavior and are expected to take appropriate and
fair corrective action in response
to any instances of unacceptable behavior.
Project maintainers have the right and responsibility to remove,
edit, or reject comments, commits, code, wiki edits, issues, and
other contributions that are not aligned to this Code of Conduct,
or to ban temporarily or permanently any contributor for other
behaviors that they deem inappropriate, threatening, offensive, or
harmful.
## Scope
This Code of Conduct applies both within project spaces and in
public spaces when an individual is representing the project or
its community. Examples of representing a project or community
include using an official project e-mail address,
posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable
behavior may be reported by contacting the project team at
[EMAIL]. The project team will review and investigate all
complaints, and will respond in a way that it deems appropriate to
the circumstances. The project team is obligated to maintain
confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted
separately.
Project maintainers who do not follow or enforce the Code of
Conduct in good faith may face temporary or permanent
repercussions as determined by other members of the project's
leadership.
## Attribution
This Code of Conduct is adapted from the [Contributor
Covenant][homepage], version 1.4, available at
[http://contributor-covenant.org/version/1/4][version]
[homepage]: http://contributor-covenant.org
[version]: http://contributor-covenant.org/version/1/4/
html_url:
type: string
format: uri
nullable: true
license:
type: object
properties:
key:
type: string
name:
type: string
spdx_id:
type: string
url:
type: string
node_id:
type: string
forks:
type: integer
example: 0
open_issues:
type: integer
example: 0
watchers:
type: integer
example: 0
allow_forking:
type: boolean
web_commit_signoff_required:
type: boolean
example: false
security_and_analysis:
type: object
properties:
advanced_security:
type: object
properties:
status:
type: string
enum:
- enabled
- disabled
secret_scanning:
type: object
properties:
status:
type: string
enum:
- enabled
- disabled
secret_scanning_push_protection:
type: object
properties:
status:
type: string
enum:
- enabled
- disabled
machine:
type: object
title: Codespace machine
properties:
name:
type: string
description: The name of the machine.
example: standardLinux
display_name:
type: string
description: The display name of the machine includes cores, memory, and storage.
example: 4 cores, 8 GB RAM, 64 GB storage
operating_system:
type: string
description: The operating system of the machine.
example: linux
storage_in_bytes:
type: integer
description: How much storage is available to the codespace.
example: 68719476736
memory_in_bytes:
type: integer
description: How much memory is available to the codespace.
example: 8589934592
cpus:
type: integer
description: How many cores are available to the codespace.
example: 4
prebuild_availability:
type: string
description: >-
Whether a prebuild is currently available when creating a codespace
for this machine and repository. If a branch was not specified as a
ref, the default branch will be assumed. Value will be "null" if
prebuilds are not supported or prebuild availability could not be
determined. Value will be "none" if no prebuild is available. Latest
values "ready" and "in_progress" indicate the prebuild availability
status.
example: ready
enum:
- none
- ready
- in_progress
nullable: true
devcontainer_path:
description: Path to devcontainer.json from repo root used to create Codespace.
type: string
example: .devcontainer/example/devcontainer.json
nullable: true
prebuild:
description: Whether the codespace was created from a prebuild.
type: boolean
example: false
nullable: true
created_at:
type: string
format: date-time
example: '2011-01-26T19:01:12.000Z'
updated_at:
type: string
format: date-time
example: '2011-01-26T19:01:12.000Z'
last_used_at:
description: Last known time this codespace was started.
type: string
format: date-time
example: '2011-01-26T19:01:12.000Z'
state:
description: State of this codespace.
enum:
- Unknown
- Created
- Queued
- Provisioning
- Available
- Awaiting
- Unavailable
- Deleted
- Moved
- Shutdown
- Archived
- Starting
- ShuttingDown
- Failed
- Exporting
- Updating
- Rebuilding
example: Available
type: string
url:
description: API URL for this codespace.
type: string
format: uri
git_status:
type: object
properties:
ahead:
description: The number of commits the local repository is ahead of the remote.
type: integer
example: 0
behind:
description: The number of commits the local repository is behind the remote.
type: integer
example: 0
has_unpushed_changes:
description: Whether the local repository has unpushed changes.
type: boolean
has_uncommitted_changes:
description: Whether the local repository has uncommitted changes.
type: boolean
ref:
description: >-
The current branch (or SHA if in detached HEAD state) of the local
repository.
type: string
example: main
location:
description: The initally assigned location of a new codespace.
enum:
- EastUs
- SouthEastAsia
- WestEurope
- WestUs2
example: WestUs2
type: string
idle_timeout_minutes:
description: >-
The number of minutes of inactivity after which this codespace will be
automatically stopped.
type: integer
example: 60
nullable: true
web_url:
description: URL to access this codespace on the web.
type: string
format: uri
machines_url:
description: API URL to access available alternate machine types for this codespace.
type: string
format: uri
start_url:
description: API URL to start this codespace.
type: string
format: uri
stop_url:
description: API URL to stop this codespace.
type: string
format: uri
publish_url:
description: API URL to publish this codespace to a new repository.
type: string
format: uri
nullable: true
pulls_url:
description: API URL for the Pull Request associated with this codespace, if any.
type: string
format: uri
nullable: true
recent_folders:
type: array
items:
type: string
runtime_constraints:
type: object
properties:
allowed_port_privacy_settings:
description: The privacy settings a user can select from when forwarding a port.
type: array
nullable: true
items:
type: string
pending_operation:
description: >-
Whether or not a codespace has a pending async operation. This would mean
that the codespace is temporarily unavailable. The only thing that you can
do with a codespace in this state is delete it.
type: boolean
nullable: true
pending_operation_disabled_reason:
description: Text to show user when codespace is disabled by a pending operation
type: string
nullable: true
idle_timeout_notice:
description: >-
Text to show user when codespace idle timeout minutes has been overriden
by an organization policy
type: string
nullable: true
retention_period_minutes:
description: >-
Duration in minutes after codespace has gone idle in which it will be
deleted. Must be integer minutes between 0 and 43200 (30 days).
type: integer
example: 60
nullable: true
retention_expires_at:
description: >-
When a codespace will be auto-deleted based on the
"retention_period_minutes" and "last_used_at"
type: string
format: date-time
example: '2011-01-26T20:01:12.000Z'
nullable: true
last_known_stop_notice:
description: >-
The text to display to a user when a codespace has been stopped for a
potentially actionable reason.
type: string
example: you've used 100% of your spending limit for Codespaces
nullable: true