---
title: "Set allowed actions for a repository"
method: PUT
path: "/repos/{owner}/{repo}/actions/permissions/selected-actions"
tags: ["actions"]
---

# Set allowed actions for a repository

`PUT /repos/{owner}/{repo}/actions/permissions/selected-actions`

Sets the actions that are allowed in a repository. To use this endpoint, the repository permission policy for `allowed_actions` must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for a repository](#set-github-actions-permissions-for-a-repository)."

If the repository belongs to an organization or enterprise that has `selected` actions set at the organization or enterprise levels, then you cannot override any of the allowed actions settings.

To use the `patterns_allowed` setting for private repositories, the repository must belong to an enterprise. If the repository does not belong to an enterprise, then the `patterns_allowed` setting only applies to public repositories.

You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `administration` repository permission to use this API.

## Path parameters

- `owner` string, required
- `repo` string, required

## Request body

- SelectedActions
  - `github_owned_allowed` boolean, required — Whether GitHub-owned actions are allowed. For example, this includes the actions in the `actions` organization.
  - `patterns_allowed` string[], required — Specifies a list of string-matching patterns to allow specific action(s). Wildcards, tags, and SHAs are allowed. For example, `monalisa/octocat@*`, `monalisa/octocat@v2`, `monalisa/*`.

## Response `204`

Response

---

[API](https://skmtc.net/github/apis/github-v3-rest-api-6.md) · [All operations](https://skmtc.net/github/apis/github-v3-rest-api-6/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/github/github-v3-rest-api-6/versions/15db3fa0759b/schema)
