GitHub integration

If you’re new to integrations in Rewst, read through our introductory integration documentation here.

GitHub’s own documentation for registering an app can be found here.

What does the GitHub integration do?

Our GitHub integration enables automation of GitHub’s version control system. Use GitHub’s API within Rewst workflows to automate aspects of version control in GitHub.

Set up the GitHub integration

Set up steps in GitHub

  1. Log in to the GitHub account linked to your organization.

Set up steps in Rewst

  1. Navigate to Configuration > Integrations in the left side menu of your Rewst platform.

  2. In the integrations page, search for the GitHub integration.

  3. Click the integration tile to launch the setup page.

  4. Enter the following in the relevant fields of the form:

    1. The Name that will be used to refer to the integration configuration

    2. Description: this is optional.

    3. Check the Is Default checkbox.

    4. Organization Name: make sure that this is exact to how your organization name appears in GitHub.

  5. Click Save Configuration.

  6. Click Authorize.

  7. Click Continue next to your desired installation location, from the list in the dialog that appears. The dialog will contain a list of organizations. It’s important that you choose the organization to match the one you entered for the organization name of the Rewst configuration form.

  8. Click Install & Authorize.

  9. A green confirmation message will appear at the top of your screen. Now, the configuration form will have an option to Re-Authorize.

  10. Rewst will do a quick validation of your input. Once completed, you'll see a new section beneath the configuration form for organization mapping. Complete your mapping as desired.

Test the Integration

Whenever you save configuration and reauthorize, Rewst will run a test action to make sure the integration is working.

For additional testing, click Refresh Options under the Organization Mapping section of the integration configuration page. This will return a list of repositories accessible by that organization.

Troubleshoot the GitHub integration

If you uninstall the GitHub integration in Rewst but don’t uninstall our GitHub App in your organization, any attempt to re-install and authorize the integration will fail, and you’ll be stuck at this screen:

To fix this failure:

  1. Log in to GitHub.

  2. Find the installed GitHub App.

  3. Click the Configure button.

  4. Uninstall the app. You should now be able to re-authorize in Rewst, and the GitHub App will be reinstalled once successful.

GitHub actions and endpoints

For more on how actions work in Rewst, check out our introductory actions documentation here.

Category
Action
Description

Billing

Get Github Actions Billing For An Organization

Gets the summary of the free and paid GitHub Actions minutes used. Paid minutes only apply to workflows in private repositories that use GitHub-hosted runners.

Billing

Get Github Packages Billing For An Organization

Gets the free and paid storage used for GitHub Packages in gigabytes. Paid minutes only apply to packages stored for private repositories.

Billing

Get Shared Storage Billing For An Organization

Gets the estimated paid and estimated total storage used for GitHub Actions and GitHub Packages. Paid minutes only apply to packages stored for private repositories.

Billing

Get Github Actions Billing For a User

Gets the summary of the free and paid GitHub Actions minutes used. Paid minutes only apply to workflows in private repositories that use GitHub-hosted runners.

Billing

Get Github Packages Billing For a User

Gets the free and paid storage used for GitHub Packages in gigabytes. Paid minutes only apply to packages stored for private repositories.

Billing

Get Shared Storage Billing For a User

Gets the estimated paid and estimated total storage used for GitHub Actions and GitHub Packages. Paid minutes only apply to packages stored for private repositories.

Checks

Create a Check Run

Creates a new check run for a specific commit in a repository. To create a check run, you must use a GitHub App. OAuth apps and authenticated users are not able to create a check suite.

Checks

Get a Check Run

Gets a single check run using its id. Note: The Checks API only looks for pushes in the repository where the check suite or check run were created.

Checks

Update a Check Run

Updates a check run for a specific commit in a repository. Note: The endpoints to manage checks only look for pushes in the repository where the check suite or check run were created.

Checks

Rerequest a Check Run

Triggers GitHub to rerequest an existing check run, without pushing new code. This triggers the check_run webhook event with the action rerequested.

Checks

List Check Runs In a Check Suite

Lists check runs for a check suite by its id. Note: The endpoints to manage checks only look for pushes in the repository where the check suite or check run were created.

Checks

Rerequest a Check Suite

Triggers GitHub to rerequest an existing check suite, without pushing new code. This triggers the check_suite webhook event with action rerequested.

Code Scanning

List Code Scanning Alerts For An Organization

Lists code scanning alerts for the default branch of all eligible repositories in an organization. Eligible repos are those you own or for which you are a security manager.

