Skip to content

Latest commit

 

History

History
4304 lines (4144 loc) · 229 KB

notes.org

File metadata and controls

4304 lines (4144 loc) · 229 KB
  • backups
  • graceful shutdown: could try hacking support into quart?
  • automatic dependency bumping:
    • scheduled task
    • checkout code, run arbitrary command, push back as branch
    • check if branch passes tests
    • either post a PR or merge
  • “merge” command
    • users posts a comment like “@trio-bot merge”
    • wait for all previous merges to pass/fail
    • we take the PR head
      • merge with latest HEAD of master
      • run it through formatter (and maybe update version number?)
      • push that to a temporary branch so CI systems can see it and run
      • if CI passes, update master’s HEAD to point to this new commit
      • (maybe?) release new version
  • “try” command
    • user posts a comment like “@trio-bot try” on a PR
    • take the PR head
    • merge with latest HEAD
    • run through formatter
    • push to temporary branch
    • wait for CI results
    • post a comment after the CI results come back
    • delete branch
  • how to listen for comments? like “@trio-bot ping” where it posts a command saying “pong”?
    • maybe a generic dispatcher?
    • NEXT STEP: write unit tests for the command dispatch

ways you can get notified of new comment body text:

  • event_type = “issues”, action=”opened”, and then text is in “issue.body”
  • event_type = “pull_request”, action=”opened”, and then text is in “pull_request.body”
  • event_type = “issue_comment”, action=”created”, and then text is in “comment.body”
  • event_type = “issue_comment”, action=”edited”, and then old text is in “changes.body.from”, and new text is in “comment.body” (editing a regular pull request comment gives this as well)
  • event_type=”pull_request_review_comment”, action=”created”, text is in “comment.body”
  • event_type = “pull_request_review”, action=”submitted” (or “edited”?), text is in “review.body” (can be null, if there is no body) (with “edited” you also get a “changes” subobject, but it can be empty)
  • event_type = “pull_request”, action=”edited”, new text is in “pull_request.body”, old text in “changes.body.from”
  • event_type = “issues”, action=”edited”, new text is in “issue.body”, old text in “changes.body.from”
  • event_type = “issue_comment”, action=”deleted”, old text in “comment.body”, no changes section

on edits issue author is “issue.user.login”, editor is “sender.login”, they might be different

also:

  • edits to review comments? (toplevel or not?)
  • commit comments (maybe just ignore these for now?)

@on_comment(“ping”) async def handle_ping(command, comment, sender): …

@on_comment(“ping”) async def handle_ping(old_command, new_command, comment, sender): …

levels of cleverness:

  • only detect commands inside regular issue comments
  • only detect commands when new comment/etc. is posted
  • also detect new commands when comment/etc. is edited, but treat them as new from-scratch commands
  • also detect when an old command goes away and do something with that, like cancel or modify it or whatever

we probably only want levels 0 or 1 for now

what does handler want?

  • the command extracted from the body of the comment
  • gh_client
  • the the actual event_type/payload in case the handler wants to do something clever with those
  • URLs for replying and for reacting - can be computed from the event_type+payload, so maybe just want helper functions, not arguments

@on_comment(“ping”) async def handle_ping(command, event_type, payload, gh_client): assert command == [“ping”]

we need to be able to reply to comments, and have some kind of serializable address for the replies, so they can be delivered later, outside the handler

  • to post a top-level comment on an issue: just need “issue.comments_url” event types: issues, issue_comment
  • to post a top-level comment on a pull request: just need “pull_request.comments_url”
    • and that’s also how you reply to a PR review top-level comment

    event types: pull_request, pull_request_review

  • to reply to a PR comment: https://developer.github.com/v3/pulls/comments/#create-a-review-comment-reply need the PR number and the top-level comment ID given a “pull_request_review_comment” event, find “pull_request.review_comments_url”, and append “/:comment_id/replies” where :comment_id is:
    • if there’s a “comment.in_reply_to_id”, use that
    • otherwise, it’s already a top-level comment, so use “comment.id”

    event type: pull_request_review_comment

in all cases, you post to that URL with an object like {“body”: “....”}

if we want to “react” to comments:

so again, just need to construct and track this URL

Github webhook payload examples

New issue created

One webhook with event type “issues”

{
  "action": "opened",
  "issue": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/5",
    "repository_url": "https://api.github.com/repos/njsmith-test-org/test-repo",
    "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/5/labels{/name}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/5/comments",
    "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/5/events",
    "html_url": "https://github.com/njsmith-test-org/test-repo/issues/5",
    "id": 509530847,
    "node_id": "MDU6SXNzdWU1MDk1MzA4NDc=",
    "number": 5,
    "title": "A very important issue",
    "user": {
      "login": "njsmith",
      "id": 609896,
      "node_id": "MDQ6VXNlcjYwOTg5Ng==",
      "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith",
      "html_url": "https://github.com/njsmith",
      "followers_url": "https://api.github.com/users/njsmith/followers",
      "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith/orgs",
      "repos_url": "https://api.github.com/users/njsmith/repos",
      "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [

    ],
    "state": "open",
    "locked": false,
    "assignee": null,
    "assignees": [

    ],
    "milestone": null,
    "comments": 0,
    "created_at": "2019-10-20T01:24:44Z",
    "updated_at": "2019-10-20T01:24:44Z",
    "closed_at": null,
    "author_association": "COLLABORATOR",
    "body": "This must be addressed immediately, if not before."
  },
  "repository": {
    "id": 202650514,
    "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
    "name": "test-repo",
    "full_name": "njsmith-test-org/test-repo",
    "private": false,
    "owner": {
      "login": "njsmith-test-org",
      "id": 54163074,
      "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
      "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith-test-org",
      "html_url": "https://github.com/njsmith-test-org",
      "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
      "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
      "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
      "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
      "type": "Organization",
      "site_admin": false
    },
    "html_url": "https://github.com/njsmith-test-org/test-repo",
    "description": null,
    "fork": false,
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
    "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
    "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
    "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
    "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
    "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
    "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
    "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
    "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
    "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
    "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
    "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
    "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
    "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
    "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
    "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
    "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
    "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
    "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
    "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
    "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
    "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
    "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
    "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
    "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
    "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
    "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
    "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
    "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
    "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
    "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
    "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
    "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
    "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
    "created_at": "2019-08-16T03:17:21Z",
    "updated_at": "2019-08-16T09:49:13Z",
    "pushed_at": "2019-08-16T09:49:11Z",
    "git_url": "git://github.com/njsmith-test-org/test-repo.git",
    "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
    "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
    "svn_url": "https://github.com/njsmith-test-org/test-repo",
    "homepage": null,
    "size": 5,
    "stargazers_count": 0,
    "watchers_count": 0,
    "language": null,
    "has_issues": true,
    "has_projects": true,
    "has_downloads": true,
    "has_wiki": true,
    "has_pages": false,
    "forks_count": 2,
    "mirror_url": null,
    "archived": false,
    "disabled": false,
    "open_issues_count": 1,
    "license": null,
    "forks": 2,
    "open_issues": 1,
    "watchers": 0,
    "default_branch": "master"
  },
  "organization": {
    "login": "njsmith-test-org",
    "id": 54163074,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
    "url": "https://api.github.com/orgs/njsmith-test-org",
    "repos_url": "https://api.github.com/orgs/njsmith-test-org/repos",
    "events_url": "https://api.github.com/orgs/njsmith-test-org/events",
    "hooks_url": "https://api.github.com/orgs/njsmith-test-org/hooks",
    "issues_url": "https://api.github.com/orgs/njsmith-test-org/issues",
    "members_url": "https://api.github.com/orgs/njsmith-test-org/members{/member}",
    "public_members_url": "https://api.github.com/orgs/njsmith-test-org/public_members{/member}",
    "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
    "description": null
  },
  "sender": {
    "login": "njsmith",
    "id": 609896,
    "node_id": "MDQ6VXNlcjYwOTg5Ng==",
    "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
    "gravatar_id": "",
    "url": "https://api.github.com/users/njsmith",
    "html_url": "https://github.com/njsmith",
    "followers_url": "https://api.github.com/users/njsmith/followers",
    "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
    "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
    "organizations_url": "https://api.github.com/users/njsmith/orgs",
    "repos_url": "https://api.github.com/users/njsmith/repos",
    "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
    "received_events_url": "https://api.github.com/users/njsmith/received_events",
    "type": "User",
    "site_admin": false
  },
  "installation": {
    "id": 3319993,
    "node_id": "MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzMxOTk5Mw=="
  }
}

Comment posted on existing issue

One event with type “issue_comment”

{
  "action": "created",
  "issue": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/5",
    "repository_url": "https://api.github.com/repos/njsmith-test-org/test-repo",
    "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/5/labels{/name}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/5/comments",
    "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/5/events",
    "html_url": "https://github.com/njsmith-test-org/test-repo/issues/5",
    "id": 509530847,
    "node_id": "MDU6SXNzdWU1MDk1MzA4NDc=",
    "number": 5,
    "title": "A very important issue",
    "user": {
      "login": "njsmith",
      "id": 609896,
      "node_id": "MDQ6VXNlcjYwOTg5Ng==",
      "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith",
      "html_url": "https://github.com/njsmith",
      "followers_url": "https://api.github.com/users/njsmith/followers",
      "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith/orgs",
      "repos_url": "https://api.github.com/users/njsmith/repos",
      "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [

    ],
    "state": "open",
    "locked": false,
    "assignee": null,
    "assignees": [

    ],
    "milestone": null,
    "comments": 0,
    "created_at": "2019-10-20T01:24:44Z",
    "updated_at": "2019-10-20T01:34:32Z",
    "closed_at": null,
    "author_association": "COLLABORATOR",
    "body": "This must be addressed immediately, if not before."
  },
  "comment": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments/544211719",
    "html_url": "https://github.com/njsmith-test-org/test-repo/issues/5#issuecomment-544211719",
    "issue_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/5",
    "id": 544211719,
    "node_id": "MDEyOklzc3VlQ29tbWVudDU0NDIxMTcxOQ==",
    "user": {
      "login": "njsmith",
      "id": 609896,
      "node_id": "MDQ6VXNlcjYwOTg5Ng==",
      "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith",
      "html_url": "https://github.com/njsmith",
      "followers_url": "https://api.github.com/users/njsmith/followers",
      "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith/orgs",
      "repos_url": "https://api.github.com/users/njsmith/repos",
      "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith/received_events",
      "type": "User",
      "site_admin": false
    },
    "created_at": "2019-10-20T01:34:32Z",
    "updated_at": "2019-10-20T01:34:32Z",
    "author_association": "COLLABORATOR",
    "body": "I agree with the original poster."
  },
  "repository": {
    "id": 202650514,
    "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
    "name": "test-repo",
    "full_name": "njsmith-test-org/test-repo",
    "private": false,
    "owner": {
      "login": "njsmith-test-org",
      "id": 54163074,
      "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
      "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith-test-org",
      "html_url": "https://github.com/njsmith-test-org",
      "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
      "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
      "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
      "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
      "type": "Organization",
      "site_admin": false
    },
    "html_url": "https://github.com/njsmith-test-org/test-repo",
    "description": null,
    "fork": false,
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
    "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
    "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
    "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
    "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
    "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
    "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
    "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
    "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
    "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
    "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
    "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
    "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
    "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
    "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
    "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
    "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
    "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
    "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
    "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
    "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
    "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
    "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
    "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
    "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
    "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
    "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
    "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
    "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
    "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
    "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
    "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
    "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
    "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
    "created_at": "2019-08-16T03:17:21Z",
    "updated_at": "2019-08-16T09:49:13Z",
    "pushed_at": "2019-08-16T09:49:11Z",
    "git_url": "git://github.com/njsmith-test-org/test-repo.git",
    "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
    "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
    "svn_url": "https://github.com/njsmith-test-org/test-repo",
    "homepage": null,
    "size": 5,
    "stargazers_count": 0,
    "watchers_count": 0,
    "language": null,
    "has_issues": true,
    "has_projects": true,
    "has_downloads": true,
    "has_wiki": true,
    "has_pages": false,
    "forks_count": 2,
    "mirror_url": null,
    "archived": false,
    "disabled": false,
    "open_issues_count": 1,
    "license": null,
    "forks": 2,
    "open_issues": 1,
    "watchers": 0,
    "default_branch": "master"
  },
  "organization": {
    "login": "njsmith-test-org",
    "id": 54163074,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
    "url": "https://api.github.com/orgs/njsmith-test-org",
    "repos_url": "https://api.github.com/orgs/njsmith-test-org/repos",
    "events_url": "https://api.github.com/orgs/njsmith-test-org/events",
    "hooks_url": "https://api.github.com/orgs/njsmith-test-org/hooks",
    "issues_url": "https://api.github.com/orgs/njsmith-test-org/issues",
    "members_url": "https://api.github.com/orgs/njsmith-test-org/members{/member}",
    "public_members_url": "https://api.github.com/orgs/njsmith-test-org/public_members{/member}",
    "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
    "description": null
  },
  "sender": {
    "login": "njsmith",
    "id": 609896,
    "node_id": "MDQ6VXNlcjYwOTg5Ng==",
    "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
    "gravatar_id": "",
    "url": "https://api.github.com/users/njsmith",
    "html_url": "https://github.com/njsmith",
    "followers_url": "https://api.github.com/users/njsmith/followers",
    "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
    "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
    "organizations_url": "https://api.github.com/users/njsmith/orgs",
    "repos_url": "https://api.github.com/users/njsmith/repos",
    "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
    "received_events_url": "https://api.github.com/users/njsmith/received_events",
    "type": "User",
    "site_admin": false
  },
  "installation": {
    "id": 3319993,
    "node_id": "MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzMxOTk5Mw=="
  }
}

