GitHub

Source Connector

Overview

Github

This source connector fetches from the GitHub REST API.

Streams

Data SourceStream Name
organization audit logorganization_auditlog

Prerequisites

Authentication

The following authentication options are supported by this connector:

Authentication MethodSupportedDocumentation
Personal access token(s)yesManaging your personal access tokens
GitHub App authenticationyesGitHub App installation

Personal access token(s)

Multiple personal access tokens can be used to load balance your API consumption.

Instructions
  1. Create a Personal access token (classic)
    1. Expiration: No expiration
    2. Scopes:
      1. read:audit_log
Personal access token Configuration Fields
FieldRequiredDescription
Personal access token(s)yesComma separated list of personal access tokens. Multiple tokens can be used to load balance your API quota consumption.

Github App authentication

  1. Register a GitHub App for your organization.
    1. Homepage URL
      1. https://docs.tarsal.cloud/docs/source-github
    2. Webhook
      1. Deselect the Active checkbox
    3. Permissions
      1. Organization permissions: Read-only
      2. All other permissions should be set to No access
  2. Once created, copy the Client ID to be used in the Tarsal configuration later.
  3. Generate a private key
    1. Under the General sub navigation for the App, click the Generate private key button. This will download a certificate file named something like app-name-date.private-key.pem. Save this file as it will be used in the Tarsal configuration later.
  4. Install the App
    1. Back at the top in the left navigation, click Install App and then click the Install button
  5. After clicking install you will be navigated to a website with a link that looks like this: https://github.com/settings/installations/{installation_id} Copy the installation_id from the path in the URL to be used in the Tarsal Configuration later
    1. You can find the installation_id later by navigation to Profile > Settings > Integrations > Applications and clicking Configure on the App
GitHub App Configuration Fields
FieldRequiredDescription
Client IDyesThe GitHub App Client ID
Installation IDyesThe ID corresponding to the specific installation of your application. Different from the client ID from and can be found in the URL of the app installation.
Private KeyyesThe GitHub App private key. Found in the *.private-key.pem file downloaded during the app creation process.

Configuration

FieldRequiredDescriptionExample
Organization/RepositoriesyesSpace separated list of organization/repository.
Examples:
All repositories: tarsalhq/*
Single repository: tarsalhq/repo1
Multiple repositories: tarsalhq/repo1 tarsalhq/repo2
tarsalhq/*
AuthenticationyesChoose one of the two methods listed in the authentication section above

Connector Limitations