instruction: Explain github_actions API usage with examples and best practices
output: The REST API is now versioned.
   
  For more information, see "
  About API versioning
  ."
  REST API endpoints for GitHub Actions
  Use the REST API to interact with GitHub Actions for an organization or repository.
  REST API endpoints for GitHub Actions artifacts
  List artifacts for a repository
  Get an artifact
  Delete an artifact
  Download an artifact
  List workflow run artifacts
  REST API endpoints for GitHub Actions cache
  Get GitHub Actions cache usage for an organization
  List repositories with GitHub Actions cache usage for an organization
  Get GitHub Actions cache usage for a repository
  List GitHub Actions caches for a repository
  Delete GitHub Actions caches for a repository (using a cache key)
  Delete a GitHub Actions cache for a repository (using a cache ID)
  GitHub-hosted runners
  List GitHub-hosted runners for an organization
  Create a GitHub-hosted runner for an organization
  Get GitHub-owned images for GitHub-hosted runners in an organization
  Get partner images for GitHub-hosted runners in an organization
  Get limits on GitHub-hosted runners for an organization
  Get GitHub-hosted runners machine specs for an organization
  Get platforms for GitHub-hosted runners in an organization
  Get a GitHub-hosted runner for an organization
  Update a GitHub-hosted runner for an organization
  Delete a GitHub-hosted runner for an organization
  REST API endpoints for GitHub Actions OIDC
  Get the customization template for an OIDC subject claim for an organization
  Set the customization template for an OIDC subject claim for an organization
  Get the customization template for an OIDC subject claim for a repository
  Set the customization template for an OIDC subject claim for a repository
  REST API endpoints for GitHub Actions permissions
  Get GitHub Actions permissions for an organization
  Set GitHub Actions permissions for an organization
  Get artifact and log retention settings for an organization
  Set artifact and log retention settings for an organization
  Get fork PR contributor approval permissions for an organization
  Set fork PR contributor approval permissions for an organization
  Get private repo fork PR workflow settings for an organization
  Set private repo fork PR workflow settings for an organization
  List selected repositories enabled for GitHub Actions in an organization
  Set selected repositories enabled for GitHub Actions in an organization
  Enable a selected repository for GitHub Actions in an organization
  Disable a selected repository for GitHub Actions in an organization
  Get allowed actions and reusable workflows for an organization
  Set allowed actions and reusable workflows for an organization
  Get self-hosted runners settings for an organization
  Set self-hosted runners settings for an organization
  List repositories allowed to use self-hosted runners in an organization
  Set repositories allowed to use self-hosted runners in an organization
  Add a repository to the list of repositories allowed to use self-hosted runners in an organization
  Remove a repository from the list of repositories allowed to use self-hosted runners in an organization
  Get default workflow permissions for an organization
  Set default workflow permissions for an organization
  Get GitHub Actions permissions for a repository
  Set GitHub Actions permissions for a repository
  Get the level of access for workflows outside of the repository
  Set the level of access for workflows outside of the repository
  Get artifact and log retention settings for a repository
  Set artifact and log retention settings for a repository
  Get fork PR contributor approval permissions for a repository
  Set fork PR contributor approval permissions for a repository
  Get private repo fork PR workflow settings for a repository
  Set private repo fork PR workflow settings for a repository
  Get allowed actions and reusable workflows for a repository
  Set allowed actions and reusable workflows for a repository
  Get default workflow permissions for a repository
  Set default workflow permissions for a repository
  REST API endpoints for GitHub Actions Secrets
  List organization secrets
  Get an organization public key
  Get an organization secret
  Create or update an organization secret
  Delete an organization secret
  List selected repositories for an organization secret
  Set selected repositories for an organization secret
  Add selected repository to an organization secret
  Remove selected repository from an organization secret
  List repository organization secrets
  List repository secrets
  Get a repository public key
  Get a repository secret
  Create or update a repository secret
  Delete a repository secret
  List environment secrets
  Get an environment public key
  Get an environment secret
  Create or update an environment secret
  Delete an environment secret
  REST API endpoints for self-hosted runner groups
  List self-hosted runner groups for an organization
  Create a self-hosted runner group for an organization
  Get a self-hosted runner group for an organization
  Update a self-hosted runner group for an organization
  Delete a self-hosted runner group from an organization
  List GitHub-hosted runners in a group for an organization
  List repository access to a self-hosted runner group in an organization
  Set repository access for a self-hosted runner group in an organization
  Add repository access to a self-hosted runner group in an organization
  Remove repository access to a self-hosted runner group in an organization
  List self-hosted runners in a group for an organization
  Set self-hosted runners in a group for an organization
  Add a self-hosted runner to a group for an organization
  Remove a self-hosted runner from a group for an organization
  REST API endpoints for self-hosted runners
  List self-hosted runners for an organization
  List runner applications for an organization
  Create configuration for a just-in-time runner for an organization
  Create a registration token for an organization
  Create a remove token for an organization
  Get a self-hosted runner for an organization
  Delete a self-hosted runner from an organization
  List labels for a self-hosted runner for an organization
  Add custom labels to a self-hosted runner for an organization
  Set custom labels for a self-hosted runner for an organization
  Remove all custom labels from a self-hosted runner for an organization
  Remove a custom label from a self-hosted runner for an organization
  List self-hosted runners for a repository
  List runner applications for a repository
  Create configuration for a just-in-time runner for a repository
  Create a registration token for a repository
  Create a remove token for a repository
  Get a self-hosted runner for a repository
  Delete a self-hosted runner from a repository
  List labels for a self-hosted runner for a repository
  Add custom labels to a self-hosted runner for a repository
  Set custom labels for a self-hosted runner for a repository
  Remove all custom labels from a self-hosted runner for a repository
  Remove a custom label from a self-hosted runner for a repository
  REST API endpoints for GitHub Actions variables
  List organization variables
  Create an organization variable
  Get an organization variable
  Update an organization variable
  Delete an organization variable
  List selected repositories for an organization variable
  Set selected repositories for an organization variable
  Add selected repository to an organization variable
  Remove selected repository from an organization variable
  List repository organization variables
  List repository variables
  Create a repository variable
  Get a repository variable
  Update a repository variable
  Delete a repository variable
  List environment variables
  Create an environment variable
  Get an environment variable
  Update an environment variable
  Delete an environment variable
  REST API endpoints for workflow jobs
  Get a job for a workflow run
  Download job logs for a workflow run
  List jobs for a workflow run attempt
  List jobs for a workflow run
  REST API endpoints for workflow runs
  Re-run a job from a workflow run
  List workflow runs for a repository
  Get a workflow run
  Delete a workflow run
  Get the review history for a workflow run
  Approve a workflow run for a fork pull request
  Get a workflow run attempt
  Download workflow run attempt logs
  Cancel a workflow run
  Review custom deployment protection rules for a workflow run
  Force cancel a workflow run
  Download workflow run logs
  Delete workflow run logs
  Get pending deployments for a workflow run
  Review pending deployments for a workflow run
  Re-run a workflow
  Re-run failed jobs from a workflow run
  Get workflow run usage
  List workflow runs for a workflow
  REST API endpoints for workflows
  List repository workflows
  Get a workflow
  Disable a workflow
  Create a workflow dispatch event
  Enable a workflow
  Get workflow usage