{"action":"created","comment":{"url":"https://api.github.com/repos/workato/connector_sdk/pulls/comments/198090507","pull_request_review_id":131954297,"id":198090507,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDE5ODA5MDUwNw==","diff_hunk":"@@ -0,0 +1,536 @@\n+{\n+  title: \"Caspio\",\n+  \n+  secure_tunnel: true,\n+\n+  connection: {\n+    fields: [\n+      {\n+        name: \"subdomain\",\n+        control_type: \"subdomain\",\n+        url: \".caspio.com\",\n+        optional: false,\n+        hint: \"Your caspio subdomain found in your caspio URL\",\n+      },\n+      {\n+        name: \"client_id\",\n+        label: \"Client ID\",\n+        optional: false,\n+        hint: \"Your client ID can be found from Account -> Access Permissions\n+               -> New Profile (if not already created)\"\n+      },\n+      {\n+        name: \"client_secret\",\n+        label: \"Client Secret\",\n+        control_type: \"password\",\n+        optional: false, \n+        hint: \"Your client secret can be found from Account\n+               -> Access Permissions -> New Profile (if not already created)\"\n+      }\n+    ],\n+\n+    authorization: {\n+      type: \"custom_auth\",\n+\n+      acquire: lambda do |connection|\n+        {\n+          auth_token: \n+          post(\"https://#{connection['subdomain']}.caspio.com/oauth/token\").\n+          payload(client_id: connection[\"client_id\"],\n+                  client_secret: connection[\"client_secret\"],\n+                  grant_type: \"client_credentials\").\n+          request_format_www_form_urlencoded.\n+          dig(\"access_token\")\n+        }\n+      end,\n+\n+      refresh_on: [401],\n+\n+      detect_on: [/\"Success\"\\S*\\:\\s*false/],\n+\n+      apply: lambda do |connection|\n+        headers(\"Authorization\": \"Bearer #{connection['auth_token']}\")\n+      end\n+    },\n+    base_uri: lambda do |connection|\n+      \"https://#{connection['subdomain']}.caspio.com\"\n+    end\n+  },\n+\n+  test: lambda do |connection|\n+    get(\"/rest/v1/applications\")\n+  end,\n+\n+  object_definitions: {\n+    input_columns: {\n+      fields: lambda do |_connection, config|\n+        table = \"#{config['table_name']}\"\n+        columns = get(\"/rest/v1/tables/#{config['table_name']}/columns\").\n+        dig(\"Result\")&.\n+        reject{ |col| [\"RANDOM ID\", \"AUTONUMBER\", \"PREFIXED AUTONUMBER\", \n+                       \"GUID\", \"TIMESTAMP\"].include?(col[\"Type\"]) }.\n+        map do |col|\n+          case col[\"Type\"]\n+          when \"STRING\"\n+            { name: col[\"Name\"], type: \"string\",\n+              control_type: \"text\", label: col[\"Name\"].labelize,\n+              hint: col[\"Description\"] }\n+          when \"TEXT\"\n+            { name: col[\"Name\"], type: \"string\",\n+              control_type: \"text-area\", label: col[\"Name\"].labelize,\n+              hint: col[\"Description\"] }\n+          when \"NUMBER\"\n+            { name: col[\"Name\"], type: \"number\",\n+              control_type: \"number\", label: col[\"Name\"].labelize,\n+              hint: col[\"Description\"] }\n+          when \"DATE/TIME\"\n+            { name: col[\"Name\"], type: \"date_time\",\n+              control_type: \"date_time\", label: col[\"Name\"].labelize,\n+              hint: col[\"Description\"] }\n+          when \"INTEGER\"\n+            { name: col[\"Name\"], type: \"integer\",\n+              control_type: \"number\", label: col[\"Name\"].labelize,\n+              hint: col[\"Description\"] }\n+          when \"CURRENCY\"\n+            { name: col[\"Name\"], type: \"number\",\n+              control_type: \"number\", label: col[\"Name\"].labelize,\n+              hint: col[\"Description\"] }\n+          when \"YES/NO\"\n+            { name: col[\"Name\"], type: \"boolean\",\n+              control_type: \"checkbox\", label: col[\"Name\"].labelize,\n+              hint: col[\"Description\"],\n+              toggle_hint: \"Select from list\",\n+              toggle_field: \n+                { name: col[\"Name\"],\n+                  label: col[\"Name\"].labelize,\n+                  type: :string,\n+                  control_type: \"text\",\n+                  optional: true,\n+                  toggle_hint: \"Use custom value\" } }\n+          when \"PASSWORD\"\n+            { name: col[\"Name\"], type: \"string\",\n+              control_type: \"password\", label: col[\"Name\"].labelize,\n+              hint: col[\"Description\"] }\n+          when \"TIMESTAMP\"\n+            { name: col[\"Name\"], type: \"timestamp\",\n+              control_type: \"date_time\", label: col[\"Name\"].labelize,\n+            hint: col[\"Description\"] }\n+#           when \"RANDOM ID\"\n+#             { name: col[\"Name\"], type: \"string\",\n+#               control_type: \"string\", label: col[\"Name\"].labelize,\n+#               hint: col[\"Description\"] }\n+#           when \"AUTONUMBER\"\n+#             { name: col[\"Name\"], type: \"number\",\n+#               control_type: \"number\", label: col[\"Name\"].labelize,\n+#               hint: col[\"Description\"] }\n+#           when \"PREFIXED AUTONUMBER\"\n+#             { name: col[\"Name\"], type: \"number\",\n+#               control_type: \"number\", label: col[\"Name\"].labelize,\n+#               hint: col[\"Description\"] }\n+#           when \"GUID\"\n+#             { name: col[\"Name\"], type: \"string\",\n+#               control_type: \"string\", label: col[\"Name\"].labelize,\n+#               hint: col[\"Description\"] }\n+          when \"LIST-STRING\"\n+            options = get(\"/rest/v1/tables/\" + table + \"/columns/\" +\n+                      col[\"Name\"]).dig(\"Result\",\"ListOptions\").\n+                      map do |key, val|\n+              [val.to_s, key.to_s]\n+            end\n+            { name: col[\"Name\"], control_type: \"multiselect\",\n+              label: col[\"Name\"].labelize,\n+              pick_list: options,\n+              pick_list_params: {},\n+              delimiter: \",\",\n+              hint: col[\"Description\"] }\n+          when \"LIST-NUMBER\"\n+            options = get(\"/rest/v1/tables/\" + table +\"/columns/\" +\n+                      col[\"Name\"]).dig(\"Result\",\"ListOptions\").\n+                      map do |key, val|\n+              [val.to_s, key.to_s]\n+            end\n+            { name: col[\"Name\"], control_type: \"multiselect\",\n+              label: col[\"Name\"].labelize,\n+              pick_list: options,\n+              pick_list_params: {},\n+              delimiter: \",\",\n+              hint: col[\"Description\"] }\n+          when \"LIST-DATE/TIME\"\n+            options = get(\"/rest/v1/tables/\" + table +\"/columns/\" +\n+                      col[\"Name\"]).dig(\"Result\",\"ListOptions\").\n+                      map do |key, val|\n+              [val.to_s, key.to_s]\n+            end\n+            { name: col[\"Name\"], control_type: \"multiselect\",\n+              label: col[\"Name\"].labelize,\n+              pick_list: options,\n+              pick_list_params: {},\n+              delimiter: \",\",\n+              hint: col[\"Description\"] }\n+          else\n+            { name: col[\"Name\"], type: \"string\",\n+              control_type: \"string\", label: col[\"Name\"].labelize,\n+              hint: col[\"Description\"] }\n+          end\n+        end\n+      end\n+    },\n+\n+    output_columns: {\n+      fields: lambda do |_connection, config|\n+        columns = get(\"/rest/v1/tables/#{config['table_name']}/columns\").\n+                  dig(\"Result\").\n+                  map do |col|\n+                    case col[\"Type\"]\n+                    when \"STRING\"\n+                      { name: col[\"Name\"], type: \"string\",\n+                        control_type: \"text\", label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"TEXT\"\n+                      { name: col[\"Name\"], type: \"string\",\n+                        control_type: \"text-area\", label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"NUMBER\"\n+                      { name: col[\"Name\"], type: \"number\",\n+                        control_type: \"number\", label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"DATE/TIME\"\n+                      { name: col[\"Name\"], type: \"date_time\",\n+                        control_type: \"date_time\", label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"INTEGER\"\n+                      { name: col[\"Name\"], type: \"integer\",\n+                        control_type: \"number\", label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"CURRENCY\"\n+                      { name: col[\"Name\"], type: \"number\",\n+                        control_type: \"number\", label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"YES/NO\"\n+                      { name: col[\"Name\"], type: \"boolean\",\n+                        control_type: \"checkbox\", label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"],\n+                        toggle_hint: \"Select from list\",\n+                        toggle_field: \n+                          { name: col[\"Name\"],\n+                            label: col[\"Name\"].labelize,\n+                            type: :string,\n+                            control_type: \"text\",\n+                            optional: true,\n+                            toggle_hint: \"Use custom value\" } }\n+                    when \"PASSWORD\"\n+                      { name: col[\"Name\"], type: \"string\",\n+                        control_type: \"password\", label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"TIMESTAMP\"\n+                      { name: col[\"Name\"], type: \"timestamp\",\n+                        control_type: \"date_time\", label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"RANDOM ID\"\n+                      { name: col[\"Name\"], type: \"string\",\n+                        control_type: \"string\", label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"AUTONUMBER\"\n+                      { name: col[\"Name\"], type: \"number\",\n+                        control_type: \"number\", label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"PREFIXED AUTONUMBER\"\n+                      { name: col[\"Name\"], type: \"number\",\n+                        control_type: \"number\", label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"GUID\"\n+                      { name: col[\"Name\"], type: \"string\",\n+                        control_type: \"string\", label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"LIST-STRING\"\n+                      { name: col[\"Name\"], type: \"object\",\n+                        label: col[\"Name\"].labelize,\n+                        properties: [\n+                                      { name: col[\"Name\"] }\n+                                    ],\n+                        hint: col[\"Description\"] }\n+                    when \"LIST-NUMBER\"\n+                      num_list = col.dig(\"ListOptions\").map do |key, val|\n+                        [key, val.to_s]\n+                      end\n+                    { name: col[\"Name\"], type: \"object\",\n+                      label: col[\"Name\"].labelize,\n+                       hint: col[\"Description\"],\n+                       properties: [\n+                                     { name: col[\"Name\"], type: \"integer\" }\n+                                   ] }\n+                    when \"LIST-DATE/TIME\"\n+                      date_list = col.dig(\"ListOptions\").map do |key, val| \n+                                  [key, val]\n+                      end\n+                    { name: col[\"Name\"], type: \"object\",\n+                      label: col[\"Name\"].labelize,\n+                      hint: col[\"Description\"],\n+                      properties: [\n+                                    { name: col[\"Name\"], type: \"date_time\" }\n+                                  ] }\n+                    else\n+                      { name: col[\"Name\"], type: \"string\",\n+                        control_type: \"string\", label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    end\n+                  end\n+      end\n+    },\n+\n+    search_columns: {\n+      fields: lambda do |_connection, config|\n+        columns = get(\"/rest/v1/tables/#{config['table_name']}/columns\").\n+                  dig(\"Result\").\n+                  select { |c|\n+                    %w(INTEGER STRING NUMBER GUID).\n+                      include?(c[\"Type\"])\n+                  }.\n+                  map do |col|\n+                    case col[\"Type\"]\n+                    when \"STRING\"\n+                      { name: col[\"Name\"],\n+                        type: \"string\",\n+                        control_type: \"text\",\n+                        label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"NUMBER\"\n+                      { name: col[\"Name\"],\n+                        type: \"number\",\n+                        control_type: \"number\",\n+                        label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"INTEGER\"\n+                      { name: col[\"Name\"],\n+                        type: \"integer\",\n+                        control_type: \"number\",\n+                        label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    when \"GUID\"\n+                      { name: col[\"Name\"],\n+                        type: \"string\",\n+                        control_type: \"string\",\n+                        label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    else\n+                      { name: col[\"Name\"],\n+                        type: \"string\",\n+                        control_type: \"string\",\n+                        label: col[\"Name\"].labelize,\n+                        hint: col[\"Description\"] }\n+                    end\n+                  end\n+      end\n+    }\n+  },\n+\n+  actions: {\n+    search_records: {\n+      subtitle: \"Search records\",\n+      description: \"Search <span class='provider'>records</span> \" \\\n+      \"in <span class='provider'>Caspio</span>\",\n+      config_fields: [\n+        { name: \"table_name\", control_type: :select,\n+          pick_list: :table_list,\n+          label: \"Table\",\n+          hint: \"Select table\",\n+          optional: false }\n+      ],\n+      input_fields: lambda do |object_definitions|\n+        object_definitions[\"search_columns\"]\n+      end,\n+      execute: lambda do |_connection, input|\n+        table = input.delete(\"table_name\")\n+        query_params = []\n+        input.map do |key, val|\n+          query_params << key + \"='\" + val + \"'\"\n+        end\n+        query_string = query_params.smart_join(\" or \")\n+        query = '{\"where\":\"' + query_string + '\"}'\n+        {\n+          records: get(\"/rest/v1/tables/\" + table + \"/rows\").params(q: query).\n+            dig(\"Result\")\n+        }\n+      end,\n+      output_fields: lambda do |object_definitions|\n+        [\n+          { name: \"records\", type: \"array\", of: \"object\", properties:\n+            object_definitions[\"output_columns\"] }\n+        ]\n+      end,\n+      sample_output: lambda do |_connection, input|\n+        get(\"/rest/v1/tables/#{input['table_name']}/rows\").dig(\"Result\", 0) ||\n+          {}\n+      end\n+    },\n+    create_record: {\n+      subtitle: \"Create record\",\n+      description: \"Create <span class='provider'>record</span> \" \\\n+      \"in <span class='provider'>Caspio table</span>\",\n+      config_fields: [\n+        { name: \"table_name\", control_type: :select,\n+          pick_list: :table_list,\n+          label: \"Table\",\n+          hint: \"Select table\",\n+          optional: false }\n+      ],\n+      input_fields: lambda do |object_definitions|\n+        object_definitions[\"input_columns\"]\n+      end,\n+      execute: lambda do |_connection, input|\n+        table = input.delete(\"table_name\")\n+        date_fields = get(\"/rest/v1/tables/\" + table + \"/columns\").\n+                      dig(\"Result\")&.\n+                      select { |col|\n+                        col[\"Name\"] if [\"DATE/TIME\", \"TIMESTAMP\"].\n+                                       include?(col[\"Type\"])\n+                      }.","path":"custom_auth/{caspio.rb","position":387,"original_position":387,"commit_id":"f7d2569271fbfcd03135fe9c6330cd4e3e2633af","original_commit_id":"f7d2569271fbfcd03135fe9c6330cd4e3e2633af","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":"Style/MultilineBlockChain: Avoid multi-line chains of blocks.","created_at":"2018-06-26T10:18:01Z","updated_at":"2018-06-26T10:18:03Z","html_url":"https://github.com/workato/connector_sdk/pull/123#discussion_r198090507","pull_request_url":"https://api.github.com/repos/workato/connector_sdk/pulls/123","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/workato/connector_sdk/pulls/comments/198090507"},"html":{"href":"https://github.com/workato/connector_sdk/pull/123#discussion_r198090507"},"pull_request":{"href":"https://api.github.com/repos/workato/connector_sdk/pulls/123"}}},"pull_request":{"url":"https://api.github.com/repos/workato/connector_sdk/pulls/123","id":197371805,"node_id":"MDExOlB1bGxSZXF1ZXN0MTk3MzcxODA1","html_url":"https://github.com/workato/connector_sdk/pull/123","diff_url":"https://github.com/workato/connector_sdk/pull/123.diff","patch_url":"https://github.com/workato/connector_sdk/pull/123.patch","issue_url":"https://api.github.com/repos/workato/connector_sdk/issues/123","number":123,"state":"open","locked":false,"title":"Add files via upload","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":"Triggers:\r\n-[] New record in Caspio table\r\n\r\nActions:\r\n-[] Create record in Caspio table\r\n-[] Search record in Caspio tables\r\n-[] Update record in Caspio tables","created_at":"2018-06-26T10:17:51Z","updated_at":"2018-06-26T10:18:03Z","closed_at":null,"merged_at":null,"merge_commit_sha":"7e6a4bfe0c8c8cbf1f9d81e3bfdc840939017af4","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/workato/connector_sdk/pulls/123/commits","review_comments_url":"https://api.github.com/repos/workato/connector_sdk/pulls/123/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/123/comments","statuses_url":"https://api.github.com/repos/workato/connector_sdk/statuses/f7d2569271fbfcd03135fe9c6330cd4e3e2633af","head":{"label":"kohroshimizu:caspio_connector","ref":"caspio_connector","sha":"f7d2569271fbfcd03135fe9c6330cd4e3e2633af","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-06-26T10:12:33Z","pushed_at":"2018-06-26T10:14:06Z","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":1895,"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":"8c91a3e4803921d7e01ce0cda8be768db6df770d","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-06-18T15:00:59Z","pushed_at":"2018-06-26T10:17:51Z","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":1895,"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":37,"license":null,"forks":38,"open_issues":37,"watchers":14,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/workato/connector_sdk/pulls/123"},"html":{"href":"https://github.com/workato/connector_sdk/pull/123"},"issue":{"href":"https://api.github.com/repos/workato/connector_sdk/issues/123"},"comments":{"href":"https://api.github.com/repos/workato/connector_sdk/issues/123/comments"},"review_comments":{"href":"https://api.github.com/repos/workato/connector_sdk/pulls/123/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/123/commits"},"statuses":{"href":"https://api.github.com/repos/workato/connector_sdk/statuses/f7d2569271fbfcd03135fe9c6330cd4e3e2633af"}},"author_association":"NONE"}}
{"actor":{"display_login":"houndci-bot"}}