Code Scanning

List Code Scanning Alerts For a Repository

Lists code scanning alerts. The response includes a most_recent_instance object describing the alert's latest instance for the default branch or specified ref.

Code Scanning

List Code Scanning Analyses For a Repository

Lists details of all code scanning analyses for a repository, starting with the most recent. Paginated via page and per_page.

Code Scanning

Get a Code Scanning Analysis For a Repository

Gets a specified code scanning analysis for a repository. The default JSON response includes fields describing the analysis.

Copilot

Get Copilot Seat Information And Settings For An Organization

Note: Beta endpoint. Gets info about an organization's Copilot subscription, including seat counts and code matching policies.

Copilot

List All Copilot Seat Assignments For An Organization

Note: Beta endpoint. Lists all Copilot seat assignments being billed in the organization, whether active or pending cancellation.

Copilot

Add Teams To The Copilot Subscription For An Organization

Note: Beta endpoint. Purchases a Copilot seat for all users in each specified team. The org is billed accordingly.

Copilot

Remove Teams From The Copilot Subscription For An Organization

Note: Beta endpoint. Cancels the Copilot seat assignment for all members of each specified team.

Copilot

Add Users To The Copilot Subscription For An Organization

Note: Beta endpoint. Purchases a Copilot seat for each specified user. The org is billed accordingly.

Copilot

Remove Users From The Copilot Subscription For An Organization

Note: Beta endpoint. Cancels the Copilot seat assignment for each specified user.

Copilot

Get Copilot Seat Assignment Details For a User

Note: Beta endpoint. Gets the Copilot seat assignment details for an org member who has access to Copilot.

Dependabot

List Dependabot Alerts For An Enterprise

Lists Dependabot alerts for repositories owned by the specified enterprise. The authenticated user must be an enterprise member.

Dependabot

List Dependabot Alerts For An Organization

Lists Dependabot alerts for an organization. The user must be an org owner or security manager.

Dependabot

List Dependabot Alerts For a Repository

Tokens need the security_events scope (or public_repo for public) to list alerts.

Dependabot

Get a Dependabot Alert

Tokens need security_events scope for private repos or public_repo for public. Gets a specified Dependabot alert.

Generic Request

Github API Request

Generic action to make authenticated requests against the GitHub API.

Gists

List Gists For The Authenticated User

Lists the authenticated user's gists or all public gists if anonymous.

Gists

Create a Gist

Creates a gist with one or more files. Note: Don't name files gistfile plus a numeric suffix, as Gist uses that internally.

Gists

List Public Gists

Lists public gists, sorted most recent first.

Gists

List Starred Gists

Lists the authenticated user's starred gists.

Gists

Get a Gist

Gets a specified gist. This endpoint supports custom media types.

Gists

Delete a Gist

Deletes a gist by ID.

Gists

Update a Gist

Updates a gist's description or files. Unchanged files remain the same.

Gists

List Gist Comments

Lists comments on a gist. This endpoint supports custom media types.

Gists

Create a Gist Comment

Creates a comment on a gist. This endpoint supports custom media types.

Gists

Get a Gist Comment

Gets a gist comment. This endpoint supports custom media types.

Gists

Delete a Gist Comment

Deletes a gist comment. Must be the comment author or have repo admin access.

Gists

Update a Gist Comment

Updates a gist comment. This endpoint supports custom media types.

Gists

Get a Gist Revision

Gets a specific gist revision. This endpoint supports custom media types.

Gists

List Gists For a User

Lists public gists for the specified user.

Git

Create a Commit

Creates a new Git commit object. The response includes a verification object describing commit signature verification.

Git

Get a Commit Object

Gets a Git commit object.

Git

List Matching References

Returns references from your Git database matching a given name.

Git

Get a Reference

Returns a single reference. The :ref must be heads/ for branches or tags/ for tags.

Git

Create a Reference

Creates a reference. You cannot create references in empty repos (no branches).

Git

Delete a Reference

Deletes a reference. Returns 204 if successful, or 403 if blocked by branch protection.

Git

Update a Reference

Moves a branch or tag reference to another commit. Returns 200 if successful.

Git

Create a Tag Object

Note that creating a tag object does not create the actual tag reference.

Git

Get a Tag

Includes a verification object describing the commit signature verification.

Git

Create a Tree

Accepts nested entries. If you specify both a tree and a nested path modifying that tree, it overwrites and creates a new tree structure.

Git

Get a Tree

