An offer from GESIS – Leibniz Institute for the Social Sciences

Amazon — Historical Snapshot

New
Captured: 31 Mar 2026, 17:08 (Berlin) Fingerprint: 29c0714c7b0c8cd46acc58f5… Fetch method: 1 URL: https://trustworthyshopping.aboutamazon.com/digital-services…
← Older Newer →
Back to Amazon

Snapshot Content

        //This is your domain, as in, how you who are calling the API wish to be identified.
        var MY_DOMAIN = document.domain;
        var REQUIRE_USER_EXPRESSED_PERMISSION = true;
        var _STATE = {};

        /**
         * Different pages add the Consent Manager in different locations, so all callers of the API must wait till
         * the API is loaded. The API is loaded in two stages:
         *      1) The first stage is where the "PrivacyManagerAPI" object exists on the page and where default and
         *         page/domain specific settings can be obtained. If your requirements demand user consent, you must wait
         *         for the second stage load, but it is always recommended to wait for the second stage no matter what.
         *         The "loading" parameter will be added to all API responses when the API is in this state.
         *      2) The second stage loads the user preferences and the domain specific information. If you made a
         *         postMessage API call during the first stage, then the API will automatically send you another, updated,
         *         response if the result has changed.
         */
        function runOnce(){
            //CHECK: for API exists on the page
            if(!_STATE.hasRunOnce && window.PrivacyManagerAPI){
                console.log("doing run once");

                //Register with the API for automatic updates of user preferences (for the settings you care about)
                //--OR-- if the API is loading, then this will send an update when the API is done and has loaded the user preferences.
                window.addEventListener("message", function(e){
                    try{
                        var json = JSON.parse(e.data);
                        json.PrivacyManagerAPI && handleAPIResponse(json.PrivacyManagerAPI);
                    }catch(e){
                        e.name != 'SyntaxError' && console.log(e);
                    }
                }, false);
                var apiObject = {PrivacyManagerAPI: { self: MY_DOMAIN, action: "getConsent" , timestamp: new Date().getTime(), type: "functional" }};
                window.top.postMessage(JSON.stringify(apiObject),"*");
                apiObject = {PrivacyManagerAPI: { self: MY_DOMAIN, action: "getConsent" , timestamp: new Date().getTime(), type: "advertising" }};
                window.top.postMessage(JSON.stringify(apiObject),"*");

                _STATE.hasRunOnce = true;
                _STATE.i && clearInterval(_STATE.i);
            }
        }

        /**
         * This function returns value of notice_behavior cookie to determine location and behavior manager based on domain.
         * When no notice_behavior cookie exists, this returns a blank string.
         */
        function getBehavior() {
            var result = "";
            var rx = new RegExp("\\s*notice_behavior\\s*=\\s*([^;]*)").exec(document.cookie);
            if(rx&&rx.length>1){
                result = rx[1];
            }
            return result;
        }

        /**
         * This function is called whenever a user preference is initially set, is retrieved for the first time on this page, or is updated.
         * This is the gateway function which should be customized by each client (you) to determine when and how to handle the API response.
         *
         * The second half of the function determines settings from the CM API, and decides which elements on the page should be "activated" based upon those settings.
         * Elements can only be activated once. Elements can not be deactivated, once activated.
         */
        function handleAPIResponse(response){
            //CHECK: make sure this response is to YOU. You will actually get the messages to all API callers on this page, not just to you.
            if(!response.source || response.self != MY_DOMAIN ) return;
            console.log("user decision",response);

            //Required trackers/cookies are always allowed, no need to ask permission.
            if( !_STATE.hasLoadedRequired ){
                activateElement(document.querySelectorAll(".trustecm[trackertype=required]"));
                _STATE.hasLoadedRequired = true;
            }

            // Check if behavior manager is EU
            var isEU = /.*(,|)eu/i.test(getBehavior());

            //Case where we don't want to do anything till the user has made a preference.
            if(isEU && REQUIRE_USER_EXPRESSED_PERMISSION && response.source != "asserted" ) return;

            //Step 1) Get Consent Manager settings (user prefs)
            //        These API calls are DIFFERENT than the original API call ("response" parameter) so they must be called separately.
            //Step 2) Apply the settings after checking if approved
            var setting = null;
            if( !_STATE.hasLoadedAdvertising ){
                setting = PrivacyManagerAPI.callApi("getConsent", MY_DOMAIN , null ,null, "advertising");
                if( setting.consent=="approved" ){
                    activateElement(document.querySelectorAll(".trustecm[trackertype=advertising]"));
                    _STATE.hasLoadedAdvertising = true;
                }console.log(setting);
            }
            if( !_STATE.hasLoadedFunctional ){
                setting = PrivacyManagerAPI.callApi("getConsent", MY_DOMAIN , null ,null, "functional");
                if( setting.consent=="approved" ){
                    activateElement(document.querySelectorAll(".trustecm[trackertype=functional]"));
                    _STATE.hasLoadedFunctional = true;
                }console.log(setting);
            }

            // No additional checking, this always fires, but only after a user has consented
            if( !_STATE.hasLoadedAnyConsent ){
                activateElement(document.querySelectorAll(".trustecm[trackertype=any]"));
                _STATE.hasLoadedAnyConsent = true;
            }

            //check of vendor domain and fires if that domain is approved, which is based on how that domain was categorized on the backend
            var vendors = document.querySelectorAll(".trustecm[trackertype=vendor]");
            for (var i=0; i < vendors.length; i++) {
                var currentVendor = vendors[i];
                var vDomain = currentVendor.getAttribute("vsrc");
                if (vDomain && !_STATE['hasLoaded'+vDomain]) {
                    setting = PrivacyManagerAPI.callApi("getConsent", MY_DOMAIN, vDomain);
                    if( setting.consent=="approved" ){
                        activateElement(document.querySelectorAll(".trustecm[trackertype=vendor][vsrc='"+ vDomain +"']"));
                        _STATE['hasLoaded'+vDomain] = true;
                    }console.log(setting);
                }
            }
        }
        /**
         * Activates (runs, loads, or displays) an element based upon element node name.
         * @param {Array.<HTMLElement>} list
         */
        function activateElement(list){
            if(!(list instanceof Array || list instanceof NodeList)) throw "Illegal argument - must be an array";
            console.log("activating", list);
            for(var item,i=list.length;i-- >0;){
                item = list[i];
                item.class = "trustecm_done";
                switch(item.nodeName.toLowerCase()){
                    case "script":
                        var z = item.getAttribute("thesrc");
                        if(z){
                            var y = document.createElement("script");
                            y.src = z;
                            y.async = item.async;
                            item.parentNode.insertBefore(y,item);
                        }else eval(item.text || item.textContent || item.innerText);
                }
            }
        }
        _STATE.i = setInterval(runOnce,10);
    :root {

}
:root {
--button-border-radius:40px;
}
:root {
--font-1: "Amazon Ember", "Arial";
--font-2: "Ember Modern Display";
}

