Skip to main content Skip to complementary content
Already have an account? Sign in

GitHub (v2)

Last updated: 9/15/2026

GitHub integration summary

Stitch’s GitHub integration replicates data using the GitHub REST API v3. Refer to the Schema section for a list of objects available for replication.

GitHub feature snapshot

A high-level look at Stitch's GitHub (v2) integration, including release status, useful links, and the features supported in Stitch.

STITCH
Release status

Released on September 29, 2022

Supported by

Stitch

Stitch plan

Standard

API availability

Available

Singer GitHub repository

singer-io/tap-github

REPLICATION SETTINGS
Anchor Scheduling

Supported

Advanced Scheduling

Supported

Table-level reset

Unsupported

Configurable Replication Methods

Unsupported

DATA SELECTION
Table selection

Supported

Column selection

Supported

Select all

Supported

TRANSPARENCY
Extraction Logs

Supported

Loading Reports

Supported

Connecting GitHub

GitHub setup requirements

To set up GitHub in Stitch, you need:

  • Access to the projects you want to replicate data from. Stitch will only be able to access the same projects as the user who authorizes the connection in Stitch.

Step 1: Add GitHub as a Stitch data source

  1. Sign into your Stitch account.
  2. On the Stitch Dashboard page, click the Add Integration button.

  3. Click the GitHub icon.

  4. Enter a name for the integration. This is the name that will display on the Stitch Dashboard for the integration; it’ll also be used to create the schema in your destination.

    For example, the name “Stitch GitHub” would create a schema called stitch_github in the destination. Note: Schema names cannot be changed after you save the integration.

  5. In the Base Url field, enter the GitHub URL to use. This is required only if you are using a custom base URL, such as https://git.your-company.example.com. The default value is https://api.github.com.
  6. In the GitHub Repository Name field, enter the paths of the repositories you want to track. The path is relative to the base URL. For example: The path for the Stitch Docs repository is stitchdata/docs.

    • To track multiple repositories, enter a space delimited list of the repository paths. For example: stitchdata/docs stitchdata/docs-about-docs
    • To track all repositories in an organization, use * to replace the repository name in the path. For example: singer-io/*

Step 2: Define the historical replication start date

The Sync Historical Data setting defines the starting date for your GitHub integration. This means that data equal to or newer than this date will be replicated to your data warehouse.

Change this setting if you want to replicate data beyond GitHub’s default setting of 1 year. For a detailed look at historical replication jobs, check out the Syncing Historical SaaS Data guide.

Step 3: Create a replication schedule

In the Replication Frequency section, you’ll create the integration’s replication schedule. An integration’s replication schedule determines how often Stitch runs a replication job, and the time that job begins.

GitHub integrations support the following replication scheduling methods:

To keep your row usage low, consider setting the integration to replicate less frequently. See the Understanding and Reducing Your Row Usage guide for tips on reducing your usage.

Step 4: Authorize Stitch to access GitHub

  1. Once you’ve configured the integration parameters, click Authorize. You will be prompted to grant Stitch access to your GitHub account.
  2. Sign in to GitHub.
  3. If you want to replicate data from private repositories, click Request next to the name of the relevant GitHub organization, then click Request approval from owners. The owners of the repository will then receive an email prompting them to approve or deny the request.

    Note: This step is not needed if you only want to access public repositories. Any public repository, even within your work organization, should be available without approval from the owners.

    GitHub authorization screen
    GitHub authorization screen

  4. Click Authorize singer-bot.

Once the authorization process is completed, you will be redirected to Stitch. You will be able to start replicating data from public repositories. The extraction from private repositories will fail until the owner has approved the access request.

Initial and historical replication jobs

After you finish setting up GitHub, its Sync Status may show as Pending on either the Stitch Dashboard or in the Integration Details page.

For a new integration, a Pending status indicates that Stitch is in the process of scheduling the initial replication job for the integration. This may take some time to complete.

Free historical data loads

The first seven days of replication, beginning when data is first replicated, are free. Rows replicated from the new integration during this time won’t count towards your quota. Stitch offers this as a way of testing new integrations, measuring usage, and ensuring historical data volumes don’t quickly consume your quota.

GitHub table reference

assignees

The assignees table contains info about the available assignees for issues in the repositories specified for the integration.

Replication Method

Full Table

Primary Key

id

Useful links

GitHub documentation

assignees schema on GitHub

GitHub API method

collaborators

The collaborators table contains info about the users who contribute to the repositories specified for the integration.

For organization-owned repositories, this will include outside collaborators, organization owners, organization members that are direct collaborators, who have access through team memberships, or have access through default organization permissions.

Replication Method

Full Table

Primary Key

id

Useful links

collaborators schema on GitHub

GitHub API method

comments

The comments table contains info about comments made on issues in the repositories specified for the integration.

Replication Method

Key-based Incremental

Primary Key

id

Useful links

GitHub documentation

comments schema on GitHub

GitHub API method

commit_comments

The commit_comments table contains info about the commit comments in the repositories specified for the integration.

Replication Method

Key-based Incremental

Primary Key

id

Replication Key

updated_at

Useful links

commit_comments schema on GitHub

GitHub API method

commits

The commits table contains info about repository commits in a project.

Replication Method

Key-based Incremental

Primary Key

sha

Useful links

GitHub documentation

commits schema on GitHub

GitHub API method

events

The events table contains information about events in the repositories specified for the integration.

Replication Method

Key-based Incremental

Primary Key

id

Useful links

GitHub documentation

events schema on GitHub

GitHub API method

issue_events

The issue_events table contains info about issue events in the repositories specified for the integration.

Replication Method

Key-based Incremental

Primary Key

id

Useful links

issue_events schema on GitHub

GitHub API method

issue_labels

The issue_labels table contains info about issue labels in the repositories specified for the integration.

Replication Method

Full Table

Primary Key

id

Useful links

issue_labels schema on GitHub

GitHub API method

issue_milestones

The issue_milestones table contains info about issue milestones in the repositories specified for the integration.

Replication Method

Key-based Incremental

Primary Key

id

Useful links

issue_milestones schema on GitHub

GitHub API method

issues

The issues table contains info about issues in the repositories specified for the integration.

Issues and pull requests

GitHub’s API considers every pull request an issue, but not every issue may be a pull request. Therefore, this table may contain both issues and pull requests.

Replication Method

Key-based Incremental

Primary Key

id

Useful links

GitHub documentation

issues schema on GitHub

GitHub API method

pr_commits

The pr_commits table contains info about pull request commits and is a slight variation of the commits table. This allows you to associate commits to pull requests that are squash merged.

Replication Method

Key-based Incremental

Primary Key

id

Useful links

pr_commits schema on GitHub

GitHub API method

project_cards

The project_cards table contains information about project cards in the repositories specified for the integration.

Replication Method

Key-based Incremental

Primary Key

id

Useful links

GitHub documentation

project_cards schema on GitHub

GitHub API method

project_columns

The project_columns table contains info about the columns of projects in the repositories specified for the integration.

Replication Method

Key-based Incremental

Primary Key

id

Useful links

project_columns schema on GitHub

GitHub API method

projects

The projects table contains info about projects in the repositories specified for the integration.

Replication Method

Key-based Incremental

Primary Key

id

Useful links

projects schema on GitHub

GitHub API method

pull_requests

The pull_requests table contains info about pull requests made against the repositories specified for the integration.

Replication Method

Key-based Incremental

Primary Key

id

Useful links

GitHub documentation

pull_requests schema on GitHub

GitHub API method

releases

The releases table contains info about releases in the repositories specified for the integration.

Note: GitHub doesn’t include regular Git tags that haven’t been associated with a release.

Replication Method

Full Table

Primary Key

id

Useful links

releases schema on GitHub

GitHub API method

review_comments

The review_comments table contains info about comments made on pull request reviews in the repositories specified for the integration.

Replication Method

Key-based Incremental

Primary Key

id

Useful links

review_comments schema on GitHub

GitHub API method

reviews

The reviews table contains info about pull request reviews in the repositories specified for the integration. A pull request review is a group of comments on a pull request.

Replication Method

Key-based Incremental

Primary Key

id

Useful links

GitHub documentation

reviews schema on GitHub

GitHub API method

stargazers

The stargazers table contains info about users who have starred the repositories specified for the integration.

Replication Method

Full Table

Primary Key

user_id

Useful links

stargazers schema on GitHub

GitHub API method

team_members

The team_members table contains info about members of organization teams that are visible to the user who authorized the integration.

Replication Method

Full Table

Primary Key

id

Useful links

team_members schema on GitHub

GitHub API method

team_memberships

The team_memberships table contains info about membership of users in of organization teams that are visible to the user who authorized the integration.

Replication Method

Full Table

Primary Key

url

Useful links

team_memberships schema on GitHub

GitHub API method

teams

The teams table contains info about the teams in an organization. Only teams that are visible to the user who authorized the integration in Stitch will be replicated.

Replication Method

Full Table

Primary Key

id

Useful links

teams schema on GitHub

GitHub API method

Did this page help you?

If you find any issues with this page or its content – a typo, a missing step, or a technical error – please let us know!