Google Product Page API Documentation

GET   /api/v1/search?engine=google_product_page

Retrieves product information from a product's dedicated Google Shopping product page. We recommend using the product_token from the Google Shopping API responses. We still support product_id for backwards compatibility, but in that case there might be less data returned.

API Parameters

Search Query

  • Name
    product_id
    Required
    Required
    Description

    Parameter defines the product_id (catalog ID) of the product. You can find this value in the product_id field from Google Shopping API responses.
    Note: this parameter is not required if product_token is used.

  • Name
    product_token
    Required
    Required
    Description

    Parameter defines the product_token you want to search. You can find these values in JSON responses from Google Shopping API.
    Note: this parameter is not required if product_id is used.

Localization

  • Name
    google_domain
    Required
    Optional
    Description

    The Google domain to use for the product page URL. Check the full list of supported Google domains.

  • Name
    gl
    Required
    Optional
    Description

    The country code for the product page URL. See the full list of supported countries.

  • Name
    hl
    Required
    Optional
    Description

    The language code for the product page URL. Check the full list of supported languages.

Engine

  • Name
    engine
    Required
    Required
    Description

    Parameter defines the engine. It must be set to google_product_page.

API key

  • Name
    api_key
    Required
    Required
    Description

    The api_key authenticates your requests. Use it as a query parameter (https://www.searchapi.io/api/v1/search?api_key=YOUR_API_KEY) or in the Authorization header (Bearer YOUR_API_KEY).

Zero Data Retention

  • Name
    zero_retention
    Enterprise Only
    Enterprise Only
    Required
    Optional
    Description

    Set this parameter to true to disable all logging and persistent storage. No request parameters, HTML, or JSON responses are stored or logged. Suitable for high-compliance use cases. Debugging and support may be limited while enabled.

API Examples

Product

Product
GET
https://www.searchapi.io/api/v1/search?engine=google_product_page&product_id=461677229171638444
Request
import requests

url = "https://www.searchapi.io/api/v1/search"
params = {
  "engine": "google_product_page",
  "product_id": "461677229171638444"
}

response = requests.get(url, params=params)
print(response.text)
Response
{
  "product": {
    "product_id": "17128251736560098018",
    "title": "Sony PlayStation 5 Slim Console Digital Edition",
    "link": "https://www.google.com/search?ibp=oshop&q=Shop&prds=catalogid:17128251736560098018,pvt:hg&gl=us&hl=en&udm=28",
    "reviews": 6052,
    "rating": 4.7,
    "description": "Sony PlayStation 5 Review Lightning Speed Ultra-High Speed SSD – Maximize your play sessions with near instant load times for installed PS5 games. Integrated I/O – The custom integration of the PS5 console’s systems lets creators pull data from the SSD so quickly that they can design games in ways never before possible. Stunning Games Ray Tracing – Immerse yourself in worlds with a new level of realism as rays of light are individually simulated, creating true-to-life shadows and reflections in supported PS5 games. 4K-TV Gaming – Play your favorite PS5 games on your stunning 4K TV. Up to 120fps with 120Hz Output – Enjoy smooth and fluid high frame rate gameplay at up to 120fps for compatible games, with support for 120Hz output on 4K displays. HDR Technology – With an HDR TV, supported PS5 games display an unbelievably vibrant and lifelike range of colors. Backwards Compatibility & Game Boost – The PS5 console can play over 4,000 PS4 games. With the Game Boost feature, you can even enjoy faster and smoother frame rates in some of the PS4 console’s greatest games. Breathtaking Immersion Tempest 3D AudioTech – Immerse yourself in soundscapes where it feels as if the sound comes from every direction. Through your compatible headphones your surroundings truly come alive with Tempest 3D AudioTech* in supported games. Haptic Feedback – Experience haptic feedback via the DualSense wireless controller in select PS5 titles and feel the effects and impact of your in-game actions through dynamic sensory feedback. Adaptive Triggers – Get to grips with immersive adaptive triggers, featuring dynamic resistance levels which simulate the physical impact of in-game activities in select PS5 games.",
    "reviews_histogram": {
      "1": 269,
      "2": 95,
      "3": 120,
      "4": 453,
      "5": 5115
    },
    "images": [
      "https://encrypted-tbn3.gstatic.com/shopping?q=tbn:ANd9GcSo6GQuul_9BnIIgwK6Qh9BxbKiKTIP_6b6ycr5bk0tBRzz7EP94i0AbHSc_Xy1a5Q6nTXbxC_58Wooa8jwitvvVZaCAZM5RVxjZ-8ceBlRKh0C8YC1e-s2",
      "https://encrypted-tbn3.gstatic.com/shopping?q=tbn:ANd9GcQ5Z_3pw3_ksILEiNvIBoz5ZNp_jVLCiBUkG_6tP0yZuSK-OGW_R1OuBQN5NIuLtMEsm0E1_W7U0_Y_WKhEnntnYK2BvZ-bm2YDh7kallVsdFcrq6IFPOnU",
      ...
    ]
  }
}

Product Token

Product Token
GET
https://www.searchapi.io/api/v1/search?engine=google_product_page&product_token=eyJxIjoiUFM1IiwiZ2wiOiJ1cyIsImhsIjoiZW4iLCJ1dWxlIjoidytDQUlRSUNJWVEyRnNhV1p2Y201cFlTeFZibWwwWldRZ1UzUmhkR1Z6IiwiZWkiOiI5UmhtYWRxZk9ZSGN3TjRQNXBHdm9BcyIsImNhdGFsb2dpZCI6IjQzODU1NjYxMDUwOTIwNzU3NzAiLCJncGNpZCI6IjkyNjE2MzI4NDQyOTgwMjI3MzYiLCJoZWFkbGluZU9mZmVyRG9jaWQiOiI0Mjg2OTA2NjYyMDc5Njg2NDEwIiwicmRzIjoiUENfOTI2MTYzMjg0NDI5ODAyMjczNnxQUk9EX1BDXzkyNjE2MzI4NDQyOTgwMjI3MzYiLCJpbWFnZURvY2lkIjoiNjE0MzU2MzcxNTIzMDI1OTE0NyIsInB2byI6MywicHZ0IjoiaGcifQ%3D%3D
Request
import requests

url = "https://www.searchapi.io/api/v1/search"
params = {
  "engine": "google_product_page",
  "product_token": "eyJxIjoiUFM1IiwiZ2wiOiJ1cyIsImhsIjoiZW4iLCJ1dWxlIjoidytDQUlRSUNJWVEyRnNhV1p2Y201cFlTeFZibWwwWldRZ1UzUmhkR1Z6IiwiZWkiOiI5UmhtYWRxZk9ZSGN3TjRQNXBHdm9BcyIsImNhdGFsb2dpZCI6IjQzODU1NjYxMDUwOTIwNzU3NzAiLCJncGNpZCI6IjkyNjE2MzI4NDQyOTgwMjI3MzYiLCJoZWFkbGluZU9mZmVyRG9jaWQiOiI0Mjg2OTA2NjYyMDc5Njg2NDEwIiwicmRzIjoiUENfOTI2MTYzMjg0NDI5ODAyMjczNnxQUk9EX1BDXzkyNjE2MzI4NDQyOTgwMjI3MzYiLCJpbWFnZURvY2lkIjoiNjE0MzU2MzcxNTIzMDI1OTE0NyIsInB2byI6MywicHZ0IjoiaGcifQ=="
}

response = requests.get(url, params=params)
print(response.text)
Response
{
  "product": {
    "product_id": "4385566105092075770",
    "title": "PlayStation 5 Console Ghost of Yotei Gold Limited Edition Bundle",
    "link": "https://www.google.com/search?ibp=oshop&q=PS5&prds=catalogid:4385566105092075770,gpcid:9261632844298022736,headlineOfferDocid:4286906662079686410,imageDocid:6143563715230259147,pvo:3,pvt:hg,rds:PC_9261632844298022736|PROD_PC_9261632844298022736&gl=us&hl=en&udm=28",
    "reviews": 443,
    "rating": 4.7,
    "description": "Explore every inch of the breathtaking lands surrounding Mount Yōtei with the PlayStation 5 Console - Ghost of Yōtei Black Limited Edition Bundle. Discover the features, price, and more.",
    "variations": [
      {
        "title": "Edition",
        "options": [
          {
            "title": "Ghost of Yotei Black Limited Edition",
            "is_available": true,
            "is_current_product": true
          },
          ...
        ]
      }
    ],
    "reviews_histogram": {
      "1": 23,
      "2": 7,
      "3": 11,
      "4": 8,
      "5": 394
    },
    "images": [
      "https://encrypted-tbn3.gstatic.com/shopping?q=tbn:ANd9GcRSQJaXjdyoGW7QXphU-9GBy32yDyPERwqb4H2ztjQRlE62GPfZozAGSIpMRPgWdft0UfxOu6Qr",
      "https://encrypted-tbn0.gstatic.com/shopping?q=tbn:ANd9GcRiY7-r_Gi2UxDg9hGAm6UtERVMrh_OWOX0hur8ycDh46l1WXD-8176JwLADW-VhjvcOcMhhskxrA"
    ]
  },
  "offers": [
    {
      "position": 1,
      "title": "PlayStation 5 Console - Ghost of Yotei Black Limited Edition Bundle Slim",
      "link": "https://direct.playstation.com/en-us/buy-consoles/playstation5-console-ghost-of-yotei-black-limited-edition-bundle-model-group-slim?srsltid=AfmBOopMksA9s8V-CKZ_xpzBNLNWx6Rv71wqD6ICA9Ak1yBS1GZQIjPidYU",
      "price": "$599.00",
      "extracted_price": 599,
      "stock_information": "In stock online",
      "rating": 4.5,
      "details": ["4.5/5", "Free delivery", "Free 30-day returns"],
      "merchant": {
        "name": "PlayStation",
        "favicon": "https://encrypted-tbn2.gstatic.com/faviconV2?url=https://direct.playstation.com&client=SHOPPING&size=32&type=FAVICON&fallback_opts=TYPE,SIZE,URL"
      },
      "tag": "Best price"
    },
    ...
    }
  ],
  "typical_prices": {
    "low_price": "Typically $499",
    "extracted_low_price": 499,
    "high_price": "$900",
    "extracted_high_price": 900,
    "price_history": {
      "currency": "USD",
      "merchants": [
        {
          "name": "PlayStation",
          "items": [
            {
              "date": "2025-09-04",
              "price": 599.99
            },
            {
              "date": "2025-09-05",
              "price": 599.99
            },
            ...
          ]
        },
        {
          "name": "StockX",
          "items": [
            {
              "date": "2025-09-09",
              "price": 400
            },
            ...
          ]
        },
        {
          "name": "eBay",
          "items": [
            {
              "date": "2025-11-25",
              "price": 649.99
            },
            ...
          ]
        }
      ]
    }
  },
  "review_results": {
    "reviews": [
      {
        "username": "Molly",
        "source": "Reviewed on Target",
        "title": "beautiful",
        "date": "2 months ago",
        "rating": 5,
        "text": "Probably the most beautiful ps5 released so far. Came in perfect condition and the controller feels amazing. It's limited so if you're debating on getting this one definitely do it, especially if you don't have a ps5 yet or in need of a new one, there's a good chance you can just return it if you're not feeling it. Also, I heard that someone had problems with shipping but only minor damage to the exterior to the box, so if you want to take the extra precaution, pick it up at your local target."
      },
      ...
    ]
  },
  "specifications": [
    {
      "name": "Game Controller Type",
      "value": "DualSense wireless controller"
    },
    {
      "name": "Game Controller Features",
      "value": "Haptic feedback, Adaptive triggers"
    },
    ...
  ],
  "discussions_and_forums": [
    {
      "title": "Ghost of Yōtei comes to PlayStation 5 on October 2 : r/gaming",
      "link": "https://www.reddit.com/r/gaming/comments/1k5xlja/ghost_of_y%C5%8Dtei_comes_to_playstation_5_on_october_2/",
      "source": "Reddit",
      "date": "8 months ago",
      "favicon": "https://encrypted-tbn2.gstatic.com/faviconV2?url=https://www.reddit.com&client=SHOPPING&size=16&type=FAVICON&fallback_opts=TYPE,SIZE,URL",
      "answers": [
        {
          "snippet": "The games just keep rolling this year.",
          "link": "https://www.reddit.com/r/gaming/comments/1k5xlja/ghost_of_y%C5%8Dtei_comes_to_playstation_5_on_october_2/#:~:text=The%20games%20just%20keep%20rolling%20this%20year."
        }
      ]
    }
  ]
}

