{"action":"created","comment":{"url":"https://api.github.com/repos/prebid/Prebid.js/pulls/comments/134781646","pull_request_review_id":58114433,"id":134781646,"diff_hunk":"@@ -0,0 +1,414 @@\n+const LIB_VERSION_GLOBAL = '3.0.4';\n+\n+var CONSTANTS = require('src/constants');\n+var utils = require('src/utils');\n+var bidfactory = require('src/bidfactory');\n+var bidmanager = require('src/bidmanager');\n+var adloader = require('src/adloader');\n+var Adapter = require('src/adapter').default;\n+var adaptermanager = require('src/adaptermanager');\n+\n+const IMPROVE_DIGITAL_BIDDER_CODE = 'improvedigital';\n+\n+const ImproveDigitalAdapter = function () {\n+  let baseAdapter = new Adapter(IMPROVE_DIGITAL_BIDDER_CODE);\n+  baseAdapter.idClient = new ImproveDigitalAdServerJSClient('hb');\n+\n+  let LIB_VERSION = LIB_VERSION_GLOBAL;\n+\n+  // Ad server needs to implement JSONP using this function as the callback\n+  let CALLBACK_FUNCTION = '$$PREBID_GLOBAL$$' + '.improveDigitalResponse';\n+\n+  baseAdapter.getNormalizedBidRequest = function(bid) {\n+    let adUnitId = utils.getBidIdParameter('placementCode', bid) || null;\n+    let placementId = utils.getBidIdParameter('placementId', bid.params) || null;\n+    let publisherId = null;\n+    let placementKey = null;\n+\n+    if (placementId === null) {\n+      publisherId = utils.getBidIdParameter('publisherId', bid.params) || null;\n+      placementKey = utils.getBidIdParameter('placementKey', bid.params) || null;\n+    }\n+    let keyValues = utils.getBidIdParameter('keyValues', bid.params) || null;\n+    let localSize = utils.getBidIdParameter('size', bid.params) || null;\n+    let bidId = utils.getBidIdParameter('bidId', bid);\n+\n+    let normalizedBidRequest = {};\n+    if (placementId) {\n+      normalizedBidRequest.placementId = placementId;\n+    } else {\n+      if (publisherId) {\n+        normalizedBidRequest.publisherId = publisherId;\n+      }\n+      if (placementKey) {\n+        normalizedBidRequest.placementKey = placementKey;\n+      }\n+    }\n+\n+    if (keyValues) {\n+      normalizedBidRequest.keyValues = keyValues;\n+    }\n+    if (localSize && localSize.w && localSize.h) {\n+      normalizedBidRequest.size = {};\n+      normalizedBidRequest.size.h = localSize.h;\n+      normalizedBidRequest.size.w = localSize.w;\n+    }\n+    if (bidId) {\n+      normalizedBidRequest.id = bidId;\n+    }\n+    if (adUnitId) {\n+      normalizedBidRequest.adUnitId = adUnitId;\n+    }\n+    return normalizedBidRequest;\n+  }\n+\n+  $$PREBID_GLOBAL$$.improveDigitalResponse = function(response) {\n+    let bidRequests = $$PREBID_GLOBAL$$._bidsRequested.find(bidSet => bidSet.bidderCode === IMPROVE_DIGITAL_BIDDER_CODE);\n+    if (bidRequests.bids && bidRequests.bids.length > 0) {\n+      for (var requestNumber = 0; requestNumber < bidRequests.bids.length; requestNumber++) {\n+        let bidRequest = bidRequests.bids[requestNumber];\n+        let bidObjects = response.bid || null;\n+        if (bidObjects === null || bidObjects.length <= 0) continue;\n+\n+        for (var bidNumber = 0; bidNumber < bidObjects.length; bidNumber++) {\n+          let bidObject = bidObjects[bidNumber];\n+\n+          if (bidObject.id === bidRequest.bidId) {\n+            let bid;\n+            if (!bidObject.price || bidObject.price === null) {\n+              bid = bidfactory.createBid(CONSTANTS.STATUS.NO_BID);\n+              bid.bidderCode = IMPROVE_DIGITAL_BIDDER_CODE;\n+              bidmanager.addBidResponse(bidRequest.placementCode, bid);\n+              continue;\n+            }\n+            if (bidObject.errorCode && bidObject.errorCode !== 0) {\n+              bid = bidfactory.createBid(CONSTANTS.STATUS.NO_BID);\n+              bid.bidderCode = IMPROVE_DIGITAL_BIDDER_CODE;\n+              bidmanager.addBidResponse(bidRequest.placementCode, bid);\n+              continue;\n+            }\n+            if (!bidObject.adm || bidObject.adm === null || typeof bidObject.adm !== 'string') {\n+              bid = bidfactory.createBid(CONSTANTS.STATUS.NO_BID);\n+              bid.bidderCode = IMPROVE_DIGITAL_BIDDER_CODE;\n+              bidmanager.addBidResponse(bidRequest.placementCode, bid);\n+              continue;\n+            }\n+\n+            bid = bidfactory.createBid(CONSTANTS.STATUS.GOOD);\n+\n+            let syncString = '';\n+            let syncArray = (bidObject.sync && bidObject.sync.length > 0) ? bidObject.sync : [];\n+\n+            for (var syncCounter = 0; syncCounter < syncArray.length; syncCounter++) {\n+              syncString += (syncString === '') ? 'document.writeln(\\\"' : '';\n+              let syncInd = syncArray[syncCounter];\n+              syncInd = syncInd.replace(/\\//g, '\\\\\\/');\n+              syncString += '<img src=\\\\\\\"' + syncInd + '\\\\\\\"\\/>';\n+            }\n+            syncString += (syncString === '') ? '' : '\\\")';\n+\n+            let nurl = '';\n+            if (bidObject.nurl && bidObject.nurl.length > 0) {\n+              nurl = '<img src=\\\"' + bidObject.nurl + '\\\" width=\\\"0\\\" height=\\\"0\\\" style=\\\"display:none\\\">';\n+            }\n+            bid.ad = nurl + '<script>' + bidObject.adm + syncString + '</script>';\n+            bid.bidderCode = IMPROVE_DIGITAL_BIDDER_CODE;\n+            bid.cpm = parseFloat(bidObject.price);\n+            bid.width = bidObject.w;\n+            bid.height = bidObject.h;\n+\n+            bidmanager.addBidResponse(bidRequest.placementCode, bid);\n+          }\n+        }\n+      }\n+    }\n+  };\n+\n+  baseAdapter.callBids = function (params) {\n+    // params will contain an array\n+    let bidRequests = params.bids || [];\n+    let loc = utils.getTopWindowLocation();\n+    let requestParameters = {\n+      singleRequestMode: false,\n+      httpRequestType: this.idClient.CONSTANTS.HTTP_REQUEST_TYPE.GET,\n+      callback: CALLBACK_FUNCTION,\n+      secure: (loc.protocol === 'https:') ? 1 : 0,\n+      libVersion: this.LIB_VERSION\n+    };\n+\n+    let normalizedBids = [];\n+    for (var bidCounter = 0; bidCounter < bidRequests.length; bidCounter++) {\n+      let normalizedBidRequest = this.getNormalizedBidRequest(bidRequests[bidCounter]);\n+      normalizedBids.push(normalizedBidRequest);\n+      if (bidRequests[bidCounter].params && bidRequests[bidCounter].params.singleRequest) {\n+        requestParameters.singleRequestMode = true;\n+      }\n+    }\n+\n+    let request = this.idClient.createRequest(\n+      normalizedBids, // requestObject\n+      requestParameters\n+    );\n+\n+    if (request.errors && request.errors.length > 0) {\n+      utils.logError('ID WARNING 0x01');\n+    }\n+\n+    if (request && request.requests && request.requests[0]) {\n+      for (var requestCounter = 0; requestCounter < request.requests.length; requestCounter++) {\n+        if (request.requests[requestCounter].url) {\n+          adloader.loadScript(request.requests[requestCounter].url, null);\n+        }\n+      }\n+    }\n+  }\n+\n+  // Export the callBids function, so that prebid.js can execute this function\n+  // when the page asks to send out bid requests.\n+  return Object.assign(this, {\n+    LIB_VERSION: LIB_VERSION,\n+    idClient: baseAdapter.idClient,\n+    getNormalizedBidRequest: baseAdapter.getNormalizedBidRequest,\n+    callBids: baseAdapter.callBids\n+  });\n+};\n+\n+ImproveDigitalAdapter.createNew = function () {\n+  return new ImproveDigitalAdapter();\n+};\n+\n+adaptermanager.registerBidAdapter(new ImproveDigitalAdapter(), IMPROVE_DIGITAL_BIDDER_CODE);\n+\n+module.exports = ImproveDigitalAdapter;\n+\n+function ImproveDigitalAdServerJSClient(endPoint) {\n+  this.isA = function (object, _t) {","path":"modules/improvedigitalBidAdapter.js","position":null,"original_position":185,"commit_id":"f4394f7e7156ff60dd6dada545a9f80510a4e824","original_commit_id":"8fd5f8d3fc580ff295a2ae895207f54f3bd4c081","user":{"login":"agregorio-improve","id":19835904,"avatar_url":"https://avatars0.githubusercontent.com/u/19835904?v=4","gravatar_id":"","url":"https://api.github.com/users/agregorio-improve","html_url":"https://github.com/agregorio-improve","followers_url":"https://api.github.com/users/agregorio-improve/followers","following_url":"https://api.github.com/users/agregorio-improve/following{/other_user}","gists_url":"https://api.github.com/users/agregorio-improve/gists{/gist_id}","starred_url":"https://api.github.com/users/agregorio-improve/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/agregorio-improve/subscriptions","organizations_url":"https://api.github.com/users/agregorio-improve/orgs","repos_url":"https://api.github.com/users/agregorio-improve/repos","events_url":"https://api.github.com/users/agregorio-improve/events{/privacy}","received_events_url":"https://api.github.com/users/agregorio-improve/received_events","type":"User","site_admin":false},"body":"Fixed","created_at":"2017-08-23T15:13:21Z","updated_at":"2017-08-23T15:13:21Z","html_url":"https://github.com/prebid/Prebid.js/pull/1381#discussion_r134781646","pull_request_url":"https://api.github.com/repos/prebid/Prebid.js/pulls/1381","_links":{"self":{"href":"https://api.github.com/repos/prebid/Prebid.js/pulls/comments/134781646"},"html":{"href":"https://github.com/prebid/Prebid.js/pull/1381#discussion_r134781646"},"pull_request":{"href":"https://api.github.com/repos/prebid/Prebid.js/pulls/1381"}}},"pull_request":{"url":"https://api.github.com/repos/prebid/Prebid.js/pulls/1381","id":130545072,"html_url":"https://github.com/prebid/Prebid.js/pull/1381","diff_url":"https://github.com/prebid/Prebid.js/pull/1381.diff","patch_url":"https://github.com/prebid/Prebid.js/pull/1381.patch","issue_url":"https://api.github.com/repos/prebid/Prebid.js/issues/1381","number":1381,"state":"open","locked":false,"title":"Add improvedigitalBidAdapter","user":{"login":"agregorio-improve","id":19835904,"avatar_url":"https://avatars0.githubusercontent.com/u/19835904?v=4","gravatar_id":"","url":"https://api.github.com/users/agregorio-improve","html_url":"https://github.com/agregorio-improve","followers_url":"https://api.github.com/users/agregorio-improve/followers","following_url":"https://api.github.com/users/agregorio-improve/following{/other_user}","gists_url":"https://api.github.com/users/agregorio-improve/gists{/gist_id}","starred_url":"https://api.github.com/users/agregorio-improve/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/agregorio-improve/subscriptions","organizations_url":"https://api.github.com/users/agregorio-improve/orgs","repos_url":"https://api.github.com/users/agregorio-improve/repos","events_url":"https://api.github.com/users/agregorio-improve/events{/privacy}","received_events_url":"https://api.github.com/users/agregorio-improve/received_events","type":"User","site_admin":false},"body":"<!--\r\nThank you for your pull request. Please make sure this PR is scoped to one change, and that any added or changed code includes tests with greater than 80% code coverage. See https://github.com/prebid/Prebid.js/blob/master/CONTRIBUTING.md#testing-prebidjs for documentation on testing Prebid.js.\r\n-->\r\n\r\n## Type of change\r\n<!-- Remove items that don't apply and/or select an item by changing [ ] to [x] -->\r\n- [ ] Bugfix\r\n- [ ] Feature\r\n- [x] New bidder adapter  <!--  IMPORTANT: if checking here, also submit your bidder params documentation here https://github.com/prebid/prebid.github.io/tree/master/dev-docs/bidders --> \r\n- [ ] Code style update (formatting, local variables)\r\n- [ ] Refactoring (no functional changes, no api changes)\r\n- [ ] Build related changes\r\n- [ ] CI related changes\r\n- [ ] Other\r\n\r\n## Description of change\r\n<!-- Describe the change proposed in this pull request -->\r\n\r\n<!-- For new bidder adapters, please provide the following -->\r\n- test parameters for validating bids\r\n```\r\n{\r\n  bidder: 'improvedigital',\r\n  params: {\r\n    placementId:1053688\r\n  }\r\n},\r\n{\r\n  bidder: 'improvedigital',\r\n  params: {\r\n    placementId:1053689,\r\n    keyValues: {\r\n      testKey: [\"testValue\"]\r\n    }\r\n},\r\n{\r\n  bidder: 'improvedigital',\r\n  params: {\r\n    placementId:1053687,\r\n    size: {\r\n      w:300,\r\n      h:300\r\n    }\r\n}\r\n```\r\n\r\nBe sure to test the integration with your adserver using the [Hello World](/integrationExamples/gpt/hello_world.html) sample page.\r\n\r\n- contact email of the adapter’s maintainer: hb@improvedigital.com\r\n- [x] official adapter submission\r\n\r\n\r\n## Other information\r\n<!-- References to related PR or issue #s, @mentions of the person or team responsible for reviewing changes, etc. -->\r\n","created_at":"2017-07-14T09:01:04Z","updated_at":"2017-08-23T15:13:21Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ff14e7e1b04e2f7df116eb4ac4546d927b8e7696","assignee":{"login":"harpere","id":6118724,"avatar_url":"https://avatars1.githubusercontent.com/u/6118724?v=4","gravatar_id":"","url":"https://api.github.com/users/harpere","html_url":"https://github.com/harpere","followers_url":"https://api.github.com/users/harpere/followers","following_url":"https://api.github.com/users/harpere/following{/other_user}","gists_url":"https://api.github.com/users/harpere/gists{/gist_id}","starred_url":"https://api.github.com/users/harpere/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/harpere/subscriptions","organizations_url":"https://api.github.com/users/harpere/orgs","repos_url":"https://api.github.com/users/harpere/repos","events_url":"https://api.github.com/users/harpere/events{/privacy}","received_events_url":"https://api.github.com/users/harpere/received_events","type":"User","site_admin":false},"assignees":[{"login":"harpere","id":6118724,"avatar_url":"https://avatars1.githubusercontent.com/u/6118724?v=4","gravatar_id":"","url":"https://api.github.com/users/harpere","html_url":"https://github.com/harpere","followers_url":"https://api.github.com/users/harpere/followers","following_url":"https://api.github.com/users/harpere/following{/other_user}","gists_url":"https://api.github.com/users/harpere/gists{/gist_id}","starred_url":"https://api.github.com/users/harpere/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/harpere/subscriptions","organizations_url":"https://api.github.com/users/harpere/orgs","repos_url":"https://api.github.com/users/harpere/repos","events_url":"https://api.github.com/users/harpere/events{/privacy}","received_events_url":"https://api.github.com/users/harpere/received_events","type":"User","site_admin":false},{"login":"jaiminpanchal27","id":7393273,"avatar_url":"https://avatars2.githubusercontent.com/u/7393273?v=4","gravatar_id":"","url":"https://api.github.com/users/jaiminpanchal27","html_url":"https://github.com/jaiminpanchal27","followers_url":"https://api.github.com/users/jaiminpanchal27/followers","following_url":"https://api.github.com/users/jaiminpanchal27/following{/other_user}","gists_url":"https://api.github.com/users/jaiminpanchal27/gists{/gist_id}","starred_url":"https://api.github.com/users/jaiminpanchal27/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jaiminpanchal27/subscriptions","organizations_url":"https://api.github.com/users/jaiminpanchal27/orgs","repos_url":"https://api.github.com/users/jaiminpanchal27/repos","events_url":"https://api.github.com/users/jaiminpanchal27/events{/privacy}","received_events_url":"https://api.github.com/users/jaiminpanchal27/received_events","type":"User","site_admin":false}],"requested_reviewers":[],"milestone":null,"commits_url":"https://api.github.com/repos/prebid/Prebid.js/pulls/1381/commits","review_comments_url":"https://api.github.com/repos/prebid/Prebid.js/pulls/1381/comments","review_comment_url":"https://api.github.com/repos/prebid/Prebid.js/pulls/comments{/number}","comments_url":"https://api.github.com/repos/prebid/Prebid.js/issues/1381/comments","statuses_url":"https://api.github.com/repos/prebid/Prebid.js/statuses/f4394f7e7156ff60dd6dada545a9f80510a4e824","head":{"label":"ImproveDigital:master","ref":"master","sha":"f4394f7e7156ff60dd6dada545a9f80510a4e824","user":{"login":"ImproveDigital","id":8035557,"avatar_url":"https://avatars3.githubusercontent.com/u/8035557?v=4","gravatar_id":"","url":"https://api.github.com/users/ImproveDigital","html_url":"https://github.com/ImproveDigital","followers_url":"https://api.github.com/users/ImproveDigital/followers","following_url":"https://api.github.com/users/ImproveDigital/following{/other_user}","gists_url":"https://api.github.com/users/ImproveDigital/gists{/gist_id}","starred_url":"https://api.github.com/users/ImproveDigital/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ImproveDigital/subscriptions","organizations_url":"https://api.github.com/users/ImproveDigital/orgs","repos_url":"https://api.github.com/users/ImproveDigital/repos","events_url":"https://api.github.com/users/ImproveDigital/events{/privacy}","received_events_url":"https://api.github.com/users/ImproveDigital/received_events","type":"Organization","site_admin":false},"repo":{"id":97130354,"name":"Prebid.js","full_name":"ImproveDigital/Prebid.js","owner":{"login":"ImproveDigital","id":8035557,"avatar_url":"https://avatars3.githubusercontent.com/u/8035557?v=4","gravatar_id":"","url":"https://api.github.com/users/ImproveDigital","html_url":"https://github.com/ImproveDigital","followers_url":"https://api.github.com/users/ImproveDigital/followers","following_url":"https://api.github.com/users/ImproveDigital/following{/other_user}","gists_url":"https://api.github.com/users/ImproveDigital/gists{/gist_id}","starred_url":"https://api.github.com/users/ImproveDigital/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ImproveDigital/subscriptions","organizations_url":"https://api.github.com/users/ImproveDigital/orgs","repos_url":"https://api.github.com/users/ImproveDigital/repos","events_url":"https://api.github.com/users/ImproveDigital/events{/privacy}","received_events_url":"https://api.github.com/users/ImproveDigital/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/ImproveDigital/Prebid.js","description":"Setup and manage header bidding advertising partners without writing code or confusing line items. Prebid.js is open source and free.","fork":true,"url":"https://api.github.com/repos/ImproveDigital/Prebid.js","forks_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/forks","keys_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/teams","hooks_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/hooks","issue_events_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/issues/events{/number}","events_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/events","assignees_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/assignees{/user}","branches_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/branches{/branch}","tags_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/tags","blobs_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/git/refs{/sha}","trees_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/statuses/{sha}","languages_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/languages","stargazers_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/stargazers","contributors_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/contributors","subscribers_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/subscribers","subscription_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/subscription","commits_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/commits{/sha}","git_commits_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/git/commits{/sha}","comments_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/comments{/number}","issue_comment_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/issues/comments{/number}","contents_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/contents/{+path}","compare_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/merges","archive_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/downloads","issues_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/issues{/number}","pulls_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/pulls{/number}","milestones_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/milestones{/number}","notifications_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/labels{/name}","releases_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/releases{/id}","deployments_url":"https://api.github.com/repos/ImproveDigital/Prebid.js/deployments","created_at":"2017-07-13T14:15:34Z","updated_at":"2017-07-13T14:15:36Z","pushed_at":"2017-08-23T15:02:33Z","git_url":"git://github.com/ImproveDigital/Prebid.js.git","ssh_url":"git@github.com:ImproveDigital/Prebid.js.git","clone_url":"https://github.com/ImproveDigital/Prebid.js.git","svn_url":"https://github.com/ImproveDigital/Prebid.js","homepage":"http://prebid.org","size":3320,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"prebid:master","ref":"master","sha":"000e4532bda25ae25228a352b5d30364c158a4a9","user":{"login":"prebid","id":13242760,"avatar_url":"https://avatars1.githubusercontent.com/u/13242760?v=4","gravatar_id":"","url":"https://api.github.com/users/prebid","html_url":"https://github.com/prebid","followers_url":"https://api.github.com/users/prebid/followers","following_url":"https://api.github.com/users/prebid/following{/other_user}","gists_url":"https://api.github.com/users/prebid/gists{/gist_id}","starred_url":"https://api.github.com/users/prebid/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prebid/subscriptions","organizations_url":"https://api.github.com/users/prebid/orgs","repos_url":"https://api.github.com/users/prebid/repos","events_url":"https://api.github.com/users/prebid/events{/privacy}","received_events_url":"https://api.github.com/users/prebid/received_events","type":"Organization","site_admin":false},"repo":{"id":39321023,"name":"Prebid.js","full_name":"prebid/Prebid.js","owner":{"login":"prebid","id":13242760,"avatar_url":"https://avatars1.githubusercontent.com/u/13242760?v=4","gravatar_id":"","url":"https://api.github.com/users/prebid","html_url":"https://github.com/prebid","followers_url":"https://api.github.com/users/prebid/followers","following_url":"https://api.github.com/users/prebid/following{/other_user}","gists_url":"https://api.github.com/users/prebid/gists{/gist_id}","starred_url":"https://api.github.com/users/prebid/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prebid/subscriptions","organizations_url":"https://api.github.com/users/prebid/orgs","repos_url":"https://api.github.com/users/prebid/repos","events_url":"https://api.github.com/users/prebid/events{/privacy}","received_events_url":"https://api.github.com/users/prebid/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/prebid/Prebid.js","description":"Setup and manage header bidding advertising partners without writing code or confusing line items. Prebid.js is open source and free.","fork":false,"url":"https://api.github.com/repos/prebid/Prebid.js","forks_url":"https://api.github.com/repos/prebid/Prebid.js/forks","keys_url":"https://api.github.com/repos/prebid/Prebid.js/keys{/key_id}","collaborators_url":"https://api.github.com/repos/prebid/Prebid.js/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/prebid/Prebid.js/teams","hooks_url":"https://api.github.com/repos/prebid/Prebid.js/hooks","issue_events_url":"https://api.github.com/repos/prebid/Prebid.js/issues/events{/number}","events_url":"https://api.github.com/repos/prebid/Prebid.js/events","assignees_url":"https://api.github.com/repos/prebid/Prebid.js/assignees{/user}","branches_url":"https://api.github.com/repos/prebid/Prebid.js/branches{/branch}","tags_url":"https://api.github.com/repos/prebid/Prebid.js/tags","blobs_url":"https://api.github.com/repos/prebid/Prebid.js/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/prebid/Prebid.js/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/prebid/Prebid.js/git/refs{/sha}","trees_url":"https://api.github.com/repos/prebid/Prebid.js/git/trees{/sha}","statuses_url":"https://api.github.com/repos/prebid/Prebid.js/statuses/{sha}","languages_url":"https://api.github.com/repos/prebid/Prebid.js/languages","stargazers_url":"https://api.github.com/repos/prebid/Prebid.js/stargazers","contributors_url":"https://api.github.com/repos/prebid/Prebid.js/contributors","subscribers_url":"https://api.github.com/repos/prebid/Prebid.js/subscribers","subscription_url":"https://api.github.com/repos/prebid/Prebid.js/subscription","commits_url":"https://api.github.com/repos/prebid/Prebid.js/commits{/sha}","git_commits_url":"https://api.github.com/repos/prebid/Prebid.js/git/commits{/sha}","comments_url":"https://api.github.com/repos/prebid/Prebid.js/comments{/number}","issue_comment_url":"https://api.github.com/repos/prebid/Prebid.js/issues/comments{/number}","contents_url":"https://api.github.com/repos/prebid/Prebid.js/contents/{+path}","compare_url":"https://api.github.com/repos/prebid/Prebid.js/compare/{base}...{head}","merges_url":"https://api.github.com/repos/prebid/Prebid.js/merges","archive_url":"https://api.github.com/repos/prebid/Prebid.js/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/prebid/Prebid.js/downloads","issues_url":"https://api.github.com/repos/prebid/Prebid.js/issues{/number}","pulls_url":"https://api.github.com/repos/prebid/Prebid.js/pulls{/number}","milestones_url":"https://api.github.com/repos/prebid/Prebid.js/milestones{/number}","notifications_url":"https://api.github.com/repos/prebid/Prebid.js/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/prebid/Prebid.js/labels{/name}","releases_url":"https://api.github.com/repos/prebid/Prebid.js/releases{/id}","deployments_url":"https://api.github.com/repos/prebid/Prebid.js/deployments","created_at":"2015-07-19T03:26:23Z","updated_at":"2017-08-21T00:17:11Z","pushed_at":"2017-08-23T15:02:35Z","git_url":"git://github.com/prebid/Prebid.js.git","ssh_url":"git@github.com:prebid/Prebid.js.git","clone_url":"https://github.com/prebid/Prebid.js.git","svn_url":"https://github.com/prebid/Prebid.js","homepage":"http://prebid.org","size":3466,"stargazers_count":501,"watchers_count":501,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":453,"mirror_url":null,"open_issues_count":94,"forks":453,"open_issues":94,"watchers":501,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/prebid/Prebid.js/pulls/1381"},"html":{"href":"https://github.com/prebid/Prebid.js/pull/1381"},"issue":{"href":"https://api.github.com/repos/prebid/Prebid.js/issues/1381"},"comments":{"href":"https://api.github.com/repos/prebid/Prebid.js/issues/1381/comments"},"review_comments":{"href":"https://api.github.com/repos/prebid/Prebid.js/pulls/1381/comments"},"review_comment":{"href":"https://api.github.com/repos/prebid/Prebid.js/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/prebid/Prebid.js/pulls/1381/commits"},"statuses":{"href":"https://api.github.com/repos/prebid/Prebid.js/statuses/f4394f7e7156ff60dd6dada545a9f80510a4e824"}}}}
{"actor":{"display_login":"agregorio-improve"}}