DSP Requirements
Required Agreements
- TAG TrustNet Membership Agreement (signed with TAG)
- TAG TrustNet Licensing and Service Level Agreement (signed with Fiducia)
General Requirements
- DSPs are required to receive Verified by TAG status before applying for TAG TrustNet Membership.
- DSPs are required to support a log level data product available to its clients compliant with specifications set out below, specifically the ‘required’ fields.
Log Level Data Accessibility Requirements
- Log level data access should be provided to clients promptly upon request by the DSP seat owner.
- DSPs shall not prevent or delay its clients from accessing log level data, and support the goal of its ingestion into TAG TrustNet for analysis and/or sharing with third parties.
- Log level data files should be provided with comprehensive documentation with detailed descriptions of all data fields provided, required data dictionaries.
- Impression events should be reported in compliance industry guidelines, e.g. IAB begin to render:
Log Level Data Ingestion Automation (Optional)
- To simplify the activation of a DSPs log level data in TAG TrustNet for DSP clients, DSP may support the following mechanism:
-
Upon a client’s request for a log level data feed enablement for an owned seat ID:
-
Start continuous upload of seat ID log files into TAG TrustNet Node Amazon S3 storage bucket provided by Fiducia, or
-
Enable seat ID log data in the data view shared with Fiducia Snowflake account using Snowflake Data Exchange;
-
-
Fiducia will configure a dedicated instance of TAG TrustNet Node for each DSP, which will automatically share provided DSP seat log level data with TAG TrustNet Nodes of DSP seat owners;
-
Data will be protected from unauthorised access end-to-end using encryption in transit and at rest.
-
Compliance with Data Protection Laws
- Log level data provided for ingestion into TAG TrustNet shall not include any Personal Data (as defined below) and, as such, should fall outside of the scope of any data protection laws, including, without limitation, the GDPR and the CCPA. All Personal Data, and any data fields which represent pseudonymous data, shall be removed from the data before it is ingested into TAG TrustNet. “Personal Data” means any information defined as “personal data,” “personal information,” “personally identifiable information,” “nonpublic personal information,” or other similar term under any applicable data protection laws.
Log Level Data Technical Requirements
The tables below list the type of data files required, the frequency, and format.
Log Files Data Required |
Frequency | |
---|---|---|
DSP | Impressions, Data Dictionaries | New log file entries shall become available continuously to Fiducia within 24 hours |
Technical Requirements
-
DSPs should not change data record contents in internal systems in a way that they will become out of sync with log level data provided to a client. If data restatement is required, then the seat owners and TAG TrustNet should be informed in a timely fashion so impression events can be reprocessed.
-
Impression log file records and database records provided to a client are deemed immutable in TAG TrustNet for the purpose of ad delivery audit.
-
Impression log file records should be included in the log files no later than 48 hours after the impression event. Any impression log file record delivered beyond this time limit will be ignored for the purpose of ad delivery audit in TAG TrustNet.
-
Timestamps for impression events should be determined server-side using an authoritative time source.
-
Timestamps should always be reported in UTC time zone.
-
If impression records are reported via database (e.g. Snowflake), they should contain both the impression timestamp and timestamp of data record insertion into the log database.
-
As part of DSPs log file delivery, data dictionaries allowing the mapping of impression record data fields to their meaning should be provided at least every 24 hours.
-
Reported seller IDs and buyer IDs should match respective records in sellers.json and buyers.json files.
Required and Recommended Data Fields
The following table details the ‘required’ and ‘recommended’ fields for impression events, with references to the OpenRTB specs where appropriate.
Field | Status | Description |
---|---|---|
Event Type | Required | Detailed type of the reported event: auction win notice, impression requested, impression code served, impression begin to render, click, conversion, etc. This may be reported as different events for subsequent matching or may be flagged as fields in the single impression event. |
Timestamp | Required | The date and time of the impression event. Has to be reported in sync with authoritative time source in UTC time zone. |
Seat Owner / Partner Name | Recommended | The name of the agency / advertiser, which has legal agreement with DSP and owns DSP seat |
Seat ID | Required | DSP seat ID. For oRTB 2.x: bidresponse.seatbid.seat. oRTB 3.x: response.seatbid.seat. |
Exchange ID | Required | The name or ID of the Exchange platform that the bid response was submitted to. |
Exchange Domain | Recommended | Domain, where Exchange sellers.json file is located. |
Advertiser ID | Required | The advertiser ID in the reporting system that identifies advertiser who have purchased the impression. Mapping of advertiser IDs and advertiser names should be provided by reporting platform. |
Advertiser Domain | Required | Advertiser domain. oRTB 2.5: bidresponse.seatbid.bid.adomain. oRTB 3.0: response.seatbid.bid.media.ad.adomain. |
Campaign ID | Required | The campaign ID in the reporting system. For oRTB 2.x: bidresponse.seatbid.bid.cid. oRTB 3.x: response.seatbid.bid.cid. |
Campaign Name | Recommended | The campaign ID in the reporting system. |
Insertion Order Number | Recommended | The insertion order number in the reporting system. |
Creative ID | Required | The creative ID number in the reporting system. oRTB 2.x: bidresponse.seatbid.bid.crid, oRTB 3.x: response.seatbid.bid.media.ad.id. |
Creative Type | Recommended | The creative type in the reporting system. ORTB 2.x: bidresponse.seatbid.bid.attr, oRTB 3.x: response.seatbid.bid.media.ad.attr. See creative type in table 5.3 in OpenRTB 2.x or the List: Creative Attributes in oRTB 3.x. |
Country | Required | The country where the ad was served. For oRTB 2.x: bidrequest.geo.country, oRTB 3.x: request.context.geo.country. |
Device Type | Required | The oRTB type of the device if available (oRTB 2.x: bidrequest.device.devicetype, oRTB 3.x: request.context.device.type). See device type in oRTB 2.5 table 5.21 or List: Device Types in oRTB 3.x. |
OS Type | Recommended | OS type. This may differ by data provider and require creation of mapping dictionary. |
Browser Type | Recommended | Browser type. This may differ by data provider and require creation of mapping dictionary. |
City | Recommended | City. |
Deal ID | Required | The deal ID when available (oRTB 2.x: bidresponse.seatbid.bid.dealid, oRTB 3.x: response.seatbid.bid.deal). |
Auction Type | Recommended | The type of the RTB auction, first or second price. (oRTB 2.x: bidrequest.at), oRTB 3.x: request.at). |
Transaction Type | Recommended | Type of the transaction: OMP, PMP, PG |
Supply Chain Object | Recommended | The entire supply chain object reported to the DSP. This should include all nodes in the nodes array. (oRTB 2.4: bidrequest.ext.schain.nodes, oRTB 2.5 bidrequest.source.ext.schain.nodes, oRTB 3.x: request.source.ext.schain.nodes). |
ads.txt Validation | Recommended | Validation that the SSP is listed in the publisher’s ads.txt file. |
Page URL | Required | Publisher site URL, where the impression was served (oRTB 2.x: bidrequest.site.page. , oRTB 3.x: request.context.site.page). |
Site Domain | Required | The publisher site domain, where the impression was served (oRTB 2.x: bidrequest.site.domain, oRTB 3.0: request.context.site.domain). |
App Domain | Required | The app domain for the application, where the impression was served(oRTB 2.x: bidrequest.app.domain, oRTB 3.0: request.context.app.domain). |
App Bundle | Required | The app bundle for the application, where the impression was served (oRTB 2.x: bidrequest.app.bundle, oRTB 3.0: request.context.app.bundle). |
App Store URL | Required | The app store URL for the application, where the impression was served(oRTB 2.x: bidrequest.app.storeurl, oRTB 3.0: request.context.app.storeurl). |
oRTB Bid Request Impression ID | Required | The oRTB ID of the impression in BidRequest. oRTB 2.x: bidrequest.imp.id; oRTB 3.x: bidrequest.item.id. |
oRTB Bid Request ID | Required | The oRTB ID of the bid request (oRTB 2.x: bidrequest.id, oRTB 3.0: request.id). |
Media Cost in USD | Required | The cost of the impression being charged to the DSP by the Exchange. Media cost shall be reported in USD and match billing figure invoiced by the Exchange. |
Data Cost in USD | Required | The cost of any data associated with the impression. |
Other Costs in USD | Required | Any costs other than media and data that will be associated with the impression (such as platform fees). |
Total Cost in USD | Required | The total of media, data, other costs invoiced to a seat owner by DSP. Reported in USD. After conversion into Partner Currency shall match billing figure invoiced by the DSP. |
Total Cost with Partner Markup in USD | Recommended | The total of media, data, other costs, and partner mark up (if the partner markup is being tracked in the DSP platform). |
Partner Currency | Required | The currency that is used by the seat owner that is using the DSP. |
Partner Currency Exchange Rate From USD | Required | The numeric rate of exchange in use at the time of the event to convert from USD to partner currency. |
Advertiser Currency | Recommended | The currency that is used by the advertiser. |
Advertiser Currency Exchange Rate From USD | Recommended | The numeric rate of exchange in use at the time of the event to convert from USD to the advertiser currency. |
Viewability Can be measured | Recommended | Whether the impression is measurable for viewability by the DSP. |
Viewability Measurement | Recommended | The viewability measurement by the DSP. |
Download
Download a copy of the requirements here: TAG TrustNet - Demand Side Platform Requirements v1.2.