Skip to content

Create or update a secret for the authenticated user

PUT
/user/codespaces/secrets/{secret_name}

Creates or updates a development environment secret for a user’s codespace with an encrypted value. Encrypt your secret using LibSodium. For more information, see “Encrypting secrets for the REST API.”

The authenticated user must have Codespaces access to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the codespace or codespace:secrets scope to use this endpoint.

API method documentation

secret_name
required
string

The name of the secret.

Media type application/json
object
encrypted_value

Value for your secret, encrypted with LibSodium using the public key retrieved from the Get the public key for the authenticated user endpoint.

string
/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$/
key_id
required

ID of the key you used to encrypt the secret.

string
selected_repository_ids

An array of repository ids that can access the user secret. You can manage the list of selected repositories using the List selected repositories for a user secret, Set selected repositories for a user secret, and Remove a selected repository from a user secret endpoints.

Array
Examples
Example default
{
"encrypted_value": "c2VjcmV0",
"key_id": "012345678912345678",
"selected_repository_ids": [
"1234567",
"2345678"
]
}

Response after successfully creating a secret

Media type application/json
Empty Object

An object without any properties.

object
Examples
Example default
null

Response after successfully updating a secret

Resource not found

Media type application/json
Basic Error

Basic Error

object
message
string
documentation_url
string
url
string
status
string
Example generated
{
"message": "example",
"documentation_url": "example",
"url": "example",
"status": "example"
}

Validation failed, or the endpoint has been spammed.

Media type application/json
Validation Error

Validation Error

object
message
required
string
documentation_url
required
string
errors
Array<object>
object
resource
string
field
string
message
string
code
required
string
index
integer
value
One of:
string
nullable
Example generated
{
"message": "example",
"documentation_url": "example",
"errors": [
{
"resource": "example",
"field": "example",
"message": "example",
"code": "example",
"index": 1,
"value": [
"example"
]
}
]
}