With the launch of Geopath's new measurement system there is now an enhanced ability to see impressions per hour.
Hourly impressions are available at the specific spot level for 0+ (2032), 5+(8923), 18+(7166) and 21+(8228) audiences. They are also available for 0+ (9330), 5+(2038), 18+(2035) and 21+(2036) core audiences that exclude Group Quarters Populations. They are only available for the Global market and are not yet available for local markets. They are available from the https://api.geopath.org/v2.1/inventory/spot/
endpoint and the https://api-docs.geopath.org/inventory-api-2-11/apis/post/inventory/search
endpoint.
Call :
The GET call for hourly impressions requires two parameters get passed. hourly_measures = true and target_segment, which needs to be one of the 4 supported audiences. This call is asking for the hourly measures for spot 631042 at the 0+ level.
https://api.geopath.org/v2.1/inventory/spot/631042?hourly_measures=true&target_segment=2032
Response:
The response includes total_msg_impressions (aka impressions per play) for each hour of each day of the week as well as information about the spot. This response is for a static piece of inventory. This response has been edited for length.
{ "id": 631042, ... "measures": { ... }, "total_msg_impressions": { "measures_type": "Hourly", "target_segment": "2032", "target_geo": "GLOBAL", "market": "GLOBAL", "mon": { "16": 1085.6931, "0": 0.0, "1": 0.0, "22": 0.0, "23": 0.0, "2": 0.0, "3": 0.0, "4": 0.0, "5": 0.0, "6": 701.3269, "7": 1254.0867, "8": 1234.7464, "9": 1143.7807, "10": 563.7419, "11": 614.2854, "12": 666.9281, "13": 680.2556, "14": 767.6736, "15": 1128.6376, "17": 1053.4584, "18": 800.686, "19": 127.6515, "20": 0.0, "21": 0.0 }, "tue": { "16": 1085.6931, "0": 0.0, "1": 0.0, "22": 0.0, "23": 0.0, "2": 0.0, "3": 0.0, "4": 0.0, "5": 0.0, "6": 701.3269, "7": 1254.0867, "8": 1234.7464, "9": 1143.7807, "10": 563.7419, "11": 614.2854, "12": 666.9281, "13": 680.2556, "14": 767.6736, "15": 1128.6376, "17": 1053.4584, "18": 800.686, "19": 127.6515, "20": 0.0, "21": 0.0 }, "wed": { "16": 1085.6931, "0": 0.0, "1": 0.0, "22": 0.0, "23": 0.0, "2": 0.0, "3": 0.0, "4": 0.0, "5": 0.0, "6": 701.3269, "7": 1254.0867, "8": 1234.7464, "9": 1143.7807, "10": 563.7419, "11": 614.2854, "12": 666.9281, "13": 680.2556, "14": 767.6736, "15": 1128.6376, "17": 1053.4584, "18": 800.686, "19": 127.6515, "20": 0.0, "21": 0.0 }, "thu": { "16": 1085.6931, "0": 0.0, "1": 0.0, "22": 0.0, "23": 0.0, "2": 0.0, "3": 0.0, "4": 0.0, "5": 0.0, "6": 701.3269, "7": 1254.0867, "8": 1234.7464, "9": 1143.7807, "10": 563.7419, "11": 614.2854, "12": 666.9281, "13": 680.2556, "14": 767.6736, "15": 1128.6376, "17": 1053.4584, "18": 800.686, "19": 127.6515, "20": 0.0, "21": 0.0 }, "fri": { "16": 634.5248, "0": 0.0, "1": 0.0, "22": 0.0, "23": 0.0, "2": 0.0, "3": 0.0, "4": 0.0, "5": 0.0, "6": 781.2816, "7": 1388.3406, "8": 1392.8029, "9": 1318.4193, "10": 507.4781, "11": 556.3312, "12": 603.0401, "13": 623.1213, "14": 709.0846, "15": 688.5293, "17": 599.181, "18": 452.4068, "19": 144.4297, "20": 0.0, "21": 0.0 }, "sat": { "16": 570.7711, "0": 0.0, "1": 0.0, "22": 0.0, "23": 0.0, "2": 0.0, "3": 0.0, "4": 0.0, "5": 0.0, "6": 250.2465, "7": 498.294, "8": 760.3759, "9": 1009.3332, "10": 683.2922, "11": 742.2024, "12": 756.2217, "13": 731.2883, "14": 704.7625, "15": 632.9886, "17": 514.4061, "18": 435.6574, "19": 81.7362, "20": 0.0, "21": 0.0 }, "sun": { "16": 625.1799, "0": 0.0, "1": 0.0, "22": 0.0, "23": 0.0, "2": 0.0, "3": 0.0, "4": 0.0, "5": 0.0, "6": 213.985, "7": 415.7325, "8": 675.519, "9": 994.5795, "10": 667.1454, "11": 740.1086, "12": 761.698, "13": 747.6507, "14": 718.2456, "15": 690.226, "17": 546.9185, "18": 454.704, "19": 98.223, "20": 0.0, "21": 0.0 } } }
For digital inventory an additional step is required to understand the hourly impressions per spot.
Call:
The call is the same, in the case the ID is for a digital spot
Response:
The Response is also the same format. An important change is that the share_of_voice is now reflective of its digital loop at .125 SOV.
{ "id": 45821, ... "share_of_voice": 0.125, ... "measures": { ... }, "total_msg_impressions": { "measures_type": "Hourly", "target_segment": "2032", "target_geo": "GLOBAL", "market": "GLOBAL", "mon": { "16": 104.6652, "0": 1.945, "23": 8.9485, "1": 1.9912, "2": 2.466, "3": 3.9021, "4": 6.0057, "5": 8.8542, "6": 22.8732, "7": 42.6404, "8": 45.6513, "9": 46.9673, "10": 59.4017, "11": 68.5243, "12": 83.876, "13": 94.2039, "14": 121.6313, "15": 108.7477, "17": 88.507, "18": 55.5707, "19": 80.6602, "20": 47.1325, "21": 21.6295, "22": 14.1046 }, "tue": { "16": 104.6652, "0": 1.945, "23": 8.9485, "1": 1.9912, "2": 2.466, "3": 3.9021, "4": 6.0057, "5": 8.8542, "6": 22.8732, "7": 42.6404, "8": 45.6513, "9": 46.9673, "10": 59.4017, "11": 68.5243, "12": 83.876, "13": 94.2039, "14": 121.6313, "15": 108.7477, "17": 88.507, "18": 55.5707, "19": 80.6602, "20": 47.1325, "21": 21.6295, "22": 14.1046 }, "wed": { "16": 104.6652, "0": 1.945, "23": 8.9485, "1": 1.9912, "2": 2.466, "3": 3.9021, "4": 6.0057, "5": 8.8542, "6": 22.8732, "7": 42.6404, "8": 45.6513, "9": 46.9673, "10": 59.4017, "11": 68.5243, "12": 83.876, "13": 94.2039, "14": 121.6313, "15": 108.7477, "17": 88.507, "18": 55.5707, "19": 80.6602, "20": 47.1325, "21": 21.6295, "22": 14.1046 }, "thu": { "16": 104.6652, "0": 1.945, "23": 8.9485, "1": 1.9912, "2": 2.466, "3": 3.9021, "4": 6.0057, "5": 8.8542, "6": 22.8732, "7": 42.6404, "8": 45.6513, "9": 46.9673, "10": 59.4017, "11": 68.5243, "12": 83.876, "13": 94.2039, "14": 121.6313, "15": 108.7477, "17": 88.507, "18": 55.5707, "19": 80.6602, "20": 47.1325, "21": 21.6295, "22": 14.1046 }, "fri": { "16": 306.387, "0": 3.1407, "23": 10.9309, "1": 3.0309, "2": 3.4913, "3": 4.9581, "4": 7.4025, "5": 11.168, "6": 24.1409, "7": 47.2611, "8": 55.4073, "9": 56.9931, "10": 61.7784, "11": 72.2067, "12": 91.3343, "13": 119.7118, "14": 204.7374, "15": 271.6335, "17": 256.2942, "18": 143.9799, "19": 118.5306, "20": 55.1501, "21": 26.9983, "22": 16.3649 }, "sat": { "16": 119.0891, "0": 5.9179, "23": 10.6085, "1": 5.4012, "2": 4.9428, "3": 5.3432, "4": 7.1372, "5": 7.2859, "6": 15.8923, "7": 34.9228, "8": 60.0283, "9": 79.9648, "10": 94.3997, "11": 106.9839, "12": 121.1266, "13": 142.5048, "14": 146.1712, "15": 147.0486, "17": 87.826, "18": 67.6795, "19": 56.4296, "20": 42.7292, "21": 28.7425, "22": 20.1187 }, "sun": { "16": 74.8528, "0": 6.1361, "23": 5.0881, "1": 5.5246, "2": 4.8255, "3": 4.6386, "4": 5.8287, "5": 4.695, "6": 6.8126, "7": 15.1275, "8": 27.0525, "9": 37.1368, "10": 61.0023, "11": 64.9546, "12": 66.3299, "13": 62.7938, "14": 60.5499, "15": 64.6325, "17": 82.5353, "18": 54.2426, "19": 33.2299, "20": 22.2203, "21": 10.0552, "22": 7.0277 } } }
The following equation can identify the hourly impressions for the digital spot:
spot.measures.day.hour.impressions_per_play * ((3600*layout.share_of_voice)/(spot.length/spot.share_of_voice))
In this case for FRI Hour 17 "17": 256.2942,
the equation would be as follows:
256.2942 * ((3600*1)/(8/.125))
Which equals 14416.54875
Note that the layout share of voice is found as part of the frame object.
Use Case: Updating hourly measures for only updated inventory.
If you've previously requested hourly measures and stored them locally, you may want to update them after inventory has been re-audited and the measures may have changed. In this case using the inventory/search
endpoint will return hourly measures for multiple pieces of inventory.
Call:
This call is similar to other inventory/search
calls, but adds the parameter "hourly_measures":true which tells the search that the request wants hourly measures. All other search parameters are available which is why the request is able to narrow it down to a specific date range and operator. It is important to remember that the hourly measures are still only available for core audiences and one of those audiences must be specified in the "target_segment" parameter.
{ "operator_name_list": [ "JCDecaux" ], "updated_date_range": { "start_date": "2020-06-01T00:00:00.000Z", "end_date": "2020-06-26T23:59:59.000Z" } "measures_required":true, "hourly_measures":true, "target_segment":7166 }
Response:
The response includes the standard ````inventory/search``` response, but the measures object is expanded to include the "total_msg_impressions" object which details the impressions per play per hour per day of week.This response has been edited for length.
{ "inventory_summary": { ... "inventory_items": [ { ... "spot_references": [ { "spot_id": 30982353, .... "measures": { ... }, ... "total_msg_impressions": { "measures_type": "Hourly", "target_segment": "7166", "target_geo": "GLOBAL", "market": "GLOBAL", "mon": { "16": 1131.2798, "0": 94.3905, "1": 79.6523, "2": 70.3266, "14": 1006.1432, "15": 1112.6215, "11": 973.2092, "12": 997.1305, "22": 223.6841, "23": 153.9694, "3": 75.6762, "13": 949.5033, "21": 257.0081, "20": 299.2611, "8": 1321.3751, "9": 1274.8309, "7": 1408.9048, "6": 924.4157, "17": 1054.1251, "10": 911.1408, "4": 99.1228, "5": 167.5246, "19": 313.1573, "18": 792.7066 }, "tue": { "16": 1131.2798, "0": 94.3905, "1": 79.6523, "2": 70.3266, "14": 1006.1432, "15": 1112.6215, "11": 973.2092, "12": 997.1305, "22": 223.6841, "23": 153.9694, "3": 75.6762, "13": 949.5033, "21": 257.0081, "20": 299.2611, "8": 1321.3751, "9": 1274.8309, "7": 1408.9048, "6": 924.4157, "17": 1054.1251, "10": 911.1408, "4": 99.1228, "5": 167.5246, "19": 313.1573, "18": 792.7066 }, "wed": { "16": 1131.2798, "0": 94.3905, "1": 79.6523, "2": 70.3266, "14": 1006.1432, "15": 1112.6215, "11": 973.2092, "12": 997.1305, "22": 223.6841, "23": 153.9694, "3": 75.6762, "13": 949.5033, "21": 257.0081, "20": 299.2611, "8": 1321.3751, "9": 1274.8309, "7": 1408.9048, "6": 924.4157, "17": 1054.1251, "10": 911.1408, "4": 99.1228, "5": 167.5246, "19": 313.1573, "18": 792.7066 }, "thu": { "16": 1131.2798, "0": 94.3905, "1": 79.6523, "2": 70.3266, "14": 1006.1432, "15": 1112.6215, "11": 973.2092, "12": 997.1305, "22": 223.6841, "23": 153.9694, "3": 75.6762, "13": 949.5033, "21": 257.0081, "20": 299.2611, "8": 1321.3751, "9": 1274.8309, "7": 1408.9048, "6": 924.4157, "17": 1054.1251, "10": 911.1408, "4": 99.1228, "5": 167.5246, "19": 313.1573, "18": 792.7066 }, "fri": { "16": 1158.0417, "0": 110.9726, "1": 92.3966, "2": 80.0768, "14": 1384.5434, "15": 1157.2485, "11": 1350.9833, "12": 1378.5591, "22": 261.1661, "23": 180.4019, "3": 84.0225, "13": 1307.4858, "21": 296.1627, "20": 322.397, "8": 1146.2829, "9": 1132.8448, "7": 1173.1396, "6": 784.5024, "17": 1077.6308, "10": 1267.0019, "4": 108.7172, "5": 185.2344, "19": 323.712, "18": 841.4123 }, "sat": { "16": 887.9549, "0": 114.267, "1": 96.9079, "2": 83.0552, "14": 1399.7035, "15": 911.6171, "11": 1639.0963, "12": 1597.8309, "22": 278.0859, "23": 198.5225, "3": 83.1713, "13": 1464.7111, "21": 323.2888, "20": 377.6244, "8": 811.7533, "9": 944.6749, "7": 596.1, "6": 378.9719, "17": 843.3488, "10": 1586.5352, "4": 104.0201, "5": 157.6738, "19": 403.5978, "18": 718.2194 }, "sun": { "16": 741.3594, "0": 176.1774, "1": 154.8591, "2": 133.9085, "14": 815.2282, "15": 762.7699, "11": 879.8753, "12": 908.3486, "22": 260.4141, "23": 188.4866, "3": 128.6869, "13": 844.2384, "21": 310.2316, "20": 432.1372, "8": 719.4149, "9": 879.1185, "7": 502.3611, "6": 316.7723, "17": 704.4131, "10": 832.7391, "4": 152.3037, "5": 181.8324, "19": 493.0984, "18": 597.6113 } }, ... } ], .... }, ..... } ], "pagination": { "page": 1, "page_size": 100, "number_of_pages": 1, "number_of_frames": 4, "number_of_spots": 6 } } }
Add Comment