# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

# Adding a new metric? We have docs for that!
# https://firefox-source-docs.mozilla.org/toolkit/components/glean/user/new_definitions_file.html

---
$schema: moz://mozilla.org/schemas/glean/metrics/2-0-0
$tags:
  - 'Firefox :: New Tab Page'

newtab:
  locale:
    type: string
    description: >
      The application's locale as of when newtab's TelemetryFeed was init.
      Comes from `Services.local.appLocaleAsBCP47`.
      Looks like `en-US`.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1766887
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786670
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1766887
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786670#c3
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
    data_sensitivity:
      - interaction
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    send_in_pings:
      - newtab
    lifetime: application

  newtab_category:
    type: string
    description: >
      The current setting of the newtab page.
      One of ["enabled", "disabled", "extension"] or any value from
      SiteClassifier like "known-hijacker" or "social-media".
      Similar to Activity Stream's PAGE_TAKEOVER_DATA event's
      `newtab_url_category`.
      Sampled once after newtab init.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
    data_sensitivity:
      - technical
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    send_in_pings:
      - newtab
    lifetime: application

  homepage_category:
    type: string
    description: >
      The current setting of the home page.
      One of ["enabled", "disabled", "extension"] or any value from
      SiteClassifier like "known-hijacker" or "social-media".
      Similar to Activity Stream's PAGE_TAKEOVER_DATA event's
      `home_url_category`.
      Sampled once after newtab init.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
    data_sensitivity:
      - technical
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    send_in_pings:
      - newtab
    lifetime: application

  opened:
    type: event
    description: >
      Recorded when newtab UI is opened via `about:newtab` or `about:home` or
      `about:welcome` and has been made visible (see `visibility_event_rcvd_ts`
      in
      [detect-user-session-start.js](https://searchfox.org/firefox-main/source/browser/components/newtab/content-src/lib/detect-user-session-start.js)).
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1766887
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786670
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1766887
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786670#c3
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
    data_sensitivity:
      - interaction
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: &newtab_visit_id
        description: >
          The id of this newtab visit.
          Allows you to separate multiple simultaneous newtabs and
          build an event timeline of actions taken from this newtab.
        type: string
      source:
        description: >
          The source that opened this newtab.
          One of
            * `about:newtab`
            * `about:home`
            * `about:welcome`
            * `other`
          (See `ONBOARDING_ALLOWED_PAGE_VALUES`).
        type: string
      window_inner_height:
        description: >
          The height of the page window at time of load.
        type: string
      window_inner_width:
        description: >
          The width of the page window at time of load.
        type: string
    send_in_pings:
      - newtab

  closed:
    type: event
    description: >
      Recorded when newtab UI is closed by
      * navigation
      * closing the tab

      Doesn't mean that the newtab was ever visible to a user.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1766887
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786670
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1766887
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786670#c3
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
    data_sensitivity:
      - interaction
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  blocked_sponsors:
    type: string_list
    description: >
      The advertiser names that have been dismissed by the user.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1828234
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1828234#c1
    data_sensitivity:
      - interaction
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
      - ttran@mozilla.com
    expires: never
    send_in_pings:
      - newtab
    lifetime: application

  sov_allocation:
    type: string_list
    description: >
      The partner group assignment for sov
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1840311
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1840311#c3
    data_sensitivity:
      - technical
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
      - ttran@mozilla.com
    expires: never
    send_in_pings:
      - newtab
    lifetime: application

  tooltip_click:
    type: event
    description: >
      Recorded when a feature highlight tooltip is opened.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1888983
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1888983
    data_sensitivity:
      - interaction
    notification_emails:
      - sdowne@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      feature: &feature
        description: The feature highlight that was interacted with.
        type: string
    send_in_pings:
      - newtab

  topic_selection_open:
    type: event
    description: >
      Recorded when the topic selection modal is opened
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1896004
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1896004
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  topic_selection_dismiss:
    type: event
    description: >
      Recorded when the topic selection modal is dismissed (topics are not saved)
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1896004
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1896004
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  topic_selection_topics_saved:
    type: event
    description: >
      Recorded when topics are saved from the topics selection modal
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1896004
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1896004
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      topics:
        description: >
          list of topics that were saved by user
        type: string
      previous_topics:
        description: >
          list of previous topics that were saved, an empty string
          means no previous topics were saved
        type: string
      first_save:
        description: >
          whether or not it is the user's first time setting topics
        type: boolean
    send_in_pings:
      - newtab

  selected_topics:
      type: string_list
      description: >
        The list of topics the user selected
      bugs:
        - https://bugzilla.mozilla.org/show_bug.cgi?id=1907152
      data_reviews:
        - https://bugzilla.mozilla.org/show_bug.cgi?id=1907152
      data_sensitivity:
        - interaction
      notification_emails:
        - nbarrett@mozilla.com
        - mcrawford@mozilla.com
      expires: never
      send_in_pings:
        - newtab
      lifetime: application

  wallpaper_click:
    type: event
    description: >
      Recorded when a user clicks on a wallpaper option
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1896004
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1896004
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      selected_wallpaper:
        description: >
          Which wallpaper has been selected by the user
          Will be the title of a Wallpaper or 'none' for users
          that reset the background to default
        type: string
      had_previous_wallpaper:
        description: >
          Whether or not user had a previously set wallpaper
        type: boolean
      had_uploaded_previously:
        description: >
          Whether or not user had a previously uploaded a custom wallpaper
        type: boolean
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  wallpaper_highlight_cta_click:
    type: event
    description: >
      Recorded when a user clicks the CTA on the wallpaper feature highlight
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1900854
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1900854
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  wallpaper_highlight_dismissed:
    type: event
    description: >
      Recorded when a user dismisses the wallpaper feature highlight
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1900854
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1900854
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  wallpaper_category_click:
    type: event
    description: >
      Recorded when a user clicks a wallpaper category option
    bugs:
     - https://bugzilla.mozilla.org/show_bug.cgi?id=1900420
    data_reviews:
     - https://bugzilla.mozilla.org/show_bug.cgi?id=1900420
    data_sensitivity:
      - interaction
    notification_emails:
     - nbarrett@mozilla.com
    expires: never
    extra_keys:
      selected_category:
        description: >
          Which wallpaper category selected by user
        type: string
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  weather_change_display:
    type: event
    description: >
      Recorded when a user changes the weather display.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1895797
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1895797
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      weather_display_mode: &weather_display_mode
        description: >
          Which display mode is selected.
        type: string
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  weather_enabled:
    lifetime: application
    type: boolean
    description: >
      Whether the weather widget is enabled on the newtab.
      Corresponds to the value of the
      `browser.newtabpage.activity-stream.showWeather` pref.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1899340
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1899340
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
      - sdowne@mozilla.com
    expires: never
    send_in_pings:
      - newtab

  weather_open_provider_url:
    type: event
    description: >
      Recorded when a user opens a link to the Weather provider website.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1895797
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1895797
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  weather_impression:
      type: event
      description: >
        Recorded when the weather widget is viewed
      bugs:
        - https://bugzilla.mozilla.org/show_bug.cgi?id=1898275
      data_reviews:
        - https://bugzilla.mozilla.org/show_bug.cgi?id=1895797
      data_sensitivity:
        - interaction
      notification_emails:
        - mcrawford@mozilla.com
      expires: never
      extra_keys:
        newtab_visit_id: *newtab_visit_id
      send_in_pings:
        - newtab

  weather_load_error:
      type: event
      description: >
        Recorded when the weather widget is not available
      bugs:
        - https://bugzilla.mozilla.org/show_bug.cgi?id=1898275
      data_reviews:
        - https://bugzilla.mozilla.org/show_bug.cgi?id=1895797
      data_sensitivity:
        - interaction
      notification_emails:
        - mcrawford@mozilla.com
      expires: never
      extra_keys:
        newtab_visit_id: *newtab_visit_id
      send_in_pings:
        - newtab

  weather_location_selected:
      type: event
      description: >
        Recorded when a user selects a location for weather widget
      bugs:
        - https://bugzilla.mozilla.org/show_bug.cgi?id=1900103
      data_reviews:
        - https://bugzilla.mozilla.org/show_bug.cgi?id=1900103
      data_sensitivity:
        - interaction
      notification_emails:
        - nbarrett@mozilla.com
      expires: never
      extra_keys:
        newtab_visit_id: *newtab_visit_id
      send_in_pings:
        - newtab

  weather_opt_in_selection:
      type: event
      description: >
        Recorded when a user answers the location opt-in prompt
      bugs:
        - https://bugzilla.mozilla.org/show_bug.cgi?id=1989875
      data_reviews:
        - https://bugzilla.mozilla.org/show_bug.cgi?id=1989875
      data_sensitivity:
        - interaction
      notification_emails:
        - rhamoui@mozilla.com
      expires: never
      extra_keys:
        user_selection:
          description: >
           User's selection when interacting with weather opt-in.
          type: string
        newtab_visit_id: *newtab_visit_id
      send_in_pings:
        - newtab

  weather_detect_location:
      type: event
      description: >
        Recorded when a user selects 'detect my location' from weather context menu
      bugs:
        - https://bugzilla.mozilla.org/show_bug.cgi?id=1992647
      data_reviews:
        - https://bugzilla.mozilla.org/show_bug.cgi?id=1992647
      data_sensitivity:
        - interaction
      notification_emails:
        - rhamoui@mozilla.com
      expires: never
      extra_keys:
        newtab_visit_id: *newtab_visit_id
      send_in_pings:
        - newtab

  sections_impression:
    type: event
    description: >
      Recorded when a section is viewport and triggers an impression event
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1927916
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1938215
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1927916
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      section:
        description: >
          section that had impression event
        type: string
      section_position:
        description: >
          position of section on newtab
        type: string
      is_section_followed: &is_section_followed
        description: >
          If click belongs in a section, if that section is followed
        type: boolean
      content_redacted:
        description: >
          Are content details sent separately in the newtab_content ping
        type: boolean
      layout_name: &layout_name
        description: >
          description of the section layout
        type: string
    send_in_pings:
      - newtab

  sections_follow_section:
    type: event
    description: >
      Recorded when a section is followed
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1932191
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1932191
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      section:
        description: >
          section that had impression event
        type: string
      section_position:
        description: >
          position of section on newtab
        type: string
      event_source: &event_source
        description: >
          Where the source of the event originated ("button", "context menu", etc.)
        type: string
      content_redacted:
        description: >
          Are content details sent separately in the newtab_content ping
        type: boolean
    send_in_pings:
      - newtab

  sections_unfollow_section:
    type: event
    description: >
      Recorded when a section is unfollowed
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1932191
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1932191
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      section:
        description: >
          section that had impression event
        type: string
      section_position:
        description: >
          position of section on newtab
        type: string
      event_source: *event_source
      content_redacted:
        description: >
          Are content details sent separately in the newtab_content ping
        type: boolean
    send_in_pings:
      - newtab

  sections_block_section:
    type: event
    description: >
      Recorded when a section is blocked
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1932191
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1932191
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      section:
        description: >
          section that had impression event
        type: string
      section_position:
        description: >
          position of section on newtab
        type: string
      event_source: *event_source
      content_redacted:
        description: >
          Are content details sent separately in the newtab_content ping
        type: boolean
    send_in_pings:
      - newtab

  sections_unblock_section:
    type: event
    description: >
      Recorded when a section is unblocked
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1940566
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1940566
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      section:
        description: >
          section that had unblock event
        type: string
      section_position:
        description: >
          position of section on newtab
        type: string
      event_source: *event_source
      content_redacted:
        description: >
          Are content details sent separately in the newtab_content ping
        type: boolean
    send_in_pings:
      - newtab

  sections_learn_more:
    type: event
    description: >
      Recorded when the "Learn more" option in the sections context menu
      is clicked.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2034869
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2034869
    data_sensitivity:
      - interaction
    notification_emails:
      - ini@mozilla.com
      - sdowne@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  inline_selection_impression:
    type: event
    description: >
      Recorded when there is an impression on the inline selection component
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1943474
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1943474
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      section_position:
        description: >
          position of the inline selection component (index point within sections)
        type: string
    send_in_pings:
      - newtab

  inline_selection_click:
    type: event
    description: >
      Recorded when there is a click on the inline selection component
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1943474
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1943474
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      topic:
        description: >
          unique id of topic that was clicked
        type: string
      is_followed:
        description: >
          whether the click followed a topic or unfollowed. True for followed, false for unfollowed
        type: boolean
      section_position:
        description: >
          position of the inline selection component (index point within sections)
        type: string
      topic_position:
        description: >
          position of the topic within the inline selection component (index point starting at 0)
        type: string
    send_in_pings:
      - newtab

  promo_card_impression:
    type: event
    description: Recorded when the promo card is visible
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1981817
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1981817
    data_sensitivity:
      - interaction
    notification_emails:
      - achurchwell@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  promo_card_click:
    type: event
    description: Recorded when there is a click on the promo card cta
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1981817
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1981817
    data_sensitivity:
      - interaction
    notification_emails:
      - achurchwell@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  promo_card_dismiss:
    type: event
    description: Recorded when the promo card is dismissed
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1981817
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1981817
    data_sensitivity:
      - interaction
    notification_emails:
      - achurchwell@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  abouthome_cache_construction:
    type: timing_distribution
    description: >
      The length of time (in milliseconds) that it takes for the cache worker to
      generate the cache and return it to the main thread

      This metric was generated to correspond to the Legacy Telemetry
      exponential histogram FX_ABOUTHOME_CACHE_CONSTRUCTION.
    time_unit: millisecond
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1622263
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1683101
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1714258
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1730042
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1754641
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1781978
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1811151
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1841926
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1622263
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1683101
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1714258
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1730042
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1754641
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1781978
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1811151
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1841926
    notification_emails:
      - mconley@mozilla.com
    expires: never
    telemetry_mirror: FX_ABOUTHOME_CACHE_CONSTRUCTION

  metric_registered:
    type: labeled_boolean
    description: >
      Records technical data about whether the metric registration
      at runtime succeeded
    bugs:
      - https://bugzil.la/1961989
    data_reviews:
      - https://bugzil.la/1961989
    data_sensitivity:
      - technical
    notification_emails:
      - pdahiya@mozilla.com
      - mconley@mozilla.com
    expires: never

  ping_registered:
    type: labeled_boolean
    description: >
      Records technical data about whether the ping registration
      at runtime succeeded
    bugs:
      - https://bugzil.la/1961989
    data_reviews:
      - https://bugzil.la/1961989
    data_sensitivity:
      - technical
    notification_emails:
      - pdahiya@mozilla.com
      - mconley@mozilla.com
    expires: never

  activity_stream_ctor_success:
    type: boolean
    description: >
      Records technical data about whether Activity Stream
      construction completed successfully
    bugs:
      - https://bugzil.la/1965278
    data_reviews:
      - https://bugzil.la/1965278
    data_sensitivity:
      - technical
    notification_emails:
      - pdahiya@mozilla.com
      - mconley@mozilla.com
    expires: never

  addon_ready_success:
    type: boolean
    description: >
      Records technical data about whether waiting for the newtab built-in
      addon readyPromise succeeded.
    bugs:
      - https://bugzil.la/1965923
    data_reviews:
      - https://bugzil.la/1965923
    data_sensitivity:
      - technical
    notification_emails:
      - pdahiya@mozilla.com
      - mconley@mozilla.com
    expires: never

  addon_xpi_used:
    type: boolean
    description: >
      True if a downloaded XPI file is where the newtab resources are being
      mapped from.
    bugs:
      - https://bugzil.la/1978061
    data_reviews:
      - https://bugzil.la/1978061
    data_sensitivity:
      - technical
    notification_emails:
      - pdahiya@mozilla.com
      - mconley@mozilla.com
    expires: never

  feature_highlight_dismiss:
    type: event
    description: >
      recorded when a feature highlight is dismissed
    bugs:
      - https://bugzil.la/1972931
    data_reviews:
      - https://bugzil.la/1972931
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      feature: *feature
    send_in_pings:
      - newtab

  feature_highlight_impression:
    type: event
    description: >
        recorded when a feature highlight impression occurs
    bugs:
      - https://bugzil.la/1972931
    data_reviews:
      - https://bugzil.la/1972931
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      feature: *feature
    send_in_pings:
      - newtab

  feature_highlight_open:
    type: event
    description: >
        recorded when a feature highlight is opened
    bugs:
      - https://bugzil.la/1972931
    data_reviews:
      - https://bugzil.la/1972931
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      feature: *feature
    send_in_pings:
      - newtab

  widgets_lists_user_event:
    type: event
    description: >
      Details which user action has occurred. It can be one of
      the following: list_copy, list_create, list_edit, list_delete,
      task_create, task_edit task_delete and task_completed
    bugs:
      - https://bugzil.la/1979704
    data_reviews:
      - https://bugzil.la/1979704
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      user_action:
        description: >
          user action. One of list_copy, list_create, list_edit, list_delete,
          task_create, task_edit task_delete and task_completed
        type: string
    send_in_pings:
      - newtab

  widgets_lists_impression:
    type: event
    description: >
      Recorded when the list widget is viewable on a users screen
    bugs:
      - https://bugzil.la/1979704
    data_reviews:
      - https://bugzil.la/1979704
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  widgets_lists_change_display:
    type: event
    description: >
      Whether the lists widget is enabled. Matches
      the `widgets.lists.enabled` pref
    bugs:
      - https://bugzil.la/1979704
    data_reviews:
      - https://bugzil.la/1979704
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      display_status:
        description: boolean value if the lists widget is being visible/enabled
        type: boolean
    send_in_pings:
      - newtab

  widgets_timer_user_event:
    type: event
    description: >
      Details which user action has occurred. It can be one of
      the following: timer_set, timer_play, timer_pause, timer_reset,
      timer_toggle_focus, timer_toggle_break, timer_end
    bugs:
      - https://bugzil.la/1977301
    data_reviews:
      - https://bugzil.la/1977301
    data_sensitivity:
      - interaction
    notification_emails:
      - rhamoui@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      user_action:
        description: >
          user action. timer_set, timer_play, timer_pause, timer_reset,
          timer_toggle_focus, timer_toggle_break, timer_end
        type: string
    send_in_pings:
      - newtab

  widgets_timer_impression:
    type: event
    description: >
      Recorded when the timer widget is viewable on a users screen
    bugs:
      - https://bugzil.la/1977301
    data_reviews:
      - https://bugzil.la/1977301
    data_sensitivity:
      - interaction
    notification_emails:
      - rhamoui@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
    send_in_pings:
      - newtab

  widgets_timer_change_display:
    type: event
    description: >
      Whether the timer widget is enabled. Matches
      the `widgets.focusTimer.enabled` pref
    bugs:
      - https://bugzil.la/1977301
    data_reviews:
      - https://bugzil.la/1977301
    data_sensitivity:
      - interaction
    notification_emails:
      - rhamoui@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      display_status:
        description: boolean value if the timer widget is being visible/enabled
        type: boolean
    send_in_pings:
      - newtab

  widgets_timer_toggle_notification:
    type: event
    description: >
      Whether the timer widget's notification pref is enabled. Matches
      the `widgets.focusTimer.showSystemNotifications` pref
    bugs:
      - https://bugzil.la/1982516
    data_reviews:
      - https://bugzil.la/1982516
    data_sensitivity:
      - interaction
    notification_emails:
      - rhamoui@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      display_status:
        description: boolean value if the timer widget notification is enabled
        type: boolean
    send_in_pings:
      - newtab

  widgets_impression:
    type: event
    description: >
      Recorded when any widget is viewable on a user's screen.
      This metric replaces widgets_lists_impression, widgets_timer_impression,
      and weather_impression.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2010597
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2010597
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      widget_name: &widget_name
        description: >
          Name of the widget that emits the event (e.g., lists, focus_timer, weather).
        type: string
      widget_size: &widget_size
        description: >
          Size of widget (e.g., small, medium, large).
        type: string
    send_in_pings:
      - newtab

  widgets_user_event:
    type: event
    description: >
      Recorded when user interacts with any widget.
      This metric replaces widgets_lists_user_event, widgets_timer_user_event,
      weather_detect_location, weather_opt_in_selection, weather_location_selected,
      weather_open_provider_url and weather_change_display.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2010597
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2010597
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      widget_name: *widget_name
      widget_source: &widget_source
        description: >
          Where the event originated (e.g., widget, context_menu, customize_panel).
        type: string
      widget_size: *widget_size
      user_action:
        description: >
          Specific action taken by different widgets (e.g., list_copy, list_create,
          timer_set, timer_play, timer_pause, change_location, detect_location).
        type: string
      action_value:
        description: >
          Optional value associated with action (string representation).
        type: string
    send_in_pings:
      - newtab

  widgets_enabled:
    type: event
    description: >
      Recorded when a widget is enabled or disabled.
      This metric replaces widgets_lists_change_display, widgets_timer_change_display,
      and weather_enabled.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2010597
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2010597
    data_sensitivity:
      - technical
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      widget_name: *widget_name
      widget_source: *widget_source
      widget_size: *widget_size
      enabled:
        description: >
          Whether widget is now enabled (true) or disabled (false).
        type: boolean
    send_in_pings:
      - newtab

  widgets_error:
    type: event
    description: >
      Recorded when a widget encounters an error state (e.g., failed to load data).
      This metric replaces weather_load_error.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2010597
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2010597
    data_sensitivity:
      - technical
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      widget_name: *widget_name
      widget_size: *widget_size
      error_type:
        description: >
          Type of error encountered (e.g., load_error, network_error, timeout).
        type: string
    send_in_pings:
      - newtab

  widgets_container_action:
    type: event
    description: >
      Recorded when user interacts with widget container controls.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2012821
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2012821
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      widget_size: *widget_size
      action_type:
        description: >
          Type of container action. (hide_all, change_size_all,
          change_row_visibility, feedback)
        type: string
      action_value:
        description: >
          Optional value for the action.
        type: string
    send_in_pings:
      - newtab

  widgets_enabled_list:
    type: string_list
    description: >
      The list of widget telemetry names currently enabled by the user.
      Recorded at startup and whenever a widget is enabled or disabled.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2015530
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2015530
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    lifetime: application
    send_in_pings:
      - newtab

  spons_nav_traffic_sent:
    type: memory_distribution
    memory_unit: kilobyte
    description: >
      The volume of traffic sent through browsers that were link targets for
      sponsored topsite or content navigations.
    bugs:
      - https://bugzil.la/1978161
    data_reviews:
      - https://bugzil.la/1978161
    notification_emails:
      - mconley@mozilla.com
    expires: never

  spons_nav_traffic_recvd:
    type: memory_distribution
    memory_unit: kilobyte
    description: >
      The volume of traffic received through browsers that were link targets
      for sponsored topsite or content navigations.
    bugs:
      - https://bugzil.la/1978161
    data_reviews:
      - https://bugzil.la/1978161
    notification_emails:
      - mconley@mozilla.com
    expires: never

  highlights_enabled:
    lifetime: application
    type: boolean
    description: >
      Whether "highlights" is enabled on the newtab.
      AKA the "Recent Activity" section.
      Corresponds to the value of the
      `browser.newtabpage.activity-stream.feeds.section.highlights` pref.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1992486
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1992486
    data_sensitivity:
      - technical
    notification_emails:
      - mconley@Mozilla.com
    expires: never
    send_in_pings:
      - newtab

  scroll:
    lifetime: ping
    type: boolean
    description: >
      Whether the user scrolled more than SCROLL_TELEMETRY_THRESHOLD pixels
      during a newtab session. Absent if no qualifying scroll occurred during
      the session.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2049897
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2049897
    data_sensitivity:
      - interaction
    notification_emails:
      - sdowne@mozilla.com
      - jbrown@mozilla.com
    expires: never
    send_in_pings:
      - newtab

newtab.search:
  enabled:
    lifetime: application
    type: boolean
    description: >
      Whether the search input is enabled on the newtab.
      Corresponds to the value of the
      `browser.newtabpage.activity-stream.showSearch` pref.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
    data_sensitivity:
      - technical
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    send_in_pings:
      - newtab

topsites:
  enabled:
    lifetime: application
    type: boolean
    description: >
      Whether "topsites" is enabled on the newtab.
      AKA the "Shortcuts" section.
      Corresponds to the value of the
      `browser.newtabpage.activity-stream.feeds.topsites` pref.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
    data_sensitivity:
      - technical
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    send_in_pings:
      - newtab

  sponsored_enabled:
    lifetime: application
    type: boolean
    description: >
      Whether sponsored topsites are enabled on the newtab.
      AKA the "Sponsored Shortcuts" section.
      Corresponds to the value of the
      `browser.newtabpage.activity-stream.showSponsoredTopSites` pref.
      Can be `true` even if topsites.enabled is `false`.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
    data_sensitivity:
      - technical
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    send_in_pings:
      - newtab

  impression:
    type: event
    description: >
      Recorded when topsite tiles are loaded.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1766887
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786670
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1820707
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1766887
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786670#c3
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1820707#c3
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1821556#c3
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1824842#c7
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1996666#c7
    data_sensitivity:
      - interaction
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    extra_keys:
      advertiser_name: &advertiser_name
        description: >
          The name of the advertiser of the tile
        type: string
      tile_id: &tile_id
        description: >
          The tile id of the advertiser provided by Contile. Like `74357`.
        type: quantity
      newtab_visit_id: *newtab_visit_id
      is_sponsored: &is_sponsored
        description: Whether the topsite tile was sponsored.
        type: boolean
      position: &topsite_position
        description: The position (0-index) of the topsite tile.
        type: quantity
      is_pinned: &is_pinned
        description: Whether the topsite tile is pinned.
        type: boolean
      visible_topsites: &visible_topsites
        description: The quantity of visible topsites when event occurred
        type: quantity
      smart_scores: &smart_scores
        description: stringified json storing scores for each feature during smart shortcut ranking
        type: string
      smart_weights: &smart_weights
        description: stringified json storing weights for each feature during smart shortcut ranking
        type: string
    send_in_pings:
      - newtab

  click:
    type: event
    description: >
      Recorded when a topsite tile is clicked.
      Only happens on click. Not on middle-click. Not on "Open in new Tab"-like
      options in the context menu.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1766887
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786670
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1820707
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1766887
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786670#c3
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1820707#c3
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1821556#c3
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1824842#c7
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1996666#c7
    data_sensitivity:
      - interaction
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    extra_keys:
      advertiser_name: *advertiser_name
      tile_id: *tile_id
      newtab_visit_id: *newtab_visit_id
      is_sponsored: *is_sponsored
      position: *topsite_position
      is_pinned: *is_pinned
      visible_topsites: *visible_topsites
      smart_scores: *smart_scores
      smart_weights: *smart_weights
    send_in_pings:
      - newtab

  pin:
    type: event
    description: >
      Recorded when a topsite tile is pinned.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1968053
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1968053
    data_sensitivity:
      - interaction
    notification_emails:
      - sdowne@mozilla.com
      - achurchwell@mozilla.com
    expires: never
    extra_keys:
      advertiser_name: *advertiser_name
      tile_id: *tile_id
      newtab_visit_id: *newtab_visit_id
      is_sponsored: *is_sponsored
      position: *topsite_position
    send_in_pings:
      - newtab

  unpin:
    type: event
    description: >
      Recorded when a topsite tile is unpinned.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1968053
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1968053
    data_sensitivity:
      - interaction
    notification_emails:
      - sdowne@mozilla.com
      - achurchwell@mozilla.com
    expires: never
    extra_keys:
      advertiser_name: *advertiser_name
      tile_id: *tile_id
      newtab_visit_id: *newtab_visit_id
      is_sponsored: *is_sponsored
      position: *topsite_position
    send_in_pings:
      - newtab

  add:
    type: event
    description: >
      Recorded when a topsite tile is added
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1968053
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1968053
    data_sensitivity:
      - interaction
    notification_emails:
      - sdowne@mozilla.com
      - achurchwell@mozilla.com
    expires: never
    extra_keys:
      advertiser_name: *advertiser_name
      tile_id: *tile_id
      newtab_visit_id: *newtab_visit_id
      is_sponsored: *is_sponsored
      position: *topsite_position
    send_in_pings:
      - newtab

  edit:
    type: event
    description: >
      Recorded when a topsite tile is edited
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1968053
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1968053
    data_sensitivity:
      - interaction
    notification_emails:
      - sdowne@mozilla.com
      - achurchwell@mozilla.com
    expires: never
    extra_keys:
      advertiser_name: *advertiser_name
      tile_id: *tile_id
      newtab_visit_id: *newtab_visit_id
      is_sponsored: *is_sponsored
      position: *topsite_position
      has_title_changed: &has_title_changed
        description: Whether the topsite title was changed.
        type: boolean
      has_url_changed: &has_url_changed
        description: Whether the topsite URL was changed.
        type: boolean
    send_in_pings:
      - newtab

  show_privacy_click:
    type: event
    description: >
      Recorded when the "Our Sponsors and Your Privacy" menu item in the three-
      dots menu of a sponsored topsite is clicked.
      Corresponds to the receipt of a dispatched `ABOUT_SPONSORED_TOP_SITES`
      action by `TelemetryFeed`.
    bugs:
      - https://mozilla-hub.atlassian.net/browse/DENG-1364
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1857324
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1857324
    data_sensitivity: [interaction]
    notification_emails:
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - sbetancourt@mozilla.com
    expires: never
    extra_keys:
      advertiser_name: *advertiser_name
      tile_id: *tile_id
      newtab_visit_id: *newtab_visit_id
      position: *topsite_position
    send_in_pings:
      - newtab

  dismiss:
    type: event
    description: >
      Recorded when the "Dismiss" menu item in the three-dots menu of a topsite
      is clicked.
      Corresponds to the receipt of a dispatched `BLOCK_URL` action by
      `TelemetryFeed`.
      Applies to both sponsored and non-sponsored topsites.
      `advertiser_name` is only provided for sponsored topsites.
    bugs:
      - https://mozilla-hub.atlassian.net/browse/DENG-1363
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1857324
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1857324
    data_sensitivity: [interaction]
    notification_emails:
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - sbetancourt@mozilla.com
      - kdemtchouk@mozilla.com
      - mbowerman@mozilla.com
    expires: never
    extra_keys:
      advertiser_name: *advertiser_name
      tile_id: *tile_id
      newtab_visit_id: *newtab_visit_id
      is_sponsored: *is_sponsored
      position: *topsite_position
      content_redacted:
        description: >
          Are content details sent separately in the newtab_content ping
        type: boolean
    send_in_pings:
      - newtab

  pref_changed:
    type: event
    description: >
      Recorded when specific topsites prefs have changed.

      The list of possible prefs is presently:
       * browser.newtabpage.activity-stream.feeds.topsites
       * browser.newtabpage.activity-stream.showSponsoredTopSites
    bugs:
      - https://mozilla-hub.atlassian.net/browse/D0-1293
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1857324
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1857324
    data_sensitivity: [interaction]
    notification_emails:
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - sbetancourt@mozilla.com
      - kdemtchouk@mozilla.com
      - mbowerman@mozilla.com
    expires: never
    extra_keys:
      pref_name:
        description: The full name of the pref whose value just changed.
        type: string
      new_value:
        description: The new (current) value the pref just changed to.
        type: boolean
    send_in_pings:
      - newtab

  rows:
    lifetime: application
    type: quantity
    unit: integer
    description: >
      The number of topsite tile rows configured to be shown on the newtab
      page. Corresponds to the value of the
      `browser.newtabpage.activity-stream.topSitesRows` pref. This is not the
      number of rows actually seen by the user: if the browser window is
      partially off-screen, or isn't wide enough to accommodate eight tiles per
      row, the actual number of rows may be different.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1821556
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1821556#c3
    data_sensitivity:
      - interaction
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    send_in_pings:
      - newtab

  sponsored_tiles_configured:
    lifetime: application
    type: quantity
    unit: integer
    description: >
      The number of topsite tiles configured to be shown on newtab.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1862493
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi
    data_sensitivity:
      - technical
    notification_emails:
      - gleonard@mozilla.com
    expires: never
    send_in_pings:
      - newtab

  sponsored_tiles_received:
    lifetime: application
    type: text
    description: >
      The stringified JSON of tiles processed for display (array of objects).
      Includes tiles not displayed and reason for not displaying.
      Fields included: advertiser, provider, display_position,
      display_fail_reason.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi
    data_sensitivity:
      - web_activity
    notification_emails:
      - gleonard@mozilla.com
    expires: never
    send_in_pings:
      - newtab

  pinned_count:
    lifetime: application
    type: quantity
    unit: integer
    description: >
      The number of pinned top site tiles at the time of the newtab session.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2049528
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2049528
    data_sensitivity:
      - technical
    notification_emails:
      - sdowne@mozilla.com
      - jbrown@mozilla.com
    expires: never
    send_in_pings:
      - newtab

pocket:
  is_signed_in:
    lifetime: application
    type: boolean
    description: >
      Whether the Firefox user is signed in to Pocket.
      Does not correspond to a pref, so its value is resampled at newtab's
      component init and whenever there is a Discovery Stream user event.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
    data_sensitivity:
      - technical
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    send_in_pings:
      - newtab

  enabled:
    lifetime: application
    type: boolean
    description: >
      Whether Pocket is enabled on the newtab.
      AKA the "Recommended by Pocket" section.
      Corresponds to the value of the
      `browser.newtabpage.activity-stream.feeds.section.topstories` pref.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
    data_sensitivity:
      - technical
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    send_in_pings:
      - newtab

  sponsored_stories_enabled:
    lifetime: application
    type: boolean
    description: >
      Whether Pocket sponsored stories are enabled on the newtab.
      Corresponds to the value of the
      `browser.newtabpage.activity-stream.showSponsored` pref.
      Can be `true` even if pocket.enabled is `false`.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
    data_sensitivity:
      - technical
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    send_in_pings:
      - newtab

  impression:
    type: event
    description: >
      Recorded when a pocket tile is visible to the user.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1854245
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1862670
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1937200
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1854245
    data_sensitivity:
      - interaction
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
      - sdowne@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      is_sponsored: &is_sponsored_pocket
        description: Whether the pocket tile was sponsored (has an ad callback).
        type: boolean
      format: &format
        description: The format of whatever item is displayed. It can differ if the content is an ad or organic. Possible responses are "spoc", "rectangle" (for ads) "billboard", "leaderboard", "small-card",  "medium-card",  "large-card" (for organic content).
        type: string
      position: &pocket_position
        description: The position (0-index) of the pocket tile.
        type: quantity
      recommendation_id: &recommendation_id
        description: >
          The id from the Pocket API response that returned the recommendation.
          Like "{61934fe5-fbb0-4f4e-b9dd-7eab5f6ee9cd}".
        type: string
      tile_id: &pocket_tile_id
        description: >
          A content identifier.
          For organic Pocket recommendations it is an opaque id produced by
          Pocket's recommendation systems.
          For sponsored Pocket content it is Kevel's "ad ID".
        type: quantity
      scheduled_corpus_item_id: &scheduled_corpus_item_id
        description: >
          A content identifier.
          For organic Newtab recommendations it is an opaque id produced by
          Newtab's recommendation systems that corresponds uniquely to
          a piece of content scheduled for a specific day on a specific surface.
          This is the replacement for tile_id.
        type: string
      corpus_item_id: &corpus_item_id
        description: >
          A content identifier.
          For organic Newtab recommendations it is an opaque id produced by
          Newtab's recommendation systems that corresponds uniquely to the URL.
          This is the replacement for tile_id and scheduled_corpus_item_id.
        type: string
      received_rank: &received_rank
        description: The rank or order of the recommendation at the time it was sent to the client.
        type: quantity
      recommended_at: &recommended_at
        description: The time in milliseconds the recomendation was recommended at.
        type: quantity
      topic:
        description: The topic of the recommendation. Like "entertainment".
        type: string
      selected_topics:
        description: >
          The list of topics the user selected
        type: string
      section:
        description: >
          If click belongs in a section, the name of the section
        type: string
      section_position:
        description: >
          If click belongs in a section, the numeric position of the section
        type: string
      is_section_followed: *is_section_followed
      layout_name: *layout_name
      content_redacted:
        description: >
          Are content details sent separately in the newtab_content ping
        type: boolean
    send_in_pings:
      - newtab

  click:
    type: event
    description: >
      Recorded when a pocket tile is clicked.
      Only happens on click. Not on middle-click. Not on "Open in new Tab"-like
      options in the context menu.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1854245
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1862670
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1937200
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1854245
    data_sensitivity:
      - interaction
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
      - sdowne@mozilla.com
      - mcrawford@mozilla.ccocm
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      is_sponsored: *is_sponsored_pocket
      format: *format
      position: *pocket_position
      recommendation_id: *recommendation_id
      tile_id: *pocket_tile_id
      scheduled_corpus_item_id: *scheduled_corpus_item_id
      corpus_item_id: *corpus_item_id
      received_rank: *received_rank
      recommended_at: *recommended_at
      matches_selected_topic:
        description: >
          Returns value based on if a the topic of the pocket recommendation matches one
          of the user-selected topic categories
        type: string
      topic:
        description: The topic of the recommendation. Like "entertainment".
        type: string
      selected_topics:
        description: >
          The list of topics the user selected
        type: string
      section:
        description: >
          If click belongs in a section, the name of the section
        type: string
      section_position:
        description: >
          If click belongs in a section, the numeric position of the section
        type: string
      is_section_followed: *is_section_followed
      layout_name: *layout_name
      event_source: *event_source
      content_redacted:
        description: >
          Are content details sent separately in the newtab_content ping
        type: boolean
    send_in_pings:
      - newtab

  dismiss:
    type: event
    description: >
      Recorded when a pocket tile is dismissed.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1937200
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
    data_sensitivity:
      - interaction
    notification_emails:
      - sdowne@mozilla.com
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      is_sponsored: *is_sponsored_pocket
      format: *format
      position: *pocket_position
      recommendation_id: *recommendation_id
      tile_id: *pocket_tile_id
      scheduled_corpus_item_id: *scheduled_corpus_item_id
      corpus_item_id: *corpus_item_id
      received_rank: *received_rank
      recommended_at: *recommended_at
      section:
        description: >
          If click belongs in a section, the name of the section
        type: string
      section_position:
        description: >
          If click belongs in a section, the numeric position of the section
        type: string
      is_section_followed: *is_section_followed
      content_redacted:
        description: >
          Are content details sent separately in the newtab_content ping
        type: boolean
    send_in_pings:
      - newtab

  save:
    type: event
    description: >
      Recorded when a user decides to save a pocket tile.
      Does not mean it ends up successfully saved.
      Just that the user clicked on "Save to Pocket" in the little pocket
      tile menu.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1854245
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1862670
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1937200
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1854245
    data_sensitivity:
      - interaction
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      is_sponsored: *is_sponsored_pocket
      format: *format
      position: *pocket_position
      recommendation_id: *recommendation_id
      tile_id: *pocket_tile_id
      scheduled_corpus_item_id: *scheduled_corpus_item_id
      corpus_item_id: *corpus_item_id
      received_rank: *received_rank
      recommended_at: *recommended_at
      topic:
        description: The topic of the recommendation. Like "entertainment".
        type: string
      matches_selected_topic:
        description: >
          Returns value based on if a the topic of the pocket recommendation matches one
          of the user-selected topic categories
        type: string
      selected_topics:
        description: >
          The list of topics the user selected
        type: string
      section:
        description: >
          If click belongs in a section, the name of the section
        type: string
      section_position:
        description: >
          If click belongs in a section, the numeric position of the section
        type: string
      is_section_followed: *is_section_followed
    send_in_pings:
      - newtab

  topic_click:
    type: event
    description: >
      Recorded when a pocket "Popular Topic" is clicked.
      Only happens on click. Not on middle-click. Not on "Open in new Tab"-like
      options in the context menu.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1854245
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1854245
    data_sensitivity:
      - interaction
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
    expires: never
    extra_keys:
      newtab_visit_id: *newtab_visit_id
      topic:
        description: The topic that was clicked on. Like "entertainment".
        type: string
    send_in_pings:
      - newtab

  spoc_placeholder_duration:
      type: timing_distribution
      time_unit: millisecond
      description: >
        Time in milliseconds that a placeholder for a sponsored story (spoc) is
        visible to the user before being replaced with actual sponsored content.
        This measures how long users see loading placeholders when spocs need to
        be fetched, which can happen during startup, cache expiration, or other
        loading scenarios.
      bugs:
        - https://bugzilla.mozilla.org/show_bug.cgi?id=1993586
      data_reviews:
        - https://bugzilla.mozilla.org/show_bug.cgi?id=1993586
      data_sensitivity:
        - technical
      notification_emails:
        - mcrawford@mozilla.com
      expires: never
      send_in_pings:
        - newtab


newtab_content:

  experiment_name:
    type: string
    description: >
      The name of the primary new tab content experiment. We don't include all experiments to prevent user fingerprinting.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1966796
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1966796
    data_sensitivity:
      - technical
    notification_emails:
      - nbarrett@mozilla.com
    expires: never
    lifetime: application
    send_in_pings:
      - newtab-content

  experiment_branch:
    type: string
    description: >
      The branch of the primary new tab content experiment. We don't include all experiments to prevent user fingerprinting.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1966796
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1966796
    data_sensitivity:
      - technical
    notification_emails:
      - nbarrett@mozilla.com
    expires: never
    lifetime: application
    send_in_pings:
      - newtab-content

  inferred_interests:
    type: object
    description: >
      Differentially private high-level inferred interests (e.g. Entertainment or News), encoded in a JSON string.
      Key is the feature, and the value is a unary encoded string that must be decoded based on known differential
      privacy q and p values. Example "{"arts":"001"}"
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1966796
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1966796
    data_sensitivity:
      - technical
    notification_emails:
      - nbarrett@mozilla.com
    expires: never
    lifetime: application
    send_in_pings:
      - newtab-content
    structure:
      type: object
      properties:
        values:
          type: array
          items:
            type: string
        model_id:
          type: string

  ping_version:
    type: quantity
    description: >
      Marks major revisions of data collection methods or format for this ping. Because we are not recording Firefox version,
      this field has been added to assist the data pipeline. To avoid user possible fingerprinting, this should be updated only when
      necessary.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1980022
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1980022
    data_sensitivity:
      - technical
    notification_emails:
      - nbarrett@mozilla.com
      - rrando@mozilla.com
    expires: never
    send_in_pings:
      - newtab-content
    lifetime: application
    unit: version number



  coarse_os:
    type: string
    description: >
      The name of the operating system. Possible values:
      Android, iOS, Linux, Windows, or macOS
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1956331
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1956331
    data_sensitivity:
      - technical
    notification_emails:
      - nbarrett@mozilla.com
    expires: never
    lifetime: application
    send_in_pings:
      - newtab-content

  utc_offset:
    type: quantity
    description: >
      <0-24> positive UTC offset, rounded to the nearest integer number greater than 0.
      (If less than 0, then add 24.). The value may be clamped by expected time zone ranges for a surface.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1956331
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1956331
    data_sensitivity:
      - technical
    notification_emails:
      - nbarrett@mozilla.com
    expires: never
    send_in_pings:
      - newtab-content
    lifetime: application
    unit: utc offset

  country:
    type: string
    description: >
      Records the detected home region of the user. This is the general region
      of the user's machine.

      If a machine moves location, there is a minimum 2-week delay before this
      will be updated.

      See the [Region documentation](https://firefox-source-docs.mozilla.org/toolkit/modules/toolkit_modules/Region.html)
      for more information about updates.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1964428
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1964428
    data_sensitivity:
      - technical
    notification_emails:
      - nbarrett@mozilla.com
    expires: never
    send_in_pings:
      - newtab-content
    lifetime: application

  surface_id:
    type: string
    description: >
      Surface id sent to the client from merino api
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1956331
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1956331
    data_sensitivity:
      - technical
    notification_emails:
      - nbarrett@mozilla.com
    expires: never
    send_in_pings:
      - newtab-content
      - newtab
    lifetime: application

  followed_sections:
    type: string_list
    description: >
      Optional metric: section ids followed by user in alphabetical order, if possible,
      ordered by most recently followed. Max 2 sections
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1956331
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1956331
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
    expires: never
    send_in_pings:
      - newtab-content
    lifetime: application


  impression:
    type: event
    description: >
      Recorded when a pocket tile is visible to the user.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1854245
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1862670
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1937200
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1817105#c11
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1854245
    data_sensitivity:
      - interaction
    notification_emails:
      - anicholson@mozilla.com
      - chutten@mozilla.com
      - mmccorquodale@mozilla.com
      - najiang@mozilla.com
      - lina@mozilla.com
      - sdowne@mozilla.com
    expires: never
    extra_keys:
      is_sponsored: *is_sponsored_pocket
      format: *format
      position: *pocket_position
      recommendation_id: *recommendation_id
      tile_id: *pocket_tile_id
      scheduled_corpus_item_id: *scheduled_corpus_item_id
      corpus_item_id: *corpus_item_id
      received_rank: *received_rank
      recommended_at: *recommended_at
      topic:
        description: The topic of the recommendation. Like "entertainment".
        type: string
      selected_topics:
        description: >
          The list of topics the user selected
        type: string
      section:
        description: >
          If click belongs in a section, the name of the section
        type: string
      section_position:
        description: >
          If click belongs in a section, the numberic position of the section
        type: string
      is_section_followed:
        description: >
          If click belongs in a section, if that section is followed
        type: boolean
    send_in_pings:
      - newtab-content

  click:
    type: event
    description: >
      Recorded when a pocket tile is clicked.
      Only happens on click. Not on middle-click. Not on "Open in new Tab"-like
      options in the context menu.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1956331
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1956331
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.cocm
    expires: never
    extra_keys:
      is_sponsored: *is_sponsored_pocket
      format: *format
      position: *pocket_position
      recommendation_id: *recommendation_id
      tile_id: *pocket_tile_id
      scheduled_corpus_item_id: *scheduled_corpus_item_id
      corpus_item_id: *corpus_item_id
      received_rank: *received_rank
      recommended_at: *recommended_at
      matches_selected_topic:
        description: >
          Returns value based on if a the topic of the pocket recommendation matches one
          of the user-selected topic categories
        type: string
      topic:
        description: The topic of the recommendation. Like "entertainment".
        type: string
      selected_topics:
        description: >
          The list of topics the user selected
        type: string
      section:
        description: >
          If click belongs in a section, the name of the section
        type: string
      section_position:
        description: >
          If click belongs in a section, the numberic position of the section
        type: string
      is_section_followed:
        description: >
          If click belongs in a section, if that section is followed
        type: boolean
    send_in_pings:
      - newtab-content

  dismiss:
    type: event
    description: >
      Recorded when a pocket tile is dismissed.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1937200
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1786612
    data_sensitivity:
      - interaction
    notification_emails:
      - sdowne@mozilla.com
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      is_sponsored: *is_sponsored_pocket
      format: *format
      position: *pocket_position
      recommendation_id: *recommendation_id
      tile_id: *pocket_tile_id
      scheduled_corpus_item_id: *scheduled_corpus_item_id
      corpus_item_id: *corpus_item_id
      received_rank: *received_rank
      recommended_at: *recommended_at
      section:
        description: >
          If click belongs in a section, the name of the section
        type: string
      section_position:
        description: >
          If click belongs in a section, the numberic position of the section
        type: string
      is_section_followed:
        description: >
          If click belongs in a section, if that section is followed
        type: boolean
    send_in_pings:
      - newtab-content

  sections_impression:
    type: event
    description: >
      Recorded when a section is viewport and triggers an impression event
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1927916
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1938215
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1927916
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      section:
        description: >
          section that had impression event
        type: string
      section_position:
        description: >
          position of section on newtab
        type: string
      is_section_followed:
        description: >
          If click belongs in a section, if that section is followed
        type: boolean
      layout_name: *layout_name
    send_in_pings:
      - newtab-content

  sections_follow_section:
    type: event
    description: >
      Recorded when a section is followed
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1932191
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1932191
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      section:
        description: >
          section that had impression event
        type: string
      section_position:
        description: >
          position of section on newtab
        type: string
      event_source: *event_source
    send_in_pings:
      - newtab-content

  sections_unfollow_section:
    type: event
    description: >
      Recorded when a section is unfollowed
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1932191
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1932191
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      section:
        description: >
          section that had impression event
        type: string
      section_position:
        description: >
          position of section on newtab
        type: string
      event_source: *event_source
    send_in_pings:
      - newtab-content

  sections_block_section:
    type: event
    description: >
      Recorded when a section is blocked
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1932191
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1932191
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      section:
        description: >
          section that had impression event
        type: string
      section_position:
        description: >
          position of section on newtab
        type: string
      event_source: *event_source
    send_in_pings:
      - newtab-content

  sections_unblock_section:
    type: event
    description: >
      Recorded when a section is unblocked
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1940566
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1940566
    data_sensitivity:
      - interaction
    notification_emails:
      - mcrawford@mozilla.com
    expires: never
    extra_keys:
      section:
        description: >
          section that had unblock event
        type: string
      section_position:
        description: >
          position of section on newtab
        type: string
      event_source: *event_source
    send_in_pings:
      - newtab-content

  report_content_open:
    type: event
    description: >
      Recorded when content reporting is opened from context menu
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1954656
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1954656
    data_sensitivity:
      - interaction
    notification_emails:
      - rhamoui@mozilla.com
    expires: never
    extra_keys:
      corpus_item_id: *corpus_item_id
      scheduled_corpus_item_id: *scheduled_corpus_item_id
    send_in_pings:
      - newtab-content

  report_content_submit:
    type: event
    description: >
      Recorded when content reporting has been submitted
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1954656
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=1954656
    data_sensitivity:
      - interaction
      - web_activity
    notification_emails:
      - rhamoui@mozilla.com
    expires: never
    extra_keys:
      card_type:
        description: >
          The type of the content card (e.g., "spoc", "organic")
        type: string
      corpus_item_id: *corpus_item_id
      report_reason:
        description: >
          The reason selected by the user when reporting the content
        type: string
      scheduled_corpus_item_id: *scheduled_corpus_item_id
      section:
        description: >
          If click belongs in a section, the name of the section
        type: string
      section_position:
        description: >
          If click belongs in a section, the numeric position of the section
        type: string
      title:
        description: >
          Title of the recommendation.
        type: string
      topic:
        description: >
          The topic of the recommendation. Like "entertainment".
        type: string
      url:
        description: >
          URL of the recommendation.
        type: string
    send_in_pings:
      - newtab-content
    no_lint:
      - HIGHER_DATA_SENSITIVITY_REQUIRED

  top_sites_click:
    type: event
    description: >
      Recorded when a top sites tile is clicked.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2003048
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2003048
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
      - sdowne@mozilla.com
    expires: never
    extra_keys:
      advertiser_name: *advertiser_name
      tile_id: *tile_id
      is_sponsored: *is_sponsored
      position: *topsite_position
      visible_topsites: *visible_topsites
      frecency_boosted: &frecency_boosted
        description: >
          Whether the top site was frecency boosted
        type: boolean
      frecency_boosted_has_exposure: &frecency_boosted_has_exposure
        description: >
          Whether the user had the option to see frecency boosted shortcuts
        type: boolean
    send_in_pings:
      - newtab-content

  top_sites_impression:
    type: event
    description: >
      Recorded when a top sites tile is visible to the user.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2003048
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2003048
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
      - sdowne@mozilla.com
    expires: never
    extra_keys:
      advertiser_name: *advertiser_name
      tile_id: *tile_id
      is_sponsored: *is_sponsored
      position: *topsite_position
      visible_topsites: *visible_topsites
      frecency_boosted: *frecency_boosted
      frecency_boosted_has_exposure: *frecency_boosted_has_exposure
    send_in_pings:
      - newtab-content

  top_sites_dismiss:
    type: event
    description: >
      Recorded when the "Dismiss" menu item in the three-dots menu of a topsite
      is clicked.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2003048
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2003048
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
      - sdowne@mozilla.com
    expires: never
    extra_keys:
      advertiser_name: *advertiser_name
      tile_id: *tile_id
      is_sponsored: *is_sponsored
      position: *topsite_position
    send_in_pings:
      - newtab-content

  top_sites_show_privacy_click:
    type: event
    description: >
      Recorded when the "Our sponsors & your privacy" menu item in the three-dots menu of a topsite
      is clicked.
    bugs:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2003048
    data_reviews:
      - https://bugzilla.mozilla.org/show_bug.cgi?id=2003048
    data_sensitivity:
      - interaction
    notification_emails:
      - nbarrett@mozilla.com
      - sdowne@mozilla.com
    expires: never
    extra_keys:
      advertiser_name: *advertiser_name
      tile_id: *tile_id
      position: *topsite_position
    send_in_pings:
      - newtab-content

deletion.request:
  impression_id:
    type: string
    description: >
      An identifier used by user interaction pings in Pocket/newtab and
      Messaging System.
      This metric was generated to correspond to the Legacy Telemetry
      scalar deletion.request.impression_id.
    bugs:
      - https://bugzil.la/1602064
    data_reviews:
      - https://bugzil.la/1602064
    notification_emails:
      - najiang@mozilla.com
    expires: never
    send_in_pings: ["deletion-request"]
    telemetry_mirror: DELETION_REQUEST_IMPRESSION_ID

  context_id:
    type: string
    description: >
      An identifier to identify users for Contextual Services user
      interaction pings.
      This metric was generated to correspond to the Legacy Telemetry
      scalar deletion.request.context_id.
    bugs:
      - https://bugzil.la/1729474
    data_reviews:
      - https://bugzil.la/1729474
    notification_emails:
      - najiang@mozilla.com
    expires: never
    send_in_pings: ["deletion-request"]
    telemetry_mirror: DELETION_REQUEST_CONTEXT_ID

contextual.services.topsites:
  impression:
    type: labeled_counter
    description: >
      A keyed uint recording how many times the user has viewed the
      sponsored TopSites on the newtab page. The key is a combination of
      the source and the placement of the TopSites tile (1-based). such as
      'urlbar_1', 'newtab_2'.
      This metric was generated to correspond to the Legacy Telemetry
      scalar contextual.services.topsites.impression.
    bugs:
      - https://bugzil.la/1688698
    data_reviews:
      - https://bugzil.la/1688698
    notification_emails:
      - najiang@mozilla.com
    expires: never
    telemetry_mirror: CONTEXTUAL_SERVICES_TOPSITES_IMPRESSION

  click:
    type: labeled_counter
    description: >
      A keyed uint recording how many times the user has clicked on the
      sponsored TopSites on the newtab page. The key is a combination of
      the source and the placement of the TopSites tile (1-based). such as
      'urlbar_1', 'newtab_2'.
      This metric was generated to correspond to the Legacy Telemetry
      scalar contextual.services.topsites.click.
    bugs:
      - https://bugzil.la/1688698
    data_reviews:
      - https://bugzil.la/1688698
    notification_emails:
      - najiang@mozilla.com
    expires: never
    telemetry_mirror: CONTEXTUAL_SERVICES_TOPSITES_CLICK