Offers

Offers
GET
https://www.searchapi.io/api/v1/search?engine=google_product_page&product_token=eyJxIjoibmlrZSBzaG9lcyIsImdsIjoidXMiLCJobCI6ImVuIiwiZWkiOiJueE5oYWNHMkE1dmdwODRQZ3ZhcWNRIiwiY2F0YWxvZ2lkIjoiMTE2ODIyOTEyODQ0MDA1MTA4MTIiLCJncGNpZCI6IjU3NTk0NTcyMTg4NzI1MTUzMDciLCJoZWFkbGluZU9mZmVyRG9jaWQiOiIxMDA2MzE2MDA1MTE2MzgwNDAxIiwicmRzIjoiUENfNTc1OTQ1NzIxODg3MjUxNTMwN3xQUk9EX1BDXzU3NTk0NTcyMTg4NzI1MTUzMDciLCJpbWFnZURvY2lkIjoiMTYzMjA2MTIyNzE0NDk0MTg3OTEiLCJtaWQiOiI1NzY0NjI4MjgwNjg2Njc2NjkiLCJwdm8iOjMsInB2dCI6ImEifQ%3D%3D
Request
import requests

url = "https://www.searchapi.io/api/v1/search"
params = {
  "engine": "google_product_page",
  "product_token": "eyJxIjoibmlrZSBzaG9lcyIsImdsIjoidXMiLCJobCI6ImVuIiwiZWkiOiJueE5oYWNHMkE1dmdwODRQZ3ZhcWNRIiwiY2F0YWxvZ2lkIjoiMTE2ODIyOTEyODQ0MDA1MTA4MTIiLCJncGNpZCI6IjU3NTk0NTcyMTg4NzI1MTUzMDciLCJoZWFkbGluZU9mZmVyRG9jaWQiOiIxMDA2MzE2MDA1MTE2MzgwNDAxIiwicmRzIjoiUENfNTc1OTQ1NzIxODg3MjUxNTMwN3xQUk9EX1BDXzU3NTk0NTcyMTg4NzI1MTUzMDciLCJpbWFnZURvY2lkIjoiMTYzMjA2MTIyNzE0NDk0MTg3OTEiLCJtaWQiOiI1NzY0NjI4MjgwNjg2Njc2NjkiLCJwdm8iOjMsInB2dCI6ImEifQ=="
}

