GMP Upload

This API allows Scope3 partners to upload GMP data for emissions and compensations calculations

Upload Methods

Cloud bucket (preferred): we support data sharing via Google Cloud Storage, Amazon S3, and Microsoft Azure Blob. You can find instructions for configuring your bucket here. We plan to add support for additional cloud providers over the coming months. Please contact your Customer Success Manager to discuss options if you do not use one of the three cloud providers listed above.

POST API: we have an API endpoint for passing CSVs using the below schema. The file limit size is 100MB. If you are interested in enabling, please submit a ticket.

Business Logic

In the event an issue arises during data processing, our support team will reach out. Please submit a ticket if you have an inquiry.

  • We will automatically set the seller field to the customer that is uploading the GMP data when the seller field is not provided .
  • We will not process files including dates that have been previously billed.

CSV Schema

The primary schema is described by the "field name" column below. The first row of the (comma separated) CSV should always contain the field names. The API supports various field name aliases to support the default format from various ad tech platforms.

Field NameRequiredData TypeSupported Column Name HeadersDescriptionExample
datestringdatetime_date, day, day_date, current_date_date, event_dateDate in UTC. Supported Date Structures: YYYY-MM-DD YYYY/MM/DD YYYYMMDD MM-DD-YYYY MM/DD/YYYY MMDDYYYY05-04-2022
impressionsnumberimpression, paid_billable_impressions, imps, ad server impressions, total_line_item_level_impressions, ad_impressionsSum of impressions for these dimensions1000
inventory_idRequire at least one of: inventory_id, app, or domainstringinventory, ad_unitFully qualified domain name or app ID (same as inventoryId in campaign API)nytimes.com
appRequire at least one of: inventory_id, app, or domainstringbundle_id, app_bundle_id, app_url, app_bundle, app_idcom.nytimes.android
domainRequire at least one of: inventory_id, app, or domainstringpage_domain, publisher_domain, site_domain, page_url, allowed_domain, embeded_domain, origin_domain, website_domainnytimes.com
countrystringip_country, user_geo_country, geo_country, country_code, country_nameISO 3166-1 alpha-2 country code. If a country code is not provided, the default global emissions value is used.US
regionstringISO 3166-2 region code. If a region is not provided, then the default country value is used. Regions are currently only supported in US, AU, CA.NY
device_typeEnum Options: phone, pc, tv, tabletdevice_category, device_name, device_type_nameThe consumer’s device. If a value is provided outside of the options, we do a best attempt to map any other client inputs such as smart phone ctv etc to the correct device type. If we are unable to map a device or one is not provided, we will infer the device type from the the channel or the device field.pc
channelEnum Options: display-web, display-app, streaming-video, social, display, mobiledisplay-web
networkEnum Options: fixed, mobileThe networking connection used by the end user's device.fixed
deal_idstringdemand_deal, curated_deal, order, seller_deal_id, programmatic_deal_id, deal_id_keycodeThe deal idDEAL-158781
deal_namestringdemand deal name, programmatic_deal_name, dealThe deal nameCLIENT - BRAND - Q1 - US
transaction_methodEnum Options: programmatic-pmp. programmatic-open. programmatic-guaranteed. direct, direct-takeoverbuying_methodThe method used to buy the impressionsprogrammatic-open
buying_platform_domainstringdsp, programmatic_buyer_idThe domain of the DSP (or exchange) that bought the impressionthetradedesk.com
buying_platform_namestringdsp_name, buyer_platform_name, programmatic_buyer, buyer_network_name, ad_source_nameThe Trade Desk
buying_seat_namestringdsp_account_name, bidder
buying_seat_idstringmember, seat, buyer_seat_idThe seat ID on the DSP that bought the impression - generally maps to a trading desk or agency1234
landing_page_domainstringadvertiser_landing_pageAdvertiser landing pagedyson.com
brand_namestringbrand, advertiser_name, advertiser, global_advertiser_name, advertizer_name, advertizer, global_advertizer_nameDyson