Comment edited

One event with type “issue_comment”

{
  "action": "edited",
  "changes": {
    "body": {
      "from": "I agree with the original poster."
    }
  },
  "issue": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/5",
    "repository_url": "https://api.github.com/repos/njsmith-test-org/test-repo",
    "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/5/labels{/name}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/5/comments",
    "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/5/events",
    "html_url": "https://github.com/njsmith-test-org/test-repo/issues/5",
    "id": 509530847,
    "node_id": "MDU6SXNzdWU1MDk1MzA4NDc=",
    "number": 5,
    "title": "A very important issue",
    "user": {
      "login": "njsmith",
      "id": 609896,
      "node_id": "MDQ6VXNlcjYwOTg5Ng==",
      "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith",
      "html_url": "https://github.com/njsmith",
      "followers_url": "https://api.github.com/users/njsmith/followers",
      "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith/orgs",
      "repos_url": "https://api.github.com/users/njsmith/repos",
      "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [

    ],
    "state": "open",
    "locked": false,
    "assignee": null,
    "assignees": [

    ],
    "milestone": null,
    "comments": 1,
    "created_at": "2019-10-20T01:24:44Z",
    "updated_at": "2019-10-20T01:36:38Z",
    "closed_at": null,
    "author_association": "COLLABORATOR",
    "body": "This must be addressed immediately, if not before."
  },
  "comment": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments/544211719",
    "html_url": "https://github.com/njsmith-test-org/test-repo/issues/5#issuecomment-544211719",
    "issue_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/5",
    "id": 544211719,
    "node_id": "MDEyOklzc3VlQ29tbWVudDU0NDIxMTcxOQ==",
    "user": {
      "login": "njsmith",
      "id": 609896,
      "node_id": "MDQ6VXNlcjYwOTg5Ng==",
      "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith",
      "html_url": "https://github.com/njsmith",
      "followers_url": "https://api.github.com/users/njsmith/followers",
      "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith/orgs",
      "repos_url": "https://api.github.com/users/njsmith/repos",
      "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith/received_events",
      "type": "User",
      "site_admin": false
    },
    "created_at": "2019-10-20T01:34:32Z",
    "updated_at": "2019-10-20T01:36:38Z",
    "author_association": "COLLABORATOR",
    "body": "I agree with the original poster.\r\n\r\n[EDIT: on further thought, I disagree.]"
  },
  "repository": {
    "id": 202650514,
    "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
    "name": "test-repo",
    "full_name": "njsmith-test-org/test-repo",
    "private": false,
    "owner": {
      "login": "njsmith-test-org",
      "id": 54163074,
      "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
      "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith-test-org",
      "html_url": "https://github.com/njsmith-test-org",
      "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
      "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
      "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
      "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
      "type": "Organization",
      "site_admin": false
    },
    "html_url": "https://github.com/njsmith-test-org/test-repo",
    "description": null,
    "fork": false,
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
    "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
    "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
    "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
    "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
    "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
    "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
    "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
    "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
    "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
    "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
    "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
    "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
    "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
    "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
    "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
    "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
    "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
    "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
    "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
    "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
    "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
    "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
    "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
    "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
    "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
    "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
    "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
    "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
    "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
    "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
    "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
    "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
    "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
    "created_at": "2019-08-16T03:17:21Z",
    "updated_at": "2019-08-16T09:49:13Z",
    "pushed_at": "2019-08-16T09:49:11Z",
    "git_url": "git://github.com/njsmith-test-org/test-repo.git",
    "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
    "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
    "svn_url": "https://github.com/njsmith-test-org/test-repo",
    "homepage": null,
    "size": 5,
    "stargazers_count": 0,
    "watchers_count": 0,
    "language": null,
    "has_issues": true,
    "has_projects": true,
    "has_downloads": true,
    "has_wiki": true,
    "has_pages": false,
    "forks_count": 2,
    "mirror_url": null,
    "archived": false,
    "disabled": false,
    "open_issues_count": 1,
    "license": null,
    "forks": 2,
    "open_issues": 1,
    "watchers": 0,
    "default_branch": "master"
  },
  "organization": {
    "login": "njsmith-test-org",
    "id": 54163074,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
    "url": "https://api.github.com/orgs/njsmith-test-org",
    "repos_url": "https://api.github.com/orgs/njsmith-test-org/repos",
    "events_url": "https://api.github.com/orgs/njsmith-test-org/events",
    "hooks_url": "https://api.github.com/orgs/njsmith-test-org/hooks",
    "issues_url": "https://api.github.com/orgs/njsmith-test-org/issues",
    "members_url": "https://api.github.com/orgs/njsmith-test-org/members{/member}",
    "public_members_url": "https://api.github.com/orgs/njsmith-test-org/public_members{/member}",
    "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
    "description": null
  },
  "sender": {
    "login": "njsmith",
    "id": 609896,
    "node_id": "MDQ6VXNlcjYwOTg5Ng==",
    "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
    "gravatar_id": "",
    "url": "https://api.github.com/users/njsmith",
    "html_url": "https://github.com/njsmith",
    "followers_url": "https://api.github.com/users/njsmith/followers",
    "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
    "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
    "organizations_url": "https://api.github.com/users/njsmith/orgs",
    "repos_url": "https://api.github.com/users/njsmith/repos",
    "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
    "received_events_url": "https://api.github.com/users/njsmith/received_events",
    "type": "User",
    "site_admin": false
  },
  "installation": {
    "id": 3319993,
    "node_id": "MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzMxOTk5Mw=="
  }
}

New PR created

type: pull_request

{
  "action": "opened",
  "number": 6,
  "pull_request": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6",
    "id": 330073783,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MzMwMDczNzgz",
    "html_url": "https://github.com/njsmith-test-org/test-repo/pull/6",
    "diff_url": "https://github.com/njsmith-test-org/test-repo/pull/6.diff",
    "patch_url": "https://github.com/njsmith-test-org/test-repo/pull/6.patch",
    "issue_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6",
    "number": 6,
    "state": "open",
    "locked": false,
    "title": "critical fix",
    "user": {
      "login": "wgwz",
      "id": 10120306,
      "node_id": "MDQ6VXNlcjEwMTIwMzA2",
      "avatar_url": "https://avatars2.githubusercontent.com/u/10120306?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/wgwz",
      "html_url": "https://github.com/wgwz",
      "followers_url": "https://api.github.com/users/wgwz/followers",
      "following_url": "https://api.github.com/users/wgwz/following{/other_user}",
      "gists_url": "https://api.github.com/users/wgwz/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/wgwz/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/wgwz/subscriptions",
      "organizations_url": "https://api.github.com/users/wgwz/orgs",
      "repos_url": "https://api.github.com/users/wgwz/repos",
      "events_url": "https://api.github.com/users/wgwz/events{/privacy}",
      "received_events_url": "https://api.github.com/users/wgwz/received_events",
      "type": "User",
      "site_admin": false
    },
    "body": "",
    "created_at": "2019-10-20T01:37:30Z",
    "updated_at": "2019-10-20T01:37:30Z",
    "closed_at": null,
    "merged_at": null,
    "merge_commit_sha": null,
    "assignee": null,
    "assignees": [

    ],
    "requested_reviewers": [

    ],
    "requested_teams": [

    ],
    "labels": [

    ],
    "milestone": null,
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/commits",
    "review_comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/comments",
    "review_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments{/number}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/comments",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/13d4996c08b6b14a568b595a206a0b5d9e23c94f",
    "head": {
      "label": "njsmith-test-org:wgwz/important",
      "ref": "wgwz/important",
      "sha": "13d4996c08b6b14a568b595a206a0b5d9e23c94f",
      "user": {
        "login": "njsmith-test-org",
        "id": 54163074,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
        "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/njsmith-test-org",
        "html_url": "https://github.com/njsmith-test-org",
        "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
        "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
        "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
        "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
        "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
        "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
        "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "repo": {
        "id": 202650514,
        "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
        "name": "test-repo",
        "full_name": "njsmith-test-org/test-repo",
        "private": false,
        "owner": {
          "login": "njsmith-test-org",
          "id": 54163074,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
          "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/njsmith-test-org",
          "html_url": "https://github.com/njsmith-test-org",
          "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
          "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
          "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
          "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
          "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
          "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
          "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
          "type": "Organization",
          "site_admin": false
        },
        "html_url": "https://github.com/njsmith-test-org/test-repo",
        "description": null,
        "fork": false,
        "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
        "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
        "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
        "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
        "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
        "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
        "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
        "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
        "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
        "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
        "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
        "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
        "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
        "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
        "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
        "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
        "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
        "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
        "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
        "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
        "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
        "created_at": "2019-08-16T03:17:21Z",
        "updated_at": "2019-08-16T09:49:13Z",
        "pushed_at": "2019-10-20T01:36:54Z",
        "git_url": "git://github.com/njsmith-test-org/test-repo.git",
        "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
        "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
        "svn_url": "https://github.com/njsmith-test-org/test-repo",
        "homepage": null,
        "size": 5,
        "stargazers_count": 0,
        "watchers_count": 0,
        "language": null,
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": true,
        "has_pages": false,
        "forks_count": 2,
        "mirror_url": null,
        "archived": false,
        "disabled": false,
        "open_issues_count": 2,
        "license": null,
        "forks": 2,
        "open_issues": 2,
        "watchers": 0,
        "default_branch": "master"
      }
    },
    "base": {
      "label": "njsmith-test-org:master",
      "ref": "master",
      "sha": "99eebb97f1e5e68e78731e6dfb7691c40e5dadd0",
      "user": {
        "login": "njsmith-test-org",
        "id": 54163074,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
        "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/njsmith-test-org",
        "html_url": "https://github.com/njsmith-test-org",
        "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
        "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
        "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
        "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
        "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
        "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
        "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "repo": {
        "id": 202650514,
        "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
        "name": "test-repo",
        "full_name": "njsmith-test-org/test-repo",
        "private": false,
        "owner": {
          "login": "njsmith-test-org",
          "id": 54163074,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
          "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/njsmith-test-org",
          "html_url": "https://github.com/njsmith-test-org",
          "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
          "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
          "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
          "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
          "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
          "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
          "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
          "type": "Organization",
          "site_admin": false
        },
        "html_url": "https://github.com/njsmith-test-org/test-repo",
        "description": null,
        "fork": false,
        "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
        "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
        "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
        "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
        "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
        "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
        "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
        "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
        "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
        "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
        "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
        "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
        "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
        "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
        "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
        "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
        "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
        "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
        "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
        "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
        "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
        "created_at": "2019-08-16T03:17:21Z",
        "updated_at": "2019-08-16T09:49:13Z",
        "pushed_at": "2019-10-20T01:36:54Z",
        "git_url": "git://github.com/njsmith-test-org/test-repo.git",
        "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
        "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
        "svn_url": "https://github.com/njsmith-test-org/test-repo",
        "homepage": null,
        "size": 5,
        "stargazers_count": 0,
        "watchers_count": 0,
        "language": null,
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": true,
        "has_pages": false,
        "forks_count": 2,
        "mirror_url": null,
        "archived": false,
        "disabled": false,
        "open_issues_count": 2,
        "license": null,
        "forks": 2,
        "open_issues": 2,
        "watchers": 0,
        "default_branch": "master"
      }
    },
    "_links": {
      "self": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6"
      },
      "html": {
        "href": "https://github.com/njsmith-test-org/test-repo/pull/6"
      },
      "issue": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6"
      },
      "comments": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/comments"
      },
      "review_comments": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/comments"
      },
      "review_comment": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments{/number}"
      },
      "commits": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/commits"
      },
      "statuses": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/13d4996c08b6b14a568b595a206a0b5d9e23c94f"
      }
    },
    "author_association": "NONE",
    "draft": false,
    "merged": false,
    "mergeable": null,
    "rebaseable": null,
    "mergeable_state": "unknown",
    "merged_by": null,
    "comments": 0,
    "review_comments": 0,
    "maintainer_can_modify": false,
    "commits": 1,
    "additions": 2,
    "deletions": 0,
    "changed_files": 1
  },
  "repository": {
    "id": 202650514,
    "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
    "name": "test-repo",
    "full_name": "njsmith-test-org/test-repo",
    "private": false,
    "owner": {
      "login": "njsmith-test-org",
      "id": 54163074,
      "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
      "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith-test-org",
      "html_url": "https://github.com/njsmith-test-org",
      "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
      "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
      "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
      "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
      "type": "Organization",
      "site_admin": false
    },
    "html_url": "https://github.com/njsmith-test-org/test-repo",
    "description": null,
    "fork": false,
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
    "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
    "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
    "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
    "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
    "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
    "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
    "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
    "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
    "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
    "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
    "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
    "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
    "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
    "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
    "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
    "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
    "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
    "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
    "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
    "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
    "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
    "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
    "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
    "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
    "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
    "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
    "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
    "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
    "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
    "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
    "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
    "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
    "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
    "created_at": "2019-08-16T03:17:21Z",
    "updated_at": "2019-08-16T09:49:13Z",
    "pushed_at": "2019-10-20T01:36:54Z",
    "git_url": "git://github.com/njsmith-test-org/test-repo.git",
    "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
    "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
    "svn_url": "https://github.com/njsmith-test-org/test-repo",
    "homepage": null,
    "size": 5,
    "stargazers_count": 0,
    "watchers_count": 0,
    "language": null,
    "has_issues": true,
    "has_projects": true,
    "has_downloads": true,
    "has_wiki": true,
    "has_pages": false,
    "forks_count": 2,
    "mirror_url": null,
    "archived": false,
    "disabled": false,
    "open_issues_count": 2,
    "license": null,
    "forks": 2,
    "open_issues": 2,
    "watchers": 0,
    "default_branch": "master"
  },
  "organization": {
    "login": "njsmith-test-org",
    "id": 54163074,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
    "url": "https://api.github.com/orgs/njsmith-test-org",
    "repos_url": "https://api.github.com/orgs/njsmith-test-org/repos",
    "events_url": "https://api.github.com/orgs/njsmith-test-org/events",
    "hooks_url": "https://api.github.com/orgs/njsmith-test-org/hooks",
    "issues_url": "https://api.github.com/orgs/njsmith-test-org/issues",
    "members_url": "https://api.github.com/orgs/njsmith-test-org/members{/member}",
    "public_members_url": "https://api.github.com/orgs/njsmith-test-org/public_members{/member}",
    "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
    "description": null
  },
  "sender": {
    "login": "wgwz",
    "id": 10120306,
    "node_id": "MDQ6VXNlcjEwMTIwMzA2",
    "avatar_url": "https://avatars2.githubusercontent.com/u/10120306?v=4",
    "gravatar_id": "",
    "url": "https://api.github.com/users/wgwz",
    "html_url": "https://github.com/wgwz",
    "followers_url": "https://api.github.com/users/wgwz/followers",
    "following_url": "https://api.github.com/users/wgwz/following{/other_user}",
    "gists_url": "https://api.github.com/users/wgwz/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/wgwz/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/wgwz/subscriptions",
    "organizations_url": "https://api.github.com/users/wgwz/orgs",
    "repos_url": "https://api.github.com/users/wgwz/repos",
    "events_url": "https://api.github.com/users/wgwz/events{/privacy}",
    "received_events_url": "https://api.github.com/users/wgwz/received_events",
    "type": "User",
    "site_admin": false
  },
  "installation": {
    "id": 3319993,
    "node_id": "MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzMxOTk5Mw=="
  }
}