body {
--font-1: "Amazon Ember";
--font-2: "Ember Modern Display";
--font-page-titles: var(--font-2);
--font-list-titles: var(--font-2);
--font-promo-titles: var(--font-2);
--font-description: var(--font-2);
--font-quote: var(--font-1);
}Digital Services Act (DSA): Amazon EU Store Data Access for Vetted Researchers - Trustworthy Shopping at Amazon{"@context":"http://schema.org","@type":"WebPage","url":"https://trustworthyshopping.aboutamazon.com/digital-services-act-dsa-amazon-eu-store-data-access-for-vetted-researchers","publisher":{"@type":"Organization","name":"Trustworthy Shopping at Amazon","logo":{"@type":"ImageObject","url":"https://cdn-trustworthyshopping.aboutamazon.com/4f/7c/f30570434070aab77383519e9ee1/style-2-color-squid-smile.svg"}},"name":"Digital Services Act (DSA): Amazon EU Store Data Access for Vetted Researchers - Trustworthy Shopping at Amazon"}
/*
This allows us to load the IE polyfills via feature detection so that they do not load
needlessly in the browsers that do not need them. It also ensures they are loaded
non async so that they load before the rest of our JS.
/
var head = document.getElementsByTagName('head')[0];
if (!window.CSS || !window.CSS.supports || !window.CSS.supports('--fake-var', 0)) {
var script = document.createElement('script');
script.setAttribute('src', "https://cdn-trustworthyshopping.aboutamazon.com/resource/0000018b-f767-d248-a38b-f77779e70000/util/IEPolyfills.min.534a3056aa155ab6473f17072ece1d5d.gz.js");
script.setAttribute('type', 'text/javascript');
script.async = false;
head.appendChild(script);
}

    var link = document.createElement('link');
    link.setAttribute('href', '//fonts.googleapis.com/css?family=Roboto:300,400,700|Merriweather:300,400,700&display=swap');
    var relList = link.relList;

    if (relList && relList.supports('preload')) {
        link.setAttribute('as', 'style');
        link.setAttribute('rel', 'preload');
        link.setAttribute('onload', 'this.rel="stylesheet"');
        link.setAttribute('crossorigin', 'anonymous');
    } else {
        link.setAttribute('rel', 'stylesheet');
    }

    head.appendChild(link);



















        Approach









    Robust Proactive Controls


                Innovative Tools and Technology


                Holding Bad Actors Accountable


                Protecting and Educating Customers


                Collaborating Across Partners and Industry









        Focus Areas









    Product Safety


                Anti-Counterfeiting


                Trustworthy Reviews


                Protecting Intellectual Property


                Scam Prevention


                Combating Organized Retail Crime









        Impact











        Latest Updates











        Resources

















              Search Query


            Submit Search






        Show Search






            Menu











        Approach









    Robust Proactive Controls


                Innovative Tools and Technology


                Holding Bad Actors Accountable


                Protecting and Educating Customers


                Collaborating Across Partners and Industry









        Focus Areas









    Product Safety


                Anti-Counterfeiting


                Trustworthy Reviews


                Protecting Intellectual Property


                Scam Prevention


                Combating Organized Retail Crime









        Impact











        Latest Updates











        Resources


































    Digital Services Act (DSA):Amazon EU Store Data Access for Vetted Researchers


Updated: 29 October 2025









Overview and research purposeArticle 40 of the DSA establishes that very large online platforms must provide data access to vetted researchers. This access supports research that contributes exclusively to the detection, identification and understanding of systemic risks in the European Union, as outlined in Article 34 of the DSA, and assessment of the adequacy, efficiency and impacts of risk mitigation measures pursuant to Article 35 of the DSA.Request processVetted researchers must submit a detailed request through the Digital Services Coordinator of establishment.Access requirements Data access will be granted to vetted researchers that meet requirements of Article 40(8) of the DSA, upon receipt of a reasoned request from the Digital Services Coordinator.Data access contact informationAmazon has established a dedicated point of contact for the data access process:

dsa-data-access@amazon.com
. While we accept communications in English, German, and French, English is preferred.European Commission’s Data Access PortalThe European Commission has created a DSA Data Access Portal to support and streamline the management of the data access process. The portal serves as the central digital point for information exchanges between applicant researchers, vetted researchers, data providers and Digital Services Coordinators. Researchers wishing to submit data access applications must first
register
a user profile in the
European Commission DSA Data Access Portal
.DSA data catalogueAmazon available data are:Regulatory contacts
Metric split

    Metric definition

    Data and metadata structure

Total regulatory contacts

    Total regulatory contacts from authorities received by Amazon

    Interger

Date

    Date of reception of regulatory contacts from authorities

    Datetime

Product type

    Types of products reported by member state authority orders

    Text

Takedown request vs. information request

    Total numbers of takedown requests compared to total number of information requests with no need for takedown

    Interger

EU member state of regulatory contact

    EU member state issuing the order

    Text

Type of regulatory contact

    Type of illegal content of member state authority orders

    Text

Time to acknowledge regulatory contact and resolve a regulatory contact.

    Median time in days to (a) inform authority of receipt; and (b) to give effect to the order

    Float

Notices about illegal content
Metric split

    Metric definition

    Data and metadata structure

Total number

    Number of notices submitted via our notice & action mechanisms

    Integer

Country

    The Amazon EU Store receiving the notice

    Text

Date

    Date of reception of notice

    Datetime

Product type

    Product type reported in the notice received

    Text

Accepted / rejected

    Validity rate (%) (of incoming volume)

    Float

Notices by type of illegal content

    Type of illegal content of notices received via notice & action mechanism

    Text

Notices that were auto-resolved

    Number of notices of illegal content processed via automated means

    Integer

Median time to resolve total DSA notices

    It refers to median time (in days) to take action/s in response to notice

    Float

Total number of actions taken on total number of DSA notices

    Actions taken pursuant notices received or based on T&Cs or law

    Integer

Notices from trust flaggers

    Notices of illegal content submitted by trusted flaggers

    Integer

Counterfeit risk, brand protection & intellectual property protections (IPP)Counterfeit items identified, seized and disposed
Metric split

    Metric definition

    Data and metadata structure

Total number

    Number of counterfeit items identified, seized and disposed

    Integer

Country

    The Amazon EU Store where counterfeit items were identified

    Text

Date

    Date of identification of counterfeit

    Datetime

Product type

    Product type reported as counterfeit

    Text

Brands using Project Zero
Metric split

    Metric definition

    Data and metadata structure

Total number

    Total number of brands using Project Zero

    Integer

Country

    Country of brands using Project Zero

    Text

Date

    Date of brand report

    Datetime

Brands using Transparency
Metric split

    Metric definition

    Data and metadata structure

Total number

    Total number of brands using Transparency

    Integer

Country

    Country of brands using Transparency

    Text

Date

    Date of brand report

    Datetime

Product safety riskUnsafe products removed due to public recalls and authorities’ requests
Metric split

    Metric definition

    Data and metadata structure

Total number

    Total number of unsafe products removed due to public recalls and authorities’ requests

    Integer

Country

    The Amazon EU Store where products were sold

    Text

Date

    Date of product removal

    Datetime

Product type

    Type of products recalled

    Text

Products removed that Amazon safety investigations confirmed unsafe or for which we were missing information
Metric split

    Metric definition

    Data and metadata structure

Total number

    Total number of products removed that Amazon safety investigations confirmed unsafe or for which we were missing information

    Integer

Country

    The Amazon EU Store where products were sold

    Text

Date

    Date of product removal

    Datetime

Product type

    Type of products removed

    Text

Products removed for violating controversial products guidelines
Metric split

    Metric definition

    Data and metadata structure

Total number

    Number of products removed for violating controversial products guidelines

    Integer

Country

    The Amazon EU Store where products were sold

    Text

Date

    Date of product removal

    Datetime

Product type

    Type of products removed

    Text

Complaints
Metric split

    Metric definition

    Data and metadata structure

Total complaints received

    Total number of complaints related to content or notices

    Integer

Country

    The Amazon EU Store where complaints were referring to

    Text

Date

    Date of complaint reception

    Datetime

Basis for total complaints received

    Basis of, and the decisions taken, regarding complaints received via our internal complaints handling system

    Text

Total complaints where decision was reversed

    Number of instances where we reversed our decisions regarding a complaint

    Integer

Median time to resolve total complaints received

    Median time for taking decisions regarding complaints

    Float

Out-of-court settlement disputes
Metric split

    Metric definition

    Data and metadata structure

Total mediation cases sent for out-of-court dispute

    Number of disputes submitted to out-of-court dispute settlement bodies

    Integer

Country

    The Amazon EU Store which the dispute relates to

    Text

Date

    Date when Amazon is notified of the dispute

    Datetime

Type of illegality

    Type of illegal content of notices received via out-of-court dispute settlement mechanism

    Text

Out-of-court dispute settlement body

    Out-of-court-dispute-settlement body selected by requesters

    Text

Outcome of mediation cases

    The outcomes of the dispute settlement

    Integer

Share of out-of-court disputes with decision implemented

    Share of disputes where we implemented the decision of out-of-court dispute settlement bodies

    Integer

Time to resolve out-of-court dispute settlement

    Time for out-of-court dispute settlement bodies to complete the out-of-court dispute settlement procedures, from when an out-of-court dispute settlement body notifies Amazon of the dispute to when the body shares their settlement recommendation with Amazon

    Float

Data access modalitiesUpon approval from the Digital Services Coordinator, researchers will receive an email with login credentials and a link to Amazon’s DSA Article 40 Data Access System. Once signed in, please follow the instructions provided.

        Approach












        Focus Areas












        Impact












        Latest Updates












        Resources












        Amazon News




    Our Positions


                Public Policy


                Press Center


                Investor Resources


                Facts about Amazon

Conditions of Use
|
Privacy Policy
| Cookie Preferences | © 2026, Amazon Services LLC

  document.addEventListener('DOMContentLoaded', () => {
try {
let html5Videos = document.querySelectorAll(`.HTML5VideoPlayer video`)

html5Videos.forEach(video => {
  video.addEventListener('play', (event) => {
    if (PARSELY.video) {
      let videoData = video.closest('.HTML5VideoPlayer').dataset
      let metadata = {
        "title": videoData.videoTitle,
        "image_url": video.poster || video.closest('.HTML5VideoPlayer').parentNode.querySelector('[data-poster]').style.backgroundImage.split('"')[1],
        "duration": parseInt(video.duration * 1000),
        "pub_date_tmsp": videoData.pubDate || '',
        "video_platform": "html5"
      }

      let url = window.location.href

      PARSELY.video.trackPlay(videoData.videoId, metadata, url)
    }
  })

  video.addEventListener('pause', (event) => {
    if (PARSELY.video) {
      let videoData = video.closest('.HTML5VideoPlayer').dataset
      let metadata = {
        "title": videoData.videoTitle,
        "image_url": video.poster || video.closest('.HTML5VideoPlayer').parentNode.querySelector('[data-poster]').style.backgroundImage.split('"')[1],
        "duration": parseInt(video.duration * 1000),
        "pub_date_tmsp": videoData.pubDate || '',
        "video_platform": "html5"
      }

      let url = window.location.href
      PARSELY.video.trackPause(videoData.videoId, metadata, url)
    }
  })
})
} catch (e) {
  // Ignore
}

})

Outgoing Links at Capture Time

28 total
Link TextURL
https://trustworthyshopping.aboutamazon.com/
Approach https://trustworthyshopping.aboutamazon.com/approach
Robust Proactive Controls https://trustworthyshopping.aboutamazon.com/approach/robust-proactive-controls
Innovative Tools and Technology https://trustworthyshopping.aboutamazon.com/approach/innovative-tools-and-technology
Holding Bad Actors Accountable https://trustworthyshopping.aboutamazon.com/approach/holding-bad-actors-accountable
Protecting and Educating Customers https://trustworthyshopping.aboutamazon.com/approach/protecting-and-educating-customers
Collaborating Across Partners and Industry https://trustworthyshopping.aboutamazon.com/approach/collaborating-across-partners-and-industry
Focus Areas https://trustworthyshopping.aboutamazon.com/focus
Product Safety https://trustworthyshopping.aboutamazon.com/focus/product-safety
Anti-Counterfeiting https://trustworthyshopping.aboutamazon.com/focus/anti-counterfeiting
Trustworthy Reviews https://trustworthyshopping.aboutamazon.com/focus/trustworthy-reviews
Protecting Intellectual Property https://trustworthyshopping.aboutamazon.com/focus/brand-ip-protection
Scam Prevention https://trustworthyshopping.aboutamazon.com/focus/scam-prevention
Combating Organized Retail Crime https://trustworthyshopping.aboutamazon.com/focus/combating-organized-retail-crime
Impact https://trustworthyshopping.aboutamazon.com/impact
Latest Updates https://trustworthyshopping.aboutamazon.com/latest-updates
Resources https://trustworthyshopping.aboutamazon.com/resources
dsa-data-access@amazon.com mailto:dsa-data-access@amazon.com
register https://data-access.dsa.ec.europa.eu/private/ra/application
European Commission DSA Data Access Portal https://data-access.dsa.ec.europa.eu/home
Amazon News https://www.aboutamazon.com/
Our Positions https://www.aboutamazon.com/about-us/our-positions
Public Policy https://www.aboutamazon.com/about-us/public-policy
Press Center https://press.aboutamazon.com/
Investor Resources https://ir.aboutamazon.com/
Facts about Amazon https://www.aboutamazon.com/facts
Conditions of Use https://www.amazon.com/gp/help/customer/display.html?nodeId=201909000
Privacy Policy https://www.amazon.com/gp/help/customer/display.html?nodeId=GX7NJQ4ZB8MHFRNJ