{"action":"created","comment":{"url":"https://api.github.com/repos/workato/connector_sdk/pulls/comments/201966786","pull_request_review_id":136568552,"id":201966786,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwMTk2Njc4Ng==","diff_hunk":"@@ -0,0 +1,432 @@\n+{\n+  title: 'Knack',\n+\n+  connection: {\n+    fields: [\n+      {\n+        name: 'app_id',\n+        label: 'Application ID',\n+        optional: false,\n+        hint: \"Hover over gear icon, Click on API & Code -> get Application ID\"\n+        },\n+      {\n+        name: 'api_key',\n+        label: 'API Key',\n+        control_type: 'password',\n+        optional: false,\n+        hint: \"Hover over gear icon, Click on API & Code -> get API Key\"\n+        }\n+      ],\n+\n+    authorization: {\n+      type: 'custom_auth',\n+\n+      credentials: ->(connection) {\n+        headers('X-Knack-Application-Id': connection['app_id'],\n+          'X-Knack-REST-API-Key': connection['api_key'])\n+        }\n+      }\n+    },\n+\n+  test: ->(connection) {\n+    get(\"https://api.knack.com/v1/objects\").dig(\"objects\", 0)\n+    },\n+\n+  object_definitions: {\n+\n+    record_output: {\n+      fields: ->(_connection, config) {\n+        [\n+          { name: 'id', label: 'Record ID' }\n+          ].concat(\n+            if config['is_user_role'] == true\n+              [\n+                { name: 'account_status' },\n+                { name: 'approval_status' },\n+                { name: 'profile_keys_raw', type: :array, of: :object,\n+                  properties: [\n+                  { name: 'id' },\n+                  { name: 'identifier'}\n+                  ]}\n+                ]\n+            else\n+              []\n+            end\n+            ).concat(\n+              get(\"https://api.knack.com/v1/objects/#{config['object']}/\" \\\n+                  \"fields\")['fields'].\n+                  reject {|f| f['type']=='signature'||f['type']=='equation' }.\n+                map do |f|\n+                  if f['type'] == 'address'\n+                    {\n+                      name: f['key'],\n+                      hint: \"Provide longitude/latitude values if address\" \\\n+                      \" input type is longitude/latitude else \" \\\n+                      \"provide remaining fields\",\n+                      label: f['label'].labelize,\n+                      type: :object, properties: [\n+                        { name: 'longitude', type: :integer },\n+                        { name: 'latitude', type: :integer },\n+                        { name: 'zip' },\n+                        { name: 'state' },\n+                        { name: 'city' },\n+                        { name: 'street2' },\n+                        { name: 'street' }\n+                        ]\n+                      }\n+                  elsif f['type'] == 'name'\n+                    { name: f['key'], label: f['label'].labelize, type: :object,\n+                      properties: [\n+                      { name: 'title' },\n+                      { name: 'first' },\n+                      { name: 'middle' },\n+                      { name: 'last' }]\n+                      }\n+                  elsif f['type'] == 'connection'\n+                    { name: f['key'], label: f['label'].labelize, type: :array,\n+                      of: :object, properties: [\n+                      { name: 'id' },\n+                      { name: 'identifier' }\n+                      ]\n+                      }\n+                  elsif f['type'] == 'rating'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :integer, hint: \"Values are 1 to 3\" }\n+                  elsif f['type'] == 'number'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :integer }\n+                  elsif f['type'] == 'auto_increment'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :integer }\n+                  elsif f['type'] == 'phone'\n+                    { name: f['key'], label: f['label'].labelize, type: :object,\n+                      properties: [\n+                      { name: 'formatted' },\n+                      { name: 'full' },\n+                      { name: 'number' },\n+                      { name: 'area' }]\n+                      }\n+                  elsif f['type'] == 'rich_text'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      hint: \"HTML can be used\" }\n+                  elsif f['type'] == 'image'\n+                    { name: f['key'], label: f['label'].labelize, type: :object,\n+                      properties: [\n+                      { name: 'id' },\n+                      { name: 'application_id' },\n+                      { name: 's3', type: :boolean },\n+                      { name: 'type' },\n+                      { name: 'filename' },\n+                      { name: 'url' },\n+                      { name: 'thumb_url' },\n+                      { name: 'size', type: :integer }]\n+                      }\n+                  elsif f['type'] == 'file'\n+                    { name: f['key'], label: f['label'].labelize, type: :object,\n+                      properties: [\n+                      { name: 'id' },\n+                      { name: 'application_id' },\n+                      { name: 's3', type: :boolean },\n+                      { name: 'type' },\n+                      { name: 'filename' },\n+                      { name: 'url' },\n+                      { name: 'thumb_url' },\n+                      { name: 'size', type: :integer }]\n+                      }\n+                  elsif f['type'] == 'link'\n+                    { name: f['key'], label: f['label'].labelize, type: :object,\n+                      properties: [\n+                      { name: 'url' },\n+                      { name: 'label' }]\n+                      }\n+                  elsif f['type'] == 'email'\n+                    { name: f['key'], label: f['label'].labelize, type: :object,\n+                      properties: [\n+                      { name: 'email' },\n+                      { name: 'label' }]\n+                      }\n+                  elsif f['type'] == 'user_roles'\n+                    { name: f['key'], type: :array, label: f['label'].labelize,\n+                      properties: [\n+                      { name: f['key'], label: f['label'].labelize }\n+                      ] }\n+                  elsif f['type'] == 'timer'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :object, properties: [\n+                      { name: 'times', type: :array, of: :object, properties: [\n+                        { name: 'from', type: :object, properties: [\n+                          { name: 'date', type: :date_time },\n+                          { name: 'date_formatted' },\n+                          { name: 'hours' },\n+                          { name: 'minutes' },\n+                          { name: 'am_pm', label: \"AM PM\" },\n+                          { name: 'unix_timestamp', type: :integer },\n+                          { name: 'timestamp', type: :date_time },\n+                          { name: 'time', type: :integer }]\n+                          },\n+                        { name: 'to', type: :object, properties: [\n+                          { name: 'date', type: :date_time },\n+                          { name: 'date_formatted' },\n+                          { name: 'hours' },\n+                          { name: 'minutes' },\n+                          { name: 'am_pm', label: \"AM PM\" },\n+                          { name: 'unix_timestamp', type: :integer },\n+                          { name: 'timestamp', type: :date_time },\n+                          { name: 'time', type: :integer }\n+                          ]\n+                          }]\n+                        },\n+                      { name: 'total_time', type: :integer }]\n+                      }\n+                  elsif f['type'] == 'date_time'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :object, properties: [\n+                      { name: 'date', type: :date_time },\n+                      { name: 'date_formatted' },\n+                      { name: 'hours', type: :integer },\n+                      { name: 'minutes', type: :integer },\n+                      { name: 'am_pm', label: \"AM PM\" },\n+                      { name: 'unix_timestamp', type: :integer },\n+                      { name: 'timestamp', type: :date_time },\n+                      { name: 'time', type: :integer }]\n+                      }\n+                  else\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: f['type'] }\n+                  end\n+                end)\n+        }\n+      },\n+\n+    record_search: {\n+      fields: ->(_connection, config) {\n+        [\n+          { name: 'id', label: 'Record ID' }\n+          ].concat(\n+            if config['is_user_role'] == true\n+              [\n+                { name: 'account_status' },\n+                { name: 'approval_status' },\n+                { name: 'profile_keys_raw', type: :array,\n+                  of: :object, properties: [\n+                  { name: 'id' },\n+                  { name: 'identifier'}\n+                  ]}\n+                ]\n+            else\n+              []\n+            end\n+            ).concat(\n+              get(\"https://api.knack.com/v1/objects/#{config['object']}/\" \\\n+                  \"fields\")['fields'].\n+                  reject {|f| f['type']=='signature'||\n+                          f['type']=='equation'||f['type']=='user_roles' }.\n+                map do |f|\n+                  if f['type'] == 'address'\n+                    {\n+                      name: f['key'],\n+                      hint: \"Provide longitude/latitude values if \" \\\n+                            \"address input type is longitude/latitude \" \\\n+                            \"else provide remaining fields\",\n+                      label: f['label'].labelize,\n+                      type: :object, properties: [\n+                        { name: 'longitude', type: :integer },\n+                        { name: 'latitude', type: :integer },\n+                        { name: 'zip' },\n+                        { name: 'state' },\n+                        { name: 'city' },\n+                        { name: 'street2' },\n+                        { name: 'street' }\n+                        ]\n+                      }\n+                  elsif f['type'] == 'name'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :object, properties: [\n+                      { name: 'title' },\n+                      { name: 'first' },\n+                      { name: 'middle' },\n+                      { name: 'last' }]\n+                      }\n+                  elsif f['type'] == 'rating'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :integer, hint: \"Values are 1 to 3\" }\n+                  elsif f['type'] == 'number'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :integer }\n+                  elsif f['type'] == 'auto_increment'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :integer }\n+                  elsif f['type'] == 'phone'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :object, properties: [\n+                      { name: 'phone_number' }]\n+                      }\n+                  elsif f['type'] == 'rich_text'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      hint: \"HTML can be used\" }\n+                  elsif f['type'] == 'image'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :object, properties: [\n+                      { name: 'filename' },\n+                      { name: 'url' }]\n+                      }\n+                  elsif f['type'] == 'file'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :object, properties: [\n+                      { name: 'filename' },\n+                      { name: 'url' }]\n+                      }\n+                  elsif f['type'] == 'link'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :object, properties: [\n+                      { name: 'url' }]\n+                      }\n+                  elsif f['type'] == 'email'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :object, properties: [\n+                      { name: 'email' }]\n+                      }\n+                  elsif f['type'] == 'timer'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :object, properties: [\n+                      { name: 'times', type: :array, of: :object, properties: [\n+                        { name: 'from', type: :object, properties: [\n+                          { name: 'date', type: :date_time }]\n+                          },\n+                        { name: 'to', type: :object, properties: [\n+                          { name: 'date', type: :date_time }]\n+                          }]\n+                        }]\n+                      }\n+                  elsif f['type'] == 'date_time'\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: :object, properties: [\n+                      { name: 'date', type: :date_time }]\n+                      }\n+                  else\n+                    { name: f['key'], label: f['label'].labelize,\n+                      type: f['type'] }\n+                  end\n+                end)\n+        }\n+      },\n+    },\n+  methods: {\n+\n+    convert_time_out: lambda do |time_val|\n+      time_val[\"date\"] = time_val['date'].to_time(format: \"%m/%d/%Y\")\n+      time_val[\"timestamp\"] = time_val['timestamp'].\n+                              to_time(format: \"%m/%d/%Y %I:%M %p\")\n+    end,\n+    format_output: lambda do |res|\n+      res&.each do |key, val|\n+        if val.is_a?(Array) && val.first&.class.to_s == \"String\"\n+          res[key] = val.map { |value| { key => value } }\n+        elsif val.is_a?(Hash)\n+          if val.keys.include?(\"date\")\n+            call(\"convert_time_out\", val)\n+          elsif val.keys.include?(\"date_time\")\n+            val[\"times\"]&.first&.each do |t_k, t_v|\n+              call(\"convert_time_out\", t_v)\n+            end\n+          elsif val.keys.include?(\"times\")\n+            val[\"times\"]&.first&.each do |t_k, t_v|\n+              call(\"convert_time_out\", t_v)\n+            end\n+          end\n+        end\n+      end\n+    end\n+    },\n+\n+  actions: {\n+    search_record: {\n+      description: \"Search for <span class='provider'>record</span>\" \\\n+      \" in <span class='provider'>Knack</span>\",\n+\n+      config_fields: [\n+        {\n+          name: 'object',\n+          control_type: :select,\n+          pick_list: 'objects',\n+          optional: false\n+          },\n+        {\n+          name: 'is_user_role',\n+          type: :boolean,\n+          hint: \"True if 'object' is user roles\",\n+          optional: false\n+          }","path":"custom_auth/Knack_SDK.rb","position":359,"original_position":359,"commit_id":"1b89679d739c5be2f24d11c963688c270ea81850","original_commit_id":"1b89679d739c5be2f24d11c963688c270ea81850","user":{"login":"houndci-bot","id":6697940,"node_id":"MDQ6VXNlcjY2OTc5NDA=","avatar_url":"https://avatars0.githubusercontent.com/u/6697940?v=4","gravatar_id":"","url":"https://api.github.com/users/houndci-bot","html_url":"https://github.com/houndci-bot","followers_url":"https://api.github.com/users/houndci-bot/followers","following_url":"https://api.github.com/users/houndci-bot/following{/other_user}","gists_url":"https://api.github.com/users/houndci-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/houndci-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/houndci-bot/subscriptions","organizations_url":"https://api.github.com/users/houndci-bot/orgs","repos_url":"https://api.github.com/users/houndci-bot/repos","events_url":"https://api.github.com/users/houndci-bot/events{/privacy}","received_events_url":"https://api.github.com/users/houndci-bot/received_events","type":"User","site_admin":false},"body":"Layout/IndentHash: Indent the right brace the same as the start of the line where the left brace is.","created_at":"2018-07-12T09:22:41Z","updated_at":"2018-07-12T09:22:42Z","html_url":"https://github.com/workato/connector_sdk/pull/137#discussion_r201966786","pull_request_url":"https://api.github.com/repos/workato/connector_sdk/pulls/137","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/workato/connector_sdk/pulls/comments/201966786"},"html":{"href":"https://github.com/workato/connector_sdk/pull/137#discussion_r201966786"},"pull_request":{"href":"https://api.github.com/repos/workato/connector_sdk/pulls/137"}}},"pull_request":{"url":"https://api.github.com/repos/workato/connector_sdk/pulls/137","id":200934682,"node_id":"MDExOlB1bGxSZXF1ZXN0MjAwOTM0Njgy","html_url":"https://github.com/workato/connector_sdk/pull/137","diff_url":"https://github.com/workato/connector_sdk/pull/137.diff","patch_url":"https://github.com/workato/connector_sdk/pull/137.patch","issue_url":"https://api.github.com/repos/workato/connector_sdk/issues/137","number":137,"state":"open","locked":false,"title":"Knack API","user":{"login":"kohroshimizu","id":39761424,"node_id":"MDQ6VXNlcjM5NzYxNDI0","avatar_url":"https://avatars0.githubusercontent.com/u/39761424?v=4","gravatar_id":"","url":"https://api.github.com/users/kohroshimizu","html_url":"https://github.com/kohroshimizu","followers_url":"https://api.github.com/users/kohroshimizu/followers","following_url":"https://api.github.com/users/kohroshimizu/following{/other_user}","gists_url":"https://api.github.com/users/kohroshimizu/gists{/gist_id}","starred_url":"https://api.github.com/users/kohroshimizu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kohroshimizu/subscriptions","organizations_url":"https://api.github.com/users/kohroshimizu/orgs","repos_url":"https://api.github.com/users/kohroshimizu/repos","events_url":"https://api.github.com/users/kohroshimizu/events{/privacy}","received_events_url":"https://api.github.com/users/kohroshimizu/received_events","type":"User","site_admin":false},"body":"Actions:\r\n- [ ] Search record","created_at":"2018-07-12T09:08:33Z","updated_at":"2018-07-12T09:22:42Z","closed_at":null,"merged_at":null,"merge_commit_sha":"169f8cf126e4ce6ae824cf3168d1de347ff70363","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/workato/connector_sdk/pulls/137/commits","review_comments_url":"https://api.github.com/repos/workato/connector_sdk/pulls/137/comments","review_comment_url":"https://api.github.com/repos/workato/connector_sdk/pulls/comments{/number}","comments_url":"https://api.github.com/repos/workato/connector_sdk/issues/137/comments","statuses_url":"https://api.github.com/repos/workato/connector_sdk/statuses/1b89679d739c5be2f24d11c963688c270ea81850","head":{"label":"kohroshimizu:Knack_SDK","ref":"Knack_SDK","sha":"1b89679d739c5be2f24d11c963688c270ea81850","user":{"login":"kohroshimizu","id":39761424,"node_id":"MDQ6VXNlcjM5NzYxNDI0","avatar_url":"https://avatars0.githubusercontent.com/u/39761424?v=4","gravatar_id":"","url":"https://api.github.com/users/kohroshimizu","html_url":"https://github.com/kohroshimizu","followers_url":"https://api.github.com/users/kohroshimizu/followers","following_url":"https://api.github.com/users/kohroshimizu/following{/other_user}","gists_url":"https://api.github.com/users/kohroshimizu/gists{/gist_id}","starred_url":"https://api.github.com/users/kohroshimizu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kohroshimizu/subscriptions","organizations_url":"https://api.github.com/users/kohroshimizu/orgs","repos_url":"https://api.github.com/users/kohroshimizu/repos","events_url":"https://api.github.com/users/kohroshimizu/events{/privacy}","received_events_url":"https://api.github.com/users/kohroshimizu/received_events","type":"User","site_admin":false},"repo":{"id":138720855,"node_id":"MDEwOlJlcG9zaXRvcnkxMzg3MjA4NTU=","name":"connector_sdk","full_name":"kohroshimizu/connector_sdk","owner":{"login":"kohroshimizu","id":39761424,"node_id":"MDQ6VXNlcjM5NzYxNDI0","avatar_url":"https://avatars0.githubusercontent.com/u/39761424?v=4","gravatar_id":"","url":"https://api.github.com/users/kohroshimizu","html_url":"https://github.com/kohroshimizu","followers_url":"https://api.github.com/users/kohroshimizu/followers","following_url":"https://api.github.com/users/kohroshimizu/following{/other_user}","gists_url":"https://api.github.com/users/kohroshimizu/gists{/gist_id}","starred_url":"https://api.github.com/users/kohroshimizu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kohroshimizu/subscriptions","organizations_url":"https://api.github.com/users/kohroshimizu/orgs","repos_url":"https://api.github.com/users/kohroshimizu/repos","events_url":"https://api.github.com/users/kohroshimizu/events{/privacy}","received_events_url":"https://api.github.com/users/kohroshimizu/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/kohroshimizu/connector_sdk","description":"Connector SDK samples and documentation","fork":true,"url":"https://api.github.com/repos/kohroshimizu/connector_sdk","forks_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/forks","keys_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/keys{/key_id}","collaborators_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/teams","hooks_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/hooks","issue_events_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/issues/events{/number}","events_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/events","assignees_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/assignees{/user}","branches_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/branches{/branch}","tags_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/tags","blobs_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/git/refs{/sha}","trees_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/git/trees{/sha}","statuses_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/statuses/{sha}","languages_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/languages","stargazers_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/stargazers","contributors_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/contributors","subscribers_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/subscribers","subscription_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/subscription","commits_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/commits{/sha}","git_commits_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/git/commits{/sha}","comments_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/comments{/number}","issue_comment_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/issues/comments{/number}","contents_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/contents/{+path}","compare_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/compare/{base}...{head}","merges_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/merges","archive_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/downloads","issues_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/issues{/number}","pulls_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/pulls{/number}","milestones_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/milestones{/number}","notifications_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/labels{/name}","releases_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/releases{/id}","deployments_url":"https://api.github.com/repos/kohroshimizu/connector_sdk/deployments","created_at":"2018-06-26T10:12:31Z","updated_at":"2018-07-12T07:18:52Z","pushed_at":"2018-07-12T09:22:27Z","git_url":"git://github.com/kohroshimizu/connector_sdk.git","ssh_url":"git@github.com:kohroshimizu/connector_sdk.git","clone_url":"https://github.com/kohroshimizu/connector_sdk.git","svn_url":"https://github.com/kohroshimizu/connector_sdk","homepage":"","size":2024,"stargazers_count":0,"watchers_count":0,"language":"Ruby","has_issues":false,"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":null,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"workato:master","ref":"master","sha":"0840da810604f2b2c1ba8818b604ea9849cb8f64","user":{"login":"workato","id":5629924,"node_id":"MDEyOk9yZ2FuaXphdGlvbjU2Mjk5MjQ=","avatar_url":"https://avatars3.githubusercontent.com/u/5629924?v=4","gravatar_id":"","url":"https://api.github.com/users/workato","html_url":"https://github.com/workato","followers_url":"https://api.github.com/users/workato/followers","following_url":"https://api.github.com/users/workato/following{/other_user}","gists_url":"https://api.github.com/users/workato/gists{/gist_id}","starred_url":"https://api.github.com/users/workato/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/workato/subscriptions","organizations_url":"https://api.github.com/users/workato/orgs","repos_url":"https://api.github.com/users/workato/repos","events_url":"https://api.github.com/users/workato/events{/privacy}","received_events_url":"https://api.github.com/users/workato/received_events","type":"Organization","site_admin":false},"repo":{"id":54221993,"node_id":"MDEwOlJlcG9zaXRvcnk1NDIyMTk5Mw==","name":"connector_sdk","full_name":"workato/connector_sdk","owner":{"login":"workato","id":5629924,"node_id":"MDEyOk9yZ2FuaXphdGlvbjU2Mjk5MjQ=","avatar_url":"https://avatars3.githubusercontent.com/u/5629924?v=4","gravatar_id":"","url":"https://api.github.com/users/workato","html_url":"https://github.com/workato","followers_url":"https://api.github.com/users/workato/followers","following_url":"https://api.github.com/users/workato/following{/other_user}","gists_url":"https://api.github.com/users/workato/gists{/gist_id}","starred_url":"https://api.github.com/users/workato/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/workato/subscriptions","organizations_url":"https://api.github.com/users/workato/orgs","repos_url":"https://api.github.com/users/workato/repos","events_url":"https://api.github.com/users/workato/events{/privacy}","received_events_url":"https://api.github.com/users/workato/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/workato/connector_sdk","description":"Connector SDK samples and documentation","fork":false,"url":"https://api.github.com/repos/workato/connector_sdk","forks_url":"https://api.github.com/repos/workato/connector_sdk/forks","keys_url":"https://api.github.com/repos/workato/connector_sdk/keys{/key_id}","collaborators_url":"https://api.github.com/repos/workato/connector_sdk/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/workato/connector_sdk/teams","hooks_url":"https://api.github.com/repos/workato/connector_sdk/hooks","issue_events_url":"https://api.github.com/repos/workato/connector_sdk/issues/events{/number}","events_url":"https://api.github.com/repos/workato/connector_sdk/events","assignees_url":"https://api.github.com/repos/workato/connector_sdk/assignees{/user}","branches_url":"https://api.github.com/repos/workato/connector_sdk/branches{/branch}","tags_url":"https://api.github.com/repos/workato/connector_sdk/tags","blobs_url":"https://api.github.com/repos/workato/connector_sdk/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/workato/connector_sdk/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/workato/connector_sdk/git/refs{/sha}","trees_url":"https://api.github.com/repos/workato/connector_sdk/git/trees{/sha}","statuses_url":"https://api.github.com/repos/workato/connector_sdk/statuses/{sha}","languages_url":"https://api.github.com/repos/workato/connector_sdk/languages","stargazers_url":"https://api.github.com/repos/workato/connector_sdk/stargazers","contributors_url":"https://api.github.com/repos/workato/connector_sdk/contributors","subscribers_url":"https://api.github.com/repos/workato/connector_sdk/subscribers","subscription_url":"https://api.github.com/repos/workato/connector_sdk/subscription","commits_url":"https://api.github.com/repos/workato/connector_sdk/commits{/sha}","git_commits_url":"https://api.github.com/repos/workato/connector_sdk/git/commits{/sha}","comments_url":"https://api.github.com/repos/workato/connector_sdk/comments{/number}","issue_comment_url":"https://api.github.com/repos/workato/connector_sdk/issues/comments{/number}","contents_url":"https://api.github.com/repos/workato/connector_sdk/contents/{+path}","compare_url":"https://api.github.com/repos/workato/connector_sdk/compare/{base}...{head}","merges_url":"https://api.github.com/repos/workato/connector_sdk/merges","archive_url":"https://api.github.com/repos/workato/connector_sdk/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/workato/connector_sdk/downloads","issues_url":"https://api.github.com/repos/workato/connector_sdk/issues{/number}","pulls_url":"https://api.github.com/repos/workato/connector_sdk/pulls{/number}","milestones_url":"https://api.github.com/repos/workato/connector_sdk/milestones{/number}","notifications_url":"https://api.github.com/repos/workato/connector_sdk/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/workato/connector_sdk/labels{/name}","releases_url":"https://api.github.com/repos/workato/connector_sdk/releases{/id}","deployments_url":"https://api.github.com/repos/workato/connector_sdk/deployments","created_at":"2016-03-18T18:08:56Z","updated_at":"2018-07-11T15:33:04Z","pushed_at":"2018-07-12T09:22:27Z","git_url":"git://github.com/workato/connector_sdk.git","ssh_url":"git@github.com:workato/connector_sdk.git","clone_url":"https://github.com/workato/connector_sdk.git","svn_url":"https://github.com/workato/connector_sdk","homepage":"","size":2014,"stargazers_count":14,"watchers_count":14,"language":"Ruby","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":38,"mirror_url":null,"archived":false,"open_issues_count":41,"license":null,"forks":38,"open_issues":41,"watchers":14,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/workato/connector_sdk/pulls/137"},"html":{"href":"https://github.com/workato/connector_sdk/pull/137"},"issue":{"href":"https://api.github.com/repos/workato/connector_sdk/issues/137"},"comments":{"href":"https://api.github.com/repos/workato/connector_sdk/issues/137/comments"},"review_comments":{"href":"https://api.github.com/repos/workato/connector_sdk/pulls/137/comments"},"review_comment":{"href":"https://api.github.com/repos/workato/connector_sdk/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/workato/connector_sdk/pulls/137/commits"},"statuses":{"href":"https://api.github.com/repos/workato/connector_sdk/statuses/1b89679d739c5be2f24d11c963688c270ea81850"}},"author_association":"NONE"}}
{"actor":{"display_login":"houndci-bot"}}