Skip to main content

Capabilities

ResourceSyncProvision
Enterprise
Organizations
Users
Teams
Repositories
Additional functionality: The GitHub Enterprise Cloud connector supports account provisioning by inviting new users to a configured default organization.

Gather GitHub Enterprise Cloud credentials

Use a GitHub App, not a personal access token. The app must be installed on the enterprise and on each organization and repository set that C1 will sync or manage. Enterprise installation alone does not grant organization or repository API access.
1
Copy the GitHub Enterprise Cloud enterprise slug.
2
Create or select a GitHub App that is installed on the enterprise.
3
Grant the enterprise installation read access for enterprise members and organizations. If C1 should discover organization installations, also grant read access for enterprise organization installations.
4
Install the same GitHub App on each organization that C1 should sync. Grant Members read access for sync, or Members write access if C1 should invite users or manage organization and team membership.
5
Grant repository Metadata read access and Administration read access for repository access sync. Use Administration write access if C1 should manage repository collaborators or team repository access.
6
Copy the GitHub App ID.
7
Download the GitHub App private key.
8
Copy the enterprise installation ID for the GitHub App.
9
If you plan to invite new users through C1, choose the default organization that should receive account invitations.

Configuration fields

FieldRequiredDescription
enterprise-slugYesThe slug of the GitHub Enterprise Cloud enterprise.
app-idYesThe App ID of the GitHub App.
app-privatekey-pathYesThe GitHub App private key file.
installation-idYesThe GitHub App installation ID on the enterprise.
default-orgNoThe organization used for new-user invitations. Required for account provisioning.
instance-urlNoGitHub API base URL override. Leave blank for https://api.github.com.

Synced resource types

  • Enterprise: the configured enterprise, with member and owner grants.
  • Organizations: organizations in the enterprise, with member and admin grants.
  • Users: organization members discovered across synced organizations.
  • Teams: organization teams, with member and maintainer grants.
  • Repositories: organization repositories, with pull, triage, push, maintain, and admin grants for users and teams.

Special notes

  • Team maintainers are also emitted as team members.
  • Repository team grants are expandable through the corresponding team member and maintainer entitlements.
  • Organization provisioning currently supports revocation. Revoking an organization member removes that user from the organization; revoking an organization admin demotes the user to member.
  • Account provisioning requires default-org or an organization value in the account profile so GitHub has an organization to receive the invitation.

Configure the GitHub Enterprise Cloud connector

Follow these instructions to use a built-in, no-code connector hosted by C1.
1
In C1, navigate to Integrations > Connectors and click Add connector.
2
Search for GitHub Enterprise Cloud and click Add.
3
Choose how to set up the new GitHub Enterprise Cloud connector.
4
Set the owner for this connector.
5
Click Next.
6
Find the Settings area of the page and click Edit.
7
Paste the GitHub Enterprise Cloud credentials into the relevant fields:
  • Enterprise slug: The GitHub enterprise slug.
  • GitHub App ID: The GitHub App ID.
  • GitHub App private key: The private key file for the GitHub App.
  • GitHub App installation ID: The enterprise installation ID.
  • Default organization: Optional organization used for account provisioning.
  • GitHub base URL: Optional API URL override.
8
Click Save.
9
The connector’s label changes to Syncing, followed by Connected. You can view the logs to ensure that information is syncing.
Done. Your GitHub Enterprise Cloud connector is now pulling access data into C1.