> ## Documentation Index
> Fetch the complete documentation index at: https://test-62a57ffd.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Search



## OpenAPI

````yaml api-reference/openapi.json get /v1/web/search
openapi: 3.1.0
info:
  title: Brave Search Products API
  description: |

    Product APIs exposed by Brave Search.

    You will be able to:

    * **Web Search**
  termsOfService: http://localhost:10000/terms-of-use/
  contact:
    name: Brave Search API
    url: http://localhost:10000/contact/
    email: search-api@brave.com
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  version: 1.0.0
  x-logo:
    url: >-
      https://cdn.search.brave.com/docs/681607ea86f83e9e04d242342a18f73f83f37137f5cd5246753f7a7a5beaca32-brave-logo-home-dark.svg
servers:
  - url: /res
    description: Default server
security:
  - ApiKeyAuth: []
tags:
  - name: web
    description: Get search results from the web
    x-displayName: Web Search
    x-mint:
      title: Web Search API
      description: Get search results from the web
  - name: news
    description: Get search results from the news
    x-displayName: News Search
  - name: videos
    description: Get search results from the videos
    x-displayName: Videos Search
  - name: images
    description: Get search results from the images
    x-displayName: Images Search
  - name: summarizer
    description: Get summarized search results
    x-displayName: AI Search
  - name: other
    description: Other API services
    x-displayName: Other
