{"action":"created","comment":{"url":"https://api.github.com/repos/strava/developers.strava.com/pulls/comments/202112914","pull_request_review_id":136737985,"id":202112914,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwMjExMjkxNA==","diff_hunk":"@@ -0,0 +1,286 @@\n++++\n+date = \"2016-02-14T16:11:58+05:30\"\n+title = \"Authentication\"\n+slug = \"authentication\"\n++++\n+\n+Strava uses OAuth2 as an authentication protocol. It allows external applications to request authorization to a user’s private data without requiring their Strava username and password. It allows users to grant and revoke API access on a per-application basis and keeps users’ authentication details safe.\n+\n+All developers need to register their application before getting started. A registered application will be assigned a Client ID and Client SECRET. The SECRET should never be shared.\n+\n+## Overview of the 3-legged OAuth flow\n+\n+Strava provides an authorization mechanism that is an implementation of OAuth 2.0 [3-legged flow](http://oauthbible.com/#oauth-2-three-legged).\n+\n+In this flow, the user is prompted by the application to log in on the Strava website and to give consent to the requesting application. Users can opt out of scopes requested by the applications.\n+\n+If the user authorizes the application, Strava redirects the user to a URL specified by the application. This URL will include an authorization code and the scope accepted by the athlete. The application must complete the authentication process by exchanging the authorization code for a refresh token and short-lived access token.\n+\n+Access tokens are used by applications to obtain and modify Strava resources on behalf of the authenticated athlete. Refresh tokens are used to obtain new access tokens when older ones expire.\n+\n+Users can revoke all access tokens and refresh tokens for a specific application on their [apps settings](https://www.strava.com/settings/apps) page. Per the [Strava API Agreement](https://www.strava.com/legal/api), application owners must ensure to immediately delete all data about users who revoke access to their applications. Application owners can integrate against the [Strava Webhook Events API](../../webhooks/) to receive events when an athlete revokes access to their application.\n+\n+If you are using a mobile webview, be aware that Google Sign-in will not work. See [Google’s blog post](https://developers.googleblog.com/2016/08/modernizing-oauth-interactions-in-native-apps.html) for further information and ways to work around that limitation.\n+\n+Applications can be managed from the owner's [API settings page](https://www.strava.com/settings/api).\n+\n+## Request access\n+\n+To initiate the flow, redirect the user to Strava’s authorization page, `GET https://www.strava.com/oauth/authorize`. The page will prompt the user to consent access of their data to your application. Scopes requested by the application are shown as checked boxes, but the user may opt out of any requested scopes. If your application relies on specific scopes to function properly, you should make that very clear in your messaging before and after authentication.","path":"content/docs/partner/authentication.md","position":29,"original_position":29,"commit_id":"0af05fd84432689649eccbe6ae6994bb3a2d8906","original_commit_id":"0af05fd84432689649eccbe6ae6994bb3a2d8906","user":{"login":"zackisaacs","id":13637569,"node_id":"MDQ6VXNlcjEzNjM3NTY5","avatar_url":"https://avatars2.githubusercontent.com/u/13637569?v=4","gravatar_id":"","url":"https://api.github.com/users/zackisaacs","html_url":"https://github.com/zackisaacs","followers_url":"https://api.github.com/users/zackisaacs/followers","following_url":"https://api.github.com/users/zackisaacs/following{/other_user}","gists_url":"https://api.github.com/users/zackisaacs/gists{/gist_id}","starred_url":"https://api.github.com/users/zackisaacs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zackisaacs/subscriptions","organizations_url":"https://api.github.com/users/zackisaacs/orgs","repos_url":"https://api.github.com/users/zackisaacs/repos","events_url":"https://api.github.com/users/zackisaacs/events{/privacy}","received_events_url":"https://api.github.com/users/zackisaacs/received_events","type":"User","site_admin":false},"body":"More leftover wording. Agree it's not very clear. Maybe:\r\n> To initiate the flow, redirect the user to Strava’s authorization page, `GET https://www.strava.com/oauth/authorize`. Scopes requested by the application are shown as checked boxes, and a user may opt out of any requested scopes. Applications should present users with clear messaging before and after authentication if a specific scope is required for the application to function properly.","created_at":"2018-07-12T17:17:15Z","updated_at":"2018-07-12T17:24:26Z","html_url":"https://github.com/strava/developers.strava.com/pull/104#discussion_r202112914","pull_request_url":"https://api.github.com/repos/strava/developers.strava.com/pulls/104","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/strava/developers.strava.com/pulls/comments/202112914"},"html":{"href":"https://github.com/strava/developers.strava.com/pull/104#discussion_r202112914"},"pull_request":{"href":"https://api.github.com/repos/strava/developers.strava.com/pulls/104"}},"in_reply_to_id":202092588},"pull_request":{"url":"https://api.github.com/repos/strava/developers.strava.com/pulls/104","id":200877971,"node_id":"MDExOlB1bGxSZXF1ZXN0MjAwODc3OTcx","html_url":"https://github.com/strava/developers.strava.com/pull/104","diff_url":"https://github.com/strava/developers.strava.com/pull/104.diff","patch_url":"https://github.com/strava/developers.strava.com/pull/104.patch","issue_url":"https://api.github.com/repos/strava/developers.strava.com/issues/104","number":104,"state":"open","locked":false,"title":"[API-956] Refresh token docs","user":{"login":"zackisaacs","id":13637569,"node_id":"MDQ6VXNlcjEzNjM3NTY5","avatar_url":"https://avatars2.githubusercontent.com/u/13637569?v=4","gravatar_id":"","url":"https://api.github.com/users/zackisaacs","html_url":"https://github.com/zackisaacs","followers_url":"https://api.github.com/users/zackisaacs/followers","following_url":"https://api.github.com/users/zackisaacs/following{/other_user}","gists_url":"https://api.github.com/users/zackisaacs/gists{/gist_id}","starred_url":"https://api.github.com/users/zackisaacs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zackisaacs/subscriptions","organizations_url":"https://api.github.com/users/zackisaacs/orgs","repos_url":"https://api.github.com/users/zackisaacs/repos","events_url":"https://api.github.com/users/zackisaacs/events{/privacy}","received_events_url":"https://api.github.com/users/zackisaacs/received_events","type":"User","site_admin":false},"body":"cc @panthomakos \r\n\r\nBackground:\r\nWe’ve commissioned an external company to write a Strava app for the new Samsung watch. We want the app to use the new refresh token protocol. We already have a stub refresh token implementation in place. Now we want to provide documentation so that they can integrate against our refresh token API.\r\n\r\nSolution:\r\nI took the original authentication docs as a starting place and completely reworked them for clarity and to include details about refresh tokens. When we open up refresh tokens to everyone, this doc will replace the [current one](https://developers.strava.com/docs/authentication/). The new doc will live at [https://developers.strava.com/docs/partner/authentication](https://developers.strava.com/docs/partner/authentication).\r\n\r\nResult:\r\nWe have refresh token documentation!\r\n\r\nCompletes [API-956](https://strava.atlassian.net/browse/API-956)\r\n\r\n![screencapture-localhost-3124-docs-partner-authentication-2018-07-11-20_09_18](https://user-images.githubusercontent.com/13637569/42610697-92d17ba0-8547-11e8-83c1-1ad219521d02.png)\r\n","created_at":"2018-07-12T03:18:40Z","updated_at":"2018-07-12T17:24:26Z","closed_at":null,"merged_at":null,"merge_commit_sha":"0eeec7186ebf5e7adba6bc5ce06696421f524dd6","assignee":{"login":"MateoAO","id":1231849,"node_id":"MDQ6VXNlcjEyMzE4NDk=","avatar_url":"https://avatars1.githubusercontent.com/u/1231849?v=4","gravatar_id":"","url":"https://api.github.com/users/MateoAO","html_url":"https://github.com/MateoAO","followers_url":"https://api.github.com/users/MateoAO/followers","following_url":"https://api.github.com/users/MateoAO/following{/other_user}","gists_url":"https://api.github.com/users/MateoAO/gists{/gist_id}","starred_url":"https://api.github.com/users/MateoAO/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MateoAO/subscriptions","organizations_url":"https://api.github.com/users/MateoAO/orgs","repos_url":"https://api.github.com/users/MateoAO/repos","events_url":"https://api.github.com/users/MateoAO/events{/privacy}","received_events_url":"https://api.github.com/users/MateoAO/received_events","type":"User","site_admin":false},"assignees":[{"login":"MateoAO","id":1231849,"node_id":"MDQ6VXNlcjEyMzE4NDk=","avatar_url":"https://avatars1.githubusercontent.com/u/1231849?v=4","gravatar_id":"","url":"https://api.github.com/users/MateoAO","html_url":"https://github.com/MateoAO","followers_url":"https://api.github.com/users/MateoAO/followers","following_url":"https://api.github.com/users/MateoAO/following{/other_user}","gists_url":"https://api.github.com/users/MateoAO/gists{/gist_id}","starred_url":"https://api.github.com/users/MateoAO/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MateoAO/subscriptions","organizations_url":"https://api.github.com/users/MateoAO/orgs","repos_url":"https://api.github.com/users/MateoAO/repos","events_url":"https://api.github.com/users/MateoAO/events{/privacy}","received_events_url":"https://api.github.com/users/MateoAO/received_events","type":"User","site_admin":false},{"login":"yf6","id":1358856,"node_id":"MDQ6VXNlcjEzNTg4NTY=","avatar_url":"https://avatars2.githubusercontent.com/u/1358856?v=4","gravatar_id":"","url":"https://api.github.com/users/yf6","html_url":"https://github.com/yf6","followers_url":"https://api.github.com/users/yf6/followers","following_url":"https://api.github.com/users/yf6/following{/other_user}","gists_url":"https://api.github.com/users/yf6/gists{/gist_id}","starred_url":"https://api.github.com/users/yf6/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yf6/subscriptions","organizations_url":"https://api.github.com/users/yf6/orgs","repos_url":"https://api.github.com/users/yf6/repos","events_url":"https://api.github.com/users/yf6/events{/privacy}","received_events_url":"https://api.github.com/users/yf6/received_events","type":"User","site_admin":false},{"login":"mindy-stivers","id":35939409,"node_id":"MDQ6VXNlcjM1OTM5NDA5","avatar_url":"https://avatars0.githubusercontent.com/u/35939409?v=4","gravatar_id":"","url":"https://api.github.com/users/mindy-stivers","html_url":"https://github.com/mindy-stivers","followers_url":"https://api.github.com/users/mindy-stivers/followers","following_url":"https://api.github.com/users/mindy-stivers/following{/other_user}","gists_url":"https://api.github.com/users/mindy-stivers/gists{/gist_id}","starred_url":"https://api.github.com/users/mindy-stivers/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mindy-stivers/subscriptions","organizations_url":"https://api.github.com/users/mindy-stivers/orgs","repos_url":"https://api.github.com/users/mindy-stivers/repos","events_url":"https://api.github.com/users/mindy-stivers/events{/privacy}","received_events_url":"https://api.github.com/users/mindy-stivers/received_events","type":"User","site_admin":false}],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/strava/developers.strava.com/pulls/104/commits","review_comments_url":"https://api.github.com/repos/strava/developers.strava.com/pulls/104/comments","review_comment_url":"https://api.github.com/repos/strava/developers.strava.com/pulls/comments{/number}","comments_url":"https://api.github.com/repos/strava/developers.strava.com/issues/104/comments","statuses_url":"https://api.github.com/repos/strava/developers.strava.com/statuses/0af05fd84432689649eccbe6ae6994bb3a2d8906","head":{"label":"strava:zi/API-956","ref":"zi/API-956","sha":"0af05fd84432689649eccbe6ae6994bb3a2d8906","user":{"login":"strava","id":175478,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE3NTQ3OA==","avatar_url":"https://avatars2.githubusercontent.com/u/175478?v=4","gravatar_id":"","url":"https://api.github.com/users/strava","html_url":"https://github.com/strava","followers_url":"https://api.github.com/users/strava/followers","following_url":"https://api.github.com/users/strava/following{/other_user}","gists_url":"https://api.github.com/users/strava/gists{/gist_id}","starred_url":"https://api.github.com/users/strava/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/strava/subscriptions","organizations_url":"https://api.github.com/users/strava/orgs","repos_url":"https://api.github.com/users/strava/repos","events_url":"https://api.github.com/users/strava/events{/privacy}","received_events_url":"https://api.github.com/users/strava/received_events","type":"Organization","site_admin":false},"repo":{"id":95048467,"node_id":"MDEwOlJlcG9zaXRvcnk5NTA0ODQ2Nw==","name":"developers.strava.com","full_name":"strava/developers.strava.com","owner":{"login":"strava","id":175478,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE3NTQ3OA==","avatar_url":"https://avatars2.githubusercontent.com/u/175478?v=4","gravatar_id":"","url":"https://api.github.com/users/strava","html_url":"https://github.com/strava","followers_url":"https://api.github.com/users/strava/followers","following_url":"https://api.github.com/users/strava/following{/other_user}","gists_url":"https://api.github.com/users/strava/gists{/gist_id}","starred_url":"https://api.github.com/users/strava/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/strava/subscriptions","organizations_url":"https://api.github.com/users/strava/orgs","repos_url":"https://api.github.com/users/strava/repos","events_url":"https://api.github.com/users/strava/events{/privacy}","received_events_url":"https://api.github.com/users/strava/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/strava/developers.strava.com","description":null,"fork":false,"url":"https://api.github.com/repos/strava/developers.strava.com","forks_url":"https://api.github.com/repos/strava/developers.strava.com/forks","keys_url":"https://api.github.com/repos/strava/developers.strava.com/keys{/key_id}","collaborators_url":"https://api.github.com/repos/strava/developers.strava.com/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/strava/developers.strava.com/teams","hooks_url":"https://api.github.com/repos/strava/developers.strava.com/hooks","issue_events_url":"https://api.github.com/repos/strava/developers.strava.com/issues/events{/number}","events_url":"https://api.github.com/repos/strava/developers.strava.com/events","assignees_url":"https://api.github.com/repos/strava/developers.strava.com/assignees{/user}","branches_url":"https://api.github.com/repos/strava/developers.strava.com/branches{/branch}","tags_url":"https://api.github.com/repos/strava/developers.strava.com/tags","blobs_url":"https://api.github.com/repos/strava/developers.strava.com/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/strava/developers.strava.com/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/strava/developers.strava.com/git/refs{/sha}","trees_url":"https://api.github.com/repos/strava/developers.strava.com/git/trees{/sha}","statuses_url":"https://api.github.com/repos/strava/developers.strava.com/statuses/{sha}","languages_url":"https://api.github.com/repos/strava/developers.strava.com/languages","stargazers_url":"https://api.github.com/repos/strava/developers.strava.com/stargazers","contributors_url":"https://api.github.com/repos/strava/developers.strava.com/contributors","subscribers_url":"https://api.github.com/repos/strava/developers.strava.com/subscribers","subscription_url":"https://api.github.com/repos/strava/developers.strava.com/subscription","commits_url":"https://api.github.com/repos/strava/developers.strava.com/commits{/sha}","git_commits_url":"https://api.github.com/repos/strava/developers.strava.com/git/commits{/sha}","comments_url":"https://api.github.com/repos/strava/developers.strava.com/comments{/number}","issue_comment_url":"https://api.github.com/repos/strava/developers.strava.com/issues/comments{/number}","contents_url":"https://api.github.com/repos/strava/developers.strava.com/contents/{+path}","compare_url":"https://api.github.com/repos/strava/developers.strava.com/compare/{base}...{head}","merges_url":"https://api.github.com/repos/strava/developers.strava.com/merges","archive_url":"https://api.github.com/repos/strava/developers.strava.com/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/strava/developers.strava.com/downloads","issues_url":"https://api.github.com/repos/strava/developers.strava.com/issues{/number}","pulls_url":"https://api.github.com/repos/strava/developers.strava.com/pulls{/number}","milestones_url":"https://api.github.com/repos/strava/developers.strava.com/milestones{/number}","notifications_url":"https://api.github.com/repos/strava/developers.strava.com/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/strava/developers.strava.com/labels{/name}","releases_url":"https://api.github.com/repos/strava/developers.strava.com/releases{/id}","deployments_url":"https://api.github.com/repos/strava/developers.strava.com/deployments","created_at":"2017-06-21T21:38:35Z","updated_at":"2018-07-12T15:48:15Z","pushed_at":"2018-07-12T15:48:14Z","git_url":"git://github.com/strava/developers.strava.com.git","ssh_url":"git@github.com:strava/developers.strava.com.git","clone_url":"https://github.com/strava/developers.strava.com.git","svn_url":"https://github.com/strava/developers.strava.com","homepage":"https://developers.strava.com","size":4310,"stargazers_count":21,"watchers_count":21,"language":"HTML","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":6,"mirror_url":null,"archived":false,"open_issues_count":1,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":6,"open_issues":1,"watchers":21,"default_branch":"master"}},"base":{"label":"strava:master","ref":"master","sha":"5e8d58266540340ffa83e6cb1ab497505e821217","user":{"login":"strava","id":175478,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE3NTQ3OA==","avatar_url":"https://avatars2.githubusercontent.com/u/175478?v=4","gravatar_id":"","url":"https://api.github.com/users/strava","html_url":"https://github.com/strava","followers_url":"https://api.github.com/users/strava/followers","following_url":"https://api.github.com/users/strava/following{/other_user}","gists_url":"https://api.github.com/users/strava/gists{/gist_id}","starred_url":"https://api.github.com/users/strava/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/strava/subscriptions","organizations_url":"https://api.github.com/users/strava/orgs","repos_url":"https://api.github.com/users/strava/repos","events_url":"https://api.github.com/users/strava/events{/privacy}","received_events_url":"https://api.github.com/users/strava/received_events","type":"Organization","site_admin":false},"repo":{"id":95048467,"node_id":"MDEwOlJlcG9zaXRvcnk5NTA0ODQ2Nw==","name":"developers.strava.com","full_name":"strava/developers.strava.com","owner":{"login":"strava","id":175478,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE3NTQ3OA==","avatar_url":"https://avatars2.githubusercontent.com/u/175478?v=4","gravatar_id":"","url":"https://api.github.com/users/strava","html_url":"https://github.com/strava","followers_url":"https://api.github.com/users/strava/followers","following_url":"https://api.github.com/users/strava/following{/other_user}","gists_url":"https://api.github.com/users/strava/gists{/gist_id}","starred_url":"https://api.github.com/users/strava/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/strava/subscriptions","organizations_url":"https://api.github.com/users/strava/orgs","repos_url":"https://api.github.com/users/strava/repos","events_url":"https://api.github.com/users/strava/events{/privacy}","received_events_url":"https://api.github.com/users/strava/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/strava/developers.strava.com","description":null,"fork":false,"url":"https://api.github.com/repos/strava/developers.strava.com","forks_url":"https://api.github.com/repos/strava/developers.strava.com/forks","keys_url":"https://api.github.com/repos/strava/developers.strava.com/keys{/key_id}","collaborators_url":"https://api.github.com/repos/strava/developers.strava.com/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/strava/developers.strava.com/teams","hooks_url":"https://api.github.com/repos/strava/developers.strava.com/hooks","issue_events_url":"https://api.github.com/repos/strava/developers.strava.com/issues/events{/number}","events_url":"https://api.github.com/repos/strava/developers.strava.com/events","assignees_url":"https://api.github.com/repos/strava/developers.strava.com/assignees{/user}","branches_url":"https://api.github.com/repos/strava/developers.strava.com/branches{/branch}","tags_url":"https://api.github.com/repos/strava/developers.strava.com/tags","blobs_url":"https://api.github.com/repos/strava/developers.strava.com/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/strava/developers.strava.com/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/strava/developers.strava.com/git/refs{/sha}","trees_url":"https://api.github.com/repos/strava/developers.strava.com/git/trees{/sha}","statuses_url":"https://api.github.com/repos/strava/developers.strava.com/statuses/{sha}","languages_url":"https://api.github.com/repos/strava/developers.strava.com/languages","stargazers_url":"https://api.github.com/repos/strava/developers.strava.com/stargazers","contributors_url":"https://api.github.com/repos/strava/developers.strava.com/contributors","subscribers_url":"https://api.github.com/repos/strava/developers.strava.com/subscribers","subscription_url":"https://api.github.com/repos/strava/developers.strava.com/subscription","commits_url":"https://api.github.com/repos/strava/developers.strava.com/commits{/sha}","git_commits_url":"https://api.github.com/repos/strava/developers.strava.com/git/commits{/sha}","comments_url":"https://api.github.com/repos/strava/developers.strava.com/comments{/number}","issue_comment_url":"https://api.github.com/repos/strava/developers.strava.com/issues/comments{/number}","contents_url":"https://api.github.com/repos/strava/developers.strava.com/contents/{+path}","compare_url":"https://api.github.com/repos/strava/developers.strava.com/compare/{base}...{head}","merges_url":"https://api.github.com/repos/strava/developers.strava.com/merges","archive_url":"https://api.github.com/repos/strava/developers.strava.com/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/strava/developers.strava.com/downloads","issues_url":"https://api.github.com/repos/strava/developers.strava.com/issues{/number}","pulls_url":"https://api.github.com/repos/strava/developers.strava.com/pulls{/number}","milestones_url":"https://api.github.com/repos/strava/developers.strava.com/milestones{/number}","notifications_url":"https://api.github.com/repos/strava/developers.strava.com/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/strava/developers.strava.com/labels{/name}","releases_url":"https://api.github.com/repos/strava/developers.strava.com/releases{/id}","deployments_url":"https://api.github.com/repos/strava/developers.strava.com/deployments","created_at":"2017-06-21T21:38:35Z","updated_at":"2018-07-12T15:48:15Z","pushed_at":"2018-07-12T15:48:14Z","git_url":"git://github.com/strava/developers.strava.com.git","ssh_url":"git@github.com:strava/developers.strava.com.git","clone_url":"https://github.com/strava/developers.strava.com.git","svn_url":"https://github.com/strava/developers.strava.com","homepage":"https://developers.strava.com","size":4310,"stargazers_count":21,"watchers_count":21,"language":"HTML","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":6,"mirror_url":null,"archived":false,"open_issues_count":1,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":6,"open_issues":1,"watchers":21,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/strava/developers.strava.com/pulls/104"},"html":{"href":"https://github.com/strava/developers.strava.com/pull/104"},"issue":{"href":"https://api.github.com/repos/strava/developers.strava.com/issues/104"},"comments":{"href":"https://api.github.com/repos/strava/developers.strava.com/issues/104/comments"},"review_comments":{"href":"https://api.github.com/repos/strava/developers.strava.com/pulls/104/comments"},"review_comment":{"href":"https://api.github.com/repos/strava/developers.strava.com/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/strava/developers.strava.com/pulls/104/commits"},"statuses":{"href":"https://api.github.com/repos/strava/developers.strava.com/statuses/0af05fd84432689649eccbe6ae6994bb3a2d8906"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"zackisaacs"}}