response = requests.get(url, params=params)
print(response.text)
Response
{
  "offers": [
    {
      "position": 1,
      "title": "Nike Men's Air Max 90 Casual Shoes in Vast Grey/Anthracite/White | Size: 8.0",
      "link": "https://www.jdsports.com/pdp/mens-nike-air-max-90-casual-shoes/prod772616/IF0670/003?rdrprev=true&srsltid=AfmBOoqahRMJ0FTLg8op3B6nPaMQxrWx58eorJf8Cgz8oWpLmWdk8gByVQk",
      "price": "$115.00",
      "extracted_price": 115,
      "original_price": "$145",
      "extracted_original_price": 145,
      "stock_information": "In stock online",
      "rating": 4.7,
      "details": [
        "4.7/5",
        "Free delivery between Jan 15 – 17",
        "Free 45-day returns"
      ],
      "merchant": {
        "name": "JD Sports",
        "favicon": "https://encrypted-tbn2.gstatic.com/faviconV2?url=https://www.jdsports.com&client=SHOPPING&size=32&type=FAVICON&fallback_opts=TYPE,SIZE,URL"
      },
      "tag": "Best price"
    },
    {
      "position": 2,
      "title": "Nike Air Max 90 Mens Fashion Sneakers In White Grey - 9 Us",
      "link": "https://www.ebay.com/itm/197276494477?chn=ps&mkevt=1&mkcid=28&google_free_listing_action=view_item&srsltid=AfmBOoobXQ2BF66vFiX53tSGjQkQk1rS66Jor6HzLjTBZVnZu8Vs1Y53YpA",
      "price": "$141.74",
      "extracted_price": 141.74,
      "stock_information": "In stock online",
      "details": ["Delivery $26.99"],
      "merchant": {
        "name": "eBay - scorpionshoes-london",
        "favicon": "https://encrypted-tbn1.gstatic.com/faviconV2?url=https://www.ebay.com&client=SHOPPING&size=32&type=FAVICON&fallback_opts=TYPE,SIZE,URL"
      }
    },
    ...
  ]
}

