{"action":"created","comment":{"url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/pulls/comments/225654961","pull_request_review_id":165296155,"id":225654961,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyNTY1NDk2MQ==","diff_hunk":"@@ -54,17 +52,20 @@ app\n   .then(() => {\n     const server = express();\n \n-    const { SESSION_SECRET, SESSION_MAX_AGE_MS } = process.env;\n+    const { SESSION_MAX_AGE_MS } = process.env;\n     const maxAge = SESSION_MAX_AGE_MS ? Number(SESSION_MAX_AGE_MS) : 24 * 60 * 60 * 1000; // 24 hours\n \n     // We use a client-side cookie session instead of a server session so that there are no\n     // issues when load balancing without sticky sessions.\n     // https://www.npmjs.com/package/cookie-session\n+    // The cookie is not `signed` because it's value is to be changed when access_token is\n+    // refreshed in the browser.\n     server.use(cookieSession({\n       // https://www.npmjs.com/package/cookie-session#options\n-      keys: [SESSION_SECRET],\n       maxAge,\n-      name: \"storefront-session\"\n+      name: \"storefront-session\",\n+      httpOnly: false,\n+      signed: false","path":"src/server.js","position":49,"original_position":49,"commit_id":"3aafbcc0b3de34cb4f27b48eabc0f3f2536ea9bf","original_commit_id":"3aafbcc0b3de34cb4f27b48eabc0f3f2536ea9bf","user":{"login":"aldeed","id":3012067,"node_id":"MDQ6VXNlcjMwMTIwNjc=","avatar_url":"https://avatars1.githubusercontent.com/u/3012067?v=4","gravatar_id":"","url":"https://api.github.com/users/aldeed","html_url":"https://github.com/aldeed","followers_url":"https://api.github.com/users/aldeed/followers","following_url":"https://api.github.com/users/aldeed/following{/other_user}","gists_url":"https://api.github.com/users/aldeed/gists{/gist_id}","starred_url":"https://api.github.com/users/aldeed/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aldeed/subscriptions","organizations_url":"https://api.github.com/users/aldeed/orgs","repos_url":"https://api.github.com/users/aldeed/repos","events_url":"https://api.github.com/users/aldeed/events{/privacy}","received_events_url":"https://api.github.com/users/aldeed/received_events","type":"User","site_admin":false},"body":"Removing `httpOnly` does worry me a little, but there may be no other way. Let's document this in plain English and have a couple people review the approach in the docs before merging this. For now, can you just add an `auth.md` file in `docs` in this repo?\r\n\r\nDocs should explain\r\n- how cookies are used for auth\r\n- what type of cookies and why\r\n- what is happening to set the cookie during login\r\n- how do the Apollo requests use the cookie/token\r\n- how do we clear the cookie/state at logout\r\n- what happens when token is expired while querying from server code\r\n- what happens when token is expired while querying from client code","created_at":"2018-10-16T18:22:52Z","updated_at":"2018-10-16T18:23:14Z","html_url":"https://github.com/reactioncommerce/reaction-next-starterkit/pull/394#discussion_r225654961","pull_request_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/pulls/394","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/pulls/comments/225654961"},"html":{"href":"https://github.com/reactioncommerce/reaction-next-starterkit/pull/394#discussion_r225654961"},"pull_request":{"href":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/pulls/394"}}},"pull_request":{"url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/pulls/394","id":223070724,"node_id":"MDExOlB1bGxSZXF1ZXN0MjIzMDcwNzI0","html_url":"https://github.com/reactioncommerce/reaction-next-starterkit/pull/394","diff_url":"https://github.com/reactioncommerce/reaction-next-starterkit/pull/394.diff","patch_url":"https://github.com/reactioncommerce/reaction-next-starterkit/pull/394.patch","issue_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/issues/394","number":394,"state":"open","locked":false,"title":"feat: Refresh access tokens on 401 errors","user":{"login":"impactmass","id":5229321,"node_id":"MDQ6VXNlcjUyMjkzMjE=","avatar_url":"https://avatars3.githubusercontent.com/u/5229321?v=4","gravatar_id":"","url":"https://api.github.com/users/impactmass","html_url":"https://github.com/impactmass","followers_url":"https://api.github.com/users/impactmass/followers","following_url":"https://api.github.com/users/impactmass/following{/other_user}","gists_url":"https://api.github.com/users/impactmass/gists{/gist_id}","starred_url":"https://api.github.com/users/impactmass/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/impactmass/subscriptions","organizations_url":"https://api.github.com/users/impactmass/orgs","repos_url":"https://api.github.com/users/impactmass/repos","events_url":"https://api.github.com/users/impactmass/events{/privacy}","received_events_url":"https://api.github.com/users/impactmass/received_events","type":"User","site_admin":false},"body":"Resolves #350\r\nType: feature\r\n\r\n## Issue\r\nGet a new access token from Hydra.\r\n\r\n## Solution\r\n- Setup of a CORS-enabled endpoint in Identity provider that talks to Hydra to retrieve new tokens (reactioncommerce/reaction#4743)\r\n- Update Apollo link setup to catch 401s\r\n- Use endpoint created within IDP in apollo-client to get new tokens\r\n- Write new tokens received to cookie \r\n\r\n## Breaking changes\r\nNone\r\n\r\n\r\n## Testing\r\n1. Start Starterkit on this branch, and Reaction API on this PR reactioncommerce/reaction#4743\r\n2. Run Hydra on master. Set this ENV in the docker-compose yaml before starting the service: ACCESS_TOKEN_LIFESPAN=1m. This will reduce the wait time. The tokens will expire in 60s.\r\n3. Load up a page. Leave it for a while for the token to expire. \r\n4. Return back to the page, and browser (e.g make a view a product, pause, then come back to add to cart. Try different approaches).\r\n5. Note if there are any token denied errors or 401s. There should be none\r\n","created_at":"2018-10-15T23:15:42Z","updated_at":"2018-10-16T18:23:14Z","closed_at":null,"merged_at":null,"merge_commit_sha":"da3371277df320365ebe02e83943850a9c366ac4","assignee":{"login":"impactmass","id":5229321,"node_id":"MDQ6VXNlcjUyMjkzMjE=","avatar_url":"https://avatars3.githubusercontent.com/u/5229321?v=4","gravatar_id":"","url":"https://api.github.com/users/impactmass","html_url":"https://github.com/impactmass","followers_url":"https://api.github.com/users/impactmass/followers","following_url":"https://api.github.com/users/impactmass/following{/other_user}","gists_url":"https://api.github.com/users/impactmass/gists{/gist_id}","starred_url":"https://api.github.com/users/impactmass/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/impactmass/subscriptions","organizations_url":"https://api.github.com/users/impactmass/orgs","repos_url":"https://api.github.com/users/impactmass/repos","events_url":"https://api.github.com/users/impactmass/events{/privacy}","received_events_url":"https://api.github.com/users/impactmass/received_events","type":"User","site_admin":false},"assignees":[{"login":"impactmass","id":5229321,"node_id":"MDQ6VXNlcjUyMjkzMjE=","avatar_url":"https://avatars3.githubusercontent.com/u/5229321?v=4","gravatar_id":"","url":"https://api.github.com/users/impactmass","html_url":"https://github.com/impactmass","followers_url":"https://api.github.com/users/impactmass/followers","following_url":"https://api.github.com/users/impactmass/following{/other_user}","gists_url":"https://api.github.com/users/impactmass/gists{/gist_id}","starred_url":"https://api.github.com/users/impactmass/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/impactmass/subscriptions","organizations_url":"https://api.github.com/users/impactmass/orgs","repos_url":"https://api.github.com/users/impactmass/repos","events_url":"https://api.github.com/users/impactmass/events{/privacy}","received_events_url":"https://api.github.com/users/impactmass/received_events","type":"User","site_admin":false}],"requested_reviewers":[{"login":"mikemurray","id":42217,"node_id":"MDQ6VXNlcjQyMjE3","avatar_url":"https://avatars3.githubusercontent.com/u/42217?v=4","gravatar_id":"","url":"https://api.github.com/users/mikemurray","html_url":"https://github.com/mikemurray","followers_url":"https://api.github.com/users/mikemurray/followers","following_url":"https://api.github.com/users/mikemurray/following{/other_user}","gists_url":"https://api.github.com/users/mikemurray/gists{/gist_id}","starred_url":"https://api.github.com/users/mikemurray/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mikemurray/subscriptions","organizations_url":"https://api.github.com/users/mikemurray/orgs","repos_url":"https://api.github.com/users/mikemurray/repos","events_url":"https://api.github.com/users/mikemurray/events{/privacy}","received_events_url":"https://api.github.com/users/mikemurray/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":{"url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/milestones/14","html_url":"https://github.com/reactioncommerce/reaction-next-starterkit/milestone/14","labels_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/milestones/14/labels","id":3695155,"node_id":"MDk6TWlsZXN0b25lMzY5NTE1NQ==","number":14,"title":"Oxford","description":"Core Team Milestone\nOct 2 - Oct 15 2018","creator":{"login":"spencern","id":1203639,"node_id":"MDQ6VXNlcjEyMDM2Mzk=","avatar_url":"https://avatars0.githubusercontent.com/u/1203639?v=4","gravatar_id":"","url":"https://api.github.com/users/spencern","html_url":"https://github.com/spencern","followers_url":"https://api.github.com/users/spencern/followers","following_url":"https://api.github.com/users/spencern/following{/other_user}","gists_url":"https://api.github.com/users/spencern/gists{/gist_id}","starred_url":"https://api.github.com/users/spencern/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spencern/subscriptions","organizations_url":"https://api.github.com/users/spencern/orgs","repos_url":"https://api.github.com/users/spencern/repos","events_url":"https://api.github.com/users/spencern/events{/privacy}","received_events_url":"https://api.github.com/users/spencern/received_events","type":"User","site_admin":false},"open_issues":26,"closed_issues":16,"state":"open","created_at":"2018-09-27T23:53:36Z","updated_at":"2018-10-16T15:03:55Z","due_on":"2018-10-15T07:00:00Z","closed_at":null},"commits_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/pulls/394/commits","review_comments_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/pulls/394/comments","review_comment_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/pulls/comments{/number}","comments_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/issues/394/comments","statuses_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/statuses/3aafbcc0b3de34cb4f27b48eabc0f3f2536ea9bf","head":{"label":"reactioncommerce:feat-350-impactmass-token-refresh","ref":"feat-350-impactmass-token-refresh","sha":"3aafbcc0b3de34cb4f27b48eabc0f3f2536ea9bf","user":{"login":"reactioncommerce","id":5605462,"node_id":"MDEyOk9yZ2FuaXphdGlvbjU2MDU0NjI=","avatar_url":"https://avatars0.githubusercontent.com/u/5605462?v=4","gravatar_id":"","url":"https://api.github.com/users/reactioncommerce","html_url":"https://github.com/reactioncommerce","followers_url":"https://api.github.com/users/reactioncommerce/followers","following_url":"https://api.github.com/users/reactioncommerce/following{/other_user}","gists_url":"https://api.github.com/users/reactioncommerce/gists{/gist_id}","starred_url":"https://api.github.com/users/reactioncommerce/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/reactioncommerce/subscriptions","organizations_url":"https://api.github.com/users/reactioncommerce/orgs","repos_url":"https://api.github.com/users/reactioncommerce/repos","events_url":"https://api.github.com/users/reactioncommerce/events{/privacy}","received_events_url":"https://api.github.com/users/reactioncommerce/received_events","type":"Organization","site_admin":false},"repo":{"id":127972704,"node_id":"MDEwOlJlcG9zaXRvcnkxMjc5NzI3MDQ=","name":"reaction-next-starterkit","full_name":"reactioncommerce/reaction-next-starterkit","private":false,"owner":{"login":"reactioncommerce","id":5605462,"node_id":"MDEyOk9yZ2FuaXphdGlvbjU2MDU0NjI=","avatar_url":"https://avatars0.githubusercontent.com/u/5605462?v=4","gravatar_id":"","url":"https://api.github.com/users/reactioncommerce","html_url":"https://github.com/reactioncommerce","followers_url":"https://api.github.com/users/reactioncommerce/followers","following_url":"https://api.github.com/users/reactioncommerce/following{/other_user}","gists_url":"https://api.github.com/users/reactioncommerce/gists{/gist_id}","starred_url":"https://api.github.com/users/reactioncommerce/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/reactioncommerce/subscriptions","organizations_url":"https://api.github.com/users/reactioncommerce/orgs","repos_url":"https://api.github.com/users/reactioncommerce/repos","events_url":"https://api.github.com/users/reactioncommerce/events{/privacy}","received_events_url":"https://api.github.com/users/reactioncommerce/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/reactioncommerce/reaction-next-starterkit","description":"Reaction Commerce's headless ecommerce storefront - Next.js, GraphQL, React","fork":false,"url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit","forks_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/forks","keys_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/keys{/key_id}","collaborators_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/teams","hooks_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/hooks","issue_events_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/issues/events{/number}","events_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/events","assignees_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/assignees{/user}","branches_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/branches{/branch}","tags_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/tags","blobs_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/git/refs{/sha}","trees_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/git/trees{/sha}","statuses_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/statuses/{sha}","languages_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/languages","stargazers_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/stargazers","contributors_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/contributors","subscribers_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/subscribers","subscription_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/subscription","commits_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/commits{/sha}","git_commits_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/git/commits{/sha}","comments_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/comments{/number}","issue_comment_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/issues/comments{/number}","contents_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/contents/{+path}","compare_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/compare/{base}...{head}","merges_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/merges","archive_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/downloads","issues_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/issues{/number}","pulls_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/pulls{/number}","milestones_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/milestones{/number}","notifications_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/labels{/name}","releases_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/releases{/id}","deployments_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/deployments","created_at":"2018-04-03T21:50:03Z","updated_at":"2018-10-15T19:58:59Z","pushed_at":"2018-10-16T16:10:32Z","git_url":"git://github.com/reactioncommerce/reaction-next-starterkit.git","ssh_url":"git@github.com:reactioncommerce/reaction-next-starterkit.git","clone_url":"https://github.com/reactioncommerce/reaction-next-starterkit.git","svn_url":"https://github.com/reactioncommerce/reaction-next-starterkit","homepage":"https://www.reactioncommerce.com/","size":3771,"stargazers_count":65,"watchers_count":65,"language":"JavaScript","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":8,"mirror_url":null,"archived":false,"open_issues_count":47,"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":8,"open_issues":47,"watchers":65,"default_branch":"develop"}},"base":{"label":"reactioncommerce:develop","ref":"develop","sha":"ffe5328546997e3423f6ce3d3b971b9743cf744a","user":{"login":"reactioncommerce","id":5605462,"node_id":"MDEyOk9yZ2FuaXphdGlvbjU2MDU0NjI=","avatar_url":"https://avatars0.githubusercontent.com/u/5605462?v=4","gravatar_id":"","url":"https://api.github.com/users/reactioncommerce","html_url":"https://github.com/reactioncommerce","followers_url":"https://api.github.com/users/reactioncommerce/followers","following_url":"https://api.github.com/users/reactioncommerce/following{/other_user}","gists_url":"https://api.github.com/users/reactioncommerce/gists{/gist_id}","starred_url":"https://api.github.com/users/reactioncommerce/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/reactioncommerce/subscriptions","organizations_url":"https://api.github.com/users/reactioncommerce/orgs","repos_url":"https://api.github.com/users/reactioncommerce/repos","events_url":"https://api.github.com/users/reactioncommerce/events{/privacy}","received_events_url":"https://api.github.com/users/reactioncommerce/received_events","type":"Organization","site_admin":false},"repo":{"id":127972704,"node_id":"MDEwOlJlcG9zaXRvcnkxMjc5NzI3MDQ=","name":"reaction-next-starterkit","full_name":"reactioncommerce/reaction-next-starterkit","private":false,"owner":{"login":"reactioncommerce","id":5605462,"node_id":"MDEyOk9yZ2FuaXphdGlvbjU2MDU0NjI=","avatar_url":"https://avatars0.githubusercontent.com/u/5605462?v=4","gravatar_id":"","url":"https://api.github.com/users/reactioncommerce","html_url":"https://github.com/reactioncommerce","followers_url":"https://api.github.com/users/reactioncommerce/followers","following_url":"https://api.github.com/users/reactioncommerce/following{/other_user}","gists_url":"https://api.github.com/users/reactioncommerce/gists{/gist_id}","starred_url":"https://api.github.com/users/reactioncommerce/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/reactioncommerce/subscriptions","organizations_url":"https://api.github.com/users/reactioncommerce/orgs","repos_url":"https://api.github.com/users/reactioncommerce/repos","events_url":"https://api.github.com/users/reactioncommerce/events{/privacy}","received_events_url":"https://api.github.com/users/reactioncommerce/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/reactioncommerce/reaction-next-starterkit","description":"Reaction Commerce's headless ecommerce storefront - Next.js, GraphQL, React","fork":false,"url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit","forks_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/forks","keys_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/keys{/key_id}","collaborators_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/teams","hooks_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/hooks","issue_events_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/issues/events{/number}","events_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/events","assignees_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/assignees{/user}","branches_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/branches{/branch}","tags_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/tags","blobs_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/git/refs{/sha}","trees_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/git/trees{/sha}","statuses_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/statuses/{sha}","languages_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/languages","stargazers_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/stargazers","contributors_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/contributors","subscribers_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/subscribers","subscription_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/subscription","commits_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/commits{/sha}","git_commits_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/git/commits{/sha}","comments_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/comments{/number}","issue_comment_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/issues/comments{/number}","contents_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/contents/{+path}","compare_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/compare/{base}...{head}","merges_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/merges","archive_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/downloads","issues_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/issues{/number}","pulls_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/pulls{/number}","milestones_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/milestones{/number}","notifications_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/labels{/name}","releases_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/releases{/id}","deployments_url":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/deployments","created_at":"2018-04-03T21:50:03Z","updated_at":"2018-10-15T19:58:59Z","pushed_at":"2018-10-16T16:10:32Z","git_url":"git://github.com/reactioncommerce/reaction-next-starterkit.git","ssh_url":"git@github.com:reactioncommerce/reaction-next-starterkit.git","clone_url":"https://github.com/reactioncommerce/reaction-next-starterkit.git","svn_url":"https://github.com/reactioncommerce/reaction-next-starterkit","homepage":"https://www.reactioncommerce.com/","size":3771,"stargazers_count":65,"watchers_count":65,"language":"JavaScript","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":8,"mirror_url":null,"archived":false,"open_issues_count":47,"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":8,"open_issues":47,"watchers":65,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/pulls/394"},"html":{"href":"https://github.com/reactioncommerce/reaction-next-starterkit/pull/394"},"issue":{"href":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/issues/394"},"comments":{"href":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/issues/394/comments"},"review_comments":{"href":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/pulls/394/comments"},"review_comment":{"href":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/pulls/394/commits"},"statuses":{"href":"https://api.github.com/repos/reactioncommerce/reaction-next-starterkit/statuses/3aafbcc0b3de34cb4f27b48eabc0f3f2536ea9bf"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"aldeed"}}