Comment posted on existing PR

event type: “issue_comment”

{
  "action": "created",
  "issue": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6",
    "repository_url": "https://api.github.com/repos/njsmith-test-org/test-repo",
    "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/labels{/name}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/comments",
    "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/events",
    "html_url": "https://github.com/njsmith-test-org/test-repo/pull/6",
    "id": 509531678,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MzMwMDczNzgz",
    "number": 6,
    "title": "critical fix",
    "user": {
      "login": "wgwz",
      "id": 10120306,
      "node_id": "MDQ6VXNlcjEwMTIwMzA2",
      "avatar_url": "https://avatars2.githubusercontent.com/u/10120306?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/wgwz",
      "html_url": "https://github.com/wgwz",
      "followers_url": "https://api.github.com/users/wgwz/followers",
      "following_url": "https://api.github.com/users/wgwz/following{/other_user}",
      "gists_url": "https://api.github.com/users/wgwz/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/wgwz/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/wgwz/subscriptions",
      "organizations_url": "https://api.github.com/users/wgwz/orgs",
      "repos_url": "https://api.github.com/users/wgwz/repos",
      "events_url": "https://api.github.com/users/wgwz/events{/privacy}",
      "received_events_url": "https://api.github.com/users/wgwz/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [

    ],
    "state": "open",
    "locked": false,
    "assignee": null,
    "assignees": [

    ],
    "milestone": null,
    "comments": 0,
    "created_at": "2019-10-20T01:37:30Z",
    "updated_at": "2019-10-20T01:39:03Z",
    "closed_at": null,
    "author_association": "NONE",
    "pull_request": {
      "url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6",
      "html_url": "https://github.com/njsmith-test-org/test-repo/pull/6",
      "diff_url": "https://github.com/njsmith-test-org/test-repo/pull/6.diff",
      "patch_url": "https://github.com/njsmith-test-org/test-repo/pull/6.patch"
    },
    "body": ""
  },
  "comment": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments/544211921",
    "html_url": "https://github.com/njsmith-test-org/test-repo/pull/6#issuecomment-544211921",
    "issue_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6",
    "id": 544211921,
    "node_id": "MDEyOklzc3VlQ29tbWVudDU0NDIxMTkyMQ==",
    "user": {
      "login": "wgwz",
      "id": 10120306,
      "node_id": "MDQ6VXNlcjEwMTIwMzA2",
      "avatar_url": "https://avatars2.githubusercontent.com/u/10120306?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/wgwz",
      "html_url": "https://github.com/wgwz",
      "followers_url": "https://api.github.com/users/wgwz/followers",
      "following_url": "https://api.github.com/users/wgwz/following{/other_user}",
      "gists_url": "https://api.github.com/users/wgwz/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/wgwz/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/wgwz/subscriptions",
      "organizations_url": "https://api.github.com/users/wgwz/orgs",
      "repos_url": "https://api.github.com/users/wgwz/repos",
      "events_url": "https://api.github.com/users/wgwz/events{/privacy}",
      "received_events_url": "https://api.github.com/users/wgwz/received_events",
      "type": "User",
      "site_admin": false
    },
    "created_at": "2019-10-20T01:39:03Z",
    "updated_at": "2019-10-20T01:39:03Z",
    "author_association": "NONE",
    "body": "hello world :wave: "
  },
  "repository": {
    "id": 202650514,
    "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
    "name": "test-repo",
    "full_name": "njsmith-test-org/test-repo",
    "private": false,
    "owner": {
      "login": "njsmith-test-org",
      "id": 54163074,
      "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
      "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith-test-org",
      "html_url": "https://github.com/njsmith-test-org",
      "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
      "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
      "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
      "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
      "type": "Organization",
      "site_admin": false
    },
    "html_url": "https://github.com/njsmith-test-org/test-repo",
    "description": null,
    "fork": false,
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
    "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
    "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
    "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
    "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
    "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
    "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
    "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
    "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
    "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
    "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
    "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
    "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
    "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
    "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
    "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
    "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
    "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
    "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
    "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
    "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
    "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
    "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
    "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
    "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
    "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
    "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
    "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
    "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
    "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
    "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
    "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
    "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
    "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
    "created_at": "2019-08-16T03:17:21Z",
    "updated_at": "2019-08-16T09:49:13Z",
    "pushed_at": "2019-10-20T01:37:31Z",
    "git_url": "git://github.com/njsmith-test-org/test-repo.git",
    "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
    "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
    "svn_url": "https://github.com/njsmith-test-org/test-repo",
    "homepage": null,
    "size": 5,
    "stargazers_count": 0,
    "watchers_count": 0,
    "language": null,
    "has_issues": true,
    "has_projects": true,
    "has_downloads": true,
    "has_wiki": true,
    "has_pages": false,
    "forks_count": 2,
    "mirror_url": null,
    "archived": false,
    "disabled": false,
    "open_issues_count": 2,
    "license": null,
    "forks": 2,
    "open_issues": 2,
    "watchers": 0,
    "default_branch": "master"
  },
  "organization": {
    "login": "njsmith-test-org",
    "id": 54163074,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
    "url": "https://api.github.com/orgs/njsmith-test-org",
    "repos_url": "https://api.github.com/orgs/njsmith-test-org/repos",
    "events_url": "https://api.github.com/orgs/njsmith-test-org/events",
    "hooks_url": "https://api.github.com/orgs/njsmith-test-org/hooks",
    "issues_url": "https://api.github.com/orgs/njsmith-test-org/issues",
    "members_url": "https://api.github.com/orgs/njsmith-test-org/members{/member}",
    "public_members_url": "https://api.github.com/orgs/njsmith-test-org/public_members{/member}",
    "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
    "description": null
  },
  "sender": {
    "login": "wgwz",
    "id": 10120306,
    "node_id": "MDQ6VXNlcjEwMTIwMzA2",
    "avatar_url": "https://avatars2.githubusercontent.com/u/10120306?v=4",
    "gravatar_id": "",
    "url": "https://api.github.com/users/wgwz",
    "html_url": "https://github.com/wgwz",
    "followers_url": "https://api.github.com/users/wgwz/followers",
    "following_url": "https://api.github.com/users/wgwz/following{/other_user}",
    "gists_url": "https://api.github.com/users/wgwz/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/wgwz/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/wgwz/subscriptions",
    "organizations_url": "https://api.github.com/users/wgwz/orgs",
    "repos_url": "https://api.github.com/users/wgwz/repos",
    "events_url": "https://api.github.com/users/wgwz/events{/privacy}",
    "received_events_url": "https://api.github.com/users/wgwz/received_events",
    "type": "User",
    "site_admin": false
  },
  "installation": {
    "id": 3319993,
    "node_id": "MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzMxOTk5Mw=="
  }
}

Comment posted on an individual line of code (“Add single comment”)

Event 1: type “pull_request_review”

