Skip to main content
The REST API is now versioned. For more information, see "About API versioning."

GitHub Actions Variables

Use the REST API to interact with variables in GitHub Actions.

About variables in GitHub Actions

You can use the REST API to create, update, delete, and retrieve information about variables that can be used in workflows in GitHub Actions. Variables allow you to store non-sensitive information, such as a username, in your repository, repository environments, or organization.

These endpoints are available for authenticated users, OAuth Apps, and GitHub Apps. Access tokens require repo scope for private repositories and public_repo scope for public repositories. GitHub Apps must have the actions_variables/environments/organization_actions_variables permission to use these endpoints. Authenticated users must have collaborator access to a repository to create, update, or read variables.

List organization variables

Works with GitHub Apps

Lists all organization variables. You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the organization_actions_variables:read organization permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
orgstringRequired

The organization name. The name is not case sensitive.

Query parameters
Name, Type, Description
per_pageinteger

The number of results per page (max 30).

Default: 10

pageinteger

Page number of the results to fetch.

Default: 1

HTTP response status codes

Status codeDescription
200

OK

Code samples

get/orgs/{org}/actions/variables
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/variables

Response

Status: 200
{ "total_count": 3, "variables": [ { "name": "USERNAME", "value": "octocat", "created_at": "2019-08-10T14:59:22Z", "updated_at": "2020-01-10T14:59:22Z", "visibility": "private" }, { "name": "ACTIONS_RUNNER_DEBUG", "value": true, "created_at": "2019-08-10T14:59:22Z", "updated_at": "2020-01-10T14:59:22Z", "visibility": "all" }, { "name": "ADMIN_EMAIL", "value": "octocat@github.com", "created_at": "2019-08-10T14:59:22Z", "updated_at": "2020-01-10T14:59:22Z", "visibility": "selected", "selected_repositories_url": "https://api.github.com/orgs/octo-org/actions/variables/ADMIN_EMAIL/repositories" } ] }

Create an organization variable

Works with GitHub Apps

Creates an organization variable that you can reference in a GitHub Actions workflow. You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the organization_actions_variables:write organization permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
orgstringRequired

The organization name. The name is not case sensitive.

Body parameters
Name, Type, Description
namestringRequired

The name of the variable.

valuestringRequired

The value of the variable.

visibilitystringRequired

The type of repositories in the organization that can access the variable. selected means only the repositories specified by selected_repository_ids can access the variable.

Can be one of: all, private, selected

selected_repository_idsarray of integers

An array of repository ids that can access the organization variable. You can only provide a list of repository ids when the visibility is set to selected.

HTTP response status codes

Status codeDescription
201

Response when creating a variable

Code samples

post/orgs/{org}/actions/variables
curl \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/variables \ -d '{"name":"USERNAME","value":"octocat","visibility":"selected","selected_repository_ids":[1296269,1296280]}'

Response when creating a variable

Get an organization variable

Works with GitHub Apps

Gets a specific variable in an organization. You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the organization_actions_variables:read organization permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
orgstringRequired

The organization name. The name is not case sensitive.

namestringRequired

The name of the variable.

HTTP response status codes

Status codeDescription
200

OK

Code samples

get/orgs/{org}/actions/variables/{name}
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/variables/NAME

Response

Status: 200
{ "name": "USERNAME", "value": "octocat", "created_at": "2019-08-10T14:59:22Z", "updated_at": "2020-01-10T14:59:22Z", "visibility": "selected", "selected_repositories_url": "https://api.github.com/orgs/octo-org/actions/variables/USERNAME/repositories" }

Update an organization variable

Works with GitHub Apps

Updates an organization variable that you can reference in a GitHub Actions workflow. You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the organization_actions_variables:write organization permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
orgstringRequired

The organization name. The name is not case sensitive.

namestringRequired

The name of the variable.

Body parameters
Name, Type, Description
namestring

The name of the variable.

valuestring

The value of the variable.

visibilitystring

The type of repositories in the organization that can access the variable. selected means only the repositories specified by selected_repository_ids can access the variable.

Can be one of: all, private, selected

selected_repository_idsarray of integers

An array of repository ids that can access the organization variable. You can only provide a list of repository ids when the visibility is set to selected.

HTTP response status codes

Status codeDescription
204

No Content

Code samples

patch/orgs/{org}/actions/variables/{name}
curl \ -X PATCH \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/variables/NAME \ -d '{"name":"USERNAME","value":"octocat","visibility":"selected","selected_repository_ids":[1296269,1296280]}'

Response

Status: 204

Delete an organization variable

Works with GitHub Apps

Deletes an organization variable using the variable name. You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the organization_actions_variables:write organization permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
orgstringRequired

The organization name. The name is not case sensitive.

namestringRequired

The name of the variable.

HTTP response status codes

Status codeDescription
204

No Content

Code samples

delete/orgs/{org}/actions/variables/{name}
curl \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/variables/NAME

Response

Status: 204

List selected repositories for an organization variable

Works with GitHub Apps

