Connectors

/

GitHub

GitHub

Engineering Analytics

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
  • 39Streams
  • 24Entities
  • 7Actions
  • 50+Destinations
One connector

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.

Sync capabilities

  • Full Refresh SyncSupported
  • Incremental SyncSupported
  • Available onCloud, Self-Managed Enterprise
  • Destinations50+ Airbyte connectors
  • Connector version2.1.42

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.
39 streams

Every table you can sync from GitHub

  • Assignees

  • Branches

  • Contributor Activity

  • Collaborators

  • Issue labels

  • Organizations

  • Pull request commits

  • Tags

  • TeamMembers

  • TeamMemberships

  • Teams

  • Users

7 actions

Supported GitHub actions

  • Get

    Fetch a single record by ID.

  • List

    Read live records straight from the GitHub API.

  • API Search

  • 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.

Authentication

Authenticate GitHub once

  • OAuth

    Recommended
  • Personal Access Token

Use cases

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

FAQ

Common questions

Do I need more than one GitHub connection?

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

Do GitHub entity actions need a sync to run first?

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.

What is ETL?

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.

What data can you extract from GitHub?

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.

How do I transfer data from GitHub?

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.

What are top ETL tools to transfer data from GitHub?

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.

What is ELT?

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.

Difference between ETL and ELT?

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.