{
  "action": "submitted",
  "review": {
    "id": 304238138,
    "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3MzA0MjM4MTM4",
    "user": {
      "login": "njsmith",
      "id": 609896,
      "node_id": "MDQ6VXNlcjYwOTg5Ng==",
      "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith",
      "html_url": "https://github.com/njsmith",
      "followers_url": "https://api.github.com/users/njsmith/followers",
      "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith/orgs",
      "repos_url": "https://api.github.com/users/njsmith/repos",
      "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith/received_events",
      "type": "User",
      "site_admin": false
    },
    "body": null,
    "commit_id": "13d4996c08b6b14a568b595a206a0b5d9e23c94f",
    "submitted_at": "2019-10-20T01:46:27Z",
    "state": "commented",
    "html_url": "https://github.com/njsmith-test-org/test-repo/pull/6#pullrequestreview-304238138",
    "pull_request_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6",
    "author_association": "COLLABORATOR",
    "_links": {
      "html": {
        "href": "https://github.com/njsmith-test-org/test-repo/pull/6#pullrequestreview-304238138"
      },
      "pull_request": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6"
      }
    }
  },
  "pull_request": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6",
    "id": 330073783,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MzMwMDczNzgz",
    "html_url": "https://github.com/njsmith-test-org/test-repo/pull/6",
    "diff_url": "https://github.com/njsmith-test-org/test-repo/pull/6.diff",
    "patch_url": "https://github.com/njsmith-test-org/test-repo/pull/6.patch",
    "issue_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6",
    "number": 6,
    "state": "open",
    "locked": false,
    "title": "critical fix",
    "user": {
      "login": "wgwz",
      "id": 10120306,
      "node_id": "MDQ6VXNlcjEwMTIwMzA2",
      "avatar_url": "https://avatars2.githubusercontent.com/u/10120306?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/wgwz",
      "html_url": "https://github.com/wgwz",
      "followers_url": "https://api.github.com/users/wgwz/followers",
      "following_url": "https://api.github.com/users/wgwz/following{/other_user}",
      "gists_url": "https://api.github.com/users/wgwz/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/wgwz/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/wgwz/subscriptions",
      "organizations_url": "https://api.github.com/users/wgwz/orgs",
      "repos_url": "https://api.github.com/users/wgwz/repos",
      "events_url": "https://api.github.com/users/wgwz/events{/privacy}",
      "received_events_url": "https://api.github.com/users/wgwz/received_events",
      "type": "User",
      "site_admin": false
    },
    "body": "",
    "created_at": "2019-10-20T01:37:30Z",
    "updated_at": "2019-10-20T01:46:27Z",
    "closed_at": null,
    "merged_at": null,
    "merge_commit_sha": "31656c2816cbcd0c82389e030c4b64cd17a57e4d",
    "assignee": null,
    "assignees": [

    ],
    "requested_reviewers": [

    ],
    "requested_teams": [

    ],
    "labels": [

    ],
    "milestone": null,
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/commits",
    "review_comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/comments",
    "review_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments{/number}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/comments",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/13d4996c08b6b14a568b595a206a0b5d9e23c94f",
    "head": {
      "label": "njsmith-test-org:wgwz/important",
      "ref": "wgwz/important",
      "sha": "13d4996c08b6b14a568b595a206a0b5d9e23c94f",
      "user": {
        "login": "njsmith-test-org",
        "id": 54163074,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
        "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/njsmith-test-org",
        "html_url": "https://github.com/njsmith-test-org",
        "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
        "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
        "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
        "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
        "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
        "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
        "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "repo": {
        "id": 202650514,
        "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
        "name": "test-repo",
        "full_name": "njsmith-test-org/test-repo",
        "private": false,
        "owner": {
          "login": "njsmith-test-org",
          "id": 54163074,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
          "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/njsmith-test-org",
          "html_url": "https://github.com/njsmith-test-org",
          "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
          "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
          "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
          "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
          "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
          "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
          "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
          "type": "Organization",
          "site_admin": false
        },
        "html_url": "https://github.com/njsmith-test-org/test-repo",
        "description": null,
        "fork": false,
        "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
        "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
        "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
        "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
        "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
        "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
        "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
        "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
        "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
        "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
        "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
        "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
        "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
        "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
        "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
        "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
        "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
        "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
        "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
        "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
        "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
        "created_at": "2019-08-16T03:17:21Z",
        "updated_at": "2019-08-16T09:49:13Z",
        "pushed_at": "2019-10-20T01:37:31Z",
        "git_url": "git://github.com/njsmith-test-org/test-repo.git",
        "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
        "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
        "svn_url": "https://github.com/njsmith-test-org/test-repo",
        "homepage": null,
        "size": 5,
        "stargazers_count": 0,
        "watchers_count": 0,
        "language": null,
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": true,
        "has_pages": false,
        "forks_count": 2,
        "mirror_url": null,
        "archived": false,
        "disabled": false,
        "open_issues_count": 2,
        "license": null,
        "forks": 2,
        "open_issues": 2,
        "watchers": 0,
        "default_branch": "master"
      }
    },
    "base": {
      "label": "njsmith-test-org:master",
      "ref": "master",
      "sha": "99eebb97f1e5e68e78731e6dfb7691c40e5dadd0",
      "user": {
        "login": "njsmith-test-org",
        "id": 54163074,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
        "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/njsmith-test-org",
        "html_url": "https://github.com/njsmith-test-org",
        "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
        "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
        "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
        "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
        "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
        "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
        "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "repo": {
        "id": 202650514,
        "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
        "name": "test-repo",
        "full_name": "njsmith-test-org/test-repo",
        "private": false,
        "owner": {
          "login": "njsmith-test-org",
          "id": 54163074,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
          "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/njsmith-test-org",
          "html_url": "https://github.com/njsmith-test-org",
          "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
          "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
          "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
          "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
          "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
          "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
          "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
          "type": "Organization",
          "site_admin": false
        },
        "html_url": "https://github.com/njsmith-test-org/test-repo",
        "description": null,
        "fork": false,
        "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
        "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
        "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
        "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
        "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
        "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
        "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
        "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
        "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
        "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
        "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
        "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
        "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
        "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
        "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
        "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
        "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
        "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
        "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
        "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
        "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
        "created_at": "2019-08-16T03:17:21Z",
        "updated_at": "2019-08-16T09:49:13Z",
        "pushed_at": "2019-10-20T01:37:31Z",
        "git_url": "git://github.com/njsmith-test-org/test-repo.git",
        "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
        "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
        "svn_url": "https://github.com/njsmith-test-org/test-repo",
        "homepage": null,
        "size": 5,
        "stargazers_count": 0,
        "watchers_count": 0,
        "language": null,
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": true,
        "has_pages": false,
        "forks_count": 2,
        "mirror_url": null,
        "archived": false,
        "disabled": false,
        "open_issues_count": 2,
        "license": null,
        "forks": 2,
        "open_issues": 2,
        "watchers": 0,
        "default_branch": "master"
      }
    },
    "_links": {
      "self": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6"
      },
      "html": {
        "href": "https://github.com/njsmith-test-org/test-repo/pull/6"
      },
      "issue": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6"
      },
      "comments": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/comments"
      },
      "review_comments": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/comments"
      },
      "review_comment": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments{/number}"
      },
      "commits": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/commits"
      },
      "statuses": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/13d4996c08b6b14a568b595a206a0b5d9e23c94f"
      }
    },
    "author_association": "NONE"
  },
  "repository": {
    "id": 202650514,
    "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
    "name": "test-repo",
    "full_name": "njsmith-test-org/test-repo",
    "private": false,
    "owner": {
      "login": "njsmith-test-org",
      "id": 54163074,
      "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
      "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith-test-org",
      "html_url": "https://github.com/njsmith-test-org",
      "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
      "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
      "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
      "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
      "type": "Organization",
      "site_admin": false
    },
    "html_url": "https://github.com/njsmith-test-org/test-repo",
    "description": null,
    "fork": false,
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
    "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
    "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
    "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
    "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
    "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
    "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
    "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
    "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
    "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
    "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
    "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
    "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
    "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
    "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
    "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
    "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
    "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
    "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
    "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
    "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
    "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
    "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
    "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
    "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
    "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
    "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
    "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
    "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
    "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
    "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
    "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
    "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
    "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
    "created_at": "2019-08-16T03:17:21Z",
    "updated_at": "2019-08-16T09:49:13Z",
    "pushed_at": "2019-10-20T01:37:31Z",
    "git_url": "git://github.com/njsmith-test-org/test-repo.git",
    "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
    "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
    "svn_url": "https://github.com/njsmith-test-org/test-repo",
    "homepage": null,
    "size": 5,
    "stargazers_count": 0,
    "watchers_count": 0,
    "language": null,
    "has_issues": true,
    "has_projects": true,
    "has_downloads": true,
    "has_wiki": true,
    "has_pages": false,
    "forks_count": 2,
    "mirror_url": null,
    "archived": false,
    "disabled": false,
    "open_issues_count": 2,
    "license": null,
    "forks": 2,
    "open_issues": 2,
    "watchers": 0,
    "default_branch": "master"
  },
  "organization": {
    "login": "njsmith-test-org",
    "id": 54163074,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
    "url": "https://api.github.com/orgs/njsmith-test-org",
    "repos_url": "https://api.github.com/orgs/njsmith-test-org/repos",
    "events_url": "https://api.github.com/orgs/njsmith-test-org/events",
    "hooks_url": "https://api.github.com/orgs/njsmith-test-org/hooks",
    "issues_url": "https://api.github.com/orgs/njsmith-test-org/issues",
    "members_url": "https://api.github.com/orgs/njsmith-test-org/members{/member}",
    "public_members_url": "https://api.github.com/orgs/njsmith-test-org/public_members{/member}",
    "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
    "description": null
  },
  "sender": {
    "login": "njsmith",
    "id": 609896,
    "node_id": "MDQ6VXNlcjYwOTg5Ng==",
    "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
    "gravatar_id": "",
    "url": "https://api.github.com/users/njsmith",
    "html_url": "https://github.com/njsmith",
    "followers_url": "https://api.github.com/users/njsmith/followers",
    "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
    "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
    "organizations_url": "https://api.github.com/users/njsmith/orgs",
    "repos_url": "https://api.github.com/users/njsmith/repos",
    "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
    "received_events_url": "https://api.github.com/users/njsmith/received_events",
    "type": "User",
    "site_admin": false
  },
  "installation": {
    "id": 3319993,
    "node_id": "MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzMxOTk5Mw=="
  }
}

Event 2: type “pull_request_review_comment”

{
  "action": "created",
  "comment": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments/336759908",
    "pull_request_review_id": 304238138,
    "id": 336759908,
    "node_id": "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDMzNjc1OTkwOA==",
    "diff_hunk": "@@ -1,5 +1,7 @@\n # test-repo\n \n+critical issue resolved! no yak shaving in yaksville",
    "path": "README.md",
    "position": 3,
    "original_position": 3,
    "commit_id": "13d4996c08b6b14a568b595a206a0b5d9e23c94f",
    "original_commit_id": "13d4996c08b6b14a568b595a206a0b5d9e23c94f",
    "user": {
      "login": "njsmith",
      "id": 609896,
      "node_id": "MDQ6VXNlcjYwOTg5Ng==",
      "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith",
      "html_url": "https://github.com/njsmith",
      "followers_url": "https://api.github.com/users/njsmith/followers",
      "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith/orgs",
      "repos_url": "https://api.github.com/users/njsmith/repos",
      "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith/received_events",
      "type": "User",
      "site_admin": false
    },
    "body": "This is just a standalone comment.",
    "created_at": "2019-10-20T01:46:27Z",
    "updated_at": "2019-10-20T01:46:27Z",
    "html_url": "https://github.com/njsmith-test-org/test-repo/pull/6#discussion_r336759908",
    "pull_request_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6",
    "author_association": "COLLABORATOR",
    "_links": {
      "self": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments/336759908"
      },
      "html": {
        "href": "https://github.com/njsmith-test-org/test-repo/pull/6#discussion_r336759908"
      },
      "pull_request": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6"
      }
    }
  },
  "pull_request": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6",
    "id": 330073783,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MzMwMDczNzgz",
    "html_url": "https://github.com/njsmith-test-org/test-repo/pull/6",
    "diff_url": "https://github.com/njsmith-test-org/test-repo/pull/6.diff",
    "patch_url": "https://github.com/njsmith-test-org/test-repo/pull/6.patch",
    "issue_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6",
    "number": 6,
    "state": "open",
    "locked": false,
    "title": "critical fix",
    "user": {
      "login": "wgwz",
      "id": 10120306,
      "node_id": "MDQ6VXNlcjEwMTIwMzA2",
      "avatar_url": "https://avatars2.githubusercontent.com/u/10120306?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/wgwz",
      "html_url": "https://github.com/wgwz",
      "followers_url": "https://api.github.com/users/wgwz/followers",
      "following_url": "https://api.github.com/users/wgwz/following{/other_user}",
      "gists_url": "https://api.github.com/users/wgwz/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/wgwz/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/wgwz/subscriptions",
      "organizations_url": "https://api.github.com/users/wgwz/orgs",
      "repos_url": "https://api.github.com/users/wgwz/repos",
      "events_url": "https://api.github.com/users/wgwz/events{/privacy}",
      "received_events_url": "https://api.github.com/users/wgwz/received_events",
      "type": "User",
      "site_admin": false
    },
    "body": "",
    "created_at": "2019-10-20T01:37:30Z",
    "updated_at": "2019-10-20T01:46:27Z",
    "closed_at": null,
    "merged_at": null,
    "merge_commit_sha": "31656c2816cbcd0c82389e030c4b64cd17a57e4d",
    "assignee": null,
    "assignees": [

    ],
    "requested_reviewers": [

    ],
    "requested_teams": [

    ],
    "labels": [

    ],
    "milestone": null,
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/commits",
    "review_comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/comments",
    "review_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments{/number}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/comments",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/13d4996c08b6b14a568b595a206a0b5d9e23c94f",
    "head": {
      "label": "njsmith-test-org:wgwz/important",
      "ref": "wgwz/important",
      "sha": "13d4996c08b6b14a568b595a206a0b5d9e23c94f",
      "user": {
        "login": "njsmith-test-org",
        "id": 54163074,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
        "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/njsmith-test-org",
        "html_url": "https://github.com/njsmith-test-org",
        "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
        "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
        "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
        "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
        "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
        "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
        "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "repo": {
        "id": 202650514,
        "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
        "name": "test-repo",
        "full_name": "njsmith-test-org/test-repo",
        "private": false,
        "owner": {
          "login": "njsmith-test-org",
          "id": 54163074,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
          "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/njsmith-test-org",
          "html_url": "https://github.com/njsmith-test-org",
          "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
          "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
          "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
          "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
          "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
          "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
          "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
          "type": "Organization",
          "site_admin": false
        },
        "html_url": "https://github.com/njsmith-test-org/test-repo",
        "description": null,
        "fork": false,
        "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
        "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
        "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
        "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
        "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
        "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
        "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
        "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
        "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
        "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
        "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
        "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
        "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
        "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
        "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
        "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
        "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
        "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
        "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
        "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
        "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
        "created_at": "2019-08-16T03:17:21Z",
        "updated_at": "2019-08-16T09:49:13Z",
        "pushed_at": "2019-10-20T01:37:31Z",
        "git_url": "git://github.com/njsmith-test-org/test-repo.git",
        "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
        "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
        "svn_url": "https://github.com/njsmith-test-org/test-repo",
        "homepage": null,
        "size": 5,
        "stargazers_count": 0,
        "watchers_count": 0,
        "language": null,
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": true,
        "has_pages": false,
        "forks_count": 2,
        "mirror_url": null,
        "archived": false,
        "disabled": false,
        "open_issues_count": 2,
        "license": null,
        "forks": 2,
        "open_issues": 2,
        "watchers": 0,
        "default_branch": "master"
      }
    },
    "base": {
      "label": "njsmith-test-org:master",
      "ref": "master",
      "sha": "99eebb97f1e5e68e78731e6dfb7691c40e5dadd0",
      "user": {
        "login": "njsmith-test-org",
        "id": 54163074,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
        "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/njsmith-test-org",
        "html_url": "https://github.com/njsmith-test-org",
        "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
        "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
        "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
        "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
        "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
        "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
        "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "repo": {
        "id": 202650514,
        "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
        "name": "test-repo",
        "full_name": "njsmith-test-org/test-repo",
        "private": false,
        "owner": {
          "login": "njsmith-test-org",
          "id": 54163074,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
          "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/njsmith-test-org",
          "html_url": "https://github.com/njsmith-test-org",
          "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
          "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
          "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
          "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
          "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
          "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
          "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
          "type": "Organization",
          "site_admin": false
        },
        "html_url": "https://github.com/njsmith-test-org/test-repo",
        "description": null,
        "fork": false,
        "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
        "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
        "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
        "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
        "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
        "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
        "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
        "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
        "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
        "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
        "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
        "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
        "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
        "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
        "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
        "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
        "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
        "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
        "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
        "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
        "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
        "created_at": "2019-08-16T03:17:21Z",
        "updated_at": "2019-08-16T09:49:13Z",
        "pushed_at": "2019-10-20T01:37:31Z",
        "git_url": "git://github.com/njsmith-test-org/test-repo.git",
        "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
        "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
        "svn_url": "https://github.com/njsmith-test-org/test-repo",
        "homepage": null,
        "size": 5,
        "stargazers_count": 0,
        "watchers_count": 0,
        "language": null,
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": true,
        "has_pages": false,
        "forks_count": 2,
        "mirror_url": null,
        "archived": false,
        "disabled": false,
        "open_issues_count": 2,
        "license": null,
        "forks": 2,
        "open_issues": 2,
        "watchers": 0,
        "default_branch": "master"
      }
    },
    "_links": {
      "self": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6"
      },
      "html": {
        "href": "https://github.com/njsmith-test-org/test-repo/pull/6"
      },
      "issue": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6"
      },
      "comments": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/comments"
      },
      "review_comments": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/comments"
      },
      "review_comment": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments{/number}"
      },
      "commits": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/commits"
      },
      "statuses": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/13d4996c08b6b14a568b595a206a0b5d9e23c94f"
      }
    },
    "author_association": "NONE"
  },
  "repository": {
    "id": 202650514,
    "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
    "name": "test-repo",
    "full_name": "njsmith-test-org/test-repo",
    "private": false,
    "owner": {
      "login": "njsmith-test-org",
      "id": 54163074,
      "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
      "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith-test-org",
      "html_url": "https://github.com/njsmith-test-org",
      "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
      "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
      "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
      "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
      "type": "Organization",
      "site_admin": false
    },
    "html_url": "https://github.com/njsmith-test-org/test-repo",
    "description": null,
    "fork": false,
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
    "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
    "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
    "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
    "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
    "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
    "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
    "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
    "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
    "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
    "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
    "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
    "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
    "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
    "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
    "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
    "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
    "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
    "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
    "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
    "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
    "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
    "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
    "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
    "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
    "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
    "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
    "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
    "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
    "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
    "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
    "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
    "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
    "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
    "created_at": "2019-08-16T03:17:21Z",
    "updated_at": "2019-08-16T09:49:13Z",
    "pushed_at": "2019-10-20T01:37:31Z",
    "git_url": "git://github.com/njsmith-test-org/test-repo.git",
    "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
    "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
    "svn_url": "https://github.com/njsmith-test-org/test-repo",
    "homepage": null,
    "size": 5,
    "stargazers_count": 0,
    "watchers_count": 0,
    "language": null,
    "has_issues": true,
    "has_projects": true,
    "has_downloads": true,
    "has_wiki": true,
    "has_pages": false,
    "forks_count": 2,
    "mirror_url": null,
    "archived": false,
    "disabled": false,
    "open_issues_count": 2,
    "license": null,
    "forks": 2,
    "open_issues": 2,
    "watchers": 0,
    "default_branch": "master"
  },
  "organization": {
    "login": "njsmith-test-org",
    "id": 54163074,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
    "url": "https://api.github.com/orgs/njsmith-test-org",
    "repos_url": "https://api.github.com/orgs/njsmith-test-org/repos",
    "events_url": "https://api.github.com/orgs/njsmith-test-org/events",
    "hooks_url": "https://api.github.com/orgs/njsmith-test-org/hooks",
    "issues_url": "https://api.github.com/orgs/njsmith-test-org/issues",
    "members_url": "https://api.github.com/orgs/njsmith-test-org/members{/member}",
    "public_members_url": "https://api.github.com/orgs/njsmith-test-org/public_members{/member}",
    "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
    "description": null
  },
  "sender": {
    "login": "njsmith",
    "id": 609896,
    "node_id": "MDQ6VXNlcjYwOTg5Ng==",
    "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
    "gravatar_id": "",
    "url": "https://api.github.com/users/njsmith",
    "html_url": "https://github.com/njsmith",
    "followers_url": "https://api.github.com/users/njsmith/followers",
    "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
    "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
    "organizations_url": "https://api.github.com/users/njsmith/orgs",
    "repos_url": "https://api.github.com/users/njsmith/repos",
    "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
    "received_events_url": "https://api.github.com/users/njsmith/received_events",
    "type": "User",
    "site_admin": false
  },
  "installation": {
    "id": 3319993,
    "node_id": "MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzMxOTk5Mw=="
  }
}

