Integrations

GitHub

Integrate with Github to sell access to private repositories.

Setup#

Create a repo to handle access request automatically.

  1. 1

    Create an access requests repo

    This must be a publicly accessible repo. It does not need any content. This is where customers can create issues using our auto-generated templates to request access to your private repos.

    Reference repo: playground-access-requests-repo-prod

    GitHub repository view for access requests
    Access requests repo example in GitHub.
  2. 2

    Connect to GitHub

    Follow our simple flow to install our GitHub app in your repositories. The app must be installed in your access requests repo and any private repo you wish to add entitlements for. Once installed, you'll be redirected back to creating a Github entitlement.

    Connect GitHub on the integrations page.

    Connect GitHub integration screen
    Connect your GitHub account from Integrations.
  3. 3

    (Optional) Change your access requests repo

    You may only have once access requests repo. You can set it now, or wait to choose it until you create an entitlement. At any time, you may choose to change your access requests repo in the integrations page.

    Update this on the integrations page.

    Change access requests repo setting
    Update the access requests repo in GitHub settings.

Create a new entitlement#

Steps to create a new entitlement once setup is complete.

  1. 1

    Create a new Github entitlement

    Click the "New Github Entitlement" button on the entitlements page

    Create a new GitHub entitlement
    Start a GitHub entitlement from the Entitlements page.
  2. 2

    Enter entitlement details

    Enter the entitlemnt details. If you have not already chosen your access requests repo, you must add it here. Choose your private repo to grant access to. Set a name for the entitlement, a price, access duration, and sale end date. Click "Create" to finish. You will be sent to the page for the entitlement.

    GitHub entitlement details modal
    Fill in the GitHub entitlement details.
  3. 3

    Activate your entitlement

    Your entitlement is deactivate by default. Click the activate button to activate it for customers to purchase.

    GitHub entitlement deactivated state
    Deactivated state before going live.
    GitHub entitlement activated state
    Activated state after toggling on.
  4. 4

    Send customers to the access requests repo

    Customers can now request access to your private repo from the access requests repo as shown below. Our app automatically creates an issue template to make requests easy for customers to fill out.

Customer flow#

Steps that a customer takes to purchase your entitlement.

  1. 1

    Create an access request issue.

    Visit the access requests repo and click "New Issue". Choose the appropriate issue template form for the desired entitlement. Optionally add your email to the form. Create the issue.

    Open a new GitHub issue
    Customers click to start a new access request issue.
    Create a GitHub access request issue
    Customers submit the access request form.
  2. 2

    Proceed through payment

    Proceed through the payment flow using the checkout session link given in the issue.

    Finalize GitHub access request
    Customers complete the access request flow.
  3. 3

    Enjoy access

    Accept the invitation to the repo and enjoy access!