Lists all repositories that can access an organization variable that is available to selected repositories. You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the organization_actions_variables:read organization permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
orgstringRequired

The organization name. The name is not case sensitive.

namestringRequired

The name of the variable.

Query parameters
Name, Type, Description
pageinteger

Page number of the results to fetch.

Default: 1

per_pageinteger

The number of results per page (max 100).

Default: 30

HTTP response status codes

Status codeDescription
200

OK

409

Response when the visibility of the variable is not set to selected

Code samples

get/orgs/{org}/actions/variables/{name}/repositories
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/variables/NAME/repositories

Response

Status: 200
{ "total_count": 1, "repositories": [ { "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}", "git_url": "git:github.com/octocat/Hello-World.git", "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}", "ssh_url": "git@github.com:octocat/Hello-World.git", "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": "http://api.github.com/repos/octocat/Hello-World/hooks" } ] }

Set selected repositories for an organization variable

Works with GitHub Apps

Replaces all repositories for an organization variable that is available to selected repositories. Organization variables that are available to selected repositories have their visibility field set to selected. You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the organization_actions_variables:write organization permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
orgstringRequired

The organization name. The name is not case sensitive.

namestringRequired

The name of the variable.

Body parameters
Name, Type, Description
selected_repository_idsarray of integersRequired

The IDs of the repositories that can access the organization variable.

HTTP response status codes

Status codeDescription
204

No Content

409

Response when the visibility of the variable is not set to selected

Code samples

put/orgs/{org}/actions/variables/{name}/repositories
curl \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/variables/NAME/repositories \ -d '{"selected_repository_ids":[64780797]}'

Response

Status: 204

Add selected repository to an organization variable

Works with GitHub Apps

Adds a repository to an organization variable that is available to selected repositories. Organization variables that are available to selected repositories have their visibility field set to selected. You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the organization_actions_variables:write organization permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
orgstringRequired

The organization name. The name is not case sensitive.

namestringRequired

The name of the variable.

repository_idintegerRequired

HTTP response status codes

Status codeDescription
204

No Content

409

Response when the visibility of the variable is not set to selected

Code samples

put/orgs/{org}/actions/variables/{name}/repositories/{repository_id}
curl \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/variables/NAME/repositories/REPOSITORY_ID

Response

Status: 204

Remove selected repository from an organization variable

Works with GitHub Apps

Removes a repository from an organization variable that is available to selected repositories. Organization variables that are available to selected repositories have their visibility field set to selected. You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the organization_actions_variables:write organization permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
orgstringRequired

The organization name. The name is not case sensitive.

namestringRequired

The name of the variable.

repository_idintegerRequired

HTTP response status codes

Status codeDescription
204

No Content

409

Response when the visibility of the variable is not set to selected

Code samples

delete/orgs/{org}/actions/variables/{name}/repositories/{repository_id}
curl \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/variables/NAME/repositories/REPOSITORY_ID

Response

Status: 204

List repository variables

Works with GitHub Apps

Lists all repository variables. You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the actions_variables:read repository permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
ownerstringRequired

The account owner of the repository. The name is not case sensitive.

repostringRequired

The name of the repository. The name is not case sensitive.

Query parameters
Name, Type, Description
per_pageinteger

The number of results per page (max 30).

Default: 10

pageinteger

Page number of the results to fetch.

Default: 1

HTTP response status codes

Status codeDescription
200

OK

Code samples

get/repos/{owner}/{repo}/actions/variables
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/variables

Response

Status: 200
{ "total_count": 2, "variables": [ { "name": "USERNAME", "value": "octocat", "created_at": "2019-08-10T14:59:22Z", "updated_at": "2020-01-10T14:59:22Z" }, { "name": "EMAIL", "value": "octocat@github.com", "created_at": "2020-01-10T10:59:22Z", "updated_at": "2020-01-11T11:59:22Z" } ] }

Create a repository variable

Works with GitHub Apps

Creates a repository variable that you can reference in a GitHub Actions workflow. You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the actions_variables:write repository permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
ownerstringRequired

The account owner of the repository. The name is not case sensitive.

repostringRequired

The name of the repository. The name is not case sensitive.

Body parameters
Name, Type, Description
namestringRequired

The name of the variable.

valuestringRequired

The value of the variable.

HTTP response status codes

Status codeDescription
201

Created

Code samples

post/repos/{owner}/{repo}/actions/variables
curl \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/variables \ -d '{"name":"USERNAME","value":"octocat"}'

Response

Get a repository variable

Works with GitHub Apps

Gets a specific variable in a repository. You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the actions_variables:read repository permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
ownerstringRequired

The account owner of the repository. The name is not case sensitive.

repostringRequired

The name of the repository. The name is not case sensitive.

namestringRequired

The name of the variable.

HTTP response status codes

Status codeDescription
200

OK

Code samples

get/repos/{owner}/{repo}/actions/variables/{name}
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/variables/NAME

Response

Status: 200
{ "name": "USERNAME", "value": "octocat", "created_at": "2021-08-10T14:59:22Z", "updated_at": "2022-01-10T14:59:22Z" }