Full-fledged PR review, containing one line comment + an overview comment

Event 1: type “pull_request_review”

{
  "action": "edited",
  "review": {
    "id": 304238151,
    "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3MzA0MjM4MTUx",
    "user": {
      "login": "njsmith",
      "id": 609896,
      "node_id": "MDQ6VXNlcjYwOTg5Ng==",
      "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith",
      "html_url": "https://github.com/njsmith",
      "followers_url": "https://api.github.com/users/njsmith/followers",
      "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith/orgs",
      "repos_url": "https://api.github.com/users/njsmith/repos",
      "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith/received_events",
      "type": "User",
      "site_admin": false
    },
    "body": "Truly a critical fix. However, maybe it needs more cowbell?",
    "commit_id": "13d4996c08b6b14a568b595a206a0b5d9e23c94f",
    "submitted_at": "2019-10-20T01:47:01Z",
    "state": "commented",
    "html_url": "https://github.com/njsmith-test-org/test-repo/pull/6#pullrequestreview-304238151",
    "pull_request_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6",
    "author_association": "COLLABORATOR",
    "_links": {
      "html": {
        "href": "https://github.com/njsmith-test-org/test-repo/pull/6#pullrequestreview-304238151"
      },
      "pull_request": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6"
      }
    }
  },
  "pull_request": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6",
    "id": 330073783,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MzMwMDczNzgz",
    "html_url": "https://github.com/njsmith-test-org/test-repo/pull/6",
    "diff_url": "https://github.com/njsmith-test-org/test-repo/pull/6.diff",
    "patch_url": "https://github.com/njsmith-test-org/test-repo/pull/6.patch",
    "issue_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6",
    "number": 6,
    "state": "open",
    "locked": false,
    "title": "critical fix",
    "user": {
      "login": "wgwz",
      "id": 10120306,
      "node_id": "MDQ6VXNlcjEwMTIwMzA2",
      "avatar_url": "https://avatars2.githubusercontent.com/u/10120306?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/wgwz",
      "html_url": "https://github.com/wgwz",
      "followers_url": "https://api.github.com/users/wgwz/followers",
      "following_url": "https://api.github.com/users/wgwz/following{/other_user}",
      "gists_url": "https://api.github.com/users/wgwz/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/wgwz/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/wgwz/subscriptions",
      "organizations_url": "https://api.github.com/users/wgwz/orgs",
      "repos_url": "https://api.github.com/users/wgwz/repos",
      "events_url": "https://api.github.com/users/wgwz/events{/privacy}",
      "received_events_url": "https://api.github.com/users/wgwz/received_events",
      "type": "User",
      "site_admin": false
    },
    "body": "",
    "created_at": "2019-10-20T01:37:30Z",
    "updated_at": "2019-10-20T01:47:01Z",
    "closed_at": null,
    "merged_at": null,
    "merge_commit_sha": "31656c2816cbcd0c82389e030c4b64cd17a57e4d",
    "assignee": null,
    "assignees": [

    ],
    "requested_reviewers": [

    ],
    "requested_teams": [

    ],
    "labels": [

    ],
    "milestone": null,
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/commits",
    "review_comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/comments",
    "review_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments{/number}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/comments",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/13d4996c08b6b14a568b595a206a0b5d9e23c94f",
    "head": {
      "label": "njsmith-test-org:wgwz/important",
      "ref": "wgwz/important",
      "sha": "13d4996c08b6b14a568b595a206a0b5d9e23c94f",
      "user": {
        "login": "njsmith-test-org",
        "id": 54163074,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
        "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/njsmith-test-org",
        "html_url": "https://github.com/njsmith-test-org",
        "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
        "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
        "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
        "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
        "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
        "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
        "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "repo": {
        "id": 202650514,
        "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
        "name": "test-repo",
        "full_name": "njsmith-test-org/test-repo",
        "private": false,
        "owner": {
          "login": "njsmith-test-org",
          "id": 54163074,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
          "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/njsmith-test-org",
          "html_url": "https://github.com/njsmith-test-org",
          "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
          "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
          "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
          "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
          "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
          "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
          "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
          "type": "Organization",
          "site_admin": false
        },
        "html_url": "https://github.com/njsmith-test-org/test-repo",
        "description": null,
        "fork": false,
        "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
        "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
        "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
        "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
        "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
        "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
        "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
        "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
        "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
        "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
        "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
        "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
        "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
        "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
        "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
        "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
        "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
        "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
        "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
        "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
        "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
        "created_at": "2019-08-16T03:17:21Z",
        "updated_at": "2019-08-16T09:49:13Z",
        "pushed_at": "2019-10-20T01:37:31Z",
        "git_url": "git://github.com/njsmith-test-org/test-repo.git",
        "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
        "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
        "svn_url": "https://github.com/njsmith-test-org/test-repo",
        "homepage": null,
        "size": 5,
        "stargazers_count": 0,
        "watchers_count": 0,
        "language": null,
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": true,
        "has_pages": false,
        "forks_count": 2,
        "mirror_url": null,
        "archived": false,
        "disabled": false,
        "open_issues_count": 2,
        "license": null,
        "forks": 2,
        "open_issues": 2,
        "watchers": 0,
        "default_branch": "master"
      }
    },
    "base": {
      "label": "njsmith-test-org:master",
      "ref": "master",
      "sha": "99eebb97f1e5e68e78731e6dfb7691c40e5dadd0",
      "user": {
        "login": "njsmith-test-org",
        "id": 54163074,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
        "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/njsmith-test-org",
        "html_url": "https://github.com/njsmith-test-org",
        "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
        "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
        "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
        "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
        "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
        "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
        "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "repo": {
        "id": 202650514,
        "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
        "name": "test-repo",
        "full_name": "njsmith-test-org/test-repo",
        "private": false,
        "owner": {
          "login": "njsmith-test-org",
          "id": 54163074,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
          "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/njsmith-test-org",
          "html_url": "https://github.com/njsmith-test-org",
          "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
          "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
          "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
          "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
          "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
          "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
          "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
          "type": "Organization",
          "site_admin": false
        },
        "html_url": "https://github.com/njsmith-test-org/test-repo",
        "description": null,
        "fork": false,
        "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
        "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
        "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
        "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
        "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
        "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
        "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
        "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
        "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
        "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
        "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
        "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
        "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
        "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
        "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
        "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
        "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
        "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
        "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
        "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
        "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
        "created_at": "2019-08-16T03:17:21Z",
        "updated_at": "2019-08-16T09:49:13Z",
        "pushed_at": "2019-10-20T01:37:31Z",
        "git_url": "git://github.com/njsmith-test-org/test-repo.git",
        "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
        "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
        "svn_url": "https://github.com/njsmith-test-org/test-repo",
        "homepage": null,
        "size": 5,
        "stargazers_count": 0,
        "watchers_count": 0,
        "language": null,
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": true,
        "has_pages": false,
        "forks_count": 2,
        "mirror_url": null,
        "archived": false,
        "disabled": false,
        "open_issues_count": 2,
        "license": null,
        "forks": 2,
        "open_issues": 2,
        "watchers": 0,
        "default_branch": "master"
      }
    },
    "_links": {
      "self": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6"
      },
      "html": {
        "href": "https://github.com/njsmith-test-org/test-repo/pull/6"
      },
      "issue": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6"
      },
      "comments": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/comments"
      },
      "review_comments": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/comments"
      },
      "review_comment": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments{/number}"
      },
      "commits": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/commits"
      },
      "statuses": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/13d4996c08b6b14a568b595a206a0b5d9e23c94f"
      }
    },
    "author_association": "NONE"
  },
  "changes": {

  },
  "repository": {
    "id": 202650514,
    "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
    "name": "test-repo",
    "full_name": "njsmith-test-org/test-repo",
    "private": false,
    "owner": {
      "login": "njsmith-test-org",
      "id": 54163074,
      "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
      "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith-test-org",
      "html_url": "https://github.com/njsmith-test-org",
      "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
      "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
      "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
      "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
      "type": "Organization",
      "site_admin": false
    },
    "html_url": "https://github.com/njsmith-test-org/test-repo",
    "description": null,
    "fork": false,
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
    "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
    "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
    "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
    "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
    "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
    "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
    "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
    "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
    "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
    "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
    "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
    "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
    "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
    "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
    "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
    "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
    "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
    "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
    "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
    "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
    "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
    "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
    "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
    "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
    "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
    "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
    "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
    "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
    "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
    "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
    "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
    "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
    "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
    "created_at": "2019-08-16T03:17:21Z",
    "updated_at": "2019-08-16T09:49:13Z",
    "pushed_at": "2019-10-20T01:37:31Z",
    "git_url": "git://github.com/njsmith-test-org/test-repo.git",
    "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
    "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
    "svn_url": "https://github.com/njsmith-test-org/test-repo",
    "homepage": null,
    "size": 5,
    "stargazers_count": 0,
    "watchers_count": 0,
    "language": null,
    "has_issues": true,
    "has_projects": true,
    "has_downloads": true,
    "has_wiki": true,
    "has_pages": false,
    "forks_count": 2,
    "mirror_url": null,
    "archived": false,
    "disabled": false,
    "open_issues_count": 2,
    "license": null,
    "forks": 2,
    "open_issues": 2,
    "watchers": 0,
    "default_branch": "master"
  },
  "organization": {
    "login": "njsmith-test-org",
    "id": 54163074,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
    "url": "https://api.github.com/orgs/njsmith-test-org",
    "repos_url": "https://api.github.com/orgs/njsmith-test-org/repos",
    "events_url": "https://api.github.com/orgs/njsmith-test-org/events",
    "hooks_url": "https://api.github.com/orgs/njsmith-test-org/hooks",
    "issues_url": "https://api.github.com/orgs/njsmith-test-org/issues",
    "members_url": "https://api.github.com/orgs/njsmith-test-org/members{/member}",
    "public_members_url": "https://api.github.com/orgs/njsmith-test-org/public_members{/member}",
    "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
    "description": null
  },
  "sender": {
    "login": "njsmith",
    "id": 609896,
    "node_id": "MDQ6VXNlcjYwOTg5Ng==",
    "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
    "gravatar_id": "",
    "url": "https://api.github.com/users/njsmith",
    "html_url": "https://github.com/njsmith",
    "followers_url": "https://api.github.com/users/njsmith/followers",
    "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
    "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
    "organizations_url": "https://api.github.com/users/njsmith/orgs",
    "repos_url": "https://api.github.com/users/njsmith/repos",
    "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
    "received_events_url": "https://api.github.com/users/njsmith/received_events",
    "type": "User",
    "site_admin": false
  },
  "installation": {
    "id": 3319993,
    "node_id": "MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzMxOTk5Mw=="
  }
}