paths:
  /v1/web/search:
    get:
      tags:
        - web
      summary: Search
      operationId: search_web_v1_web_search_get
      parameters:
        - name: q
          in: query
          required: true
          schema:
            type: string
            minLength: 1
            maxLength: 400
            title: Query
            description: >-
              The user's search query term. Query can not be empty. Maximum of
              400 characters and 50 words in the query.
          description: >-
            The user's search query term. Query can not be empty. Maximum of 400
            characters and 50 words in the query.
        - name: country
          in: query
          required: false
          schema:
            $ref: '#/components/schemas/SearchCountry'
            title: Search country
            description: >-
              The 2 character country code where the search results come from.
              The default value is US.
            default: US
          description: >-
            The 2 character country code where the search results come from. The
            default value is US.
        - name: search_lang
          in: query
          required: false
          schema:
            $ref: '#/components/schemas/Language-Input'
            title: Search language
            description: >-
              The 2 or more character language code for which the search results
              are provided.
            default: en
          description: >-
            The 2 or more character language code for which the search results
            are provided.
        - name: ui_lang
          in: query
          required: false
          schema:
            $ref: '#/components/schemas/MarketCodes'
            title: User interface language
            description: >-
              User interface language preferred in response. Usually of the
              format <language_code>-<country_code>. For more, see [RFC
              9110](https://www.rfc-editor.org/rfc/rfc9110.html#name-accept-language).
            default: en-US
          description: >-
            User interface language preferred in response. Usually of the format
            <language_code>-<country_code>. For more, see [RFC
            9110](https://www.rfc-editor.org/rfc/rfc9110.html#name-accept-language).
        - name: count
          in: query
          required: false
          schema:
            type: integer
            maximum: 50
            minimum: 1
            title: Count
            description: >-
              The number of search results returned in response. The maximum is
              20. The actual number delivered may be less than requested.
              Combine this parameter with offset to paginate search results.


              **NOTE:** Count only applies to web results.
            default: 20
          description: >-
            The number of search results returned in response. The maximum is
            20. The actual number delivered may be less than requested. Combine
            this parameter with offset to paginate search results.


            **NOTE:** Count only applies to web results.
        - name: offset
          in: query
          required: false
          schema:
            type: integer
            maximum: 9
            minimum: 0
            title: Offset
            description: >-
              The zero based offset that indicates number of
              search                 result pages (count) to skip before
              returning the result.                 The default is 0 and the
              maximum is 9.                 The actual number delivered may be
              less than requested.


              Use this parameter along with the count parameter to page
              results.                 For example, if your user interface
              displays 10 search results per page,                 set count to
              10 and offset to 0 to get the first page of
              results.                 For each subsequent page, increment
              offset by 1 (for example, 0, 1, 2).                 It is possible
              for multiple pages to include some overlap in results.
            default: 0
          description: >-
            The zero based offset that indicates number of
            search                 result pages (count) to skip before returning
            the result.                 The default is 0 and the maximum is
            9.                 The actual number delivered may be less than
            requested.


            Use this parameter along with the count parameter to page
            results.                 For example, if your user interface
            displays 10 search results per page,                 set count to 10
            and offset to 0 to get the first page of results.                
            For each subsequent page, increment offset by 1 (for example, 0, 1,
            2).                 It is possible for multiple pages to include
            some overlap in results.
        - name: safesearch
          in: query
          required: false
          schema:
            $ref: '#/components/schemas/app__models__general__SafeSearch'
            title: Safe search
            description: >-
              Filters search results for adult content. The following values are
              supported:


              - **off** - No filtering is done.

              - **moderate** - Filters explicit content, like images and videos,
              but allows adult domains in the search results.

              - **strict** - Drops all adult content from search results.
            x-enumDescriptions:
              'off': No filtering is done.
              moderate: >-
                Filters explicit content, like images and videos, but allows
                adult domains in the search results.
              strict: Drops all adult content from search results.
            default: moderate
          description: >-
            Filters search results for adult content. The following values are
            supported:


            - **off** - No filtering is done.

            - **moderate** - Filters explicit content, like images and videos,
            but allows adult domains in the search results.

            - **strict** - Drops all adult content from search results.
        - name: spellcheck
          in: query
          required: false
          schema:
            type: boolean
            title: Spellcheck
            description: >-
              Whether to spellcheck provided query. If the spellchecker is
              enabled, the modified query is always used for search. The
              modified query can be found in altered key from the query response
              model.
            default: true
          description: >-
            Whether to spellcheck provided query. If the spellchecker is
            enabled, the modified query is always used for search. The modified
            query can be found in altered key from the query response model.
          examples:
            Enable spellchecker:
              value: true
              description: Enable spellchecker
            Disable spellchecker:
              value: false
              description: Disable spellchecker
        - name: freshness
          in: query
          required: false
          schema:
            type: string
            title: Freshness
            description: >-
              Filters search results by when they were discovered. The following
              values are supported:


              - **pd** - Discovered within the last 24 hours.

              - **pw** - Discovered within the last 7 Days.

              - **pm** - Discovered within the last 31 Days.

              - **py** - Discovered within the last 365 Days.

              - **YYYY-MM-DDtoYYYY-MM-DD** - timeframe is also supported by
              specifying the date range e.g. 2022-04-01to2022-07-30.
            default: ''
          description: >-
            Filters search results by when they were discovered. The following
            values are supported:


            - **pd** - Discovered within the last 24 hours.

            - **pw** - Discovered within the last 7 Days.

            - **pm** - Discovered within the last 31 Days.

            - **py** - Discovered within the last 365 Days.

            - **YYYY-MM-DDtoYYYY-MM-DD** - timeframe is also supported by
            specifying the date range e.g. 2022-04-01to2022-07-30.
          examples:
            Time range:
              value: 2022-04-01to2022-07-30
              description: Time range
            Fixed time:
              value: pm
              description: Fixed time
        - name: text_decorations
          in: query
          required: false
          schema:
            type: boolean
            title: Text decorations
            description: >-
              Whether display strings (e.g. result snippets) should include
              decoration markers (e.g. highlighting characters).
            default: true
          description: >-
            Whether display strings (e.g. result snippets) should include
            decoration markers (e.g. highlighting characters).
          examples:
            Include text markers:
              value: true
              description: Include text markers
            Exclude text markers:
              value: false
              description: Exclude text markers
        - name: result_filter
          in: query
          required: false
          schema:
            anyOf:
              - type: array
                uniqueItems: true
                items:
                  type: string
              - type: 'null'
            title: Result filter
            description: >-
              A comma delimited string of result types to include in the search
              response. Not specifying this parameter will return back all
              result types in search response where data is available and a plan
              with the corresponding option is subscribed. The response always
              includes query and type to identify any query modifications and
              response type respectively. Available result filter values are:
              discussions, faq, infobox, news, query, summarizer, videos, web,
              locations.


              **NOTE:** count only applies to web results.
          description: >-
            A comma delimited string of result types to include in the search
            response. Not specifying this parameter will return back all result
            types in search response where data is available and a plan with the
            corresponding option is subscribed. The response always includes
            query and type to identify any query modifications and response type
            respectively. Available result filter values are: discussions, faq,
            infobox, news, query, summarizer, videos, web, locations.


            **NOTE:** count only applies to web results.
          examples:
            Get all responses: {}
            Get only web results:
              value: web
            Get only video results:
              value: videos
            Get web and video results:
              value: web,videos
        - name: units
          in: query
          required: false
          schema:
            anyOf:
              - $ref: '#/components/schemas/MeasurementUnit'
              - type: 'null'
            title: Units
            description: |-
              The measurement units. Possible values are:

              - **metric** - The standardized measurement system
              - **imperial** - The British Imperial system of units
          description: |-
            The measurement units. Possible values are:

            - **metric** - The standardized measurement system
            - **imperial** - The British Imperial system of units
          examples:
            Derived from search country: {}
            Metric units:
              value: imperial
        - name: goggles_id
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Goggles id
            description: >-
              Goggles act as a custom re-ranking on top of Brave's search index.
              For more details, refer to the Goggles repository. This parameter
              is deprecated. Please use the goggles parameter.
          description: >-
            Goggles act as a custom re-ranking on top of Brave's search index.
            For more details, refer to the Goggles repository. This parameter is
            deprecated. Please use the goggles parameter.
          examples:
            None: {}
            Prioritizes domains popular with the Hacker News:
              value: >-
                https://raw.githubusercontent.com/brave/goggles-quickstart/main/goggles/hacker_news.goggle
          deprecated: true
        - name: goggles
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - items:
                  type: string
                type: array
              - type: 'null'
            title: Goggles
            description: >-
              Goggles act as a custom re-ranking on top of Brave's search index.
              The parameter supports both a url where the Goggle is hosted or
              the definition of the goggle. For more details, refer to the
              Goggles repository. The parameter can be repeated to query with
              multiple goggles.
          description: >-
            Goggles act as a custom re-ranking on top of Brave's search index.
            The parameter supports both a url where the Goggle is hosted or the
            definition of the goggle. For more details, refer to the Goggles
            repository. The parameter can be repeated to query with multiple
            goggles.
          examples:
            None: {}
            Prioritizes domains popular with the Hacker News:
              value: >-
                https://raw.githubusercontent.com/brave/goggles-quickstart/main/goggles/hacker_news.goggle
            Social media blocker:
              value: |2-

                                            ! name: Social Networks
                                            ! description: Removes social networks
                                            ! public: true
                                            ! author: Average Joe
                                            ! avatar: #de0320

                                            $discard,site=facebook.com
                                            $discard,site=x.com
                                            $discard,site=instagram.com
                                         
        - name: extra_snippets
          in: query
          required: false
          schema:
            anyOf:
              - type: boolean
              - type: 'null'
            title: Extra snippets
            description: >-
              A snippet is an excerpt from a page you get as a result of the
              query, and extra_snippets allow you to get up to 5 additional,
              alternative excerpts.
          description: >-
            A snippet is an excerpt from a page you get as a result of the
            query, and extra_snippets allow you to get up to 5 additional,
            alternative excerpts.
          examples:
            None: {}
            Include extra snippets:
              value: true
            Exclude extra snippets:
              value: false
        - name: summary
          in: query
          required: false
          schema:
            anyOf:
              - type: boolean
              - type: 'null'
            title: Summary
            description: >-
              This parameter enables summary key generation in web search
              results. This is required for summarizer to be enabled.
          description: >-
            This parameter enables summary key generation in web search results.
            This is required for summarizer to be enabled.
          examples:
            Enable summary:
              value: true
            Disable summary:
              value: false
            None: {}
        - name: enable_rich_callback
          in: query
          required: false
          schema:
            type: boolean
            description: Enable rich callback
            default: false
            title: Enable Rich Callback
          description: Enable rich callback
          examples:
            Enable rich callback:
              value: true
            Disable rich callback:
              value: false
        - name: include_fetch_metadata
          in: query
          required: false
          schema:
            type: boolean
            description: Include fetch metadata
            default: false
            title: Include Fetch Metadata
          description: Include fetch metadata
          examples:
            Include fetch metadata:
              value: true
            Exclude fetch metadata:
              value: false
        - name: operators
          in: query
          required: false
          schema:
            type: boolean
            title: Operators
            description: Whether to apply search operators
            default: true
          description: Whether to apply search operators
          examples:
            Apply search operators:
              value: true
            Ignore search operators:
              value: false
        - name: x-loc-lat
          in: header
          required: false
          schema:
            anyOf:
              - type: number
                maximum: 90
                minimum: -90
              - type: 'null'
            title: Latitude
            description: >-
              The latitude of the client's geographical location in
              degrees,                 to provide relevant local results. The
              latitiude must be greater                 than or equal to -90.0
              degrees and less than or equal to +90.0 degrees.
          description: >-
            The latitude of the client's geographical location in
            degrees,                 to provide relevant local results. The
            latitiude must be greater                 than or equal to -90.0
            degrees and less than or equal to +90.0 degrees.
          examples:
            None: {}
        - name: x-loc-long
          in: header
          required: false
          schema:
            anyOf:
              - type: number
                maximum: 180
                minimum: -180
              - type: 'null'
            title: Longitude
            description: >-
              The longitude of the client's geographical location in
              degrees,                 to provide relevant local results. The
              longitude must be greater                 than or equal to -180.0
              and less than or equal to +180.0 degrees.
          description: >-
            The longitude of the client's geographical location in
            degrees,                 to provide relevant local results. The
            longitude must be greater                 than or equal to -180.0
            and less than or equal to +180.0 degrees.
          examples:
            None: {}
        - name: x-loc-timezone
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: IANA timezone
            description: >-
              The IANA timezone for the client's device.             For
              complete list of IANA timezones and location mappings see [IANA
              Database](https://www.iana.org/time-zones)             and
              [Geonames Database](https://download.geonames.org/export/dump/).
          description: >-
            The IANA timezone for the client's device.             For complete
            list of IANA timezones and location mappings see [IANA
            Database](https://www.iana.org/time-zones)             and [Geonames
            Database](https://download.geonames.org/export/dump/).
          examples:
            None: {}
            IANA timezone for Detroit in USA:
              value: America/Detroit
        - name: x-loc-city
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: City
            description: The generic name of the client city.
          description: The generic name of the client city.
          examples:
            None: {}
            City in USA:
              value: Ann Arbor
        - name: x-loc-state
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: State/Region code
            description: >-
              A code which could be up to three characters, that represent the
              client's state/region.                 The region is the
              first-level subdivision (the broadest or least specific) of
              the                 [ISO
              3166-2](https://en.wikipedia.org/wiki/ISO_3166-2) code.
          description: >-
            A code which could be up to three characters, that represent the
            client's state/region.                 The region is the first-level
            subdivision (the broadest or least specific) of the                
            [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2) code.
          examples:
            None: {}
            Michigan State/Region code in USA:
              value: MI
        - name: x-loc-state-name
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: State/Region name
            description: >-
              The name of the client's state/region.                 The region
              is the first-level subdivision (the broadest or least specific) of
              the                 [ISO
              3166-2](https://en.wikipedia.org/wiki/ISO_3166-2) code.
          description: >-
            The name of the client's state/region.                 The region is
            the first-level subdivision (the broadest or least specific) of
            the                 [ISO
            3166-2](https://en.wikipedia.org/wiki/ISO_3166-2) code.
          examples:
            None: {}
            Michigan generic state name in USA:
              value: Michigan
        - name: x-loc-country
          in: header
          required: false
          schema:
            anyOf:
              - $ref: '#/components/schemas/Country'
              - type: 'null'
            title: Country code
            description: >-
              The two letter country code for the client's
              country.                 For a list of country
              codes,                 see [ISO 3166-1
              alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
          description: >-
            The two letter country code for the client's
            country.                 For a list of country
            codes,                 see [ISO 3166-1
            alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
          examples:
            None: {}
            Country alpha-2 code:
              value: US
        - name: x-loc-postal-code
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Postal code
            description: The client's postal code.
          description: The client's postal code.
          examples:
            None: {}
            Postal code in Ann Harbor, Michigan, US:
              value: '48105'
        - name: x-subscription-token
          in: header
          required: true
          schema:
            type: string
            title: Subscription token
            description: The subscription token that was generated for the product.
            examples:
              - BSAgdIxiH0OLq6fnx6F-xp8Yplv4uOp
          description: The subscription token that was generated for the product.
        - name: api-version
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: API version
            description: >-
              The API version to use.                 This is denoted by the
              format `YYYY-MM-DD`.                 Default is the latest that is
              available.
          description: >-
            The API version to use.                 This is denoted by the
            format `YYYY-MM-DD`.                 Default is the latest that is
            available.
        - name: accept
          in: header
          required: false
          schema:
            $ref: '#/components/schemas/Accept'
            title: Media type
            description: The default supported media type is application/json.
            examples:
              - application/json
            default: application/json
          description: The default supported media type is application/json.
        - name: cache-control
          in: header
          required: false
          schema:
            anyOf:
              - $ref: '#/components/schemas/CacheControl'
              - type: 'null'
            title: Cache control
            description: >-
              Brave Search will return cached content by
              default.                 To prevent caching set the Cache-Control
              header to no-cache.                 This is currently done as best
              effort.
          description: >-
            Brave Search will return cached content by default.                
            To prevent caching set the Cache-Control header to
            no-cache.                 This is currently done as best effort.
        - name: user-agent
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: User agent
            description: >-
              The user agent originating the request.                 Brave
              search can utilize the user agent to provide a
              different                 experience depending on the device as
              described by the string.                 The user agent should
              follow the commonly used browser agent                 strings on
              each platform. For more information on curating user
              agents,                 see [RFC
              9110](https://www.rfc-editor.org/rfc/rfc9110.html#name-user-agent).
            examples:
              - >-
                **Android** Mozilla/5.0 (Linux; Android 12) AppleWebKit/537.36
                (KHTML, like Gecko) Chrome/103.0.5060.71 Mobile Safari/537.36
              - >-
                **iOS** Mozilla/5.0 (iPhone; CPU iPhone OS 15_5 like Mac OS X)
                AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/103.0.5060.63
                Mobile/15E148 Safari/604.1
              - >-
                **macOS** Mozilla/5.0 (Macintosh; Intel Mac OS X 12_4)
                AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0
                Safari/537.36
              - >-
                **Windows** Mozilla/5.0 (Windows NT 10.0; Win64; x64)
                AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0
                Safari/537.36
          description: >-
            The user agent originating the request.                 Brave search
            can utilize the user agent to provide a different                
            experience depending on the device as described by the
            string.                 The user agent should follow the commonly
            used browser agent                 strings on each platform. For
            more information on curating user agents,                 see [RFC
            9110](https://www.rfc-editor.org/rfc/rfc9110.html#name-user-agent).
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebSearchApiResponse'
        '404':
          content:
            application/json:
              examples:
                SUBSCRIPTION_NOT_FOUND:
                  summary: Missing subscription.
                  value:
                    type: ErrorResponse
                    errors:
                      - id: 5d832250-9396-4f6e-b84a-2a1fe524cd7d
                        code: SUBSCRIPTION_NOT_FOUND
                        detail: No subscription found.
                        status: 404
                        meta:
                          component: subscriptions
                    time: 1663072993
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Not Found
        '422':
          content:
            application/json:
              examples:
                SUBSCRIPTION_TOKEN_INVALID:
                  summary: Invalid subscription token.
                  value:
                    type: ErrorResponse
                    errors:
                      - id: 5d832250-9396-4f6e-b84a-2a1fe524cd7d
                        code: SUBSCRIPTION_TOKEN_INVALID
                        detail: The provided subscription token is invalid.
                        status: 422
                        meta:
                          component: authentication
                    time: 1663072993
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Unprocessable Entity
        '429':
          content:
            application/json:
              examples:
                RATE_LIMITED:
                  summary: Rate limited.
                  value:
                    type: ErrorResponse
                    errors:
                      - id: 5d832250-9396-4f6e-b84a-2a1fe524cd7d
                        code: RATE_LIMITED
                        detail: Request rate limit exceeded for plan.
                        status: 429
                        meta:
                          component: rate_limiter
                    time: 1663072993
                QUOTA_LIMITED:
                  summary: Quota limited.
                  value:
                    type: ErrorResponse
                    errors:
                      - id: 5d832250-9396-4f6e-b84a-2a1fe524cd7d
                        code: QUOTA_LIMITED
                        detail: Request quota limit exceeded for plan.
                        status: 429
                        meta:
                          component: rate_limiter
                    time: 1663072993
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Too Many Requests
components:
  schemas:
    SearchCountry:
      type: string
      enum:
        - AR
        - AU
        - AT
        - BE
        - BR
        - CA
        - CL
        - DK
        - FI
        - FR
        - DE
        - GR
        - HK
        - IN
        - ID
        - IT
        - JP
        - KR
        - MY
        - MX
        - NL
        - NZ
        - 'NO'
        - CN
        - PL
        - PT
        - PH
        - RU
        - SA
        - ZA
        - ES
        - SE
        - CH
        - TW
        - TR
        - GB
        - US
        - ALL
      title: SearchCountry
    Language-Input:
      type: string
      enum:
        - ar
        - eu
        - bn
        - bg
        - ca
        - zh-hans
        - zh-hant
        - hr
        - cs
        - da
        - nl
        - en
        - en-gb
        - et
        - fi
        - fr
        - gl
        - de
        - el
        - gu
        - he
        - hi
        - hu
        - is
        - it
        - jp
        - kn
        - ko
        - lv
        - lt
        - ms
        - ml
        - mr
        - nb
        - pl
        - pt-br
        - pt-pt
        - pa
        - ro
        - ru
        - sr
        - sk
        - sl
        - es
        - sv
        - ta
        - te
        - th
        - tr
        - uk
        - vi
      title: Language
    MarketCodes:
      type: string
      enum:
        - es-AR
        - en-AU
        - de-AT
        - nl-BE
        - fr-BE
        - pt-BR
        - en-CA
        - fr-CA
        - es-CL
        - da-DK
        - fi-FI
        - fr-FR
        - de-DE
        - el-GR
        - zh-HK
        - en-IN
        - en-ID
        - it-IT
        - ja-JP
        - ko-KR
        - en-MY
        - es-MX
        - nl-NL
        - en-NZ
        - no-NO
        - zh-CN
        - pl-PL
        - en-PH
        - ru-RU
        - en-ZA
        - es-ES
        - sv-SE
        - fr-CH
        - de-CH
        - zh-TW
        - tr-TR
        - en-GB
        - en-US
        - es-US
      title: MarketCodes
    app__models__general__SafeSearch:
      type: string
      enum:
        - 'off'
        - moderate
        - strict
      title: SafeSearch
    MeasurementUnit:
      type: string
      enum:
        - imperial
        - metric
      title: MeasurementUnit
    Country:
      type: string
      enum:
        - AD
        - AE
        - AF
        - AG
        - AI
        - AL
        - AM
        - AO
        - AQ
        - AR
        - AS
        - AT
        - AU
        - AW
        - AX
        - AZ
        - BA
        - BB
        - BD
        - BE
        - BF
        - BG
        - BH
        - BI
        - BJ
        - BL
        - BM
        - BN
        - BO
        - BQ
        - BR
        - BS
        - BT
        - BV
        - BW
        - BY
        - BZ
        - CA
        - CC
        - CD
        - CF
        - CG
        - CH
        - CI
        - CK
        - CL
        - CM
        - CN
        - CO
        - CR
        - CU
        - CV
        - CW
        - CX
        - CY
        - CZ
        - DE
        - DJ
        - DK
        - DM
        - DO
        - DZ
        - EC
        - EE
        - EG
        - EH
        - ER
        - ES
        - ET
        - FI
        - FJ
        - FK
        - FM
        - FO
        - FR
        - GA
        - GB
        - GD
        - GE
        - GF
        - GG
        - GH
        - GI
        - GL
        - GM
        - GN
        - GP
        - GQ
        - GR
        - GS
        - GT
        - GU
        - GW
        - GY
        - HK
        - HM
        - HN
        - HR
        - HT
        - HU
        - ID
        - IE
        - IL
        - IM
        - IN
        - IO
        - IQ
        - IR
        - IS
        - IT
        - JE
        - JM
        - JO
        - JP
        - KE
        - KG
        - KH
        - KI
        - KM
        - KN
        - KP
        - KR
        - KW
        - KY
        - KZ
        - LA
        - LB
        - LC
        - LI
        - LK
        - LR
        - LS
        - LT
        - LU
        - LV
        - LY
        - MA
        - MC
        - MD
        - ME
        - MF
        - MG
        - MH
        - MK
        - ML
        - MM
        - MN
        - MO
        - MP
        - MQ
        - MR
        - MS
        - MT
        - MU
        - MV
        - MW
        - MX
        - MY
        - MZ
        - NA
        - NC
        - NE
        - NF
        - NG
        - NI
        - NL
        - 'NO'
        - NP
        - NR
        - NU
        - NZ
        - OM
        - PA
        - PE
        - PF
        - PG
        - PH
        - PK
        - PL
        - PM
        - PN
        - PR
        - PS
        - PT
        - PW
        - PY
        - QA
        - RE
        - RO
        - RS
        - RU
        - RW
        - SA
        - SB
        - SC
        - SD
        - SE
        - SG
        - SH
        - SI
        - SJ
        - SK
        - SL
        - SM
        - SN
        - SO
        - SR
        - SS
        - ST
        - SV
        - SX
        - SY
        - SZ
        - TC
        - TD
        - TF
        - TG
        - TH
        - TJ
        - TK
        - TL
        - TM
        - TN
        - TO
        - TR
        - TT
        - TV
        - TW
        - TZ
        - UA
        - UG
        - UM
        - US
        - UY
        - UZ
        - VA
        - VC
        - VE
        - VG
        - VI
        - VN
        - VU
        - WF
        - WS
        - YE
        - YT
        - ZA
        - ZM
        - ZW
      title: Country
    Accept:
      type: string
      enum:
        - application/json
        - '*/*'
      title: Accept
    CacheControl:
      type: string
      enum:
        - no-cache
      const: no-cache
      title: CacheControl
    WebSearchApiResponse:
      properties:
        type:
          type: string
          enum:
            - search
          const: search
          title: Type
          default: search
        query:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__query__Query
            - type: 'null'
          description: Search query string and its modifications that are used for search.
        discussions:
          anyOf:
            - $ref: '#/components/schemas/Discussions'
            - type: 'null'
          description: >-
            Discussions clusters aggregated from forum posts that are relevant
            to the query.
        faq:
          anyOf:
            - $ref: '#/components/schemas/app__models__products__search__v1__faq__FAQ'
            - type: 'null'
          description: Frequently asked questions that are relevant to the search query.
        infobox:
          anyOf:
            - $ref: '#/components/schemas/GraphInfobox'
            - type: 'null'
          description: Aggregated information on an entity showable as an infobox.
        locations:
          anyOf:
            - $ref: '#/components/schemas/Locations'
            - type: 'null'
          description: Places of interest (POIs) relevant to location sensitive queries.
        mixed:
          anyOf:
            - $ref: '#/components/schemas/MixedResponse'
            - type: 'null'
          description: Preferred ranked order of search results.
        news:
          anyOf:
            - $ref: '#/components/schemas/News'
            - type: 'null'
          description: News results relevant to the query.
        videos:
          anyOf:
            - $ref: '#/components/schemas/Videos'
            - type: 'null'
          description: Videos results relevant to the query.
        web:
          anyOf:
            - $ref: '#/components/schemas/Search'
            - type: 'null'
          description: Web results relevant to the query.
        summarizer:
          anyOf:
            - $ref: '#/components/schemas/Summarizer'
            - type: 'null'
          description: Summary key to get summary results for the query.
        rich:
          anyOf:
            - $ref: '#/components/schemas/RichHeaderCallback'
            - type: 'null'
          description: Callback information to retrieve rich results.
      type: object
      title: WebSearchApiResponse
    ErrorResponse:
      properties:
        type:
          type: string
          title: Type
          default: ErrorResponse
        error:
          $ref: '#/components/schemas/ErrorModel'
        time:
          type: integer
          title: Time
          default: 0
      type: object
      required:
        - error
      title: ErrorResponse
    app__models__products__search__v1__query__Query:
      properties:
        original:
          type: string
          title: Original
          description: The original query that was requested.
        show_strict_warning:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Show Strict Warning
          description: Whether to show a warning that strict safesearch filtered results.
        altered:
          anyOf:
            - type: string
            - type: 'null'
          title: Altered
          description: The altered query by the spellchecker.
        cleaned:
          anyOf:
            - type: string
            - type: 'null'
          title: Cleaned
          description: The cleaned normalized query.
        safesearch:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Safesearch
          description: Whether safesearch is active.
        is_navigational:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Is Navigational
          description: >-
            Whether the query is navigational (user wants to go to a specific
            site).
        is_geolocal:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Is Geolocal
          description: Whether the query has local intent.
        local_decision:
          anyOf:
            - type: string
            - type: 'null'
          title: Local Decision
          description: The local search decision for the query.
        local_locations_idx:
          anyOf:
            - type: integer
            - type: 'null'
          title: Local Locations Idx
          description: Index of the local location result.
        is_trending:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Is Trending
          description: Whether the query is a trending topic.
        is_news_breaking:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Is News Breaking
          description: Whether the query is related to breaking news.
        ask_for_location:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Ask For Location
          description: Whether to prompt the user for their location.
        language:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__language__Language
            - type: 'null'
          description: The detected language of the query.
        spellcheck_off:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Spellcheck Off
          description: Whether spellcheck is disabled for this query.
        country:
          anyOf:
            - type: string
            - type: 'null'
          title: Country
          description: The country code for the query.
        bad_results:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Bad Results
          description: Whether the results are considered low quality.
        should_fallback:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Should Fallback
          description: Whether to fallback to alternative ranking.
        lat:
          anyOf:
            - type: string
            - type: 'null'
          title: Lat
          description: The latitude for location-based queries.
        long:
          anyOf:
            - type: string
            - type: 'null'
          title: Long
          description: The longitude for location-based queries.
        postal_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Postal Code
          description: The postal code for location-based queries.
        city:
          anyOf:
            - type: string
            - type: 'null'
          title: City
          description: The city for location-based queries.
        header_country:
          anyOf:
            - type: string
            - type: 'null'
          title: Header Country
          description: The country from request headers.
        more_results_available:
          anyOf:
            - type: boolean
            - type: 'null'
          title: More Results Available
          description: Whether more results are available for pagination.
        state:
          anyOf:
            - type: string
            - type: 'null'
          title: State
          description: The state/region for location-based queries.
        custom_location_label:
          anyOf:
            - type: string
            - type: 'null'
          title: Custom Location Label
          description: A custom label for the location.
        reddit_cluster:
          anyOf:
            - type: string
            - type: 'null'
          title: Reddit Cluster
          description: Reddit cluster identifier for discussion results.
        summary_key:
          anyOf:
            - type: string
            - type: 'null'
          title: Summary Key
          description: Key to retrieve AI-generated summary for the query.
        search_operators:
          anyOf:
            - $ref: '#/components/schemas/SearchOperators'
            - type: 'null'
          description: Search operators that were detected and applied to the query.
      type: object
      required:
        - original
      title: Query
    Discussions:
      properties:
        type:
          $ref: '#/components/schemas/ApiType'
          default: search
        results:
          items:
            $ref: '#/components/schemas/DiscussionResult'
          type: array
          title: Results
        mutated_by_goggles:
          type: boolean
          title: Mutated By Goggles
          default: false
      type: object
      required:
        - results
      title: Discussions
    app__models__products__search__v1__faq__FAQ:
      properties:
        type:
          $ref: '#/components/schemas/ApiType'
          default: faq
        results:
          items:
            $ref: '#/components/schemas/QA'
          type: array
          title: Results
      type: object
      required:
        - results
      title: FAQ
    GraphInfobox:
      properties:
        type:
          $ref: '#/components/schemas/ServiceType'
          default: graph
        results:
          items:
            oneOf:
              - $ref: '#/components/schemas/GenericInfobox'
              - $ref: '#/components/schemas/QAInfobox'
              - $ref: '#/components/schemas/InfoboxPlace'
              - $ref: '#/components/schemas/InfoboxWithLocation'
              - $ref: '#/components/schemas/EntityInfobox'
            discriminator:
              propertyName: subtype
              mapping:
                code: '#/components/schemas/QAInfobox'
                entity: '#/components/schemas/EntityInfobox'
                generic: '#/components/schemas/GenericInfobox'
                location: '#/components/schemas/InfoboxWithLocation'
                place: '#/components/schemas/InfoboxPlace'
          type: array
          title: Results
      type: object
      required:
        - results
      title: GraphInfobox
    Locations:
      properties:
        type:
          type: string
          title: Type
          default: locations
        results:
          items:
            $ref: '#/components/schemas/LocationResult'
          type: array
          title: Results
        provider:
          anyOf:
            - type: object
            - type: 'null'
          title: Provider
      type: object
      required:
        - results
      title: Locations
    MixedResponse:
      properties:
        type:
          $ref: '#/components/schemas/ApiType'
          description: The type of API result. The value is always `mixed`.
          default: mixed
        main:
          anyOf:
            - items:
                $ref: '#/components/schemas/ResultReference'
              type: array
            - type: 'null'
          title: Main
          description: Preferred ranking order for main results.
        top:
          anyOf:
            - items:
                $ref: '#/components/schemas/ResultReference'
              type: array
            - type: 'null'
          title: Top
          description: Preferred ranking order for top results.
        side:
          anyOf:
            - items:
                $ref: '#/components/schemas/ResultReference'
              type: array
            - type: 'null'
          title: Side
          description: Preferred ranking order for sidebar results.
      type: object
      title: MixedResponse
    News:
      properties:
        type:
          $ref: '#/components/schemas/ApiType'
          description: The type of API result. The value is always `news`.
          default: news
        results:
          items:
            $ref: >-
              #/components/schemas/app__models__products__search__v1__shared__NewsResult
          type: array
          title: Results
          description: The list of news results.
        mutated_by_goggles:
          type: boolean
          title: Mutated By Goggles
          description: Whether the results are mutated by a goggle.
          default: false
      type: object
      required:
        - results
      title: News
    Videos:
      properties:
        type:
          $ref: '#/components/schemas/ApiType'
          description: The type of API result. The value is always `videos`.
          default: videos
        results:
          items:
            $ref: >-
              #/components/schemas/app__models__products__search__v1__videos__VideoResult
          type: array
          title: Results
          description: The list of video results.
        mutated_by_goggles:
          type: boolean
          title: Mutated By Goggles
          description: Whether the results are mutated by a goggle.
          default: false
      type: object
      required:
        - results
      title: Videos
    Search:
      properties:
        type:
          $ref: '#/components/schemas/ApiType'
          description: The type of API result. The value is always `search`.
          default: search
        results:
          items:
            $ref: '#/components/schemas/SearchResult'
          type: array
          title: Results
          description: The list of search results.
        family_friendly:
          type: boolean
          title: Family Friendly
          description: Whether the search results are family-friendly.
          default: true
      type: object
      required:
        - results
      title: Search
    Summarizer:
      properties:
        type:
          type: string
          title: Type
          description: The type of result. The value is always `summarizer`.
          default: summarizer
        key:
          type: string
          title: Key
          description: The key to retrieve the full summary results.
      type: object
      required:
        - key
      title: Summarizer
    RichHeaderCallback:
      properties:
        type:
          type: string
          enum:
            - rich
          const: rich
          title: Type
          default: rich
        hint:
          anyOf:
            - $ref: '#/components/schemas/ResponseCallback'
            - type: 'null'
          description: The hint about the rich result vertical matched for this query.
      type: object
      title: RichHeaderCallback
    ErrorModel:
      properties:
        id:
          type: string
          title: Id
        status:
          type: integer
          title: Status
        code:
          $ref: '#/components/schemas/ErrorCode'
        detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Detail
        meta:
          anyOf:
            - type: object
            - type: 'null'
          title: Meta
      type: object
      required:
        - id
        - status
        - code
      title: ErrorModel
    app__models__products__search__v1__language__Language:
      properties:
        main:
          type: string
          title: Main
      type: object
      required:
        - main
      title: Language
    SearchOperators:
      properties:
        applied:
          type: boolean
          title: Applied
          description: Whether search operators were applied to the query.
          default: false
        cleaned_query:
          anyOf:
            - type: string
            - type: 'null'
          title: Cleaned Query
          description: The query after search operators have been processed.
        sites:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Sites
          description: 'List of site domains extracted from site: operators.'
      type: object
      title: SearchOperators
    ApiType:
      type: string
      enum:
        - news
        - videos
        - search
        - suggest
        - spellcheck
        - locations
        - images
        - summarizer
        - faq
        - mixed
        - content
        - domain
        - local_pois
        - local_descriptions
        - rich
      title: ApiType
    DiscussionResult:
      properties:
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        is_source_local:
          type: boolean
          title: Is Source Local
          default: false
        is_source_both:
          type: boolean
          title: Is Source Both
          default: false
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          default: ''
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Age
        page_fetched:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Fetched
        fetched_content_timestamp:
          anyOf:
            - type: integer
            - type: 'null'
          title: Fetched Content Timestamp
        profile:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Profile
            - type: 'null'
        language:
          type: string
          title: Language
          default: en
        family_friendly:
          type: boolean
          title: Family Friendly
          default: true
        type:
          type: string
          title: Type
          default: discussion
        subtype:
          type: string
          title: Subtype
          default: generic
        is_live:
          type: boolean
          title: Is Live
          default: false
        deep_results:
          anyOf:
            - $ref: '#/components/schemas/DeepResult'
            - type: 'null'
        schemas:
          anyOf:
            - items: {}
              type: array
            - type: 'null'
          title: Schemas
        meta_url:
          anyOf:
            - type: object
            - type: 'null'
          title: Meta Url
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        age:
          anyOf:
            - type: string
            - type: 'null'
          title: Age
        location:
          anyOf:
            - $ref: '#/components/schemas/LocationResult'
            - type: 'null'
        restaurant:
          anyOf:
            - $ref: '#/components/schemas/LocationResult'
            - type: 'null'
        video:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__VideoData
            - type: 'null'
        movie:
          anyOf:
            - $ref: '#/components/schemas/MovieData'
            - type: 'null'
        faq:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__FAQ
            - type: 'null'
        qa:
          anyOf:
            - $ref: '#/components/schemas/QAPage'
            - type: 'null'
        book:
          anyOf:
            - $ref: '#/components/schemas/Book'
            - type: 'null'
        rating:
          anyOf:
            - $ref: '#/components/schemas/Rating'
            - type: 'null'
        article:
          anyOf:
            - $ref: '#/components/schemas/Article'
            - type: 'null'
        product:
          anyOf:
            - $ref: '#/components/schemas/Product'
            - $ref: '#/components/schemas/Review'
            - type: 'null'
          title: Product
        product_cluster:
          anyOf:
            - items:
                anyOf:
                  - $ref: '#/components/schemas/Product'
                  - $ref: '#/components/schemas/Review'
              type: array
            - type: 'null'
          title: Product Cluster
        cluster_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Cluster Type
        cluster:
          anyOf:
            - items:
                $ref: '#/components/schemas/Result'
              type: array
            - type: 'null'
          title: Cluster
        creative_work:
          anyOf:
            - $ref: '#/components/schemas/CreativeWork'
            - type: 'null'
        music_recording:
          anyOf:
            - $ref: '#/components/schemas/MusicRecording'
            - type: 'null'
        review:
          anyOf:
            - $ref: '#/components/schemas/Review'
            - type: 'null'
        recipe:
          anyOf:
            - $ref: '#/components/schemas/Recipe'
            - type: 'null'
        software:
          anyOf:
            - $ref: '#/components/schemas/Software'
            - type: 'null'
        organization:
          anyOf:
            - $ref: '#/components/schemas/Organization'
            - type: 'null'
        content_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Content Type
        extra_snippets:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Extra Snippets
        icons:
          anyOf:
            - items:
                $ref: '#/components/schemas/PostprocessedIcon'
              type: array
            - type: 'null'
          title: Icons
        data:
          anyOf:
            - $ref: '#/components/schemas/ForumData'
            - type: 'null'
      type: object
      required:
        - title
        - url
      title: DiscussionResult
    QA:
      properties:
        question:
          type: string
          title: Question
        answer:
          type: string
          title: Answer
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        meta_url:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__MetaUrl
            - type: 'null'
      type: object
      required:
        - question
        - answer
        - title
        - url
      title: QA
    ServiceType:
      type: string
      enum:
        - graph
        - rich
        - qanda
      title: ServiceType
    GenericInfobox:
      properties:
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        is_source_local:
          type: boolean
          title: Is Source Local
          default: false
        is_source_both:
          type: boolean
          title: Is Source Both
          default: false
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          default: ''
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Age
        page_fetched:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Fetched
        fetched_content_timestamp:
          anyOf:
            - type: integer
            - type: 'null'
          title: Fetched Content Timestamp
        profile:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Profile
            - type: 'null'
        language:
          anyOf:
            - type: string
            - type: 'null'
          title: Language
        family_friendly:
          type: boolean
          title: Family Friendly
          default: true
        type:
          type: string
          title: Type
          default: infobox
        position:
          type: integer
          title: Position
        label:
          anyOf:
            - type: string
            - type: 'null'
          title: Label
        category:
          anyOf:
            - type: string
            - type: 'null'
          title: Category
        long_desc:
          anyOf:
            - type: string
            - type: 'null'
          title: Long Desc
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        attributes:
          items:
            items:
              anyOf:
                - type: string
                - type: 'null'
            type: array
            maxItems: 2
            minItems: 2
          type: array
          title: Attributes
          default: []
        profiles:
          anyOf:
            - items:
                $ref: >-
                  #/components/schemas/app__models__products__search__v1__shared__Profile
              type: array
            - items:
                $ref: '#/components/schemas/DataProvider'
              type: array
            - type: 'null'
          title: Profiles
        website_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Website Url
        ratings:
          anyOf:
            - items:
                $ref: '#/components/schemas/Rating'
              type: array
            - type: 'null'
          title: Ratings
        providers:
          anyOf:
            - items:
                $ref: '#/components/schemas/DataProvider'
              type: array
            - type: 'null'
          title: Providers
        distance:
          anyOf:
            - $ref: '#/components/schemas/Unit'
            - type: 'null'
        images:
          anyOf:
            - items:
                $ref: >-
                  #/components/schemas/app__models__products__search__v1__shared__Thumbnail
              type: array
            - type: 'null'
          title: Images
        movie:
          anyOf:
            - $ref: '#/components/schemas/MovieData'
            - type: 'null'
        subtype:
          type: string
          enum:
            - generic
          const: generic
          title: Subtype
          default: generic
        found_in_urls:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Found In Urls
      type: object
      required:
        - title
        - url
        - position
      title: GenericInfobox
    QAInfobox:
      properties:
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        is_source_local:
          type: boolean
          title: Is Source Local
          default: false
        is_source_both:
          type: boolean
          title: Is Source Both
          default: false
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          default: ''
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Age
        page_fetched:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Fetched
        fetched_content_timestamp:
          anyOf:
            - type: integer
            - type: 'null'
          title: Fetched Content Timestamp
        profile:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Profile
            - type: 'null'
        language:
          anyOf:
            - type: string
            - type: 'null'
          title: Language
        family_friendly:
          type: boolean
          title: Family Friendly
          default: true
        type:
          type: string
          title: Type
          default: infobox
        position:
          type: integer
          title: Position
        label:
          anyOf:
            - type: string
            - type: 'null'
          title: Label
        category:
          anyOf:
            - type: string
            - type: 'null'
          title: Category
        long_desc:
          anyOf:
            - type: string
            - type: 'null'
          title: Long Desc
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        attributes:
          items:
            items:
              anyOf:
                - type: string
                - type: 'null'
            type: array
            maxItems: 2
            minItems: 2
          type: array
          title: Attributes
          default: []
        profiles:
          anyOf:
            - items:
                $ref: >-
                  #/components/schemas/app__models__products__search__v1__shared__Profile
              type: array
            - items:
                $ref: '#/components/schemas/DataProvider'
              type: array
            - type: 'null'
          title: Profiles
        website_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Website Url
        ratings:
          anyOf:
            - items:
                $ref: '#/components/schemas/Rating'
              type: array
            - type: 'null'
          title: Ratings
        providers:
          anyOf:
            - items:
                $ref: '#/components/schemas/DataProvider'
              type: array
            - type: 'null'
          title: Providers
        distance:
          anyOf:
            - $ref: '#/components/schemas/Unit'
            - type: 'null'
        images:
          anyOf:
            - items:
                $ref: >-
                  #/components/schemas/app__models__products__search__v1__shared__Thumbnail
              type: array
            - type: 'null'
          title: Images
        movie:
          anyOf:
            - $ref: '#/components/schemas/MovieData'
            - type: 'null'
        subtype:
          type: string
          enum:
            - code
          const: code
          title: Subtype
          default: code
        data:
          $ref: '#/components/schemas/QAPage'
        meta_url:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__MetaUrl
            - type: 'null'
      type: object
      required:
        - title
        - url
        - position
        - data
      title: QAInfobox
    InfoboxPlace:
      properties:
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        is_source_local:
          type: boolean
          title: Is Source Local
          default: false
        is_source_both:
          type: boolean
          title: Is Source Both
          default: false
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          default: ''
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Age
        page_fetched:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Fetched
        fetched_content_timestamp:
          anyOf:
            - type: integer
            - type: 'null'
          title: Fetched Content Timestamp
        profile:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Profile
            - type: 'null'
        language:
          anyOf:
            - type: string
            - type: 'null'
          title: Language
        family_friendly:
          type: boolean
          title: Family Friendly
          default: true
        type:
          type: string
          title: Type
          default: infobox
        position:
          type: integer
          title: Position
        label:
          anyOf:
            - type: string
            - type: 'null'
          title: Label
        category:
          anyOf:
            - type: string
            - type: 'null'
          title: Category
        long_desc:
          anyOf:
            - type: string
            - type: 'null'
          title: Long Desc
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        attributes:
          items:
            items:
              anyOf:
                - type: string
                - type: 'null'
            type: array
            maxItems: 2
            minItems: 2
          type: array
          title: Attributes
          default: []
        profiles:
          anyOf:
            - items:
                $ref: >-
                  #/components/schemas/app__models__products__search__v1__shared__Profile
              type: array
            - items:
                $ref: '#/components/schemas/DataProvider'
              type: array
            - type: 'null'
          title: Profiles
        website_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Website Url
        ratings:
          anyOf:
            - items:
                $ref: '#/components/schemas/Rating'
              type: array
            - type: 'null'
          title: Ratings
        providers:
          anyOf:
            - items:
                $ref: '#/components/schemas/DataProvider'
              type: array
            - type: 'null'
          title: Providers
        distance:
          anyOf:
            - $ref: '#/components/schemas/Unit'
            - type: 'null'
        images:
          anyOf:
            - items:
                $ref: >-
                  #/components/schemas/app__models__products__search__v1__shared__Thumbnail
              type: array
            - type: 'null'
          title: Images
        movie:
          anyOf:
            - $ref: '#/components/schemas/MovieData'
            - type: 'null'
        subtype:
          type: string
          enum:
            - place
          const: place
          title: Subtype
          default: place
        found_in_urls:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Found In Urls
        is_location:
          type: boolean
          title: Is Location
          default: false
        coordinates:
          anyOf:
            - prefixItems:
                - type: number
                - type: number
              type: array
              maxItems: 2
              minItems: 2
            - type: 'null'
          title: Coordinates
        zoom_level:
          anyOf:
            - type: integer
            - type: 'null'
          title: Zoom Level
        location:
          $ref: '#/components/schemas/LocationResult'
      type: object
      required:
        - title
        - url
        - position
        - location
      title: InfoboxPlace
    InfoboxWithLocation:
      properties:
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        is_source_local:
          type: boolean
          title: Is Source Local
          default: false
        is_source_both:
          type: boolean
          title: Is Source Both
          default: false
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          default: ''
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Age
        page_fetched:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Fetched
        fetched_content_timestamp:
          anyOf:
            - type: integer
            - type: 'null'
          title: Fetched Content Timestamp
        profile:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Profile
            - type: 'null'
        language:
          anyOf:
            - type: string
            - type: 'null'
          title: Language
        family_friendly:
          type: boolean
          title: Family Friendly
          default: true
        type:
          type: string
          title: Type
          default: infobox
        position:
          type: integer
          title: Position
        label:
          anyOf:
            - type: string
            - type: 'null'
          title: Label
        category:
          anyOf:
            - type: string
            - type: 'null'
          title: Category
        long_desc:
          anyOf:
            - type: string
            - type: 'null'
          title: Long Desc
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        attributes:
          items:
            items:
              anyOf:
                - type: string
                - type: 'null'
            type: array
            maxItems: 2
            minItems: 2
          type: array
          title: Attributes
          default: []
        profiles:
          anyOf:
            - items:
                $ref: >-
                  #/components/schemas/app__models__products__search__v1__shared__Profile
              type: array
            - items:
                $ref: '#/components/schemas/DataProvider'
              type: array
            - type: 'null'
          title: Profiles
        website_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Website Url
        ratings:
          anyOf:
            - items:
                $ref: '#/components/schemas/Rating'
              type: array
            - type: 'null'
          title: Ratings
        providers:
          anyOf:
            - items:
                $ref: '#/components/schemas/DataProvider'
              type: array
            - type: 'null'
          title: Providers
        distance:
          anyOf:
            - $ref: '#/components/schemas/Unit'
            - type: 'null'
        images:
          anyOf:
            - items:
                $ref: >-
                  #/components/schemas/app__models__products__search__v1__shared__Thumbnail
              type: array
            - type: 'null'
          title: Images
        movie:
          anyOf:
            - $ref: '#/components/schemas/MovieData'
            - type: 'null'
        subtype:
          type: string
          enum:
            - location
          const: location
          title: Subtype
          default: location
        found_in_urls:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Found In Urls
        is_location:
          type: boolean
          title: Is Location
          default: false
        coordinates:
          anyOf:
            - prefixItems:
                - type: number
                - type: number
              type: array
              maxItems: 2
              minItems: 2
            - type: 'null'
          title: Coordinates
        zoom_level:
          anyOf:
            - type: integer
            - type: 'null'
          title: Zoom Level
        location:
          anyOf:
            - $ref: '#/components/schemas/LocationResult'
            - type: 'null'
      type: object
      required:
        - title
        - url
        - position
      title: InfoboxWithLocation
    EntityInfobox:
      properties:
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        is_source_local:
          type: boolean
          title: Is Source Local
          default: false
        is_source_both:
          type: boolean
          title: Is Source Both
          default: false
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          default: ''
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Age
        page_fetched:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Fetched
        fetched_content_timestamp:
          anyOf:
            - type: integer
            - type: 'null'
          title: Fetched Content Timestamp
        profile:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Profile
            - type: 'null'
        language:
          anyOf:
            - type: string
            - type: 'null'
          title: Language
        family_friendly:
          type: boolean
          title: Family Friendly
          default: true
        type:
          type: string
          title: Type
          default: infobox
        position:
          type: integer
          title: Position
        label:
          anyOf:
            - type: string
            - type: 'null'
          title: Label
        category:
          anyOf:
            - type: string
            - type: 'null'
          title: Category
        long_desc:
          anyOf:
            - type: string
            - type: 'null'
          title: Long Desc
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        attributes:
          items:
            items:
              anyOf:
                - type: string
                - type: 'null'
            type: array
            maxItems: 2
            minItems: 2
          type: array
          title: Attributes
          default: []
        profiles:
          anyOf:
            - items:
                $ref: >-
                  #/components/schemas/app__models__products__search__v1__shared__Profile
              type: array
            - items:
                $ref: '#/components/schemas/DataProvider'
              type: array
            - type: 'null'
          title: Profiles
        website_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Website Url
        ratings:
          anyOf:
            - items:
                $ref: '#/components/schemas/Rating'
              type: array
            - type: 'null'
          title: Ratings
        providers:
          anyOf:
            - items:
                $ref: '#/components/schemas/DataProvider'
              type: array
            - type: 'null'
          title: Providers
        distance:
          anyOf:
            - $ref: '#/components/schemas/Unit'
            - type: 'null'
        images:
          anyOf:
            - items:
                $ref: >-
                  #/components/schemas/app__models__products__search__v1__shared__Thumbnail
              type: array
            - type: 'null'
          title: Images
        movie:
          anyOf:
            - $ref: '#/components/schemas/MovieData'
            - type: 'null'
        subtype:
          type: string
          enum:
            - entity
          const: entity
          title: Subtype
          default: entity
      type: object
      required:
        - title
        - url
        - position
      title: EntityInfobox
    LocationResult:
      properties:
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        is_source_local:
          type: boolean
          title: Is Source Local
          default: false
        is_source_both:
          type: boolean
          title: Is Source Both
          default: false
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          default: ''
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Age
        page_fetched:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Fetched
        fetched_content_timestamp:
          anyOf:
            - type: integer
            - type: 'null'
          title: Fetched Content Timestamp
        profile:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Profile
            - type: 'null'
        language:
          anyOf:
            - type: string
            - type: 'null'
          title: Language
        family_friendly:
          type: boolean
          title: Family Friendly
          default: true
        type:
          type: string
          title: Type
          default: location_result
        provider_url:
          type: string
          title: Provider Url
        coordinates:
          anyOf:
            - prefixItems:
                - type: number
                - type: number
              type: array
              maxItems: 2
              minItems: 2
            - type: 'null'
          title: Coordinates
        zoom_level:
          type: integer
          title: Zoom Level
          default: 7
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        postal_address:
          anyOf:
            - $ref: '#/components/schemas/PostalAddress'
            - type: 'null'
        opening_hours:
          anyOf:
            - $ref: '#/components/schemas/OpeningHours'
            - type: 'null'
        contact:
          anyOf:
            - $ref: '#/components/schemas/Contact'
            - type: 'null'
        price_range:
          anyOf:
            - type: string
            - type: 'null'
          title: Price Range
        rating:
          anyOf:
            - $ref: '#/components/schemas/Rating'
            - type: 'null'
        distance:
          anyOf:
            - $ref: '#/components/schemas/Unit'
            - type: 'null'
        profiles:
          anyOf:
            - items:
                $ref: '#/components/schemas/DataProvider'
              type: array
            - type: 'null'
          title: Profiles
        reviews:
          anyOf:
            - $ref: '#/components/schemas/Reviews'
            - type: 'null'
        pictures:
          anyOf:
            - $ref: '#/components/schemas/PictureResults'
            - type: 'null'
        action:
          anyOf:
            - $ref: '#/components/schemas/Action'
            - type: 'null'
        serves_cuisine:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Serves Cuisine
        categories:
          items:
            type: string
          type: array
          title: Categories
          default: []
        icon_category:
          anyOf:
            - type: string
            - type: 'null'
          title: Icon Category
        timezone:
          anyOf:
            - type: string
            - type: 'null'
          title: Timezone
        timezone_offset:
          anyOf:
            - type: integer
            - type: 'null'
          title: Timezone Offset
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        results:
          anyOf:
            - items:
                $ref: '#/components/schemas/LocationWebResult'
              type: array
            - type: 'null'
          title: Results
      type: object
      required:
        - title
        - url
        - provider_url
      title: LocationResult
    ResultReference:
      properties:
        type:
          type: string
          title: Type
        index:
          anyOf:
            - type: integer
            - type: 'null'
          title: Index
        all:
          type: boolean
          title: All
          default: false
      type: object
      required:
        - type
      title: ResultReference
    app__models__products__search__v1__shared__NewsResult:
      properties:
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        is_source_local:
          type: boolean
          title: Is Source Local
          default: false
        is_source_both:
          type: boolean
          title: Is Source Both
          default: false
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          default: ''
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Age
        page_fetched:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Fetched
        fetched_content_timestamp:
          anyOf:
            - type: integer
            - type: 'null'
          title: Fetched Content Timestamp
        profile:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Profile
            - type: 'null'
        language:
          anyOf:
            - type: string
            - type: 'null'
          title: Language
        family_friendly:
          type: boolean
          title: Family Friendly
          default: true
        meta_url:
          anyOf:
            - type: object
            - type: 'null'
          title: Meta Url
        source:
          anyOf:
            - type: string
            - type: 'null'
          title: Source
        breaking:
          type: boolean
          title: Breaking
          default: false
        is_live:
          type: boolean
          title: Is Live
          default: false
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        age:
          anyOf:
            - type: string
            - type: 'null'
          title: Age
        extra_snippets:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Extra Snippets
        icons:
          anyOf:
            - items:
                $ref: '#/components/schemas/PostprocessedIcon'
              type: array
            - type: 'null'
          title: Icons
      type: object
      required:
        - title
        - url
      title: NewsResult
    app__models__products__search__v1__videos__VideoResult:
      properties:
        type:
          type: string
          title: Type
          description: >-
            The type of video search API result. The value is always
            `video_result`.
          default: video_result
        url:
          type: string
          title: Url
          description: The source URL of the video.
        title:
          type: string
          title: Title
          description: The title of the video.
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          description: The description for the video.
        age:
          anyOf:
            - type: string
            - type: 'null'
          title: Age
          description: A human readable representation of the page age.
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Age
          description: The page age found from the source web page.
        page_fetched:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Fetched
          description: >-
            The ISO date time when the page was last fetched. The format is
            `YYYY-MM-DDTHH:MM:SSZ`.
        fetched_content_timestamp:
          anyOf:
            - type: integer
            - type: 'null'
          title: Fetched Content Timestamp
          description: The timestamp when the content was fetched.
        video:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__videos__VideoData
            - type: 'null'
          description: Metadata for the video.
        meta_url:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__videos__MetaUrl
            - type: 'null'
          description: >-
            Aggregated information on the URL associated with the video search
            result.
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__videos__Thumbnail
            - type: 'null'
          description: The thumbnail for the video.
      type: object
      required:
        - url
        - title
      title: VideoResult
    SearchResult:
      properties:
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        is_source_local:
          type: boolean
          title: Is Source Local
          default: false
        is_source_both:
          type: boolean
          title: Is Source Both
          default: false
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          default: ''
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Age
        page_fetched:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Fetched
        fetched_content_timestamp:
          anyOf:
            - type: integer
            - type: 'null'
          title: Fetched Content Timestamp
        profile:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Profile
            - type: 'null'
        language:
          type: string
          title: Language
          default: en
        family_friendly:
          type: boolean
          title: Family Friendly
          default: true
        type:
          type: string
          title: Type
          default: search_result
        subtype:
          type: string
          title: Subtype
          default: generic
        is_live:
          type: boolean
          title: Is Live
          default: false
        deep_results:
          anyOf:
            - $ref: '#/components/schemas/DeepResult'
            - type: 'null'
        schemas:
          anyOf:
            - items: {}
              type: array
            - type: 'null'
          title: Schemas
        meta_url:
          anyOf:
            - type: object
            - type: 'null'
          title: Meta Url
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        age:
          anyOf:
            - type: string
            - type: 'null'
          title: Age
        location:
          anyOf:
            - $ref: '#/components/schemas/LocationResult'
            - type: 'null'
        restaurant:
          anyOf:
            - $ref: '#/components/schemas/LocationResult'
            - type: 'null'
        video:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__VideoData
            - type: 'null'
        movie:
          anyOf:
            - $ref: '#/components/schemas/MovieData'
            - type: 'null'
        faq:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__FAQ
            - type: 'null'
        qa:
          anyOf:
            - $ref: '#/components/schemas/QAPage'
            - type: 'null'
        book:
          anyOf:
            - $ref: '#/components/schemas/Book'
            - type: 'null'
        rating:
          anyOf:
            - $ref: '#/components/schemas/Rating'
            - type: 'null'
        article:
          anyOf:
            - $ref: '#/components/schemas/Article'
            - type: 'null'
        product:
          anyOf:
            - $ref: '#/components/schemas/Product'
            - $ref: '#/components/schemas/Review'
            - type: 'null'
          title: Product
        product_cluster:
          anyOf:
            - items:
                anyOf:
                  - $ref: '#/components/schemas/Product'
                  - $ref: '#/components/schemas/Review'
              type: array
            - type: 'null'
          title: Product Cluster
        cluster_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Cluster Type
        cluster:
          anyOf:
            - items:
                $ref: '#/components/schemas/Result'
              type: array
            - type: 'null'
          title: Cluster
        creative_work:
          anyOf:
            - $ref: '#/components/schemas/CreativeWork'
            - type: 'null'
        music_recording:
          anyOf:
            - $ref: '#/components/schemas/MusicRecording'
            - type: 'null'
        review:
          anyOf:
            - $ref: '#/components/schemas/Review'
            - type: 'null'
        recipe:
          anyOf:
            - $ref: '#/components/schemas/Recipe'
            - type: 'null'
        software:
          anyOf:
            - $ref: '#/components/schemas/Software'
            - type: 'null'
        organization:
          anyOf:
            - $ref: '#/components/schemas/Organization'
            - type: 'null'
        content_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Content Type
        extra_snippets:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Extra Snippets
        icons:
          anyOf:
            - items:
                $ref: '#/components/schemas/PostprocessedIcon'
              type: array
            - type: 'null'
          title: Icons
      type: object
      required:
        - title
        - url
      title: SearchResult
    ResponseCallback:
      properties:
        vertical:
          $ref: '#/components/schemas/SearchAPIVertical'
        callback_key:
          type: string
          title: Callback Key
      type: object
      required:
        - vertical
        - callback_key
      title: ResponseCallback
    ErrorCode:
      type: string
      enum:
        - INTERNAL
        - INVALID_ID
        - UNAUTHORIZED
        - RESOURCE_NOT_ALLOWED
        - FORBIDDEN
        - VALIDATION
        - INVALID_PASSWORD
        - INVALID_EMAIL
        - INVALID_NAME
        - INVALID_COMPANY
        - INVALID_VAT_NUMBER
        - INVALID_DESCRIPTION
        - INVALID_USAGE
        - INVALID_INVOICE_NOTES
        - INVALID_PURCHASE_ORDER
        - PASSWORD_REUSED
        - PASSWORD_BREACHED
        - INVALID_TIME_RANGE
        - USER_ALREADY_EXISTS
        - USER_INACTIVE
        - RESET_PASSWORD_BAD_TOKEN
        - USER_NOT_FOUND
        - LOGIN_BAD_CREDENTIALS
        - LOGIN_USER_LOCKED_OUT
        - LOGIN_USER_NOT_VERIFIED
        - LOGIN_INVALID_MFA_CHALLENGE
        - VERIFY_USER_BAD_TOKEN
        - VERIFY_USER_ALREADY_VERIFIED
        - PLAN_NOT_FOUND
        - PLAN_ALREADY_EXISTS
        - PLAN_ALREADY_PUBLIC
        - PLAN_ALREADY_ALLOWED
        - STRIPE_CUSTOMER_NOT_EXISTS
        - STRIPE_SUBSCRIPTION_NOT_EXISTS
        - PRODUCT_NOT_FOUND
        - API_VERSION_NOT_FOUND
        - PRODUCT_ALREADY_EXISTS
        - OPTION_NOT_FOUND
        - OPTION_ALREADY_EXISTS
        - OPTION_NOT_IN_PLAN
        - SUBSCRIPTION_TOKEN_LIMIT
        - SUBSCRIPTION_TOKEN_INVALID
        - SUBSCRIPTION_TOKEN_INACTIVE
        - SUBSCRIPTION_TOKEN_DEACTIVATED
        - SUBSCRIPTION_TOKEN_NOT_FOUND
        - SUBSCRIPTION_ALREADY_EXISTS
        - SUBSCRIPTION_NOT_FOUND
        - ACTIVITY_SESSION_NOT_FOUND
        - ORGANIZATION_NOT_FOUND
        - ORGANIZATION_NOT_MEMBER
        - NO_PLANS_SUBSCRIBED
        - QUOTA_LIMITED
        - RATE_LIMITED
        - USAGE_LIMIT_EXCEEDED
        - USAGE_LIMIT_NOT_FOUND
        - USAGE_LIMIT_ALREADY_EXISTS
        - RESOURCE_NOT_SUBSCRIBED
        - CONTENT_TYPE_NOT_SUPPORTED
        - AGGREGATION_NOT_SUPPORTED
        - TIME_GRANULARITY_NOT_SUPPORTED
        - CURRENCY_NOT_FOUND
        - CURRENCY_ALREADY_EXISTS
        - CSRF_VERIFICATION
        - INVALID_GOGGLE_URL
        - INVALID_URL
        - INVALID_DOMAIN
        - INVALID_RESULT_FILTER
        - CONTENT_URL_LIMIT_EXCEEDED
        - TOS_NOT_FOUND
        - ADDENDUM_NOT_FOUND
        - REDACTION_NOT_FOUND
        - REDACTION_ALREADY_EXISTS
        - ADDENDUM_ALREADY_EXISTS
        - TOS_ALREADY_EXISTS
        - QUERY_NOT_FOUND
        - EMAIL_DOMAIN_IN_BLOCKLIST_NOT_FOUND
        - EMAIL_DOMAIN_IN_BLOCKLIST_ALREADY_EXISTS
        - EMAIL_DOMAIN_NOT_ALLOWED
        - INVALID_TOTP_TOKEN
        - EMAIL_MFA_SENT_EXCEEDED
        - EMAIL_MFA_NOT_SENT
        - AUTHENTICATOR_MFA_ALREADY_EXISTS
        - AUTHENTICATOR_MFA_NOT_FOUND
        - MFA_FAIL_TOO_MANY_ATTEMPTS
        - INVALID_RECOVERY_CODE
        - MFA_TOKEN_NOT_FOUND
        - PAYMENT_METHOD_NOT_FOUND
        - PAYMENT_METHOD_ALREADY_EXISTS
        - ROLE_NOT_FOUND
        - USER_ALREADY_MEMBER
        - ORGANIZATION_INVITATION_ALREADY_EXISTS
        - INVALID_ORGANIZATION_INVITATION
        - ORGANIZATION_INVITATION_NOT_FOUND
        - COMPLIANCE_NOT_FOUND
        - AWS_MARKETPLACE_TOKEN_INVALID
        - AWS_MARKETPLACE_TOKEN_EXPIRED
        - AWS_MARKETPLACE_CUSTOMER_RESOLUTION_FAILED
        - AWS_MARKETPLACE_PRODUCT_NOT_FOUND
        - AWS_MARKETPLACE_CREDENTIALS_MISSING
        - AWS_MARKETPLACE_API_ERROR
        - EMAIL_CHANGE_BAD_TOKEN
        - EMAIL_CHANGE_INVALID_MFA_CHALLENGE
        - EMAIL_CHANGE_MFA_FAIL_TOO_MANY_ATTEMPTS
        - EMAIL_CHANGE_RATE_LIMITED
        - EMAIL_CHANGE_INVALID_PASSWORD
      title: ErrorCode
    app__models__products__search__v1__shared__Profile:
      properties:
        name:
          type: string
          title: Name
        url:
          type: string
          title: Url
        long_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Long Name
        img:
          anyOf:
            - type: string
            - type: 'null'
          title: Img
      type: object
      required:
        - name
        - url
      title: Profile
    DeepResult:
      properties:
        news:
          anyOf:
            - items:
                $ref: >-
                  #/components/schemas/app__models__products__search__v1__shared__NewsResult
              type: array
            - type: 'null'
          title: News
        buttons:
          anyOf:
            - items:
                $ref: '#/components/schemas/ButtonResult'
              type: array
            - type: 'null'
          title: Buttons
        videos:
          anyOf:
            - items:
                $ref: >-
                  #/components/schemas/app__models__products__search__v1__shared__VideoResult
              type: array
            - type: 'null'
          title: Videos
        images:
          anyOf:
            - items:
                $ref: '#/components/schemas/Image'
              type: array
            - type: 'null'
          title: Images
      type: object
      title: DeepResult
    app__models__products__search__v1__shared__Thumbnail:
      properties:
        src:
          type: string
          title: Src
        alt:
          anyOf:
            - type: string
            - type: 'null'
          title: Alt
        height:
          anyOf:
            - type: integer
            - type: 'null'
          title: Height
        width:
          anyOf:
            - type: integer
            - type: 'null'
          title: Width
        bg_color:
          anyOf:
            - type: string
            - type: 'null'
          title: Bg Color
        original:
          anyOf:
            - type: string
            - type: 'null'
          title: Original
        logo:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Logo
        duplicated:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Duplicated
        theme:
          anyOf:
            - type: string
            - type: 'null'
          title: Theme
      type: object
      required:
        - src
      title: Thumbnail
    app__models__products__search__v1__shared__VideoData:
      properties:
        duration:
          anyOf:
            - type: string
            - type: 'null'
          title: Duration
        views:
          anyOf:
            - type: string
            - type: 'null'
          title: Views
        creator:
          anyOf:
            - type: string
            - type: 'null'
          title: Creator
        publisher:
          anyOf:
            - type: string
            - type: 'null'
          title: Publisher
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        tags:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Tags
        author:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Profile
            - type: 'null'
        requires_subscription:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Requires Subscription
      type: object
      title: VideoData
    MovieData:
      properties:
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
        url:
          anyOf:
            - type: string
            - type: 'null'
          title: Url
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        release:
          anyOf:
            - type: string
            - type: 'null'
          title: Release
        directors:
          anyOf:
            - items:
                $ref: '#/components/schemas/Person'
              type: array
            - type: 'null'
          title: Directors
        actors:
          anyOf:
            - items:
                $ref: '#/components/schemas/Person'
              type: array
            - type: 'null'
          title: Actors
        rating:
          anyOf:
            - $ref: '#/components/schemas/Rating'
            - type: 'null'
        duration:
          anyOf:
            - type: string
            - type: 'null'
          title: Duration
        genre:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Genre
        query:
          anyOf:
            - type: string
            - type: 'null'
          title: Query
      type: object
      required:
        - name
        - description
        - url
      title: MovieData
    app__models__products__search__v1__shared__FAQ:
      properties:
        items:
          items:
            $ref: '#/components/schemas/QA'
          type: array
          title: Items
      type: object
      required:
        - items
      title: FAQ
    QAPage:
      properties:
        question:
          type: string
          title: Question
        answer:
          $ref: '#/components/schemas/Answer'
      type: object
      required:
        - question
        - answer
      title: QAPage
    Book:
      properties:
        title:
          type: string
          title: Title
        author:
          items:
            $ref: '#/components/schemas/Person'
          type: array
          title: Author
        date:
          anyOf:
            - type: string
            - type: 'null'
          title: Date
        price:
          anyOf:
            - $ref: '#/components/schemas/Price'
            - type: 'null'
        pages:
          anyOf:
            - type: integer
            - type: 'null'
          title: Pages
        publisher:
          anyOf:
            - $ref: '#/components/schemas/Person'
            - type: 'null'
        rating:
          anyOf:
            - $ref: '#/components/schemas/Rating'
            - type: 'null'
      type: object
      required:
        - title
        - author
      title: Book
    Rating:
      properties:
        ratingValue:
          type: number
          minimum: 0
          title: Ratingvalue
        bestRating:
          type: number
          exclusiveMinimum: 0
          title: Bestrating
        reviewCount:
          anyOf:
            - type: integer
            - type: 'null'
          title: Reviewcount
        profile:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Profile
            - type: 'null'
        is_tripadvisor:
          type: boolean
          title: Is Tripadvisor
          default: false
      type: object
      required:
        - ratingValue
        - bestRating
      title: Rating
    Article:
      properties:
        author:
          anyOf:
            - items:
                $ref: '#/components/schemas/Person'
              type: array
            - type: 'null'
          title: Author
        date:
          anyOf:
            - type: string
            - type: 'null'
          title: Date
        publisher:
          anyOf:
            - $ref: '#/components/schemas/Organization'
            - type: 'null'
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        isAccessibleForFree:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Isaccessibleforfree
      type: object
      title: Article
    Product:
      properties:
        type:
          type: string
          title: Type
          default: Product
        name:
          type: string
          minLength: 1
          title: Name
        url:
          anyOf:
            - type: string
            - type: 'null'
          title: Url
        category:
          anyOf:
            - type: string
            - type: 'null'
          title: Category
        price:
          type: string
          title: Price
        thumbnail:
          $ref: >-
            #/components/schemas/app__models__products__search__v1__shared__Thumbnail
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
        offers:
          items:
            $ref: '#/components/schemas/Offer'
          type: array
          title: Offers
          default: []
        rating:
          anyOf:
            - $ref: '#/components/schemas/Rating'
            - type: 'null'
      type: object
      required:
        - name
        - price
        - thumbnail
      title: Product
    Review:
      properties:
        type:
          type: string
          title: Type
          default: Review
        name:
          type: string
          title: Name
        thumbnail:
          $ref: >-
            #/components/schemas/app__models__products__search__v1__shared__Thumbnail
        description:
          type: string
          title: Description
        rating:
          $ref: '#/components/schemas/Rating'
      type: object
      required:
        - name
        - thumbnail
        - description
        - rating
      title: Review
    Result:
      properties:
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        is_source_local:
          type: boolean
          title: Is Source Local
          default: false
        is_source_both:
          type: boolean
          title: Is Source Both
          default: false
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          default: ''
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Age
        page_fetched:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Fetched
        fetched_content_timestamp:
          anyOf:
            - type: integer
            - type: 'null'
          title: Fetched Content Timestamp
        profile:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Profile
            - type: 'null'
        language:
          anyOf:
            - type: string
            - type: 'null'
          title: Language
        family_friendly:
          type: boolean
          title: Family Friendly
          default: true
      type: object
      required:
        - title
        - url
      title: Result
    CreativeWork:
      properties:
        name:
          type: string
          minLength: 1
          title: Name
        rating:
          anyOf:
            - $ref: '#/components/schemas/Rating'
            - type: 'null'
        thumbnail:
          $ref: >-
            #/components/schemas/app__models__products__search__v1__shared__Thumbnail
      type: object
      required:
        - name
        - thumbnail
      title: CreativeWork
    MusicRecording:
      properties:
        name:
          type: string
          minLength: 1
          title: Name
        rating:
          anyOf:
            - $ref: '#/components/schemas/Rating'
            - type: 'null'
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
      type: object
      required:
        - name
      title: MusicRecording
    Recipe:
      properties:
        title:
          type: string
          title: Title
        description:
          type: string
          title: Description
        thumbnail:
          $ref: >-
            #/components/schemas/app__models__products__search__v1__shared__Thumbnail
        url:
          type: string
          title: Url
        domain:
          type: string
          title: Domain
        favicon:
          type: string
          title: Favicon
        time:
          anyOf:
            - type: string
            - type: 'null'
          title: Time
        prep_time:
          anyOf:
            - type: string
            - type: 'null'
          title: Prep Time
        cook_time:
          anyOf:
            - type: string
            - type: 'null'
          title: Cook Time
        ingredients:
          anyOf:
            - type: string
            - type: 'null'
          title: Ingredients
        instructions:
          anyOf:
            - items:
                $ref: '#/components/schemas/HowTo'
              type: array
            - type: 'null'
          title: Instructions
        servings:
          anyOf:
            - type: integer
            - type: 'null'
          title: Servings
        calories:
          anyOf:
            - type: integer
            - type: 'null'
          title: Calories
        publisher:
          anyOf:
            - type: string
            - type: 'null'
          title: Publisher
        rating:
          anyOf:
            - $ref: '#/components/schemas/Rating'
            - type: 'null'
        recipeCategory:
          anyOf:
            - type: string
            - type: 'null'
          title: Recipecategory
        recipeCuisine:
          anyOf:
            - type: string
            - type: 'null'
          title: Recipecuisine
        video:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__VideoData
            - type: 'null'
      type: object
      required:
        - title
        - description
        - thumbnail
        - url
        - domain
        - favicon
      title: Recipe
    Software:
      properties:
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        author:
          anyOf:
            - type: string
            - type: 'null'
          title: Author
        version:
          anyOf:
            - type: string
            - type: 'null'
          title: Version
        codeRepository:
          anyOf:
            - type: string
            - type: 'null'
          title: Coderepository
        homepage:
          anyOf:
            - type: string
            - type: 'null'
          title: Homepage
        datePublished:
          anyOf:
            - type: string
            - type: 'null'
          title: Datepublished
        is_npm:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Is Npm
        is_pypi:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Is Pypi
        stars:
          anyOf:
            - type: integer
            - type: 'null'
          title: Stars
        forks:
          anyOf:
            - type: integer
            - type: 'null'
          title: Forks
        programmingLanguage:
          anyOf:
            - type: string
            - type: 'null'
          title: Programminglanguage
      type: object
      title: Software
    Organization:
      properties:
        type:
          type: string
          title: Type
          default: organization
        name:
          type: string
          title: Name
        url:
          anyOf:
            - type: string
            - type: 'null'
          title: Url
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        contact_points:
          anyOf:
            - items:
                $ref: '#/components/schemas/ContactPoint'
              type: array
            - type: 'null'
          title: Contact Points
      type: object
      required:
        - name
      title: Organization
    PostprocessedIcon:
      properties:
        href:
          type: string
          title: Href
        sizes:
          anyOf:
            - type: string
            - type: 'null'
          title: Sizes
        rel:
          anyOf:
            - type: string
            - type: 'null'
          title: Rel
        type:
          anyOf:
            - type: string
            - type: 'null'
          title: Type
        ext:
          anyOf:
            - type: string
            - type: 'null'
          title: Ext
      type: object
      required:
        - href
        - sizes
        - rel
        - type
        - ext
      title: PostprocessedIcon
    ForumData:
      properties:
        forum_name:
          type: string
          title: Forum Name
        num_answers:
          anyOf:
            - type: integer
            - type: 'null'
          title: Num Answers
        score:
          anyOf:
            - type: string
            - type: 'null'
          title: Score
        title:
          anyOf:
            - type: string
            - type: 'null'
          title: Title
        question:
          anyOf:
            - type: string
            - type: 'null'
          title: Question
        top_comment:
          anyOf:
            - type: string
            - type: 'null'
          title: Top Comment
      type: object
      required:
        - forum_name
      title: ForumData
    app__models__products__search__v1__shared__MetaUrl:
      properties:
        scheme:
          type: string
          title: Scheme
        netloc:
          type: string
          title: Netloc
        hostname:
          anyOf:
            - type: string
            - type: 'null'
          title: Hostname
        favicon:
          type: string
          title: Favicon
        path:
          type: string
          title: Path
      type: object
      required:
        - scheme
        - netloc
        - favicon
        - path
      title: MetaUrl
    DataProvider:
      properties:
        type:
          type: string
          title: Type
          default: external
        name:
          type: string
          title: Name
        url:
          type: string
          title: Url
        long_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Long Name
        img:
          anyOf:
            - type: string
            - type: 'null'
          title: Img
      type: object
      required:
        - name
        - url
      title: DataProvider
    Unit:
      properties:
        value:
          type: number
          title: Value
        units:
          type: string
          title: Units
      type: object
      required:
        - value
        - units
      title: Unit
    PostalAddress:
      properties:
        type:
          type: string
          title: Type
          default: PostalAddress
        country:
          anyOf:
            - type: string
            - type: 'null'
          title: Country
        postalCode:
          anyOf:
            - type: string
            - type: 'null'
          title: Postalcode
        streetAddress:
          anyOf:
            - type: string
            - type: 'null'
          title: Streetaddress
        addressRegion:
          anyOf:
            - type: string
            - type: 'null'
          title: Addressregion
        addressLocality:
          anyOf:
            - type: string
            - type: 'null'
          title: Addresslocality
        displayAddress:
          type: string
          title: Displayaddress
      type: object
      required:
        - country
        - postalCode
        - streetAddress
        - addressRegion
        - addressLocality
        - displayAddress
      title: PostalAddress
    OpeningHours:
      properties:
        current_day:
          anyOf:
            - items:
                $ref: '#/components/schemas/DayOpeningHours'
              type: array
            - type: 'null'
          title: Current Day
        days:
          anyOf:
            - items:
                items:
                  $ref: '#/components/schemas/DayOpeningHours'
                type: array
              type: array
            - type: 'null'
          title: Days
      type: object
      title: OpeningHours
    Contact:
      properties:
        email:
          anyOf:
            - type: string
            - type: 'null'
          title: Email
        telephone:
          anyOf:
            - type: string
            - type: 'null'
          title: Telephone
      type: object
      title: Contact
    Reviews:
      properties:
        results:
          items:
            $ref: '#/components/schemas/TripadvisorReview'
          type: array
          title: Results
        viewMoreUrl:
          type: string
          title: Viewmoreurl
        reviews_in_foreign_language:
          type: boolean
          title: Reviews In Foreign Language
      type: object
      required:
        - results
        - viewMoreUrl
        - reviews_in_foreign_language
      title: Reviews
    PictureResults:
      properties:
        viewMoreUrl:
          anyOf:
            - type: string
            - type: 'null'
          title: Viewmoreurl
        results:
          items:
            $ref: >-
              #/components/schemas/app__models__products__search__v1__shared__Thumbnail
          type: array
          title: Results
      type: object
      required:
        - viewMoreUrl
        - results
      title: PictureResults
    Action:
      properties:
        type:
          type: string
          title: Type
        url:
          type: string
          title: Url
      type: object
      required:
        - type
        - url
      title: Action
    LocationWebResult:
      properties:
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        is_source_local:
          type: boolean
          title: Is Source Local
          default: false
        is_source_both:
          type: boolean
          title: Is Source Both
          default: false
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          default: ''
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Age
        page_fetched:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Fetched
        fetched_content_timestamp:
          anyOf:
            - type: integer
            - type: 'null'
          title: Fetched Content Timestamp
        profile:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Profile
            - type: 'null'
        language:
          anyOf:
            - type: string
            - type: 'null'
          title: Language
        family_friendly:
          type: boolean
          title: Family Friendly
          default: true
        meta_url:
          $ref: >-
            #/components/schemas/app__models__products__search__v1__shared__MetaUrl
      type: object
      required:
        - title
        - url
        - meta_url
      title: LocationWebResult
    app__models__products__search__v1__videos__VideoData:
      properties:
        duration:
          anyOf:
            - type: string
            - type: 'null'
          title: Duration
          description: A time string representing the duration of the video.
        views:
          anyOf:
            - type: integer
            - type: 'null'
          title: Views
          description: The number of views of the video.
        creator:
          anyOf:
            - type: string
            - type: 'null'
          title: Creator
          description: The creator of the video.
        publisher:
          anyOf:
            - type: string
            - type: 'null'
          title: Publisher
          description: The publisher of the video.
        requires_subscription:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Requires Subscription
          description: Whether the video requires a subscription.
        tags:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Tags
          description: A list of tags relevant to the video.
        author:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__videos__Profile
            - type: 'null'
          description: A profile associated with the video.
      type: object
      title: VideoData
    app__models__products__search__v1__videos__MetaUrl:
      properties:
        scheme:
          anyOf:
            - type: string
            - type: 'null'
          title: Scheme
          description: The protocol scheme extracted from the URL.
        netloc:
          anyOf:
            - type: string
            - type: 'null'
          title: Netloc
          description: The network location part extracted from the URL.
        hostname:
          anyOf:
            - type: string
            - type: 'null'
          title: Hostname
          description: The lowercased domain name extracted from the URL.
        favicon:
          anyOf:
            - type: string
            - type: 'null'
          title: Favicon
          description: The favicon used for the URL.
        path:
          anyOf:
            - type: string
            - type: 'null'
          title: Path
          description: The hierarchical path of the URL useful as a display string.
      type: object
      title: MetaUrl
    app__models__products__search__v1__videos__Thumbnail:
      properties:
        src:
          type: string
          title: Src
          description: The served URL of the thumbnail associated with the video.
        original:
          anyOf:
            - type: string
            - type: 'null'
          title: Original
          description: The original URL of the thumbnail associated with the video.
      type: object
      required:
        - src
      title: Thumbnail
    SearchAPIVertical:
      type: string
      enum:
        - calculator
        - cryptocurrency
        - currency
        - definitions
        - packagetracker
        - sports
        - stocks
        - unitconversion
        - unixtimestamp
        - weather
      title: SearchAPIVertical
    ButtonResult:
      properties:
        type:
          type: string
          title: Type
          default: button_result
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
      type: object
      required:
        - title
        - url
      title: ButtonResult
    app__models__products__search__v1__shared__VideoResult:
      properties:
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        is_source_local:
          type: boolean
          title: Is Source Local
          default: false
        is_source_both:
          type: boolean
          title: Is Source Both
          default: false
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          default: ''
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Age
        page_fetched:
          anyOf:
            - type: string
            - type: 'null'
          title: Page Fetched
        fetched_content_timestamp:
          anyOf:
            - type: integer
            - type: 'null'
          title: Fetched Content Timestamp
        profile:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Profile
            - type: 'null'
        language:
          anyOf:
            - type: string
            - type: 'null'
          title: Language
        family_friendly:
          type: boolean
          title: Family Friendly
          default: true
        type:
          type: string
          title: Type
          default: video_result
        video:
          $ref: >-
            #/components/schemas/app__models__products__search__v1__shared__VideoData
        meta_url:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__MetaUrl
            - type: 'null'
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        age:
          anyOf:
            - type: string
            - type: 'null'
          title: Age
        publisher:
          anyOf:
            - type: string
            - type: 'null'
          title: Publisher
      type: object
      required:
        - title
        - url
        - video
      title: VideoResult
    Image:
      properties:
        thumbnail:
          $ref: >-
            #/components/schemas/app__models__products__search__v1__shared__Thumbnail
        url:
          anyOf:
            - type: string
            - type: 'null'
          title: Url
        properties:
          anyOf:
            - $ref: '#/components/schemas/ImageProperties'
            - type: 'null'
      type: object
      required:
        - thumbnail
      title: Image
    Person:
      properties:
        type:
          type: string
          title: Type
          default: person
        name:
          type: string
          title: Name
        url:
          anyOf:
            - type: string
            - type: 'null'
          title: Url
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        email:
          anyOf:
            - type: string
            - type: 'null'
          title: Email
      type: object
      required:
        - name
      title: Person
    Answer:
      properties:
        text:
          type: string
          title: Text
        author:
          anyOf:
            - type: string
            - type: 'null'
          title: Author
        upvoteCount:
          anyOf:
            - type: integer
            - type: 'null'
          title: Upvotecount
        downvoteCount:
          anyOf:
            - type: integer
            - type: 'null'
          title: Downvotecount
      type: object
      required:
        - text
      title: Answer
    Price:
      properties:
        price:
          type: string
          title: Price
        priceCurrency:
          type: string
          title: Pricecurrency
      type: object
      required:
        - price
        - priceCurrency
      title: Price
    Offer:
      properties:
        url:
          type: string
          title: Url
        priceCurrency:
          type: string
          title: Pricecurrency
        price:
          type: string
          title: Price
      type: object
      required:
        - url
        - priceCurrency
        - price
      title: Offer
    HowTo:
      properties:
        text:
          type: string
          title: Text
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        url:
          anyOf:
            - type: string
            - type: 'null'
          title: Url
        image:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Image
      type: object
      required:
        - text
      title: HowTo
    ContactPoint:
      properties:
        type:
          type: string
          title: Type
          default: contact_point
        name:
          type: string
          title: Name
        url:
          anyOf:
            - type: string
            - type: 'null'
          title: Url
        thumbnail:
          anyOf:
            - $ref: >-
                #/components/schemas/app__models__products__search__v1__shared__Thumbnail
            - type: 'null'
        telephone:
          anyOf:
            - type: string
            - type: 'null'
          title: Telephone
        email:
          anyOf:
            - type: string
            - type: 'null'
          title: Email
      type: object
      required:
        - name
      title: ContactPoint
    DayOpeningHours:
      properties:
        abbr_name:
          type: string
          title: Abbr Name
        full_name:
          type: string
          title: Full Name
        opens:
          type: string
          title: Opens
        closes:
          type: string
          title: Closes
      type: object
      required:
        - abbr_name
        - full_name
        - opens
        - closes
      title: DayOpeningHours
    TripadvisorReview:
      properties:
        title:
          type: string
          title: Title
        description:
          type: string
          title: Description
        date:
          type: string
          title: Date
        rating:
          $ref: '#/components/schemas/Rating'
        author:
          $ref: '#/components/schemas/Person'
        review_url:
          type: string
          title: Review Url
        language:
          type: string
          title: Language
      type: object
      required:
        - title
        - description
        - date
        - rating
        - author
        - review_url
        - language
      title: TripadvisorReview
    app__models__products__search__v1__videos__Profile:
      properties:
        name:
          type: string
          title: Name
          description: The name of the profile.
        url:
          type: string
          title: Url
          description: The original URL where the profile is available.
        long_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Long Name
          description: The long name of the profile.
        img:
          anyOf:
            - type: string
            - type: 'null'
          title: Img
          description: The served image URL representing the profile.
      type: object
      required:
        - name
        - url
      title: Profile
    ImageProperties:
      properties:
        url:
          type: string
          title: Url
        resized:
          type: string
          title: Resized
        placeholder:
          type: string
          title: Placeholder
        height:
          anyOf:
            - type: integer
            - type: 'null'
          title: Height
        width:
          anyOf:
            - type: integer
            - type: 'null'
          title: Width
        format:
          anyOf:
            - type: string
            - type: 'null'
          title: Format
        content_size:
          anyOf:
            - type: string
            - type: 'null'
          title: Content Size
      type: object
      required:
        - url
        - resized
        - placeholder
        - content_size
      title: ImageProperties
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-subscription-token
      description: The subscription token that was generated for the product.

````