Airtable automation actions: GitHub Issues
  • 19 Jan 2024
  • 4 Minutes to read
  • Dark
    Light
  • PDF

Airtable automation actions: GitHub Issues

  • Dark
    Light
  • PDF

Article Summary

Learn about the process of adding an Airtable automation action that will either create a new issue or update an issue in the GitHub repository of your choice.

  • You might also be interested in our GitHub Sync Pull Request integration offering.

  • It's worth noting that these automation actions only work with GitHub Enterprise Cloud or GitHub.com. These actions do not work with GitHub Enterprise Server.

Introduction

Plan availability

All plan types with varying limitations

Permissions

  • Owners/Creators - Create, delete, duplicate, configure, or rename an automation and edit an automation's description.

  • Editors - View an automation's configuration or copy an automation's URL.

Platform(s)

Web/Browser, Mac app, and Windows app

Related reading

Getting started with Airtable Automations

Setting up an automation to create or update a GitHub issue

Step 1: Create a new automation

To start creating an automation, from the open base of your choice click on Automations in the upper left corner of your screen to open the automation configuration window. Click the + Create automation option to begin the setup process. If you would like, you can rename the automation right away to make it easier to understand what it does.

Step 2: Configure a trigger

Next, you will need to click + Add trigger option. Once clicked, the available triggers will display for you to choose from. Click here to learn more about all available automation triggers. Once you have configured and tested the trigger, you can move on to the next step.

Step 3: Find the “Hootsuite: Schedule post” action

  1. Click the + Add advanced logic or action option.

  2. Scroll down in the menu that appears and find the “GitHub Issues” section.

  3. While hovering over that option, click the Create issue or Update issue option.

Step 4: Configure the GitHub action

  1. Feel free to enter a description of what the action will do. You can always add one later if you prefer to skip this step.

  2. Under “Configuration,” click the dropdown below the “GitHub account” section. From here, either select a previously connected account or connect a new account. For more on authentication and authorization, click to jump to that section below. More information on managing connected accounts is available here.

  3. Once you have connected an account, you’ll need to select the Repository where your automation will either create or update the issue in GitHub.

  4. From here the steps will differ depending on the action you are configuring:

    1. Create a new issue

      1. Under “Title” add either a static title (not recommended) or click the + button to add in a dynamic value from an earlier automation step so that the title will be different for each issue created.

      2. Next, under “Body” add in helpful information that will give context to the issue being created. You can use a mix of static and dynamic values here.

      3. Finally, optionally add static or dynamic Milestones, Labels, and/or Assignees.

    2. Update an issue

      1. You’ll need to input an “Issue number” so that Airtable can update the appropriate issue in GitHub. In most scenarios, you’ll want to store the issue number in Airtable and then be able to dynamically reference that value in the automation so that it can update different issues over time.

      2. Next, under the “Update fields” section click the + Choose field option. You can choose to add and configure one, many, or all of the options (Title, Body, Milestone, Labels, State, or Assignee). Keep in mind that adding a field and leaving it blank in the configuration will clear out any data currently held in that field in GitHub.

  5. Once you’ve configured the automation action consider adding other following Airtable actions. For instance, you could use the Create record action to create and store a matching issue in Airtable in case you want to update the issue at a later point in time.

  6. Test the automation action step. This is a good point to check your GitHub repository to see if everything is populating as intended. The process can be trial and error depending upon your setup. Once the action step has been tested successfully, you will see some information appear. Particularly, you'll see a link to the exact GitHub issue that was created at the bottom of the test.

Step 5: Test and turn on the automation

Again, be sure to test all of the steps in the automation that you are building. Once every part of the automation has tested successfully, you’ll likely be ready to turn the automation on. Find the red colored “OFF” toggle and click it so the automation now appears as “ON” in green.

Security and OAuth scopes

Authentication and authorization

If this is your first time connecting Airtable to your GitHub account, then you will need to authenticate your account and authorize Airtable's usage. You will also need to install the Airtable GitHub app which you can click to download within the sync setup window or by clicking here. This is a requirement on GitHub's end that is needed to allow this sync to work. The authentication window will lead to an authorization window. Authorizing allows us to verify your GitHub identity, know which resources you can access, and act on your behalf.

4408159473687GitHubAuthentication.svg

  • Airtable only supports a single GitHub external account type, so the scopes listed below are used for the external source sync as well as the GitHub automation actions.

  • Airtable will only have access to the issues that the user who connected the GitHub account has access to. Furthermore, it will only have access to issues in repositories that the Airtable Connector GitHub App is installed in. If the user who connected the GitHub account leaves the company and their GitHub account gets deactivated, the sync and automation actions will stop working.

  • For more information on GitHub scopes, check out GitHub's documentation here.


Was this article helpful?