Event 2: type “pull_request_review_comment”

{
  "action": "created",
  "comment": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments/336759921",
    "pull_request_review_id": 304238151,
    "id": 336759921,
    "node_id": "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDMzNjc1OTkyMQ==",
    "diff_hunk": "@@ -1,5 +1,7 @@\n # test-repo\n \n+critical issue resolved! no yak shaving in yaksville",
    "path": "README.md",
    "position": 3,
    "original_position": 3,
    "commit_id": "13d4996c08b6b14a568b595a206a0b5d9e23c94f",
    "original_commit_id": "13d4996c08b6b14a568b595a206a0b5d9e23c94f",
    "user": {
      "login": "njsmith",
      "id": 609896,
      "node_id": "MDQ6VXNlcjYwOTg5Ng==",
      "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith",
      "html_url": "https://github.com/njsmith",
      "followers_url": "https://api.github.com/users/njsmith/followers",
      "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith/orgs",
      "repos_url": "https://api.github.com/users/njsmith/repos",
      "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith/received_events",
      "type": "User",
      "site_admin": false
    },
    "body": "This is part of a review.",
    "created_at": "2019-10-20T01:46:44Z",
    "updated_at": "2019-10-20T01:47:01Z",
    "html_url": "https://github.com/njsmith-test-org/test-repo/pull/6#discussion_r336759921",
    "pull_request_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6",
    "author_association": "COLLABORATOR",
    "_links": {
      "self": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments/336759921"
      },
      "html": {
        "href": "https://github.com/njsmith-test-org/test-repo/pull/6#discussion_r336759921"
      },
      "pull_request": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6"
      }
    }
  },
  "pull_request": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6",
    "id": 330073783,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MzMwMDczNzgz",
    "html_url": "https://github.com/njsmith-test-org/test-repo/pull/6",
    "diff_url": "https://github.com/njsmith-test-org/test-repo/pull/6.diff",
    "patch_url": "https://github.com/njsmith-test-org/test-repo/pull/6.patch",
    "issue_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6",
    "number": 6,
    "state": "open",
    "locked": false,
    "title": "critical fix",
    "user": {
      "login": "wgwz",
      "id": 10120306,
      "node_id": "MDQ6VXNlcjEwMTIwMzA2",
      "avatar_url": "https://avatars2.githubusercontent.com/u/10120306?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/wgwz",
      "html_url": "https://github.com/wgwz",
      "followers_url": "https://api.github.com/users/wgwz/followers",
      "following_url": "https://api.github.com/users/wgwz/following{/other_user}",
      "gists_url": "https://api.github.com/users/wgwz/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/wgwz/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/wgwz/subscriptions",
      "organizations_url": "https://api.github.com/users/wgwz/orgs",
      "repos_url": "https://api.github.com/users/wgwz/repos",
      "events_url": "https://api.github.com/users/wgwz/events{/privacy}",
      "received_events_url": "https://api.github.com/users/wgwz/received_events",
      "type": "User",
      "site_admin": false
    },
    "body": "",
    "created_at": "2019-10-20T01:37:30Z",
    "updated_at": "2019-10-20T01:47:01Z",
    "closed_at": null,
    "merged_at": null,
    "merge_commit_sha": "31656c2816cbcd0c82389e030c4b64cd17a57e4d",
    "assignee": null,
    "assignees": [

    ],
    "requested_reviewers": [

    ],
    "requested_teams": [

    ],
    "labels": [

    ],
    "milestone": null,
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/commits",
    "review_comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/comments",
    "review_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments{/number}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/comments",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/13d4996c08b6b14a568b595a206a0b5d9e23c94f",
    "head": {
      "label": "njsmith-test-org:wgwz/important",
      "ref": "wgwz/important",
      "sha": "13d4996c08b6b14a568b595a206a0b5d9e23c94f",
      "user": {
        "login": "njsmith-test-org",
        "id": 54163074,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
        "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/njsmith-test-org",
        "html_url": "https://github.com/njsmith-test-org",
        "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
        "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
        "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
        "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
        "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
        "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
        "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "repo": {
        "id": 202650514,
        "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
        "name": "test-repo",
        "full_name": "njsmith-test-org/test-repo",
        "private": false,
        "owner": {
          "login": "njsmith-test-org",
          "id": 54163074,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
          "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/njsmith-test-org",
          "html_url": "https://github.com/njsmith-test-org",
          "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
          "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
          "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
          "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
          "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
          "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
          "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
          "type": "Organization",
          "site_admin": false
        },
        "html_url": "https://github.com/njsmith-test-org/test-repo",
        "description": null,
        "fork": false,
        "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
        "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
        "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
        "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
        "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
        "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
        "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
        "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
        "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
        "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
        "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
        "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
        "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
        "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
        "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
        "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
        "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
        "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
        "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
        "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
        "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
        "created_at": "2019-08-16T03:17:21Z",
        "updated_at": "2019-08-16T09:49:13Z",
        "pushed_at": "2019-10-20T01:37:31Z",
        "git_url": "git://github.com/njsmith-test-org/test-repo.git",
        "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
        "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
        "svn_url": "https://github.com/njsmith-test-org/test-repo",
        "homepage": null,
        "size": 5,
        "stargazers_count": 0,
        "watchers_count": 0,
        "language": null,
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": true,
        "has_pages": false,
        "forks_count": 2,
        "mirror_url": null,
        "archived": false,
        "disabled": false,
        "open_issues_count": 2,
        "license": null,
        "forks": 2,
        "open_issues": 2,
        "watchers": 0,
        "default_branch": "master"
      }
    },
    "base": {
      "label": "njsmith-test-org:master",
      "ref": "master",
      "sha": "99eebb97f1e5e68e78731e6dfb7691c40e5dadd0",
      "user": {
        "login": "njsmith-test-org",
        "id": 54163074,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
        "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/njsmith-test-org",
        "html_url": "https://github.com/njsmith-test-org",
        "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
        "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
        "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
        "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
        "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
        "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
        "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "repo": {
        "id": 202650514,
        "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
        "name": "test-repo",
        "full_name": "njsmith-test-org/test-repo",
        "private": false,
        "owner": {
          "login": "njsmith-test-org",
          "id": 54163074,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
          "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/njsmith-test-org",
          "html_url": "https://github.com/njsmith-test-org",
          "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
          "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
          "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
          "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
          "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
          "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
          "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
          "type": "Organization",
          "site_admin": false
        },
        "html_url": "https://github.com/njsmith-test-org/test-repo",
        "description": null,
        "fork": false,
        "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
        "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
        "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
        "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
        "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
        "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
        "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
        "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
        "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
        "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
        "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
        "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
        "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
        "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
        "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
        "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
        "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
        "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
        "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
        "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
        "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
        "created_at": "2019-08-16T03:17:21Z",
        "updated_at": "2019-08-16T09:49:13Z",
        "pushed_at": "2019-10-20T01:37:31Z",
        "git_url": "git://github.com/njsmith-test-org/test-repo.git",
        "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
        "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
        "svn_url": "https://github.com/njsmith-test-org/test-repo",
        "homepage": null,
        "size": 5,
        "stargazers_count": 0,
        "watchers_count": 0,
        "language": null,
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": true,
        "has_pages": false,
        "forks_count": 2,
        "mirror_url": null,
        "archived": false,
        "disabled": false,
        "open_issues_count": 2,
        "license": null,
        "forks": 2,
        "open_issues": 2,
        "watchers": 0,
        "default_branch": "master"
      }
    },
    "_links": {
      "self": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6"
      },
      "html": {
        "href": "https://github.com/njsmith-test-org/test-repo/pull/6"
      },
      "issue": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6"
      },
      "comments": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/comments"
      },
      "review_comments": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/comments"
      },
      "review_comment": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments{/number}"
      },
      "commits": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/commits"
      },
      "statuses": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/13d4996c08b6b14a568b595a206a0b5d9e23c94f"
      }
    },
    "author_association": "NONE"
  },
  "repository": {
    "id": 202650514,
    "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
    "name": "test-repo",
    "full_name": "njsmith-test-org/test-repo",
    "private": false,
    "owner": {
      "login": "njsmith-test-org",
      "id": 54163074,
      "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
      "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith-test-org",
      "html_url": "https://github.com/njsmith-test-org",
      "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
      "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
      "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
      "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
      "type": "Organization",
      "site_admin": false
    },
    "html_url": "https://github.com/njsmith-test-org/test-repo",
    "description": null,
    "fork": false,
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
    "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
    "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
    "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
    "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
    "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
    "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
    "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
    "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
    "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
    "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
    "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
    "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
    "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
    "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
    "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
    "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
    "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
    "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
    "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
    "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
    "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
    "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
    "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
    "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
    "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
    "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
    "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
    "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
    "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
    "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
    "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
    "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
    "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
    "created_at": "2019-08-16T03:17:21Z",
    "updated_at": "2019-08-16T09:49:13Z",
    "pushed_at": "2019-10-20T01:37:31Z",
    "git_url": "git://github.com/njsmith-test-org/test-repo.git",
    "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
    "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
    "svn_url": "https://github.com/njsmith-test-org/test-repo",
    "homepage": null,
    "size": 5,
    "stargazers_count": 0,
    "watchers_count": 0,
    "language": null,
    "has_issues": true,
    "has_projects": true,
    "has_downloads": true,
    "has_wiki": true,
    "has_pages": false,
    "forks_count": 2,
    "mirror_url": null,
    "archived": false,
    "disabled": false,
    "open_issues_count": 2,
    "license": null,
    "forks": 2,
    "open_issues": 2,
    "watchers": 0,
    "default_branch": "master"
  },
  "organization": {
    "login": "njsmith-test-org",
    "id": 54163074,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
    "url": "https://api.github.com/orgs/njsmith-test-org",
    "repos_url": "https://api.github.com/orgs/njsmith-test-org/repos",
    "events_url": "https://api.github.com/orgs/njsmith-test-org/events",
    "hooks_url": "https://api.github.com/orgs/njsmith-test-org/hooks",
    "issues_url": "https://api.github.com/orgs/njsmith-test-org/issues",
    "members_url": "https://api.github.com/orgs/njsmith-test-org/members{/member}",
    "public_members_url": "https://api.github.com/orgs/njsmith-test-org/public_members{/member}",
    "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
    "description": null
  },
  "sender": {
    "login": "njsmith",
    "id": 609896,
    "node_id": "MDQ6VXNlcjYwOTg5Ng==",
    "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
    "gravatar_id": "",
    "url": "https://api.github.com/users/njsmith",
    "html_url": "https://github.com/njsmith",
    "followers_url": "https://api.github.com/users/njsmith/followers",
    "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
    "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
    "organizations_url": "https://api.github.com/users/njsmith/orgs",
    "repos_url": "https://api.github.com/users/njsmith/repos",
    "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
    "received_events_url": "https://api.github.com/users/njsmith/received_events",
    "type": "User",
    "site_admin": false
  },
  "installation": {
    "id": 3319993,
    "node_id": "MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzMxOTk5Mw=="
  }
}

Event 3: type “pull_request_review”