Returns a tree using its SHA or ref. If truncated is true, the item count exceeded the max limit.

Issues

List Issues Assigned To The Authenticated User

Lists issues assigned to the authenticated user across all visible repositories.

Issues

List Organization Issues Assigned To The Authenticated User

Lists issues in an organization assigned to the authenticated user. Note: All pull requests are issues, but not all issues are pull requests.

Issues

List Assignees

Lists available assignees for issues in a repository.

Issues

List Repository Issues

Lists open issues in a repository. Note: All pull requests are issues, but not all issues are pull requests.

Issues

Create An Issue

Users with pull access can create an issue. 410 Gone if issues are disabled.

Issues

Get An Issue

Returns 301 Moved Permanently if the issue was transferred to another repository.

Issues

Update An Issue

Owners and push-access users can edit an issue.

Issues

Add Assignees To An Issue

Adds up to 10 assignees to an issue. Already assigned users stay assigned.

Issues

Remove Assignees From An Issue

Removes one or more assignees from an issue.

Issues

Create An Issue Comment

Creates a comment on an issue or pull request. (Pull requests are issues, but not all issues are PRs.)

Licenses

List All Commonly Used Licenses

Lists the most commonly used GitHub licenses.

Licenses

Get a License

Gets information about a specific license.

Licenses

Get The License For a Repository

Returns the contents of the license file in a repository, if one is detected.

Orgs

List Organizations

Lists organizations in the order they were created on GitHub.

Orgs

Get Organization information

Retrieves details about your organization.

Orgs

Delete Your Organization

Deletes your organization and all its repositories.

Orgs

Update your Organization

Parameter Deprecation: Replaces members_allowed_repository_creation_type with granular permissions.

Orgs

List Organization Webhooks

Lists webhooks for your organization. You must be an org owner to list them.

Orgs

Create An Organization Webhook

Creates a webhook for your organization (e.g., with JSON payloads).

Orgs

Get An Organization Webhook

Returns a configured webhook in your organization.

Orgs

Delete An Organization Webhook

Deletes a webhook in your org. Must have admin permissions.

Orgs

Update An Organization Webhook

Updates a webhook in your org. Overwrites secret if provided.

Orgs

Get a Webhook Configuration For your Organization

Returns the config of a webhook in your org.

Orgs

Update a Webhook Configuration For your Organization

Updates only the config fields of an org webhook.

Orgs

Create An Organization Invitation

Invites users by GitHub user ID or email. Must be an org owner.

Orgs

Cancel An Organization Invitation

Cancels an invitation. Must be an org owner.

Orgs

List Organization Invitation Teams

Lists all teams associated with an invitation. Must be an org owner.

Orgs

List Organization Members

Lists all users in your organization, including concealed and public members if you are also a member.

Orgs

Check Organization Membership For a User

Checks if a user is a public or private member of an organization.

Orgs

Remove An Organization Member

Removes a user from the org (and all teams, repos).

Orgs

Get Organization Membership For a User

The authenticated user must be an org member to see another user's membership. Returns state to identify membership status.

Orgs

Set Organization Membership For a User

Only authenticated org owners can add or update a member's role.

Orgs

Remove Organization Membership For a User

Removes a user's membership. Must be an org owner.

Orgs

Remove Public Organization Membership For The Authenticated User

Removes the public membership of the authenticated user in the specified org (unless forced public).

Orgs

List Organization Memberships For The Authenticated User

Lists all org memberships for the authenticated user.

Orgs

Get An Organization Membership For The Authenticated User

If the authenticated user is active or pending in the org, returns membership info; otherwise 404.

Orgs

Update Organization Membership For The Authenticated User

Converts the authenticated user to an active member if they had a pending invitation.

Orgs

List Organizations For The Authenticated User

Lists all orgs the authenticated user belongs to.

Orgs

List Organizations For a User

Lists public organization memberships for a specified user.

Projects

List Organization Projects

Lists projects in an organization. 404 if disabled, 401/410 if insufficient privileges.

Projects

Create An Organization Project

Creates an organization project board. 410 if projects are disabled or no classic projects exist.

Projects

Get a Project Card

Gets information about a project card by card_id.

Projects

Delete a Project Card

Deletes a project card.

Projects

Update An Existing Project Card

Updates a project card. Returns 404 Not Found if projects are disabled, or 401/410 if insufficient privileges.

Projects

Move a Project Card

Moves a project card. Same potential error statuses.

Projects

List Project Cards

