Connectors

/

GitHub

Data replication

Sync GitHub data anywhere.

GitHub is a renowned and respected development platform that provides code hosting services to developers for building software for both open source and private projects. It is a heavily trafficked platform where users can store and share code repositories and obtain support, advice, and help from known and unknown contributors. Three features in particular—pull request, fork, and merge—have made GitHub a powerful ally for developers and earned it a place as a (developers’) household name.

  • Certified
  • Generally available
  • 39 streams
  • 24 entities
  • Read & write
GitHub

Everything GitHub can do in Airbyte

  • Sync to your warehouse

    Land 39 GitHub tables in 50+ destinations on a schedule you control.

  • Live entity actions

    Read, create and update GitHub records at runtime through typed entity actions.

  • Context store search

    Query synced GitHub data with filters, sorting and semantic search, without spending GitHub API rate limits.

  • Incremental syncs

    Pull only the records that changed since the last run instead of reloading everything.

What to know before you sync GitHub

  • Support levelCertified
  • Available onCloud, Self-Managed Enterprise
  • Connector version2.1.42
  • Release stageGenerally available

Sync capabilities

  • Full Refresh SyncSupported
  • Incremental SyncSupported
  • Destinations50+ Airbyte connectors

Set up in 7 steps

  1. Open the Airbyte platform and navigate to the "Sources" tab on the left-hand side of the screen.
  2. Click on the "GitHub" source connector and select "Create a new connection."
  3. Enter a name for the connection and click "Next."
  4. Enter your GitHub credentials, including your username and personal access token. If you do not have a personal access token, you can create one by following the instructions provided in the Airbyte documentation.
  5. Select the repositories you want to connect to Airbyte and click "Test Connection" to ensure that the connection is successful.
  6. Once the connection is successful, click "Create Connection" to save the connection.
  7. You can now use the GitHub source connector to extract data from your selected repositories and integrate it with other data sources in Airbyte.

Every table you can sync from GitHub

  • Assignees

  • Branches

  • Contributor Activity

  • Collaborators

  • Issue labels

  • Organizations

  • Pull request commits

  • Tags

  • TeamMembers

  • TeamMemberships

  • Teams

  • Users

  • Issue timeline events

  • Comments

  • Commit comment reactions

  • Commit comments

  • Commits

  • Deployments

  • Events

  • Issue comment reactions

  • Issue events

  • Issue milestones

  • Issue reactions

  • Issues

  • Project (Classic) cards

  • Project (Classic) columns

  • Projects (Classic)

  • ProjectsV2

  • Pull request comment reactions

  • Pull request stats

  • Pull requests

  • Releases

  • Repositories

  • Review comments

  • Reviews

  • Stargazers

  • WorkflowJobs

  • WorkflowRuns

  • Workflows

Supported GitHub actions

  • Get

    Fetch a single record by ID.

  • List

    Read live records straight from the GitHub API.

  • Search

    Search GitHub records by query.

  • Context Store Search

    Query synced data with filters and sorting, with no API rate limits.

  • Create

    Write a new record back into GitHub.

  • Update

    Patch fields on an existing record.

  • Semantic Search

    Natural-language search across synced GitHub records.

Full parameter-level details live in the GitHub entity reference.

Authenticate GitHub once

    • Recommended

    OAuth

  • Personal Access Token

What teams build with GitHub

Show me all open issues in my repositories this month

List the top 5 repositories I've starred recently

Analyze the commit trends in my main project over the last quarter

Find all pull requests created in the past two weeks

Search for repositories related to machine learning in my organizations

Compare the number of contributors across my different team projects

Identify the most active branches in my main repository

Get details about the most recent releases in my organization

List all milestones for our current development sprint

Show me insights about pull request review patterns in our team

List all unanswered discussions in a repository

Show me recent discussions in the General category

Create a new issue titled 'Fix login bug' in my repository

Create an issue with labels 'bug' and 'urgent' in owner/repo

File a new bug report issue in our project repository

Create an issue and assign it to a team member

Open a new feature request issue in the repository

Close issue #42 in owner/repo as completed

Reopen issue #15 in our repository

Add the 'bug' and 'urgent' labels to issue #10

Assign user @johndoe to issue #25 in owner/repo

Update the title of issue #30 to 'New title'

Add a comment to issue #5 saying 'This has been fixed in the latest release'

Post a comment on pull request #100 with a status update

Create a pull request from feature-branch to main in owner/repo

Open a draft PR titled 'Add new feature' from my-branch to main

Common questions

Didn't find your answer?
Please don't hesitate to reach out.

Talk to sales

No. One GitHub authorization powers both the scheduled syncs that land data in your destination and the entity actions your agents call at runtime.

No. Entity actions read and write through the GitHub API as they are called, so they work immediately. Context store search is the exception: it queries data Airbyte has already synced, which is what lets it filter and sort without spending API rate limits.

ETL, an acronym for Extract, Transform, Load, is a vital data integration process. It involves extracting data from diverse sources, transforming it into a usable format, and loading it into a database, data warehouse or data lake. This process enables meaningful data analysis, enhancing business intelligence.

GitHub's API provides access to a wide range of data related to repositories, users, organizations, and more. Some of the categories of data that can be accessed through the API include:

- Repositories: Information about repositories, including their name, description, owner, collaborators, issues, pull requests, and more.

- Users: Information about users, including their username, email address, name, location, followers, following, organizations, and more.

- Organizations: Information about organizations, including their name, description, members, repositories, teams, and more.

- Commits: Information about commits, including their SHA, author, committer, message, date, and more.

- Issues: Information about issues, including their title, description, labels, assignees, comments, and more.

- Pull requests: Information about pull requests, including their title, description, status, reviewers, comments, and more.

- Events: Information about events, including their type, actor, repository, date, and more.

Overall, the GitHub API provides a wealth of data that can be used to build powerful applications and tools for developers, businesses, and individuals.

1. Open the Airbyte platform and navigate to the "Sources" tab on the left-hand side of the screen.

2. Click on the "GitHub" source connector and select "Create a new connection."

3. Enter a name for the connection and click "Next."

4. Enter your GitHub credentials, including your username and personal access token. If you do not have a personal access token, you can create one by following the instructions provided in the Airbyte documentation.

5. Select the repositories you want to connect to Airbyte and click "Test Connection" to ensure that the connection is successful.

6. Once the connection is successful, click "Create Connection" to save the connection.

7. You can now use the GitHub source connector to extract data from your selected repositories and integrate it with other data sources in Airbyte.

The most prominent ETL tools to transfer data to include: Airbyte, Fivetran, StitchData, Matillion, Talend Data Integration. These tools help in extracting data from various sources (APIs, databases, and more), transforming it efficiently, and loading it into and other databases, data warehouses and data lakes, enhancing data management capabilities.

ELT, standing for Extract, Load, Transform, is a modern take on the traditional ETL data integration process. In ELT, data is first extracted from various sources, loaded directly into a data warehouse, and then transformed. This approach enhances data processing speed, analytical flexibility and autonomy.

ETL and ELT are critical data integration strategies with key differences. ETL (Extract, Transform, Load) transforms data before loading, ideal for structured data. In contrast, ELT (Extract, Load, Transform) loads data before transformation, perfect for processing large, diverse data sets in modern data warehouses. ELT is becoming the new standard as it offers a lot more flexibility and autonomy to data analysts.

Start moving GitHub data today

Free for 14 days on Airbyte Cloud. One connection powers your scheduled syncs and your live GitHub actions.