Update a repository variable

Works with GitHub Apps

Updates a repository variable that you can reference in a GitHub Actions workflow. You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the actions_variables:write repository permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
ownerstringRequired

The account owner of the repository. The name is not case sensitive.

repostringRequired

The name of the repository. The name is not case sensitive.

namestringRequired

The name of the variable.

Body parameters
Name, Type, Description
namestring

The name of the variable.

valuestring

The value of the variable.

HTTP response status codes

Status codeDescription
204

No Content

Code samples

patch/repos/{owner}/{repo}/actions/variables/{name}
curl \ -X PATCH \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/variables/NAME \ -d '{"name":"USERNAME","value":"octocat"}'

Response

Status: 204

Delete a repository variable

Works with GitHub Apps

Deletes a repository variable using the variable name. You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the actions_variables:write repository permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
ownerstringRequired

The account owner of the repository. The name is not case sensitive.

repostringRequired

The name of the repository. The name is not case sensitive.

namestringRequired

The name of the variable.

HTTP response status codes

Status codeDescription
204

No Content

Code samples

delete/repos/{owner}/{repo}/actions/variables/{name}
curl \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/variables/NAME

Response

Status: 204

List environment variables

Works with GitHub Apps

Lists all environment variables. You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the environments:read repository permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
repository_idintegerRequired

The unique identifier of the repository.

environment_namestringRequired

The name of the environment.

Query parameters
Name, Type, Description
per_pageinteger

The number of results per page (max 30).

Default: 10

pageinteger

Page number of the results to fetch.

Default: 1

HTTP response status codes

Status codeDescription
200

OK

Code samples

get/repositories/{repository_id}/environments/{environment_name}/variables
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repositories/REPOSITORY_ID/environments/ENVIRONMENT_NAME/variables

Response

Status: 200
{ "total_count": 2, "variables": [ { "name": "USERNAME", "value": "octocat", "created_at": "2019-08-10T14:59:22Z", "updated_at": "2020-01-10T14:59:22Z" }, { "name": "EMAIL", "value": "octocat@github.com", "created_at": "2020-01-10T10:59:22Z", "updated_at": "2020-01-11T11:59:22Z" } ] }

Create an environment variable

Works with GitHub Apps

Create an environment variable that you can reference in a GitHub Actions workflow. You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the environment:write repository permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
repository_idintegerRequired

The unique identifier of the repository.

environment_namestringRequired

The name of the environment.

Body parameters
Name, Type, Description
namestringRequired

The name of the variable.

valuestringRequired

The value of the variable.

HTTP response status codes

Status codeDescription
201

Created

Code samples

post/repositories/{repository_id}/environments/{environment_name}/variables
curl \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repositories/REPOSITORY_ID/environments/ENVIRONMENT_NAME/variables \ -d '{"name":"USERNAME","value":"octocat"}'

Response

Get an environment variable

Works with GitHub Apps

Gets a specific variable in an environment. You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the environments:read repository permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
repository_idintegerRequired

The unique identifier of the repository.

environment_namestringRequired

The name of the environment.

namestringRequired

The name of the variable.

HTTP response status codes

Status codeDescription
200

OK

Code samples

get/repositories/{repository_id}/environments/{environment_name}/variables/{name}
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repositories/REPOSITORY_ID/environments/ENVIRONMENT_NAME/variables/NAME

Response

Status: 200
{ "name": "USERNAME", "value": "octocat", "created_at": "2021-08-10T14:59:22Z", "updated_at": "2022-01-10T14:59:22Z" }

Update an environment variable

Works with GitHub Apps

Updates an environment variable that you can reference in a GitHub Actions workflow. You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the environment:write repository permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
repository_idintegerRequired

The unique identifier of the repository.

namestringRequired

The name of the variable.

environment_namestringRequired

The name of the environment.

Body parameters
Name, Type, Description
namestring

The name of the variable.

valuestring

The value of the variable.

HTTP response status codes

Status codeDescription
204

No Content

Code samples

patch/repositories/{repository_id}/environments/{environment_name}/variables/{name}
curl \ -X PATCH \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repositories/REPOSITORY_ID/environments/ENVIRONMENT_NAME/variables/NAME \ -d '{"name":"USERNAME","value":"octocat"}'

Response

Status: 204

Delete an environment variable

Works with GitHub Apps

Deletes an environment variable using the variable name. You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the environment:write repository permission to use this endpoint.

Parameters

Headers
Name, Type, Description
acceptstring

Setting to application/vnd.github+json is recommended.

Path parameters
Name, Type, Description
repository_idintegerRequired

The unique identifier of the repository.

namestringRequired

The name of the variable.

environment_namestringRequired

The name of the environment.

HTTP response status codes

Status codeDescription
204

No Content

Code samples

delete/repositories/{repository_id}/environments/{environment_name}/variables/{name}
curl \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repositories/REPOSITORY_ID/environments/ENVIRONMENT_NAME/variables/NAME

Response

Status: 204