What is Parsing?
Parsing for SERP API is the process of transforming a raw HTML response into a structured JSON with fields and values of data. This advanced parsing functionality is supported specifically for Google & Bing. When parsing is activated, data from SERP HTMLs are further structured into usable fields and values (such as,rank, link, title, description, rating, and dozens more fields) enabling you to monitor competitor SERP rankings, analyze keyword trends, and gather valuable market insights.
Which type of responses does Bright Data SERP provide?
Bright Data provides the following parsing options:- Raw HTML: no parsing at all. Get the HTML response as is.
- Full JSON: our full interpertation of Google’s SERP HTML to JSON.
- Light JSON: a subset of full JSON, including only the organic results and google’s “Top Stories” .
- Parsed Bing: our full interpertation of Bing’s SERP HTML to JSON.
- Markdown: our full interpertation of Google’s and Bing’s SERP HTML to markdown
*.mdfile. - Screenshot: an image capture of the SERP HTML page as interperted by a browser.
Overriding default configuration
In order to override default data format, learn how to use the designated header parameter here: https://docs.brightdata.com/products/serp-api/featuresGoogle response schema: Light JSON
This schema usually returns twice as fast as the Full JSON. It includes 10 organic reults and covers less components than full JSON.Response Format
A successful response may contain the following top-level fields depending on the query. Onlyorganic is guaranteed in every response.
general object
Returned in every Light JSON response. Reports the effective query Bright Data sent to Google and the query Bright Data detected that Google returned results for, which lets you detect when Google truncates a search.
When automatic search query optimization is enabled,
general.query contains the effective query Bright Data sent to Google after any eligible optimization. If your application needs the original query exactly as submitted, retain it in your application.If
detected_query differs from query, check for a spelling object in the response. If spelling is present, the difference is due to automatic spelling correction and the response is valid. If spelling is absent, the query was cloaked and results were returned for a truncated version of the effective query. See How to detect query truncation.By default, cloaked responses are not returned as data: the request fails with the unexpected_q error and is not billed. You will only receive responses where detected_query differs without a spelling object if you enabled the return_mismatch option. See Handling query mismatches on the debugging page.spelling object
Returned in a Light JSON response only when Google applies or suggests a spelling correction. All fields are nullable and appear only when Google provides that variant.
organic array, required
The primary list of web search results.
extensions items
top_ads / bottom_ads arrays
Paid advertisement results appearing above or below organic results.
top_stories object
Google’s Top Stories news carousel. Contains a heading label and an items array of inline news items.
top_stories.items items
article_sets array
Grouped article clusters organized by topic, each containing a heading label and an items array of inline news items. Not guaranteed to appear in every response, your implementation should handle its absence gracefully.
news array
News results embedded in the search page.
videos array
Video results embedded in the search page.
shorts array
Short-form video results embedded in the search page.
images array
Image results embedded in the search page.
shopping array
Shopping results embedded within web search results.
snack_pack_map object
The map image associated with the local pack results.
snack_pack array
Local business results shown in the map pack.
overview object
Knowledge panel overview for an entity, parsed from featured snippet elements.
overview.items items
perspectives array
Perspective results from forums, social media, and editorial sources.
latest_posts array
Latest social or editorial posts widget.
Example Response
Google response schema: Full JSON
A successful Google Search response is a JSON object that may contain the following top-level fields depending on the query and search context. Response schema: https://api.brightdata.com/data_schemas/serp/google_search.schema.jsongeneral object
Metadata about the search request and results.
When automatic search query optimization is enabled,
general.query contains the effective query Bright Data sent to Google after any eligible optimization. If your application needs the original query exactly as submitted, retain it in your application.When
detected_query differs from query, check for a spelling object to tell a genuine spelling correction apart from a truncated (cloaked) query. By default, cloaked responses fail with the unexpected_q error (not billed) instead of returning data; to receive them anyway, enable return_mismatch. See Handling query mismatches on the debugging page.input object
Details about the original request.
organic array
The primary list of web search results.
extensions items
subresults items
top_ads / bottom_ads arrays
Paid advertisement results appearing above or below organic results.
top_pla / bottom_pla / jackpot_pla arrays
Product Listing Ads (shopping ads) appearing at the top, bottom, or in a prominent carousel.
shopping array
Shopping results embedded within web search results.
news array
News results embedded in the search page.
top_stories object
Google’s “Top Stories” news carousel.
videos / short_videos arrays
Video results embedded in the search page.
key_moments items
images array
Image results embedded in the search page.
featured_snippets array
Featured snippet boxes appearing at the top of results.
people_also_ask array
“People also ask” questions shown on the results page.
knowledge object
Google Knowledge Panel for an entity.
ai_overview object
Google AI Overview summary shown at the top of some results pages.
snack_pack array
Local business results shown in the map pack.
snack_pack_map object
The map image associated with the local pack results.
jobs object
Job listing results embedded in the search page.
flights object
Flight results widget.
hotels_selection object
Hotel results widget.
recipes object
Recipe results widget.
popular_products object
Popular products widget embedded in results.
weather object
Weather widget shown for weather-related queries.
currency_exchange object
Currency conversion widget.
related array
“Related searches” shown at the bottom of the page.
pagination object
Pagination data for the results page.
spelling object
Spell correction data, if Google corrected or suggested an alternative query.
forums object
Forum and discussion results embedded in the page.
latest_posts object
Latest social or editorial posts widget.
perspectives array
Perspectives results from forums, social media, and editorial sources.
navigation array
Top navigation links shown on the results page (e.g. Images, News, Videos).
chips array
Refinement chip filters shown below the search bar.
Example Full JSON
Full JSON response example