{"action":"created","comment":{"url":"https://api.github.com/repos/squaredup/HubSpot.NET/pulls/comments/223028198","pull_request_review_id":162062988,"id":223028198,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyMzAyODE5OA==","diff_hunk":"@@ -0,0 +1,154 @@\n+﻿namespace HubSpot.NET.Api.OAuth\n+{\n+    using HubSpot.NET.Api.OAuth.Dto;\n+    using HubSpot.NET.Core;\n+    using HubSpot.NET.Core.Abstracts;\n+    using HubSpot.NET.Core.Interfaces;\n+    using Newtonsoft.Json;\n+    using RestSharp;\n+    using RestSharp.Serializers;\n+    using System;\n+    using System.Collections.Generic;\n+    using System.Text;\n+\n+    public class HubSpotOAuthApi : ApiRoutable, IHubSpotOAuthApi\n+    {\n+        public string ClientId { get; private set; }\n+        private string _clientSecret;\n+        private IHubSpotClient _client;\n+\n+        public override string MidRoute => \"oauth/v1/token\";\n+\n+        private Dictionary<OAuthScopes, string> OAuthScopeNameConversions = new Dictionary<OAuthScopes, string>\n+        {\n+            { OAuthScopes.Automation , \"automation\" },","path":"HubSpot.NET/Api/OAuth/HubSpotOAuthApi.cs","position":24,"original_position":24,"commit_id":"51d5e7e5fe91169776b7dd7a4cac4db0ffe199e9","original_commit_id":"51d5e7e5fe91169776b7dd7a4cac4db0ffe199e9","user":{"login":"Psypher9","id":15854173,"node_id":"MDQ6VXNlcjE1ODU0MTcz","avatar_url":"https://avatars0.githubusercontent.com/u/15854173?v=4","gravatar_id":"","url":"https://api.github.com/users/Psypher9","html_url":"https://github.com/Psypher9","followers_url":"https://api.github.com/users/Psypher9/followers","following_url":"https://api.github.com/users/Psypher9/following{/other_user}","gists_url":"https://api.github.com/users/Psypher9/gists{/gist_id}","starred_url":"https://api.github.com/users/Psypher9/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Psypher9/subscriptions","organizations_url":"https://api.github.com/users/Psypher9/orgs","repos_url":"https://api.github.com/users/Psypher9/repos","events_url":"https://api.github.com/users/Psypher9/events{/privacy}","received_events_url":"https://api.github.com/users/Psypher9/received_events","type":"User","site_admin":false},"body":"I'm not sure what you mean by saying there will be two places to maintain the list. Could you please clarify?","created_at":"2018-10-05T14:33:36Z","updated_at":"2018-10-05T14:33:36Z","html_url":"https://github.com/squaredup/HubSpot.NET/pull/33#discussion_r223028198","pull_request_url":"https://api.github.com/repos/squaredup/HubSpot.NET/pulls/33","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/squaredup/HubSpot.NET/pulls/comments/223028198"},"html":{"href":"https://github.com/squaredup/HubSpot.NET/pull/33#discussion_r223028198"},"pull_request":{"href":"https://api.github.com/repos/squaredup/HubSpot.NET/pulls/33"}},"in_reply_to_id":222945209},"pull_request":{"url":"https://api.github.com/repos/squaredup/HubSpot.NET/pulls/33","id":219435514,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE5NDM1NTE0","html_url":"https://github.com/squaredup/HubSpot.NET/pull/33","diff_url":"https://github.com/squaredup/HubSpot.NET/pull/33.diff","patch_url":"https://github.com/squaredup/HubSpot.NET/pull/33.patch","issue_url":"https://api.github.com/repos/squaredup/HubSpot.NET/issues/33","number":33,"state":"open","locked":false,"title":"Major updates and improvements","user":{"login":"Psypher9","id":15854173,"node_id":"MDQ6VXNlcjE1ODU0MTcz","avatar_url":"https://avatars0.githubusercontent.com/u/15854173?v=4","gravatar_id":"","url":"https://api.github.com/users/Psypher9","html_url":"https://github.com/Psypher9","followers_url":"https://api.github.com/users/Psypher9/followers","following_url":"https://api.github.com/users/Psypher9/following{/other_user}","gists_url":"https://api.github.com/users/Psypher9/gists{/gist_id}","starred_url":"https://api.github.com/users/Psypher9/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Psypher9/subscriptions","organizations_url":"https://api.github.com/users/Psypher9/orgs","repos_url":"https://api.github.com/users/Psypher9/repos","events_url":"https://api.github.com/users/Psypher9/events{/privacy}","received_events_url":"https://api.github.com/users/Psypher9/received_events","type":"User","site_admin":false},"body":"I understand that there are plenty of topics to discuss in this PR, so I definitely want to talk those things out. We are currently using this version of HubSpot.NET in our own private project and though there are still somethings to finish testing with Timeline events we figure that we should at least get the PR discussion going at this point. \r\n\r\nWe've tried to maintain the conventions of HubSpot.NET's APIs so that externally they are still usable. We have however added support for OAuth so that is a major change.\r\n\r\n**Here's an overview of what is included in this PR:**\r\n- Timeline API support\r\n- OAuth support\r\n- Subscriptions API support (GET & PUT)\r\n- Improvements to the internal route construction for the APIs\r\n- Updated RestSharp version\r\n- Improved internal use of generics\r\n- Added Framework support for `.NET Standard 2.0` & `.NET Framework 4.6.1` \r\n- Moved toward a more strongly typed approach to handling incoming and outgoing DTOs\r\n\r\n#32 #21","created_at":"2018-10-01T16:20:34Z","updated_at":"2018-10-05T14:33:36Z","closed_at":null,"merged_at":null,"merge_commit_sha":"2fcc989b3bc41022119d5da975e80555234b8d93","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/squaredup/HubSpot.NET/pulls/33/commits","review_comments_url":"https://api.github.com/repos/squaredup/HubSpot.NET/pulls/33/comments","review_comment_url":"https://api.github.com/repos/squaredup/HubSpot.NET/pulls/comments{/number}","comments_url":"https://api.github.com/repos/squaredup/HubSpot.NET/issues/33/comments","statuses_url":"https://api.github.com/repos/squaredup/HubSpot.NET/statuses/51d5e7e5fe91169776b7dd7a4cac4db0ffe199e9","head":{"label":"vtr-dev:master","ref":"master","sha":"51d5e7e5fe91169776b7dd7a4cac4db0ffe199e9","user":{"login":"vtr-dev","id":40775709,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQwNzc1NzA5","avatar_url":"https://avatars0.githubusercontent.com/u/40775709?v=4","gravatar_id":"","url":"https://api.github.com/users/vtr-dev","html_url":"https://github.com/vtr-dev","followers_url":"https://api.github.com/users/vtr-dev/followers","following_url":"https://api.github.com/users/vtr-dev/following{/other_user}","gists_url":"https://api.github.com/users/vtr-dev/gists{/gist_id}","starred_url":"https://api.github.com/users/vtr-dev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vtr-dev/subscriptions","organizations_url":"https://api.github.com/users/vtr-dev/orgs","repos_url":"https://api.github.com/users/vtr-dev/repos","events_url":"https://api.github.com/users/vtr-dev/events{/privacy}","received_events_url":"https://api.github.com/users/vtr-dev/received_events","type":"Organization","site_admin":false},"repo":{"id":147546750,"node_id":"MDEwOlJlcG9zaXRvcnkxNDc1NDY3NTA=","name":"HubSpot.NET","full_name":"vtr-dev/HubSpot.NET","private":false,"owner":{"login":"vtr-dev","id":40775709,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQwNzc1NzA5","avatar_url":"https://avatars0.githubusercontent.com/u/40775709?v=4","gravatar_id":"","url":"https://api.github.com/users/vtr-dev","html_url":"https://github.com/vtr-dev","followers_url":"https://api.github.com/users/vtr-dev/followers","following_url":"https://api.github.com/users/vtr-dev/following{/other_user}","gists_url":"https://api.github.com/users/vtr-dev/gists{/gist_id}","starred_url":"https://api.github.com/users/vtr-dev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vtr-dev/subscriptions","organizations_url":"https://api.github.com/users/vtr-dev/orgs","repos_url":"https://api.github.com/users/vtr-dev/repos","events_url":"https://api.github.com/users/vtr-dev/events{/privacy}","received_events_url":"https://api.github.com/users/vtr-dev/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/vtr-dev/HubSpot.NET","description":"C# .NET Wrapper around the common HubSpot APIs.","fork":true,"url":"https://api.github.com/repos/vtr-dev/HubSpot.NET","forks_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/forks","keys_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/keys{/key_id}","collaborators_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/teams","hooks_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/hooks","issue_events_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/issues/events{/number}","events_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/events","assignees_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/assignees{/user}","branches_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/branches{/branch}","tags_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/tags","blobs_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/git/refs{/sha}","trees_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/git/trees{/sha}","statuses_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/statuses/{sha}","languages_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/languages","stargazers_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/stargazers","contributors_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/contributors","subscribers_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/subscribers","subscription_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/subscription","commits_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/commits{/sha}","git_commits_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/git/commits{/sha}","comments_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/comments{/number}","issue_comment_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/issues/comments{/number}","contents_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/contents/{+path}","compare_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/compare/{base}...{head}","merges_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/merges","archive_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/downloads","issues_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/issues{/number}","pulls_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/pulls{/number}","milestones_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/milestones{/number}","notifications_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/labels{/name}","releases_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/releases{/id}","deployments_url":"https://api.github.com/repos/vtr-dev/HubSpot.NET/deployments","created_at":"2018-09-05T16:18:28Z","updated_at":"2018-10-01T15:57:07Z","pushed_at":"2018-10-01T15:57:05Z","git_url":"git://github.com/vtr-dev/HubSpot.NET.git","ssh_url":"git@github.com:vtr-dev/HubSpot.NET.git","clone_url":"https://github.com/vtr-dev/HubSpot.NET.git","svn_url":"https://github.com/vtr-dev/HubSpot.NET","homepage":"","size":234,"stargazers_count":1,"watchers_count":1,"language":"C#","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"squaredup:master","ref":"master","sha":"6de49eb48f413ad4bcbae994246b33a128955b72","user":{"login":"squaredup","id":11756852,"node_id":"MDEyOk9yZ2FuaXphdGlvbjExNzU2ODUy","avatar_url":"https://avatars2.githubusercontent.com/u/11756852?v=4","gravatar_id":"","url":"https://api.github.com/users/squaredup","html_url":"https://github.com/squaredup","followers_url":"https://api.github.com/users/squaredup/followers","following_url":"https://api.github.com/users/squaredup/following{/other_user}","gists_url":"https://api.github.com/users/squaredup/gists{/gist_id}","starred_url":"https://api.github.com/users/squaredup/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/squaredup/subscriptions","organizations_url":"https://api.github.com/users/squaredup/orgs","repos_url":"https://api.github.com/users/squaredup/repos","events_url":"https://api.github.com/users/squaredup/events{/privacy}","received_events_url":"https://api.github.com/users/squaredup/received_events","type":"Organization","site_admin":false},"repo":{"id":119971231,"node_id":"MDEwOlJlcG9zaXRvcnkxMTk5NzEyMzE=","name":"HubSpot.NET","full_name":"squaredup/HubSpot.NET","private":false,"owner":{"login":"squaredup","id":11756852,"node_id":"MDEyOk9yZ2FuaXphdGlvbjExNzU2ODUy","avatar_url":"https://avatars2.githubusercontent.com/u/11756852?v=4","gravatar_id":"","url":"https://api.github.com/users/squaredup","html_url":"https://github.com/squaredup","followers_url":"https://api.github.com/users/squaredup/followers","following_url":"https://api.github.com/users/squaredup/following{/other_user}","gists_url":"https://api.github.com/users/squaredup/gists{/gist_id}","starred_url":"https://api.github.com/users/squaredup/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/squaredup/subscriptions","organizations_url":"https://api.github.com/users/squaredup/orgs","repos_url":"https://api.github.com/users/squaredup/repos","events_url":"https://api.github.com/users/squaredup/events{/privacy}","received_events_url":"https://api.github.com/users/squaredup/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/squaredup/HubSpot.NET","description":"C# .NET Wrapper around the common HubSpot APIs.","fork":false,"url":"https://api.github.com/repos/squaredup/HubSpot.NET","forks_url":"https://api.github.com/repos/squaredup/HubSpot.NET/forks","keys_url":"https://api.github.com/repos/squaredup/HubSpot.NET/keys{/key_id}","collaborators_url":"https://api.github.com/repos/squaredup/HubSpot.NET/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/squaredup/HubSpot.NET/teams","hooks_url":"https://api.github.com/repos/squaredup/HubSpot.NET/hooks","issue_events_url":"https://api.github.com/repos/squaredup/HubSpot.NET/issues/events{/number}","events_url":"https://api.github.com/repos/squaredup/HubSpot.NET/events","assignees_url":"https://api.github.com/repos/squaredup/HubSpot.NET/assignees{/user}","branches_url":"https://api.github.com/repos/squaredup/HubSpot.NET/branches{/branch}","tags_url":"https://api.github.com/repos/squaredup/HubSpot.NET/tags","blobs_url":"https://api.github.com/repos/squaredup/HubSpot.NET/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/squaredup/HubSpot.NET/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/squaredup/HubSpot.NET/git/refs{/sha}","trees_url":"https://api.github.com/repos/squaredup/HubSpot.NET/git/trees{/sha}","statuses_url":"https://api.github.com/repos/squaredup/HubSpot.NET/statuses/{sha}","languages_url":"https://api.github.com/repos/squaredup/HubSpot.NET/languages","stargazers_url":"https://api.github.com/repos/squaredup/HubSpot.NET/stargazers","contributors_url":"https://api.github.com/repos/squaredup/HubSpot.NET/contributors","subscribers_url":"https://api.github.com/repos/squaredup/HubSpot.NET/subscribers","subscription_url":"https://api.github.com/repos/squaredup/HubSpot.NET/subscription","commits_url":"https://api.github.com/repos/squaredup/HubSpot.NET/commits{/sha}","git_commits_url":"https://api.github.com/repos/squaredup/HubSpot.NET/git/commits{/sha}","comments_url":"https://api.github.com/repos/squaredup/HubSpot.NET/comments{/number}","issue_comment_url":"https://api.github.com/repos/squaredup/HubSpot.NET/issues/comments{/number}","contents_url":"https://api.github.com/repos/squaredup/HubSpot.NET/contents/{+path}","compare_url":"https://api.github.com/repos/squaredup/HubSpot.NET/compare/{base}...{head}","merges_url":"https://api.github.com/repos/squaredup/HubSpot.NET/merges","archive_url":"https://api.github.com/repos/squaredup/HubSpot.NET/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/squaredup/HubSpot.NET/downloads","issues_url":"https://api.github.com/repos/squaredup/HubSpot.NET/issues{/number}","pulls_url":"https://api.github.com/repos/squaredup/HubSpot.NET/pulls{/number}","milestones_url":"https://api.github.com/repos/squaredup/HubSpot.NET/milestones{/number}","notifications_url":"https://api.github.com/repos/squaredup/HubSpot.NET/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/squaredup/HubSpot.NET/labels{/name}","releases_url":"https://api.github.com/repos/squaredup/HubSpot.NET/releases{/id}","deployments_url":"https://api.github.com/repos/squaredup/HubSpot.NET/deployments","created_at":"2018-02-02T11:00:40Z","updated_at":"2018-09-25T08:25:31Z","pushed_at":"2018-10-01T16:20:35Z","git_url":"git://github.com/squaredup/HubSpot.NET.git","ssh_url":"git@github.com:squaredup/HubSpot.NET.git","clone_url":"https://github.com/squaredup/HubSpot.NET.git","svn_url":"https://github.com/squaredup/HubSpot.NET","homepage":null,"size":110,"stargazers_count":17,"watchers_count":17,"language":"C#","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":15,"mirror_url":null,"archived":false,"open_issues_count":6,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":15,"open_issues":6,"watchers":17,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/squaredup/HubSpot.NET/pulls/33"},"html":{"href":"https://github.com/squaredup/HubSpot.NET/pull/33"},"issue":{"href":"https://api.github.com/repos/squaredup/HubSpot.NET/issues/33"},"comments":{"href":"https://api.github.com/repos/squaredup/HubSpot.NET/issues/33/comments"},"review_comments":{"href":"https://api.github.com/repos/squaredup/HubSpot.NET/pulls/33/comments"},"review_comment":{"href":"https://api.github.com/repos/squaredup/HubSpot.NET/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/squaredup/HubSpot.NET/pulls/33/commits"},"statuses":{"href":"https://api.github.com/repos/squaredup/HubSpot.NET/statuses/51d5e7e5fe91169776b7dd7a4cac4db0ffe199e9"}},"author_association":"NONE"}}
{"actor":{"display_login":"Psypher9"}}