Typical Prices

Typical Prices
GET
https://www.searchapi.io/api/v1/search?engine=google_product_page&product_id=10393216698570153475
Request
import requests

url = "https://www.searchapi.io/api/v1/search"
params = {
  "engine": "google_product_page",
  "product_id": "10393216698570153475"
}

response = requests.get(url, params=params)
print(response.text)
Response
{
  "typical_prices": {
    "low_price": "Typically $29",
    "extracted_low_price": 29,
    "high_price": "$30",
    "extracted_high_price": 30,
    "price_history": {
      "currency": "USD",
      "merchants": [
        {
          "name": "Walgreens.com",
          "items": [
            {
              "date": "2025-01-06",
              "price": 44.99
            },
            ...
          ]
        },
        {
          "name": "Target",
          "items": [
            {
              "date": "2025-01-06",
              "price": 37.99
            },
            ...
          ]
        },
        {
          "name": "Best Buy",
          "items": [
            {
              "date": "2025-01-06",
              "price": 37.99
            },
            ...
          ]
        },
        {
          "name": "Nordstrom",
          "items": [
            {
              "date": "2025-11-13",
              "price": 29.96
            },
            ...
          ]
        },
        {
          "name": "CVS Pharmacy",
          "items": [
            {
              "date": "2025-01-06",
              "price": 48.29
            },
            ...
          ]
        }
      ]
    }
  }
}