Lists the cards in a project column.

Projects

Create a Project Card

Creates a card in a column. Same error statuses if disabled or insufficient privileges.

Projects

Get a Project

Gets a project by id. Same error if disabled or insufficient privileges.

Projects

Delete a Project

Deletes a project board. 404 if disabled.

Projects

Update a Project

Updates a project board. 404 if disabled, 401/410 if no privileges.

Projects

List Project Collaborators

Lists collaborators for an organization project.

Projects

Add Project Collaborator

Adds a collaborator to an organization project with a permission level. Must be org owner or project admin.

Projects

Remove User As a Collaborator

Removes a collaborator from an organization project. Must be org owner or project admin.

Projects

List Repository Projects

Lists projects in a repository. 404 if disabled, 401/410 if no privileges.

Projects

Create a Repository Project

Creates a project board in a repository.

Projects

Create a User Project

Creates a user project board. 410 if user has no classic projects, 401/410 if no privileges.

Projects

List User Projects

Lists projects for a user.

Pulls

List Pull Requests

Lists pull requests in a specified repository.

Pulls

Create a Pull Request

Draft pull requests are in certain plans.

Pulls

Get a Pull Request

Gets a specified pull request (including draft PRs in some plans).

Pulls

Update a Pull Request

Updates a specified pull request (including draft PRs).

Pulls

List Commits On a Pull Request

Lists up to 250 commits for a pull request.

Pulls

List Pull Requests Files

Lists the files in a specified pull request.

Pulls

Check If a Pull Request Has Been Merged

Checks if a pull request has merged into the base branch. The response body is empty; the HTTP status indicates result.

Pulls

Merge a Pull Request

Merges a pull request into the base branch.

Pulls

Get All Requested Reviewers For a Pull Request

Gets the users/teams requested to review a pull request. Once they submit a review, they're no longer a "requested reviewer."

Pulls

Request Reviewers For a Pull Request

Requests reviews from a set of users and/or teams on a pull request.

Repos

List Organization Repositories

Lists repositories for a specified organization.

Repos

Create An Organization Repository

Creates a new repository in your organization. The authenticated user must be a member.

Repos

Get a Repository

If the repository is a fork, includes parent and source.

Repos

Delete a Repository

Requires admin access.

Repos

Update a Repository

Note: to edit repository topics, use "Replace all repository topics."

Repos

List Repository Activities

Lists a history of changes in a repository (pushes, merges, force pushes), associating them with commits and users.

Repos

List Branches

Lists all branches in a repository, including commit data and branch protection status.

Repos

List Commits

The response includes a verification object to describe commit signature verification.

Repos

List Pull Requests Associated With a Commit

Lists the merged pull request that introduced the commit. If the commit is not on the default branch, only open PRs with that commit are returned.

Repos

Get a Commit

Returns the contents of a single commit reference if you have read access.

Repos

Compare Two Commits

Compares two commits.

Repos

Get Repository Content

Gets the contents of a file/directory by path. Omit path to get the root directory.

Repos

List Repository Contributors

Lists contributors, sorted by number of commits in descending order.

Repos

List Repository Webhooks

Lists webhooks for a repository. last response can be null if no deliveries in 30 days.

Repos

Create a Repository Webhook

Creates a webhook in a repository. Multiple hooks can share the same config if their events don't overlap.

Repos

Get a Repository Webhook

Returns a configured webhook in a repository.

Repos

Delete a Repository Webhook

Deletes a webhook. You can use X-GitHub-Hook-ID to identify the webhook.

Repos

Update a Repository Webhook

Updates a webhook's configuration in a repository. Overwrites the secret if provided.

Repos

Get a Webhook Configuration For a Repository

Returns only the config fields for the repository webhook.

Repos

Update a Webhook Configuration For a Repository

Updates only the config fields for a repository webhook.

Repos

Sync a Fork Branch With The Upstream Repository

Syncs a branch of a fork to keep it current with the upstream repository.

Repos

Merge a Branch

Merges one branch into another using a merge commit. This can be within the same repo or from a fork to the parent.

Repos

List Releases

Lists releases, excluding unassociated Git tags.

Repos

Create a Release

Users with push access can create a release.

Repos

Get a Release Asset

To download the asset's binary content, set Accept to application/octet-stream.

Repos

Delete a Release Asset

Deletes a release asset. Must have push access.

Repos

Update a Release Asset

Edits a release asset. Must have push access.

Repos

Generate Release Notes Content For a Release