{
  "action": "submitted",
  "review": {
    "id": 304238151,
    "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3MzA0MjM4MTUx",
    "user": {
      "login": "njsmith",
      "id": 609896,
      "node_id": "MDQ6VXNlcjYwOTg5Ng==",
      "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith",
      "html_url": "https://github.com/njsmith",
      "followers_url": "https://api.github.com/users/njsmith/followers",
      "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith/orgs",
      "repos_url": "https://api.github.com/users/njsmith/repos",
      "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith/received_events",
      "type": "User",
      "site_admin": false
    },
    "body": "Truly a critical fix. However, maybe it needs more cowbell?",
    "commit_id": "13d4996c08b6b14a568b595a206a0b5d9e23c94f",
    "submitted_at": "2019-10-20T01:47:01Z",
    "state": "commented",
    "html_url": "https://github.com/njsmith-test-org/test-repo/pull/6#pullrequestreview-304238151",
    "pull_request_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6",
    "author_association": "COLLABORATOR",
    "_links": {
      "html": {
        "href": "https://github.com/njsmith-test-org/test-repo/pull/6#pullrequestreview-304238151"
      },
      "pull_request": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6"
      }
    }
  },
  "pull_request": {
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6",
    "id": 330073783,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MzMwMDczNzgz",
    "html_url": "https://github.com/njsmith-test-org/test-repo/pull/6",
    "diff_url": "https://github.com/njsmith-test-org/test-repo/pull/6.diff",
    "patch_url": "https://github.com/njsmith-test-org/test-repo/pull/6.patch",
    "issue_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6",
    "number": 6,
    "state": "open",
    "locked": false,
    "title": "critical fix",
    "user": {
      "login": "wgwz",
      "id": 10120306,
      "node_id": "MDQ6VXNlcjEwMTIwMzA2",
      "avatar_url": "https://avatars2.githubusercontent.com/u/10120306?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/wgwz",
      "html_url": "https://github.com/wgwz",
      "followers_url": "https://api.github.com/users/wgwz/followers",
      "following_url": "https://api.github.com/users/wgwz/following{/other_user}",
      "gists_url": "https://api.github.com/users/wgwz/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/wgwz/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/wgwz/subscriptions",
      "organizations_url": "https://api.github.com/users/wgwz/orgs",
      "repos_url": "https://api.github.com/users/wgwz/repos",
      "events_url": "https://api.github.com/users/wgwz/events{/privacy}",
      "received_events_url": "https://api.github.com/users/wgwz/received_events",
      "type": "User",
      "site_admin": false
    },
    "body": "",
    "created_at": "2019-10-20T01:37:30Z",
    "updated_at": "2019-10-20T01:47:01Z",
    "closed_at": null,
    "merged_at": null,
    "merge_commit_sha": "31656c2816cbcd0c82389e030c4b64cd17a57e4d",
    "assignee": null,
    "assignees": [

    ],
    "requested_reviewers": [

    ],
    "requested_teams": [

    ],
    "labels": [

    ],
    "milestone": null,
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/commits",
    "review_comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/comments",
    "review_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments{/number}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/comments",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/13d4996c08b6b14a568b595a206a0b5d9e23c94f",
    "head": {
      "label": "njsmith-test-org:wgwz/important",
      "ref": "wgwz/important",
      "sha": "13d4996c08b6b14a568b595a206a0b5d9e23c94f",
      "user": {
        "login": "njsmith-test-org",
        "id": 54163074,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
        "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/njsmith-test-org",
        "html_url": "https://github.com/njsmith-test-org",
        "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
        "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
        "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
        "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
        "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
        "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
        "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "repo": {
        "id": 202650514,
        "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
        "name": "test-repo",
        "full_name": "njsmith-test-org/test-repo",
        "private": false,
        "owner": {
          "login": "njsmith-test-org",
          "id": 54163074,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
          "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/njsmith-test-org",
          "html_url": "https://github.com/njsmith-test-org",
          "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
          "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
          "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
          "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
          "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
          "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
          "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
          "type": "Organization",
          "site_admin": false
        },
        "html_url": "https://github.com/njsmith-test-org/test-repo",
        "description": null,
        "fork": false,
        "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
        "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
        "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
        "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
        "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
        "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
        "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
        "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
        "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
        "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
        "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
        "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
        "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
        "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
        "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
        "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
        "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
        "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
        "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
        "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
        "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
        "created_at": "2019-08-16T03:17:21Z",
        "updated_at": "2019-08-16T09:49:13Z",
        "pushed_at": "2019-10-20T01:37:31Z",
        "git_url": "git://github.com/njsmith-test-org/test-repo.git",
        "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
        "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
        "svn_url": "https://github.com/njsmith-test-org/test-repo",
        "homepage": null,
        "size": 5,
        "stargazers_count": 0,
        "watchers_count": 0,
        "language": null,
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": true,
        "has_pages": false,
        "forks_count": 2,
        "mirror_url": null,
        "archived": false,
        "disabled": false,
        "open_issues_count": 2,
        "license": null,
        "forks": 2,
        "open_issues": 2,
        "watchers": 0,
        "default_branch": "master"
      }
    },
    "base": {
      "label": "njsmith-test-org:master",
      "ref": "master",
      "sha": "99eebb97f1e5e68e78731e6dfb7691c40e5dadd0",
      "user": {
        "login": "njsmith-test-org",
        "id": 54163074,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
        "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/njsmith-test-org",
        "html_url": "https://github.com/njsmith-test-org",
        "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
        "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
        "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
        "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
        "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
        "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
        "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "repo": {
        "id": 202650514,
        "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
        "name": "test-repo",
        "full_name": "njsmith-test-org/test-repo",
        "private": false,
        "owner": {
          "login": "njsmith-test-org",
          "id": 54163074,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
          "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/njsmith-test-org",
          "html_url": "https://github.com/njsmith-test-org",
          "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
          "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
          "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
          "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
          "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
          "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
          "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
          "type": "Organization",
          "site_admin": false
        },
        "html_url": "https://github.com/njsmith-test-org/test-repo",
        "description": null,
        "fork": false,
        "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
        "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
        "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
        "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
        "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
        "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
        "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
        "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
        "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
        "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
        "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
        "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
        "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
        "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
        "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
        "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
        "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
        "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
        "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
        "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
        "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
        "created_at": "2019-08-16T03:17:21Z",
        "updated_at": "2019-08-16T09:49:13Z",
        "pushed_at": "2019-10-20T01:37:31Z",
        "git_url": "git://github.com/njsmith-test-org/test-repo.git",
        "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
        "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
        "svn_url": "https://github.com/njsmith-test-org/test-repo",
        "homepage": null,
        "size": 5,
        "stargazers_count": 0,
        "watchers_count": 0,
        "language": null,
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": true,
        "has_pages": false,
        "forks_count": 2,
        "mirror_url": null,
        "archived": false,
        "disabled": false,
        "open_issues_count": 2,
        "license": null,
        "forks": 2,
        "open_issues": 2,
        "watchers": 0,
        "default_branch": "master"
      }
    },
    "_links": {
      "self": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6"
      },
      "html": {
        "href": "https://github.com/njsmith-test-org/test-repo/pull/6"
      },
      "issue": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6"
      },
      "comments": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/6/comments"
      },
      "review_comments": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/comments"
      },
      "review_comment": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/comments{/number}"
      },
      "commits": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls/6/commits"
      },
      "statuses": {
        "href": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/13d4996c08b6b14a568b595a206a0b5d9e23c94f"
      }
    },
    "author_association": "NONE"
  },
  "repository": {
    "id": 202650514,
    "node_id": "MDEwOlJlcG9zaXRvcnkyMDI2NTA1MTQ=",
    "name": "test-repo",
    "full_name": "njsmith-test-org/test-repo",
    "private": false,
    "owner": {
      "login": "njsmith-test-org",
      "id": 54163074,
      "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
      "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/njsmith-test-org",
      "html_url": "https://github.com/njsmith-test-org",
      "followers_url": "https://api.github.com/users/njsmith-test-org/followers",
      "following_url": "https://api.github.com/users/njsmith-test-org/following{/other_user}",
      "gists_url": "https://api.github.com/users/njsmith-test-org/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/njsmith-test-org/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/njsmith-test-org/subscriptions",
      "organizations_url": "https://api.github.com/users/njsmith-test-org/orgs",
      "repos_url": "https://api.github.com/users/njsmith-test-org/repos",
      "events_url": "https://api.github.com/users/njsmith-test-org/events{/privacy}",
      "received_events_url": "https://api.github.com/users/njsmith-test-org/received_events",
      "type": "Organization",
      "site_admin": false
    },
    "html_url": "https://github.com/njsmith-test-org/test-repo",
    "description": null,
    "fork": false,
    "url": "https://api.github.com/repos/njsmith-test-org/test-repo",
    "forks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/forks",
    "keys_url": "https://api.github.com/repos/njsmith-test-org/test-repo/keys{/key_id}",
    "collaborators_url": "https://api.github.com/repos/njsmith-test-org/test-repo/collaborators{/collaborator}",
    "teams_url": "https://api.github.com/repos/njsmith-test-org/test-repo/teams",
    "hooks_url": "https://api.github.com/repos/njsmith-test-org/test-repo/hooks",
    "issue_events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/events{/number}",
    "events_url": "https://api.github.com/repos/njsmith-test-org/test-repo/events",
    "assignees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/assignees{/user}",
    "branches_url": "https://api.github.com/repos/njsmith-test-org/test-repo/branches{/branch}",
    "tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/tags",
    "blobs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/blobs{/sha}",
    "git_tags_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/tags{/sha}",
    "git_refs_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/refs{/sha}",
    "trees_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/trees{/sha}",
    "statuses_url": "https://api.github.com/repos/njsmith-test-org/test-repo/statuses/{sha}",
    "languages_url": "https://api.github.com/repos/njsmith-test-org/test-repo/languages",
    "stargazers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/stargazers",
    "contributors_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contributors",
    "subscribers_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscribers",
    "subscription_url": "https://api.github.com/repos/njsmith-test-org/test-repo/subscription",
    "commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/commits{/sha}",
    "git_commits_url": "https://api.github.com/repos/njsmith-test-org/test-repo/git/commits{/sha}",
    "comments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/comments{/number}",
    "issue_comment_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues/comments{/number}",
    "contents_url": "https://api.github.com/repos/njsmith-test-org/test-repo/contents/{+path}",
    "compare_url": "https://api.github.com/repos/njsmith-test-org/test-repo/compare/{base}...{head}",
    "merges_url": "https://api.github.com/repos/njsmith-test-org/test-repo/merges",
    "archive_url": "https://api.github.com/repos/njsmith-test-org/test-repo/{archive_format}{/ref}",
    "downloads_url": "https://api.github.com/repos/njsmith-test-org/test-repo/downloads",
    "issues_url": "https://api.github.com/repos/njsmith-test-org/test-repo/issues{/number}",
    "pulls_url": "https://api.github.com/repos/njsmith-test-org/test-repo/pulls{/number}",
    "milestones_url": "https://api.github.com/repos/njsmith-test-org/test-repo/milestones{/number}",
    "notifications_url": "https://api.github.com/repos/njsmith-test-org/test-repo/notifications{?since,all,participating}",
    "labels_url": "https://api.github.com/repos/njsmith-test-org/test-repo/labels{/name}",
    "releases_url": "https://api.github.com/repos/njsmith-test-org/test-repo/releases{/id}",
    "deployments_url": "https://api.github.com/repos/njsmith-test-org/test-repo/deployments",
    "created_at": "2019-08-16T03:17:21Z",
    "updated_at": "2019-08-16T09:49:13Z",
    "pushed_at": "2019-10-20T01:37:31Z",
    "git_url": "git://github.com/njsmith-test-org/test-repo.git",
    "ssh_url": "[email protected]:njsmith-test-org/test-repo.git",
    "clone_url": "https://github.com/njsmith-test-org/test-repo.git",
    "svn_url": "https://github.com/njsmith-test-org/test-repo",
    "homepage": null,
    "size": 5,
    "stargazers_count": 0,
    "watchers_count": 0,
    "language": null,
    "has_issues": true,
    "has_projects": true,
    "has_downloads": true,
    "has_wiki": true,
    "has_pages": false,
    "forks_count": 2,
    "mirror_url": null,
    "archived": false,
    "disabled": false,
    "open_issues_count": 2,
    "license": null,
    "forks": 2,
    "open_issues": 2,
    "watchers": 0,
    "default_branch": "master"
  },
  "organization": {
    "login": "njsmith-test-org",
    "id": 54163074,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjU0MTYzMDc0",
    "url": "https://api.github.com/orgs/njsmith-test-org",
    "repos_url": "https://api.github.com/orgs/njsmith-test-org/repos",
    "events_url": "https://api.github.com/orgs/njsmith-test-org/events",
    "hooks_url": "https://api.github.com/orgs/njsmith-test-org/hooks",
    "issues_url": "https://api.github.com/orgs/njsmith-test-org/issues",
    "members_url": "https://api.github.com/orgs/njsmith-test-org/members{/member}",
    "public_members_url": "https://api.github.com/orgs/njsmith-test-org/public_members{/member}",
    "avatar_url": "https://avatars1.githubusercontent.com/u/54163074?v=4",
    "description": null
  },
  "sender": {
    "login": "njsmith",
    "id": 609896,
    "node_id": "MDQ6VXNlcjYwOTg5Ng==",
    "avatar_url": "https://avatars0.githubusercontent.com/u/609896?v=4",
    "gravatar_id": "",
    "url": "https://api.github.com/users/njsmith",
    "html_url": "https://github.com/njsmith",
    "followers_url": "https://api.github.com/users/njsmith/followers",
    "following_url": "https://api.github.com/users/njsmith/following{/other_user}",
    "gists_url": "https://api.github.com/users/njsmith/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/njsmith/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/njsmith/subscriptions",
    "organizations_url": "https://api.github.com/users/njsmith/orgs",
    "repos_url": "https://api.github.com/users/njsmith/repos",
    "events_url": "https://api.github.com/users/njsmith/events{/privacy}",
    "received_events_url": "https://api.github.com/users/njsmith/received_events",
    "type": "User",
    "site_admin": false
  },
  "installation": {
    "id": 3319993,
    "node_id": "MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzMxOTk5Mw=="
  }
}