Review Results

Review Results
GET
https://www.searchapi.io/api/v1/search?engine=google_product_page&product_token=eyJxIjoiSGVhZHBob25lcyIsImdsIjoidXMiLCJobCI6ImVuIiwiZWkiOiJVQ0poYWE3ZU9NVGRwdFFQN2YiLCJjYXRhbG9naWQiOiIzNjMyMTI3Njg2NTU2NDg5MzEzIiwiZ3BjaWQiOiIxMTUwMDAxNDU2NDM4Njk4ODA0OSIsImhlYWRsaW5lT2ZmZXJEb2NpZCI6IjUwMjc1MjY0NzU2MDU5OTgxODQiLCJyZHMiOiJQQ18xMTUwMDAxNDU2NDM4Njk4ODA0OXxQUk9EX1BDXzExNTAwMDE0NTY0Mzg2OTg4MDQ5IiwiaW1hZ2VEb2NpZCI6IjE0MDM4NTU5MDkyMDY3ODgyNjQ1IiwibWlkIjoiNTc2NDYyNTE4NTU5NzU0MTMyIiwicHZvIjozLCJwdnQiOiJoZyJ9
Request
import requests

url = "https://www.searchapi.io/api/v1/search"
params = {
  "engine": "google_product_page",
  "product_token": "eyJxIjoiSGVhZHBob25lcyIsImdsIjoidXMiLCJobCI6ImVuIiwiZWkiOiJVQ0poYWE3ZU9NVGRwdFFQN2YiLCJjYXRhbG9naWQiOiIzNjMyMTI3Njg2NTU2NDg5MzEzIiwiZ3BjaWQiOiIxMTUwMDAxNDU2NDM4Njk4ODA0OSIsImhlYWRsaW5lT2ZmZXJEb2NpZCI6IjUwMjc1MjY0NzU2MDU5OTgxODQiLCJyZHMiOiJQQ18xMTUwMDAxNDU2NDM4Njk4ODA0OXxQUk9EX1BDXzExNTAwMDE0NTY0Mzg2OTg4MDQ5IiwiaW1hZ2VEb2NpZCI6IjE0MDM4NTU5MDkyMDY3ODgyNjQ1IiwibWlkIjoiNTc2NDYyNTE4NTU5NzU0MTMyIiwicHZvIjozLCJwdnQiOiJoZyJ9"
}

