> For the complete documentation index, see [llms.txt](https://docs.teleskope.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.teleskope.ai/connectors/saas/github.md).

# Github

##

{% stepper %}
{% step %}
**Create a Github App**

Since Teleskope follows a single-tenant architecture, each customer will have their own dedicated Teleskope instance, with a custom callback URL.

**Requirements**

* Admin User: User must be an organization **admin** to create the application and install in org
* Callback URL: Teleskope will provide you with your dedicated callback URL
* Setup URL: Teleskope will provide you with your dedicated setup URL

**Create a new app in GitHub**

1. Go to your Developer settings: http(s):///settings/apps
2. Select GitHub Apps and then New GitHub App
3. Give your app a unique name and add an optional description
   1. Avoid using spaces in the app name
4. Use <https://teleskope.ai> as a homepage URL
5. Enter your dedicated Teleskope Setup URL
   1. <https://observatory.{baseURL}/settings/clouds/github?organization\\_name={githubOrgName}>
6. (Optional) Create a Webhook Secret
7. Create a private key for the application and download it

**Grant permissions in GitHub**

**Add the following repository permissions:**

* Contents (read, mandatory)
* Issues (read & write)
* Metadata (read-only, mandatory)
* Pull requests (read & write)

**Add the following organizational permission:**

* Members (read-only)
  {% endstep %}

{% step %}
**Enroll the Github Connector**

1. On <https://observatory.{baseURL}/settings/clouds/github>, click **Enroll organization +**
2. Enter your app's:
   1. Organization Name
   2. App name
   3. App ID
   4. Github App Private Key
3. Click Enroll
4. Delete your local Private Key .pem file
   {% endstep %}
   {% endstepper %}