Generates a name and body describing a release, including changes since the last release.

Repos

Get The Latest Release

Gets the latest published full release.

Repos

Get a Release By Tag Name

Gets a published release corresponding to a given tag.

Repos

Get a Release

Gets a public release by release ID.

Repos

Delete a Release

Users with push access can delete a release.

Repos

Update a Release

Users with push access can edit a release.

Repos

List Release Assets

Lists assets for a release, including the upload URL.

Repos

Upload a Release Asset

Uses a Hypermedia relation to determine the correct upload URL.

Repos

List Public Repositories

Lists all public repositories in the order they were created.

Repos

List Repositories For The Authenticated User

Lists repositories the authenticated user has explicit read, write, or admin permission to access.

Repos

Create a Repository For The Authenticated User

Creates a repo for the authenticated user. If you want public repos, use public_repo; for private, use repo.

Repos

List Repositories For a User

Lists public repositories for a specified user.

Search

Search Code

Searches for query terms in files. Returns up to 100 results per page.

Search

Search Commits

Searches commits by various criteria on the default branch. Up to 100 results per page.

Search

Search Issues And Pull Requests

Finds issues by state and keyword. Up to 100 results per page.

Search

Search Labels

Finds labels in a repository, by name or description. Up to 100 results per page.

Search

Search Repositories

Finds repositories by criteria. Up to 100 results per page.

Search

Search Topics

Finds topics by criteria, sorted by best match. Up to 100 results per page.

Search

Search Users

Finds users by various criteria. Up to 100 results per page.

Security Advisories

List Global Security Advisories

Lists global security advisories matching parameters. Defaults to GitHub-reviewed, non-malware advisories if no parameters are set.

Security Advisories

Get a Global Security Advisory

Gets a global advisory by GHSA ID.

Security Advisories

List Repository Security Advisories For An Organization

Lists repository security advisories for an organization.

Security Advisories

List Repository Security Advisories

Lists security advisories in a repository.

Teams

List Teams

Lists all teams in an org that are visible to the authenticated user.

Teams

Create a Team

Creates a team. The user must be an org owner/member (depending on org settings).

Teams

Get a Team By Name

Gets a team using its team_slug, derived from the name.

Teams

Delete a Team

Deletes a team. Must be an org owner or team maintainer. Deleting a parent team also deletes its child teams.

Teams

Update a Team

Edits a team. Must be an org owner or team maintainer.

Teams

List Team Members

Lists members of a team, including child team members.

Teams

Get Team Membership For a User

Gets a user's membership with a team. The team must be visible to the authenticated user.

Teams

Add Or Update Team Membership For a User

Adds or updates a user's membership in a team. The user must be in the org; you must be an org owner or team maintainer.

Teams

Remove Team Membership For a User

Removes membership for a user from a team. Must be an org owner or team maintainer.

Teams

List Team Projects

Lists org projects associated with a team.

Teams

Add Or Update Team Project Permissions

Adds or updates a team's permission level for an org project. Must have admin on the project.

Teams

Remove a Project From a Team

Removes an org project from a team. Must be an org owner or team maintainer.

Teams

List Team Repositories

Lists a team's repositories visible to the authenticated user.

Teams

Check Team Permissions For a Repository

Checks if a team has certain permissions (admin, push, pull, etc.) on a repository. Inherited repos from a parent team are also checked.

Teams

Add Or Update Team Repository Permissions

Adds or updates the team's permission on a repository, provided the user has admin access to that repo.

Teams

Remove a Repository From a Team

Removes a repository from a team. Must be an org owner or team maintainer.

Teams

List Child Teams

Lists child teams of a specified team.

Teams

List Teams For The Authenticated User

Lists all teams across orgs the authenticated user belongs to. Token scope user, repo, or read:org is required.

Users

Get The Authenticated User

OAuth apps and PATs need the user scope to include private profile info.

Users

Update The Authenticated User

Note: If your email is private and you include email, that email won't be displayed publicly.

Users

Block a User

Blocks a user, returning 204 if successful or 422 if blocking fails.

Users

Unblock a User

Unblocks a user, returning 204.

Users

List Users

Lists all users (and orgs) by signup date.

Users

Get a User

Provides publicly visible info about a GitHub account. The email is the publicly visible one from the profile page.

Got an idea for a new Integration? Rewst is constantly adding new integrations to our integrations page. Submit your idea or upvote existing ideas here in our Canny feedback collector.

Last updated

Was this helpful?