response = requests.get(url, params=params)
print(response.text)
Response
{
  "review_results": {
    "reviews": [
      {
        "username": "Shanden",
        "source": "Reviewed on walmart.com",
        "title": "Not bad, but kind of uncomfortable",
        "date": "2 months ago",
        "rating": 3,
        "text": "Mixed feelings. First, I was surprised at well how... Flimsy it feels. It feels very light to hold, which is good in some ways, but the whole headband is very cheap-feeling plastic. Also the parts are rather thin, so it makes me worry about the longevity, for someone who practically lives in headphones. Also, perhaps this was my misunderstanding, but I was surprised that they are on-ear. The ear pads are very small, and as someone who is used to over-ear it feels very strange how far forward I need to set them on my head. But good thing is they don't move around much, I think these will be good for when I'm moving around, doing cleaning. However that brings me to another con, this small type of ear pad means I need to take out my stud earrings. It pushes right on them and hurts. What I do like is the button controls, I like that as opposed to my older pair of headphones, the volume controls are actual buttons instead of a scroll wheel. Much easier to use. The sound and noise cancelling seem nice, but I haven't tried them outside the house. I think I'll have to stick with these being my backup pair. They're ok, but not as nice as I thought they'd be for being a name brand. Also I have glasses and these are rather tight on my head, they start hurting faster."
      },
      {
        "username": "OKDO",
        "source": "Reviewed on Target",
        "title": "Id pass",
        "date": "4 months ago",
        "rating": 2,
        "text": "They’re not loud. Minimal loudness, minimal bass. My husband got $30 skull candy’s and they’re 10x better. The microphone on these is good to talk on the phone. No sound can be heard from outside when they’re on you. Good noise cancellation. They’re comfortable, charge lasts very long. Connect fast. They fit and stay on okay when I’m walking or lightly jogging they don’t slip off. However when I’m running or if I do an exercise where I bend over or lay down they fall down. Specifically the band part that is at the top of your head. Overall I’d keep looking cause for the price of $50 they could be better. Oh and they got scuffed SO EASILY. I rubbed them past my wall for a second and they scuffed. I would have returned but I missed the return date."
      }
    ]
  }
}

Specifications

Specifications
GET
https://www.searchapi.io/api/v1/search?engine=google_product_page&product_id=16248247886476143126
Request
import requests

url = "https://www.searchapi.io/api/v1/search"
params = {
  "engine": "google_product_page",
  "product_id": "16248247886476143126"
}

response = requests.get(url, params=params)
print(response.text)
Response
{
  "specifications": [
    {
      "name": "ISO Sensitivity",
      "value": "ISO 800, ISO 100, ISO 1600, ISO 200, ISO 400"
    },
    {
      "name": "Focal Length",
      "value": "4.3 - 107.5 mm"
    },
    {
      "name": "Lens Highlights",
      "value": "Manual Zoom Adjustment"
    },
    {
      "name": "35mm Equivalent Focal Length",
      "value": "24-600mm"
    },
    {
      "name": "Lens Type",
      "value": "Zoom Lens"
    },
    ...
  ]
}

Discussions and Forums

Discussions and Forums
GET
https://www.searchapi.io/api/v1/search?engine=google_product_page&product_id=1382387338292610692
Request
import requests

url = "https://www.searchapi.io/api/v1/search"
params = {
  "engine": "google_product_page",
  "product_id": "1382387338292610692"
}

response = requests.get(url, params=params)
print(response.text)
Response
{
  "discussions_and_forums": [
    {
      "title": "Travel mouse - G305 vs. MX Anywhere 2s",
      "link": "https://www.techpowerup.com/forums/threads/travel-mouse-g305-vs-mx-anywhere-2s.251618/",
      "source": "TechPowerUp",
      "date": "6 years ago",
      "favicon": "https://encrypted-tbn3.gstatic.com/faviconV2?url=https://www.techpowerup.com&client=SHOPPING&size=16&type=FAVICON&fallback_opts=TYPE,SIZE,URL",
      "answers": [
        {
          "snippet": "Programmable buttons",
          "link": "https://www.techpowerup.com/forums/threads/travel-mouse-g305-vs-mx-anywhere-2s.251618/#null"
        },
        ...
      ]
    },
    {
      "title": "Mouse recommendations | VI-CONTROL",
      "link": "https://vi-control.net/community/threads/mouse-recommendations.154098/",
      "source": "Vi-Control",
      "date": "a year ago",
      "favicon": "https://encrypted-tbn2.gstatic.com/faviconV2?url=https://vi-control.net&client=SHOPPING&size=16&type=FAVICON&fallback_opts=TYPE,SIZE,URL",
      "answers": [
        {
          "snippet": "Cheap but super responsive and very lightweight (about 50 grams).",
          "link": "https://vi-control.net/community/threads/mouse-recommendations.154098/#:~:text=Cheap%20but%20super%20responsive%20and%20very%20lightweight%20(about%2050%20grams)."
        },
        ...
      ]
    },
    ...
  ]
}