GitHub is a web-based platform for version control and collaboration, enabling developers to host, review, and manage code repositories. It simplifies teamwork with tools for branching, pull requests, and integration, fostering seamless software development workflows.
Authentication:
Integrating your application with GitHub revolutionizes development workflows and automation, facilitating efficient, secure, and collaborative software engineering solutions. Before you begin, ensure you have the following information:
Connection Name : Choose a meaningful name for your connection. This name helps you identify the connection within your application or integration settings. It could be something descriptive like "MyAppGitHubIntegration".
Authentication Type : GitHub supports three types of authentications. They are :
Auth Token
OAuth with Client Credentials
OAuth
GitHub App
Hostname: Enter your GitHub Enterprise Server hostname. For example, github.example-organisation.com. Leave this field empty if you are using GitHub.com.
Auth Token Based:
Log in to the GitHub website and click on your profile picture in the top right corner.
Select "Settings" from the dropdown menu.
In the left sidebar, click on "Developer settings".
Click on "Personal access tokens" in the left sidebar.
Click on "Generate new token" (for classic tokens) or "Generate new token (fine-grained").
Enter a descriptive name for the token and optionally set an expiration date.
Select the scopes/permissions you want to grant the token.
Click "Generate token" at the bottom of the page.
Copy the generated token immediately, as you won't be able to see it again after leaving the page.
Treat this token like a password - keep it confidential and secure.
OAuth with Client Credentials Based:
Log in to the GitHub website and click on your profile picture in the top right corner.
Select "Settings" from the dropdown menu.
In the left sidebar, click on "Developer settings".
Click on "OAuth Apps" in the left sidebar.
Click on "New OAuth App".
Enter a descriptive name, callback URL and all other required fields.
Click "Register Application" at the bottom of the page.
Copy the client ID next to Client ID in your app.
Next to Client secrets, click "Generate a new client secret" to generate a client secret for your app.
Copy the generated client secret and use these credentials for further authentication purposes.
OAuth Based :
Click on the "Authorize button".
You will be redirected to the permissions request screen.
Carefully review the permissions we're asking for. If you're comfortable with the permissions, click "Authorize Integartions-Unifyapps" button.
You will be automatically redirected back to our platform, and you should see a confirmation message that your Github account is now connected.
GitHub App Based :
Log in to the GitHub website and click on your profile picture in the top right corner.
Select "Settings" from the dropdown menu.
In the left sidebar, click on "Developer settings".
Click on "GitHub Apps" in the left sidebar.
Click on "New GitHub App" and follow the official GitHub documentation to create an app.
After creating the app, open your GitHub App settings and copy the App ID.
Navigate to the Private keys section and click Generate a private key.
Download or copy the generated private key.
Install your app using the official GitHub documentation.
Copy the installation ID in the app settings where the app is installed.
Actions
Action Name | Description |
| Searches for an action event in GitHub. |
| Compares two commits and returns the list of files changed between them. |
| Creates a blob in GitHub. |
| Creates a comment on an issue in GitHub. |
| Creates a new commit in GitHub. |
| Creates a new file in a GitHub repository. |
| Creates a new issue in GitHub. |
| Creates a new pull request in GitHub. |
| Creates a review comment on a pull request in GitHub. |
| Creates a reference in GitHub. |
| Creates a new repository in a GitHub organization. |
| Creates a tree in GitHub. |
| Retrieves GitHub user details. |
| Retrieves a Git commit object from GitHub. |
| Retrieves the differences for a Git commit from GitHub. |
| Retrieves directory content from a GitHub repository. |
| Retrieves file content from a GitHub repository. |
| Retrieves an issue from GitHub. |
| Retrieves details of a pull request (PR) in GitHub. |
| Retrieves raw file content from a GitHub repository. |
| Retrieves a reference from GitHub. |
| Retrieves a workflow run from GitHub. |
| Iterates through all files in a GitHub repository. |
| Lists branches in a GitHub repository. |
| Lists commits on a repository branch within an optional time range. |
| Lists all commits associated with a pull request (PR) in GitHub. |
| Lists all files in a pull request. |
| Lists commit statuses for a reference in GitHub. |
| Lists workflow runs for a repository with optional filtering. |
| Lists repositories in GitHub. |
| Searches issues and pull requests in GitHub. |
| Triggers a workflow in a GitHub repository. |
| Updates a file in a GitHub repository. |
| Updates an issue in GitHub. |
| Updates a reference in GitHub. |
TRIGGERS
Trigger Name | Description |
| Searches for a trigger event in GitHub. |
| Iterates on all files from a GitHub repository. |
| Triggers when a new issue is created in GitHub. |
| Triggers when an issue is closed in GitHub. |
| Triggers when a new or updated pull request (PR) is made in GitHub. |
| Triggers when a pull request (PR) review activity is recorded in GitHub. |
| Triggers when a pull request (PR) review comment is created or updated in GitHub. |
| Triggers when a pull request (PR) review thread is created or updated in GitHub. |
| Triggers when a new or updated issue occurs in GitHub. |
| Triggers when a new or updated issue comment is made in GitHub. |
| Triggers when a new or updated milestone occurs in a GitHub repository. |