GitHub integration
Last updated
Was this helpful?
Last updated
Was this helpful?
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.
Say you want to create a Crate that automatically backs up all workflow exports any time they change. You could use the GitHub integration to make a commit of each change of the file. This would give you a more fully featured option than Rewst’s built in version control.
Use this integration to set up a system for sharing workflows you’ve created with other Rewst customers. Create a public repository, and post exported repositories of your shareable workflows.
Log in to the GitHub account linked to your organization.
Navigate to Configuration > Integrations in the left side menu of your Rewst platform.
In the Integrations page, search for the GitHub integration.
Click the integration tile to launch the Configuration setup page.
Enter the following in the relevant fields of the form:
The Name that will be used to refer to the integration configuration
Description: this is optional.
Check the Is Default checkbox.
Organization Name: make sure that this is exact to how your organization name appears in GitHub.
Click Save Configuration.
Click Authorize.
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.
Click Install & Authorize.
A green confirmation message will appear at the top of your screen. Now, the configuration form will have an option to Re-Authorize.
Whenever you save configuration and reauthorize, Rewst will run a test action to make sure the integration is working.
For additional testing, click the Refresh Options button under the Organization Mapping section of the integration configuration page. This will return a list of repositories accessible by that organization.
The below error may also happen if you attempt to install the GitHub integration on multiple Rewst orgs using the same GitHub org.
If you encounter any errors, contact us in your Discord support channel for assistance.
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:
Log in to GitHub.
Find the installed GitHub App.
Click the Configure button.
Uninstall the app. You should now be able to re-authorize in Rewst, and the GitHub App will be reinstalled once successful.
For more on how actions work in Rewst, check out our introductory actions documentation here.
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.