)]}'
{
  "commit": "b90c6d0f134d2be1ab5a2832d1746f4e49f832b9",
  "tree": "f803710e9dba373e611c317e55171de5e289867b",
  "parents": [
    "8cb43e19bfdc6b6576f5af144f154eba2aac0165"
  ],
  "author": {
    "name": "Gregory Brail",
    "email": "gregbrail@google.com",
    "time": "Thu May 18 14:00:17 2017 -0700"
  },
  "committer": {
    "name": "Gregory Brail",
    "email": "gregbrail@google.com",
    "time": "Thu May 18 14:00:17 2017 -0700"
  },
  "message": "Add API product data to api key validation.\n\nWe are not yet checking the path -- we\u0027re simply accepting the\nfirst API product that we see.\nWe are also not yet populating the attributes, but we will do that\nsoon.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e6120d795ba75bca4baee9a23a24acb79e9de685",
      "old_mode": 33188,
      "old_path": "adapter/BUILD",
      "new_id": "68a50d4343cc9f38328d204df5437562fa6a2fe6",
      "new_mode": 33188,
      "new_path": "adapter/BUILD"
    },
    {
      "type": "modify",
      "old_id": "448bb938138ba2e1af811ea3025959397787ac83",
      "old_mode": 33188,
      "old_path": "adapter/apigeeKeyAttributes.go",
      "new_id": "db93ed521091ed9b7f8f8a838f51991f19465cd2",
      "new_mode": 33188,
      "new_path": "adapter/apigeeKeyAttributes.go"
    },
    {
      "type": "modify",
      "old_id": "0176917e73748b7a7396847e9b80402b1fbd9012",
      "old_mode": 33188,
      "old_path": "adapter/apigeeKeyAttributes_test.go",
      "new_id": "b2b588374e63a612f81e6bc50ee9f6c03c678d82",
      "new_mode": 33188,
      "new_path": "adapter/apigeeKeyAttributes_test.go"
    },
    {
      "type": "modify",
      "old_id": "50f61ac3601af9fd74deaffb7016281e087c4308",
      "old_mode": 33188,
      "old_path": "adapter/apigeeKeyChecker.go",
      "new_id": "eb7d1353f9d828ca3a763d5788160580438e41d3",
      "new_mode": 33188,
      "new_path": "adapter/apigeeKeyChecker.go"
    },
    {
      "type": "modify",
      "old_id": "16cfefa1a6c6a8728be6dde7a9e6da16c3ef99c8",
      "old_mode": 33188,
      "old_path": "adapter/apigeeReport.go",
      "new_id": "6551dfcd42021652f804096151cd694e04e1441a",
      "new_mode": 33188,
      "new_path": "adapter/apigeeReport.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c890fd4f6abbaa7b911df46e9c3b6b8242bcbf66",
      "new_mode": 33188,
      "new_path": "adapter/products.go"
    },
    {
      "type": "modify",
      "old_id": "e4bff48d6241f6ce28bfd7f8a474237dbd2bbade",
      "old_mode": 33188,
      "old_path": "common/types.go",
      "new_id": "1f9ee4337689aba0db66c7d23952a5e185f0f663",
      "new_mode": 33188,
      "new_path": "common/types.go"
    },
    {
      "type": "modify",
      "old_id": "99bbe77b898cf346433d4daeb83d2155457eb1c4",
      "old_mode": 33188,
      "old_path": "mock/mockserver.go",
      "new_id": "8fd5ff74bb8766b0505a764ddf4b6343a0738d53",
      "new_mode": 33188,
      "new_path": "mock/mockserver.go"
    },
    {
      "type": "modify",
      "old_id": "49f3207386a2c4fc60a6916b2f01a0fd2a551e8f",
      "old_mode": 33188,
      "old_path": "mock/mockserver_test.go",
      "new_id": "4c384aebedf853ed6df8cd33c37596d08f589be3",
      "new_mode": 33188,
      "new_path": "mock/mockserver_test.go"
    },
    {
      "type": "modify",
      "old_id": "c1aed4296f5cd3b1f595d505985d0a1c5779836c",
      "old_mode": 33188,
      "old_path": "testdata/configroot/scopes/global/descriptors.yml",
      "new_id": "7e29fba413adf88b000e4da64a1eea195b049a04",
      "new_mode": 33188,
      "new_path": "testdata/configroot/scopes/global/descriptors.yml"
    },
    {
      "type": "modify",
      "old_id": "5545c954399f811c0bd4a6e86071f591b9a4043f",
      "old_mode": 33188,
      "old_path": "testdata/configroot/scopes/global/subjects/global/rules.yml",
      "new_id": "9bd10dfb8297ce1a5d2d3c4be2459530d793436f",
      "new_mode": 33188,
      "new_path": "testdata/configroot/scopes/global/subjects/global/rules.yml"
    }
  ]
}
