Jump to a Section

Overview

Authorizing a Github Account

The first time you use a Github card in your Flow, you will need to authorize an account.

  1. Add an Account Nickname. This should be unique, so that in the case that your teammates authorize multiple Github accounts, you will be able to tell them apart.
  2. Click “Create” to launch a window to sign in to your Github Account. Once you are signed in, this configuration will be saved.

    Events

    • Closed Pull Request

      Notifies user of a closed pull request.

    • New Commit

      Monitors a repository for new commits. Note: this connector will currently only show up to 100 repositories associated with your account. Please contact us if the repositories you need access to exceed 100.

      The repositories associated with your account may have significant (~5-10s) load time, prior to selection.

      Options

      • Repos (dropdown): the repository to monitor for new commits

      Output Fields

      • Commit
        • Message (text): the message associated with the commit
      • Committer
        • Name (text): name of the GitHub user who submitted the commit.
    • New Pull Request

      Start FLO when there is a new pull request in a repo

    • New and Updated Issues

      Listen to a repo for new and updated issues

    Actions

    • Create An Issue

      Creates an issue on a specific repo in an org inside GitHub.

      Options

      • org (text): the name of the org that contains the repo
      • repo (text): the name of the repo the issue will be assigned to

      Input Fields

      • issue

        • title (text): the title of the issue to be created
        • content (text): the body of the issue, i.e., the description
        • assignee (text): the person the issue should be assigned to
        • milestone (text): the milestone associated with the issue
      • labels

        • You can specify any number of labels on an issue by clicking or dropping a field into the labels section.

      Output Fields

      This card does not generate any output fields.

    • Create Milestone

      Create Milestone

      Creates an issue on a specific repo in an org inside GitHub.

      Options

      • org (text): the name of the org that contains the repo
      • repo (text): the name of the repo the issue will be assigned to

      Input Fields

      • Milestone
        • Title (text): Required. The title of the milestone.
        • State (text): The state of the milestone. Either “open” or “closed”. Defaults to open.
        • Description (text): The description of the milestone.
        • Due On (text): The milestone due date. This is a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

      Output Fields

      • Milestone ID (number)
      • Milestone Number (number)
      • Milestone URL (text)
      • HTML URL (text)
      • Labels URL (text)
      • State (text) - “open” or “closed”
      • Title (text)
      • Description (text)
      • Creator ID (number)
      • Creator Name (text)
      • Open Issues (number)
      • Closed Issues (number)
      • Created At (text) - in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.
      • Updated At (text) - in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.
      • Closed At (text) - in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.
      • Due On (text) - in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.
    • Custom API Action

      Make a custom HTTP Request to the Github API.

      Github API Docs: https://developer.github.com/v3/

      Options

      • Request Type (dropdown) - Available HTTP Request Methods. Choose from GET, POST, and DELETE. Refer to API docs in order to determine which request type to use.

        • GET: retrieves data from a web server based on your parameters. GET requests a representation of the specified resource, and if successful will receive a 200 OK response message with the requested content. Additional documentation here.

        • POST: sends data to a web server based on your parameters. POST requests include actions like uploading a file. Multiple POST’s may result in a different outcome than a single POST, so you should be cautious about unintentionally sending multiple POST’s. Additional documentation here.

        • PATCH: applies partial modifications to a resource on a web server based on your parameters. PATCH is not idempotent, meaning that the result of multiple PATCH’s could have unintended consequences. If a PUT is successful, you will receive a 200 response message (usually 204). Additional documentation here.

        • DELETE: deletes the specified resource from the web server based on your parameters (if the resource exists). Additional documentation here.

      Input Fields

      • Request

        • Relative URL (string) - Relative request URL. The relative URL structure for this action follows the .com. in the Github API url. E.g. - If the full API URL is https://api.github.com/issues, then the Relative URL would be /issues.

          Example: /issues
        • Query (object) - Query parmaeters for the request.

          Example: {"state":"open"}
        • Headers (object) - Headers for the request.

          Example: {"Accept":"application/json"}
        • Body (object) (only for POST and DELETE) - Body of the request.

          Example: {"foo": "automation, "bar": "integration"}

      Output Fields

      • Response
        • Status Code (number) - The status code of the HTTP response. Here is a list of all status codes.
        • Headers (object) - The response headers. A more detailed context for the response/status code that doesn’t relate to the output body. Not all headers that appear in a response header are response headers, meaning that some are unlikely to be useful to you.
        • Body (object) - The response body. Depending on the HTTP request you chose in Options, you may receive some data back. That data, such as the data from a GET request, will be contained in this Body object.
    • Get Pull Request

      Gets a pull request from GitHub.

      Options

      •  Repos (drop down menu): The repository used.

      Input Fields

      • Pull Request
        • Number (text) : The number of the pull request.

      Output Fields

      • Pull Request
        • URL (text)
        • State (text): open, closed, or null
        • Title (text)
        • Login (text)
        • Mergeable (text): true, false, or null
        • Mergeable State (text)
    • Merge Pull Request

      Merges a pull request against a repo.

      Input Fields

      • Repo
        • Owner (text): owner of the repo
        • Name (text): name of the repo
      • Pull Request
        • Number (text):
        • Message (text): extra message for the automatic commit
        • SHA hash (text): SHA that pull request head must match to allow merge

      Output Fields

      • Result
        • message (text): the message associated with the merge action
    • Set Commit Status

    • Update Issue Metadata

      Updates an issue on a specific repo in an org inside GitHub.

      Note: Any input fields left empty will not be overwritten in the updated issue.

      Options

      • Org (text): The name of the org that contains the repo. You can find this in the URL of your issue.
        • Example: github.com/ MY_ORG /MY_REPO/issues/ISSUE_NUMBER/, where MY_ORG is your org.
      • Repo (text): The name of the repository the issue will be assigned to. You can find this in the URL of your issue.
        • Example: github.com/MY_ORG/ MY_REPO /issues/ISSUE_NUMBER/, where MY_REPO is your repository.
      • Issue Number (text): The number of the issue. You can find this in the URL of your issue.
        • Example: github.com/MY_ORG/MY_REPO/issues/ ISSUE_NUMBER /.

      Input Fields

      Any input fields that are left empty will not be overwritten in the updated issue.

      • issue
        • title (text): The updated title of the issue.
        • content (text): The updated body of the issue, i.e., the description.
        • milestone (number): The updated number of the milestone to include in the issue. Milestone defaults to 0, which may cause an error. If you do not need to update your milestone, remove the default value and leave the field blank.
        • state (text): Updates whether the issue is “open” or “closed”.
        • label (list): A list of label strings to update in the issue. You can specify any number of labels on an issue by clicking or dropping a field into the labels section. This will overwrite previous labels on the issue.
        • assignee (list): A list of username strings to update in the issue. You can specify any number of assignees on an issue by clicking or dropping a field into the assignees section. This will overwrite previous assignees on the issue.

      Output Fields

      • Issue
        • Issue ID (number): The Issue ID number.
        • Issue URL (text): URL location of updated issue in the API.
        • Repository URL (text): URL of repo the issue is in.
        • Labels URL (text): URL to call to receive the updated list of labels.
        • Comments URL (text): URL location to receive issue comments.
        • Events URL (text): URL location of github events associated with the issue.
        • HTML URL (text): URL location of the updated issue.
        • Number (number): Number of updated issue.
        • State (text): Whether the updated issue is “open” or “closed”.
        • Title (text): Title of the updated issue.
        • Body (text): Content of the updated issue.
        • User ID (number): Github user id of user who updated issue.
        • User Name (text): Github username of user who updated issue.
        • Labels (object): Updated array of labels belonging to updated issue.
        • Assignee ID (number): Id number of the first updated issue assignee.
        • Assignee Name (text): User name of the first updated issue assignee.
        • Assignees (object): List of updated assignees that includes metadata about each assignee.
        • Milestone ID (number): Id of updated milestone.
        • Milestone Number (number): Number associated to updated milestone.
        • Milestone State (text): Whether the updated milestone is “open” or “closed”.
        • Milestone Title (text): Title of the updated milestone.
        • Locked (boolean): “true” or “false” whether the updated issue is locked.
        • Comments (number): Number of comments on the issue.
        • Pull Request URL (text): URL location of pull request, if the issue is a pull request.
        • Closed At (text): When the updated issue was closed, if it was closed.
        • Created At (text): When the updated issue was created.
        • Updated At (text): When the updated issue was updated.
        • Closed By (object): Metadata about the user who closed the updated issue, if it was closed.
    • Update Pull Request

      Updates a specific pull request on a repo.

      Input Fields

      • Repo
        • Owner (text): owner of the repo that contains the pull request to be updated
        • Name (text): name of the repo containing the pull request
      • Pull Request
        • Number (Number): description of input field
        • State (text): State of the pull request, either _open _or closed.
        • Title (text): Title of the pull request.
        • Body (text): Body of the pull request.

      Output Fields

      No output fields are generated for this card.