Github action notes

We’ll need to run code on checkouts:

  • prepping before testing
    • format, bump version
  • pip-compile
  • merge into target branch + optionally: tag, upload release artifacts

“generate release artifacts” goes in there somewhere too (which involves running setup.py, i.e. arbitrary code execution)

it’s tempting to use github actions for these, b/c it means someone else is taking care of sandboxing, displaying output as it runs, etc.

a github app can trigger a github action at will, by sending a “repository_dispatch” event: https://help.github.com/en/actions/automating-your-workflow-with-github-actions/events-that-trigger-workflows#external-events-repository_dispatch this contains an arbitrary JSON payload

the event is accessible to any app that has the “Repository: Contents: read-only” permission (or better)

so one approach would be to create a single “action” dockerfile that lives in this repo, and does various things depending on the JSON payload and then this app could invoke that by sending a repository_dispatch event and the action could even say when it’s done by sending a repository_dispatch event back (though have to think about if there are any risks due to others forging this event)

for uploading release artifacts: it looks like pypi’s new API key support does allow us to store a single long-lived API key, and use it to mint new keys with restrictions like “single-use”, “one project only”, “one release version only”, “only valid for X minutes”

github actions has an “artifacts” concept but it’s pretty useless – you can upload zip files into some storage that github maintains, but the only ways to access them are either manually through a web browser, or if you’re another job within the same actions run so I guess for generating/uploading release artifacts, the best option is to use a single action invocation to run setup.py + twine upload, and to pass it a strictly-locked-down pypi API key. We’d have to pass this through the repository_dispatch webhook, which I guess means it would be visible to everyone who can subscribe to that event. …though this does make me nervous b/c it’s still broadcasting an API key to who-knows-who, even if the API key is locked down :-/

alternatively I guess the action could stash the artifacts somewhere like a release or in the github “package repository”, and then snekomatic could pull it down from there? there don’t appear to be any docs at all on how to upload to the package repository via an API. nice. we can easily make releases and attach artifacts the them though, which… really makes plenty of sense anyway, since we actually do want to make a tag for these. and the actions GITHUB_TOKEN does get the permissions to do this.

this page is super well hidden, but it has the key information on how a github action can find out who invoked it and why: https://help.github.com/en/actions/automating-your-workflow-with-github-actions/using-environment-variables and then you have to get the access token through the GITHUB_TOKEN secret, which has to be explicitly passed into the action as an “input” specified in the .yaml file https://help.github.com/en/actions/automating-your-workflow-with-github-actions/authenticating-with-the-github_token

another useful reference is to look at the source of the github.com/actions/toolkit repo

----

so, possible setup:

in each managed repo, we include the same file .github/workflows/trio-bot.yml

name: "trio-bot worker action"
on: repository_dispatch
jobs:
  triobot:
    runs-on: ubuntu-latest
    steps:
    - uses: python-trio/snekomatic@master
      with:
        repo-token: "${{ secrets.GITHUB_TOKEN }}"
        app: "trio-bot"

In this repo, we set up an action.yml and Dockerfile etc. so that github knows how to map the “python-trio/snekomatic” action to a python script we control

/try workflow:

App sees comment, verifies permission, computes new version (if any), sends repository_dispatch like:

{ “action”: “snekomatic/prepare-merge-branch”, “payload”: { “job-id”: “xxxx”, “target-branch”: “master”, “test-branch”: “try/{date}-{jobid}”, “ref”: “XXX”, “release”: “version” # or null } }

the action runs, and:

  • verifies that the $GITHUB_ACTOR is “trio-bot” (using the “INPUT_APP” from our workflow yml)
  • sends back a repository_dispatch like:
  • clones the repo
    • can look at the output from an actions/checkout run to see how github goes about cloning from an action
  • creates a new branch named $test-branch whose head is $ref
  • merges in the target branch
  • runs black
  • if $release is non-null, sets the version number + updates changelog
  • pushes the new branch up to the repo

then it sends back a repository_dispatch like:

{ “action”: “snekomatic/status-report”, “payload”: { “job-id”: “xxxx”,

okay I played around with actions a bit in a test repo and learned some things

https://github.com/njsmith/stunning-tribble/runs/318507531 https://webhook.site/#!/039397b0-3a1d-4822-aede-b4d1b5d47ee8/416317dc-6cbc-4308-9d00-88c444b1cdf8/1

every action run is attached to a particular commit this shows up in the GITHUB_SHA envvar and is the default for the actions/checkout action but it also determines where the actions output is attached – it goes onto that commit as a “check”

when an action starts, you get a check_run event with action=”created”; it also includes a check_suite key with info on a particular check suite then you get check_run action=”completed” and check_suite action=”completed”

these events have an “app” key that tells us about which app created them; for github actions the slug is “github-actions”, id 15368

apparently there is absolutely no way to match up the event that triggered an action with the corresponding run status the action itself knows the event, but it doesn’t know its own URL the check_run/check_suite events report on the action, but they don’t have any information on the triggering event

the only identifying information you get is that the check_run and check_suite both have a head_sha, and the check_suite has a head_branch but the head_branch isn’t even accurate! I tried making a new branch, and a push action ran with GITHUB_REF=refs/heads/<new branch name>, but the corresponding check_suite events had head_branch=”master”!

there’s also a “create” event generated when a new branch/ref is created maybe if that triggered the action it would be different? …nope, still says head_branch=”master”

actions are: “workflow” consists of “jobs” and each “job” consists of “steps” a “job” is a single VM image with a single persistent working dir that’s shared by all “steps” 1 “job” = 1 “check_run” in the API

I guess another option would be to set up a state machine with app+actions interacting e.g. to do a try or merge, app creates a branch with a magic name action triggers on the branch name, runs to set it up, pushes to a new magic name to trigger CI app observes CI outcome, triggers an action to build/tag/release that magic branch app observes release appearing, uploads artifacts to pypi

but I am just uncomfortable in general at all the fragile connections between these steps what if someone mutates the branch in the middle. what if someone just makes a release without going through the previous steps; will the app pick it up and upload to pypi? I just want to pass data from one step to another and know that what ends up on pypi comes from the repo. everything is hashed. why is this so hard

----

well, the pre-flight setup is all pretty boring and safe, so I guess we can do that on heroku pretty easily. And then we have a known snapshot release candidate. we can push that to github and gather CI results on the exact revision that we know we pushed.

and then we just need to tag/build/upload; the build needs to be sandboxed

I guess we could use some actions on a different repo to do stuff that needs to be sandboxed? like have a workflow on snekomatic that does

  • check out and build a revision from another repo; save the artifacts <– no access to secrets
  • upload the artifacts <– does get access to secrets

if this is a security boundary then I guess we need to do it as two separate jobs (NOT just two separate steps), because each step has sudo access to the VM? e.g. can the first step go and rewrite files that the second step depends on, like the magic event file?

it’s still super annoying that there’s no good way to match up the action output with the triggering event, but… I guess this would work (maybe we could do something obnoxious: create a dummy orphan commit for each job we want to run, or something?)

…you can interpolate variables into job specs, and that has access to the event payload… can we name the job after a unique id? https://help.github.com/en/actions/automating-your-workflow-with-github-actions/contexts-and-expression-syntax-for-github-actions

jobs: “{{ github.event.client_payload.jobid }}”: runs-on: ubuntu-latest steps: …

there’s no way this works. is there?

haha nope:

“` ### ERRORED 04:06:43Z

  • There was an unexpected error when executing this Action. For help debugging what went wrong, please contact [email protected].

The unique ID for this error is 3F49:5204:1219F:24FA0:5DDB5351. “`

I tried putting: name: “{{ github.event.client_payload.jobid }}” at the top-level, and that was treated literally (not interpolated) and ditto for setting it as a name: field on a single job

OH NO IT WAS JUST MISSING A $ SIGN

so this worked:

  1. this workflow:
    on: [repository_dispatch]
    
    jobs:
      jobone:
        runs-on: ubuntu-latest
        name: "${{ github.event.client_payload.jobid }}"
    
        steps:
        - name: Run stuff
          run: |
            env | sort
            cat ${GITHUB_EVENT_PATH}
        
  2. running:

    http -p HBhb POST https://api.github.com/repos/njsmith/stunning-tribble/dispatches Accept:application/vnd.github.everest-preview+json “Authorization:token $TMP_TOKEN” event_type=test-event client_payload:=’{“jobid”: “xXxX”}’

  3. got a webhook:

    x-github-event: check_run

    {
      "action": "created",
      "check_run": {
        "name": "xXxX",  # <-- WOO
        "url": "https://api.github.com/repos/njsmith/stunning-tribble/check-runs/318679949",
        "html_url": "https://github.com/njsmith/stunning-tribble/runs/318679949",     ...
      },
      ...
    }
        

    and then later got “completed”, etc.

it doesn’t work to put a “${{ … }}” inside a job id, as like:

jobs: “jobid ${{ github.event.client_payload.jobid }}”: …

that gives - Your workflow file was invalid: The pipeline is not valid. .github/workflows/templ.yml (Line: 4, Col: 3): Unrecognized named-value: ‘github’. Located at position 1 within expression: github.event.client_payload.jobid

it also doesn’t work to try to template the workflow name at the top-level:

name: “pipelinename ${{ github.event.client_payload.jobid }}”

  • Your workflow file was invalid: The pipeline is not valid. .github/workflows/templ.yml (Line: 3, Col: 7): Unrecognized named-value: ‘github’. Located at position 1 within expression: github.event.client_payload.jobid

Old notes

Tutorial: https://docs.octomachinery.dev/projects/tutorial/

Test deployment: https://dashboard.heroku.com/apps/ancient-ocean-35232/

App settings on github: https://github.com/settings/apps/ancient-ocean-35232 Webhook delivery details (VERY USEFUL): https://github.com/settings/apps/ancient-ocean-35232/advanced (you can also redeliver individual notifications)

Logs: https://app.timber.io/heroku-account-f01aadbc-4b48-40ed-86d4-b6a106adb1fb/logs/console (or ‘heroku addons:open timber-logging’)

or (only recent logs):

heroku logs -t

or papertrail, lots of options (command line, etc.): https://devcenter.heroku.com/articles/papertrail heroku addons:open papertrail

Secrets are stored in heroku config Can see/modify from heroku dashboard, or heroku config heroku config:set FOO=bar BAZ=quux

I added a remote by doing: git remote add heroku https://git.heroku.com/ancient-ocean-35232.git I’m not planning to use this remote ever because I have heroku’s github integration set up to auto-deploy whenever I push to master. But by having it, the heroku CLI tool can automatically figure out which app I want without having to specify it all the time

TODO: add caching! subtlety: for safety I guess it probably needs to be by-install-id? so maybe wrap LRUCache in a mapping wrapper that adds/removes the install_id to the cache key

Right now it’s running with DEBUG=true, ENV=prod, but this doesn’t actually affect much inside octomachinery – AFAICT it just sets some config variables, and sets some default logging levels to DEBUG

If heroku puts the app to sleep, then it seems to wake up again in about 5 seconds, and does receive the webhook that woke it up (at least in one test) so that suggests a hobby plan is fine for our purposes

I’m not sure how much octomachinery is actually giving us beyond what gidgethub gives us…

  • I already changed their hook run convention
  • The startup is annoying, because we need to spawn background tasks and stuff.
    • though… maybe we want to delay that until we receive our first event anyway, because that’s an unambiguous signal that heroku has started routing incoming events to us, so the old app is gone and it’s safe for us to reconstruct our state?
  • I’d rather not use asyncio
  • the @process_event_actions decorator is pretty trivial
  • and anyway maybe I’d prefer a channel-style API?
  • there’s a bunch of code for actions and config that I don’t care about
  • I’d like to put the webhook URL somewhere besides /

there’s some non-trivial code in route_github_webhook_event to bind to an installation

also in app_client.py I don’t understand the relation between app_client.py and client.py and raw_client.py accept_preview_version is interesting though maybe overcomplex implementation

installation_utils.py has some interesting code to pull a config file from the repo and it runs arbitrary code via yaml.load! in general the security posture is not great – no discussion of webhook secrets in the tutorial! I would prefer it to error out if GITHUB_WEBHOOK_SECRET is missing

what the heck is SecretStr it does sys.getframe inside __repr__

bedevere source has a nice simple example of dispatch

to see how homu creates merge commits, search its main.py for create_merge

to mess around with stuff locally:

heroku config -s > .env
virtualenv -p /usr/bin/python3.7 t
t/bin/pip install -r requirements.txt
(source t/bin/activate && heroku local)

(limited use of course b/c there’s no way to get github hooks like this)

quart docs: https://pgjones.gitlab.io/quart/ request object: https://flask.palletsprojects.com/en/1.1.x/api/#incoming-request-data legal return values from a view function: https://flask.palletsprojects.com/en/1.1.x/api/#flask.Flask.make_response

quart does impose a limit on body size and an automatic timeout when you call request.get_data (default is 16 MiB and 60 seconds)

if I’m reading this right, then github rate limits are tracked separately for each installation: https://developer.github.com/apps/building-github-apps/understanding-rate-limits-for-github-apps/ so you don’t want to share rate_limit across the app but you do want to share it across all users of the same install

trisnekion autosnek snekify snekamate robosnek trio-bot snekomatic