GitHub Setup Guide
Follow our setup guide to connect GitHub to Fivetran.
Prerequisites
To connect GitHub to Fivetran, you need access to an active GitHub account with the permissions appropriate for the following GitHub scopes:
repo
read:org
admin:org_hook
admin:repo_hook
See the GitHub Scopes For OAuth Apps documentation for details.
Only use an HTTPS URL with TLS version 1.2 or above.
Setup instructions
Configure GitHub for authentication
Follow the configuration instructions for your chosen authentication method.
OAuth
You will configure OAuth during the connection setup process in the Fivetran dashboard.
Personal Access Token (PAT)
Create personal access tokens using multiple GitHub accounts to avoid rate limiting. Ideally, use 4–5 tokens from different users.
Grant the following scopes/permissions to each classic token:
repo
,read:org
,admin:repo_hook
,admin:org_hook
To sync
COPILOT_METRIC
andCOPILOT_METRIC_TEAM
data:Add
manage_billing:copilot
andread:org
, orAdd
read:enterprise
If using fine-grained personal access tokens, configure the following:
Required permissions:
- Administration:
read
- Issues:
read
- Members:
read
- Metadata:
read
- Pull requests:
read
- Organization projects:
read
- Administration:
To sync specific tables, grant additional permissions:
| Table | Permissions required | | ----- | -------------------- | |
WORKFLOWS
| Actions:read
| |SECURITY_ALERT
| Repository security advisories:read
, Dependabot alerts:read
| |RELEASE
| Contents:read
| |DEPLOYMENT
| Deployments:read
| |COMMIT_STATUS
| Commit statuses:read
|Disable unsupported tables in the connection's Schema tab:
CARD
,COLUMN
,PROJECT
, andCOMMIT_CHECK_RUN
. Fine-grained tokens don't provide permissions to sync repository-level projects or commit checks.To use webhooks, grant Organization hooks:
write
and Repository hooks:write
permissions.
GitHub App
Create a new GitHub App.
Set the following Repository and Organization permissions:
- Administration:
read
- Issues:
read
- Members:
read
- Metadata:
read
- Pull requests:
read
- Organization projects:
read
- Repository projects:
read
- Contents:
read
- Deployments:
read
- Administration:
Optionally, grant permissions to sync any of the following tables:
SECURITY_ALERT
table: Repository security advisories:read
, Dependabot alerts:read
WORKFLOWS
table: Actions:read
COMMIT_STATUS
table: Commit statuses:read
COMMIT_CHECK_RUN
table: Checks:read
Install the GitHub App on your organization or account from your GitHub App’s installation page.
Only one installation per GitHub App is supported.
Generate a private key for your GitHub App.
Finish Fivetran configuration
In the Fivetran connection setup form, enter your chosen Destination schema name.
(Hybrid Deployment only) If your destination is configured for Hybrid Deployment, the Hybrid Deployment Agent associated with your destination is pre-selected in the Select an existing agent drop-down menu. To use a different agent, select the agent of your choice, and then select the same agent for your destination.
Select your Authentication Mode:
Using OAuth
Click Authorize. This redirects you to GitHub.
In GitHub, log in. We recommend logging in using Incognito mode to ensure you're authorizing the correct account.
Click Authorize Fivetran and enter your GitHub password if prompted.
GitHub redirects you back to the Fivetran connection setup form, where the authentication is now complete.
To sync
COPILOT_METRIC
andCOPILOT_METRIC_TEAM
tables, make sure your OAuth app tokens include either themanage_billing:copilot
andread:org
or theread:enterprise
.
Using PAT
- Under Personal Access Tokens, click + Add.
- Add one or more valid personal access tokens. You can add multiple tokens.
- Click Validate personal access tokens. Fivetran will validate the tokens after submission.
Use tokens from multiple GitHub accounts (ideally 4–5) to avoid hitting GitHub's rate limits.
Using GitHub App
Enter your GitHub App Client ID.
Upload the Private Key associated with your GitHub App.
Once complete, Fivetran uses these credentials to authenticate the GitHub App.
You must install the GitHub App in your organization or account before completing this step.
Choose whether to:
- Sync All Repositories, or
- Sync Specific Repositories (requires manual permission configuration).
Set the Use Webhooks toggle to ON.
Webhooks are not supported with GitHub App authentication or Hybrid Deployment.
Click Save & Test. Fivetran will verify the connection and begin syncing your GitHub data.
Related articles
description Connector Overview
account_tree Schema Information
settings API Connection Configuration