New: Supaflow Claude Code Plugin -- let AI agents create, edit, and monitor your data pipelines. See how the plugin works
GitHub logo

GitHub Connector

Sync repository events, issues, pull requests, and stargazers from one or many GitHub repositories into your warehouse.

SourceCommunity

Evaluating against Fivetran? See how Supaflow handles GitHub pricing, connector quality, and Snowflake deployment side-by-side.

Supaflow vs Fivetran

Why Supaflow

All connectors included

Every connector is available on every plan. Pricing does not increase with connector count.

Pay for compute, not rows

Credit-based pricing. Usage scales with your pipelines, not with row counts.

One platform

Ingestion, dbt Core transformation, reverse ETL, and orchestration in a single workspace.

Capabilities

One Source, Many Repositories

Point a single source at a specific repository, every repository under an owner, or any repository matching a name prefix. Rules like `owner/repo`, `owner/*`, and `owner/prefix*` all work together in the same comma-separated list.

Per-Repository Incremental Tracking

Repository Events are tracked per repository. Adding a new repository to your rules later does not cause older events on that repository to be skipped -- it starts fresh on its first sync.

Personal Access Token Authentication

Use a classic or fine-grained GitHub personal access token. Public repositories work with a basic token; private repositories need the `repo` scope; listing an organization's repositories for wildcard rules also needs `read:org`. No OAuth setup, no webhook wiring.

Stable, Versioned Schema

The schema ships with each connector release and does not change across runs. Fields that happen to be empty on a given sync are not silently dropped. Destination columns are stable run-to-run.

Supported Objects

Incremental

Repository Events

Push, Issues, Pull Request, Create, Watch, and other event types from each repository's event feed.

Full Refresh

Issues

Every issue with up to 100 reactions and 100 comments per issue; open and closed are both returned.

Pull Requests

Every pull request with up to 100 reactions and 100 comments per PR.

Stargazers

Users who starred each repository, with the timestamp they added the star.

Not yet supported

Commits, releases, tags, workflows and Actions runs, check runs, discussions, milestones, teams, organizations, users as entity, branches, gists, packages, security advisories, deployment statuses

Not exposed by the current connector. GitHub Enterprise Server (self-hosted) is also not supported. Contact us at support@supa-flow.io if you need any of these -- expansion is prioritized by customer demand.

How It Works

1

Create a GitHub personal access token

At github.com/settings/tokens, generate a classic or fine-grained token. Public repositories work with a basic token; private repositories need the `repo` scope; organization wildcards like `my-org/*` also need `read:org`. The connector is read-only, so write scopes should not be granted.

2

Define your repository rules

In the Repositories field, provide a comma-separated list. Use `owner/repo` for a specific repository, `owner/*` to sync every repository owned by a user or organization, or `owner/prefix*` to sync repositories whose names begin with a given prefix. Forms can be mixed in one value.

3

Paste the PAT into Supaflow

Paste the token into the Personal Access Token field. The value is stored encrypted and is never echoed back in logs or the UI.

4

Test and save

Click Test & Save. Supaflow resolves your rules against GitHub, confirms the token has visibility to every resulting repository, and saves the source.

Use Cases

Engineering activity dashboards

Sync issues, pull requests, and repository events across your engineering organization with a single rule. Build dashboards for review velocity, issue triage latency, PR merge rate, and per-team commit activity in dbt without standing up one source per repository.

Open-source project health reporting

Monitor stargazer growth, issue volume, and contributor activity on every repository under a GitHub owner or prefix in one pipeline. Newly created repositories that match the rule are picked up on the next sync automatically.

Release and activity auditing

Repository Events give you the event feed for each repository -- Push, Watch, Pull Request, Issues, and more -- as incremental rows in the warehouse. Use it to build per-repository activity heatmaps or reconcile webhook delivery gaps inside GitHub's retention window.

Frequently Asked Questions

Can one source sync more than one repository?
Yes. The Repositories field accepts a comma-separated mix of `owner/repo` literals, `owner/*` wildcards, and `owner/prefix*` prefix rules. The connector resolves these to a concrete list each time it syncs, so repositories that match a wildcard and are created after the source is configured are picked up on the next run.
How does incremental sync work for Repository Events?
Each repository is tracked independently. When you add a new repository to the rules, it starts fresh on its first sync instead of inheriting progress from other repositories, so older events are not skipped.
Why is the GitHub event feed missing older events on a busy repository?
GitHub returns only the 300 most recent events per repository, and the events feed covers only the past 30 days. Very active repositories need to be synced often enough that the 300-event window does not roll past the cursor between runs, and dormant repositories return an empty event stream regardless of what is visible in the GitHub web UI.
Does the connector write to GitHub?
No. The connector is read-only. It never calls create, update, delete, merge, or comment endpoints. Do not grant write scopes on the personal access token.
How does Supaflow handle GitHub rate limits?
GitHub applies API rate limits to both the REST and GraphQL APIs. Supaflow handles transient rate limiting automatically with retry and backoff, but very large syncs may take longer or need off-peak scheduling to stay inside GitHub's hourly budget.
Is GitHub Enterprise Server supported?
Only github.com is supported. GitHub Enterprise Server (self-hosted) is not yet supported. Contact us at support@supa-flow.io if Enterprise Server support is important for your evaluation.
Can I run the GitHub pipeline natively inside Snowflake?
Yes. Supaflow runs as a Snowflake Native App via Snowpark Container Services, so GitHub data is extracted and loaded without leaving your Snowflake account. See our Snowflake Native ETL guide for details.

Need a connector we don't support yet?

Build one with AI-powered Connector Dev Skills.

Learn More About the Connector SDK