{
  "ownerName": "Google",
  "basePath": "",
  "name": "customsearch",
  "title": "Custom Search API",
  "description": "Searches over a website or collection of websites",
  "servicePath": "",
  "discoveryVersion": "v1",
  "parameters": {
    "prettyPrint": {
      "type": "boolean",
      "description": "Returns response with indentations and line breaks.",
      "default": "true",
      "location": "query"
    },
    "oauth_token": {
      "location": "query",
      "type": "string",
      "description": "OAuth 2.0 token for the current user."
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "quotaUser": {
      "location": "query",
      "type": "string",
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters."
    },
    "alt": {
      "default": "json",
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "type": "string",
      "location": "query"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "upload_protocol": {
      "location": "query",
      "type": "string",
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")."
    },
    "key": {
      "type": "string",
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query"
    },
    "$.xgafv": {
      "enum": [
        "1",
        "2"
      ],
      "location": "query",
      "type": "string",
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "description": "V1 error format."
    },
    "callback": {
      "location": "query",
      "description": "JSONP",
      "type": "string"
    }
  },
  "version": "v1",
  "ownerDomain": "google.com",
  "version_module": true,
  "documentationLink": "https://developers.google.com/custom-search/v1/introduction",
  "batchPath": "batch",
  "mtlsRootUrl": "https://customsearch.mtls.googleapis.com/",
  "rootUrl": "https://customsearch.googleapis.com/",
  "schemas": {
    "Search": {
      "description": "Response to a custom search request.",
      "id": "Search",
      "type": "object",
      "properties": {
        "searchInformation": {
          "type": "object",
          "description": "Metadata about a search operation.",
          "properties": {
            "totalResults": {
              "description": "The total number of search results returned by the query.",
              "type": "string"
            },
            "formattedSearchTime": {
              "type": "string",
              "description": "The time taken for the server to return search results, formatted according to locale style."
            },
            "searchTime": {
              "description": "The time taken for the server to return search results.",
              "format": "double",
              "type": "number"
            },
            "formattedTotalResults": {
              "description": "The total number of search results, formatted according to locale style.",
              "type": "string"
            }
          }
        },
        "spelling": {
          "type": "object",
          "description": "Spell correction information for a query.",
          "properties": {
            "correctedQuery": {
              "type": "string",
              "description": "The corrected query."
            },
            "htmlCorrectedQuery": {
              "description": "The corrected query, formatted in HTML.",
              "type": "string"
            }
          }
        },
        "promotions": {
          "type": "array",
          "items": {
            "$ref": "Promotion"
          },
          "description": "The set of [promotions](https://developers.google.com/custom-search/docs/promotions). Present only if the custom search engine's configuration files define any promotions for the given query."
        },
        "kind": {
          "description": "Unique identifier for the type of current object. For this API, it is customsearch#search.",
          "type": "string"
        },
        "url": {
          "type": "object",
          "description": "OpenSearch template and URL.",
          "properties": {
            "template": {
              "description": "The actual [OpenSearch template](http://www.opensearch.org/specifications/opensearch/1.1#opensearch_url_template_syntax) for this API.",
              "type": "string"
            },
            "type": {
              "type": "string",
              "description": "The MIME type of the OpenSearch URL template for the Custom Search JSON API."
            }
          }
        },
        "queries": {
          "type": "object",
          "properties": {
            "previousPage": {
              "type": "array",
              "description": "Metadata representing the previous page of results, if applicable.",
              "items": {
                "properties": {
                  "totalResults": {
                    "format": "int64",
                    "type": "string",
                    "description": "Estimated number of total search results. May not be accurate."
                  },
                  "filter": {
                    "type": "string",
                    "description": "Activates or deactivates the automatic filtering of Google search results. See [Automatic Filtering](https://developers.google.com/custom-search/docs/xml_results#automaticFiltering) for more information about Google's search results filters. Valid values for this parameter are: * `0`: Disabled * `1`: Enabled (default) **Note**: By default, Google applies filtering to all search results to improve the quality of those results."
                  },
                  "safe": {
                    "description": "Specifies the [SafeSearch level](https://developers.google.com/custom-search/docs/xml_results#safeSearchLevels) used for filtering out adult results. This is a custom property not defined in the OpenSearch spec. Valid parameter values are: * `\"off\"`: Disable SafeSearch * `\"active\"`: Enable SafeSearch",
                    "type": "string"
                  },
                  "searchType": {
                    "description": "Allowed values are `web` or `image`. If unspecified, results are limited to webpages.",
                    "type": "string"
                  },
                  "cr": {
                    "type": "string",
                    "description": "Restricts search results to documents originating in a particular country. You may use [Boolean operators](https://developers.google.com/custom-search/docs/xml_results#booleanOperators) in the `cr` parameter's value. Google WebSearch determines the country of a document by analyzing the following: * The top-level domain (TLD) of the document's URL. * The geographic location of the web server's IP address. See [Country (cr) Parameter Values](https://developers.google.com/custom-search/docs/xml_results#countryCollections) for a list of valid values for this parameter."
                  },
                  "startIndex": {
                    "type": "integer",
                    "description": "The index of the current set of search results into the total set of results, where the index of the first result is 1.",
                    "format": "int32"
                  },
                  "searchTerms": {
                    "type": "string",
                    "description": "The search terms entered by the user."
                  },
                  "sort": {
                    "type": "string",
                    "description": "Specifies that results should be sorted according to the specified expression. For example, sort by date."
                  },
                  "disableCnTwTranslation": {
                    "type": "string",
                    "description": "Enables or disables the [Simplified and Traditional Chinese Search](https://developers.google.com/custom-search/docs/xml_results#chineseSearch) feature. Supported values are: * `0`: enabled (default) * `1`: disabled"
                  },
                  "count": {
                    "type": "integer",
                    "description": "Number of search results returned in this set.",
                    "format": "int32"
                  },
                  "cx": {
                    "description": "The identifier of an engine created using the Programmable Search Engine [Control Panel](https://programmablesearchengine.google.com/). This is a custom property not defined in the OpenSearch spec. This parameter is **required**.",
                    "type": "string"
                  },
                  "language": {
                    "description": "The language of the search results.",
                    "type": "string"
                  },
                  "exactTerms": {
                    "type": "string",
                    "description": "Identifies a phrase that all documents in the search results must contain."
                  },
                  "imgType": {
                    "description": "Restricts results to images of a specified type. Supported values are: * `clipart` (Clip art) * `face` (Face) * `lineart` (Line drawing) * `photo` (Photo) * `animated` (Animated) * `stock` (Stock)",
                    "type": "string"
                  },
                  "excludeTerms": {
                    "description": "Identifies a word or phrase that should not appear in any documents in the search results.",
                    "type": "string"
                  },
                  "imgColorType": {
                    "type": "string",
                    "description": "Restricts results to images of a specified color type. Supported values are: * `mono` (black and white) * `gray` (grayscale) * `color` (color)"
                  },
                  "fileType": {
                    "description": "Restricts results to files of a specified extension. Filetypes supported by Google include: * Adobe Portable Document Format (`pdf`) * Adobe PostScript (`ps`) * Lotus 1-2-3 (`wk1`, `wk2`, `wk3`, `wk4`, `wk5`, `wki`, `wks`, `wku`) * Lotus WordPro (`lwp`) * Macwrite (`mw`) * Microsoft Excel (`xls`) * Microsoft PowerPoint (`ppt`) * Microsoft Word (`doc`) * Microsoft Works (`wks`, `wps`, `wdb`) * Microsoft Write (`wri`) * Rich Text Format (`rtf`) * Shockwave Flash (`swf`) * Text (`ans`, `txt`). Additional filetypes may be added in the future. An up-to-date list can always be found in Google's [file type FAQ](https://support.google.com/webmasters/answer/35287).",
                    "type": "string"
                  },
                  "title": {
                    "type": "string",
                    "description": "A description of the query."
                  },
                  "relatedSite": {
                    "description": "Specifies that all search results should be pages that are related to the specified URL. The parameter value should be a URL.",
                    "type": "string"
                  },
                  "rights": {
                    "type": "string",
                    "description": "Filters based on licensing. Supported values include: * `cc_publicdomain` * `cc_attribute` * `cc_sharealike` * `cc_noncommercial` * `cc_nonderived`"
                  },
                  "outputEncoding": {
                    "description": "The character encoding supported for search results.",
                    "type": "string"
                  },
                  "lowRange": {
                    "description": "Specifies the starting value for a search range. Use `cse:lowRange` and `cse:highrange` to append an inclusive search range of `lowRange...highRange` to the query.",
                    "type": "string"
                  },
                  "orTerms": {
                    "description": "Provides additional search terms to check for in a document, where each document in the search results must contain at least one of the additional search terms. You can also use the [Boolean OR](https://developers.google.com/custom-search/docs/xml_results#BooleanOrqt) query term for this type of query.",
                    "type": "string"
                  },
                  "imgSize": {
                    "type": "string",
                    "description": "Restricts results to images of a specified size. Supported values are: * `icon` (small) * `small | medium | large | xlarge` (medium) * `xxlarge` (large) * `huge` (extra-large)"
                  },
                  "imgDominantColor": {
                    "description": "Restricts results to images with a specific dominant color. Supported values are: * `red` * `orange` * `yellow` * `green` * `teal` * `blue` * `purple` * `pink` * `white` * `gray` * `black` * `brown`",
                    "type": "string"
                  },
                  "inputEncoding": {
                    "description": "The character encoding supported for search requests.",
                    "type": "string"
                  },
                  "googleHost": {
                    "description": "Specifies the Google domain (for example, google.com, google.de, or google.fr) to which the search should be limited.",
                    "type": "string"
                  },
                  "siteSearchFilter": {
                    "type": "string",
                    "description": "Specifies whether to include or exclude results from the site named in the `sitesearch` parameter. Supported values are: * `i`: include content from site * `e`: exclude content from site"
                  },
                  "startPage": {
                    "format": "int32",
                    "type": "integer",
                    "description": "The page number of this set of results, where the page length is set by the `count` property."
                  },
                  "linkSite": {
                    "description": "Specifies that all results should contain a link to a specific URL.",
                    "type": "string"
                  },
                  "siteSearch": {
                    "description": "Restricts results to URLs from a specified site.",
                    "type": "string"
                  },
                  "dateRestrict": {
                    "description": "Restricts results to URLs based on date. Supported values include: * `d[number]`: requests results from the specified number of past days. * `w[number]`: requests results from the specified number of past weeks. * `m[number]`: requests results from the specified number of past months. * `y[number]`: requests results from the specified number of past years.",
                    "type": "string"
                  },
                  "hq": {
                    "type": "string",
                    "description": "Appends the specified query terms to the query, as if they were combined with a logical `AND` operator."
                  },
                  "gl": {
                    "description": "Boosts search results whose country of origin matches the parameter value. See [Country Codes](https://developers.google.com/custom-search/docs/xml_results#countryCodes) for a list of valid values. Specifying a `gl` parameter value in WebSearch requests should improve the relevance of results. This is particularly true for international customers and, even more specifically, for customers in English-speaking countries other than the United States.",
                    "type": "string"
                  },
                  "highRange": {
                    "description": "Specifies the ending value for a search range. Use `cse:lowRange` and `cse:highrange` to append an inclusive search range of `lowRange...highRange` to the query.",
                    "type": "string"
                  },
                  "hl": {
                    "type": "string",
                    "description": "Specifies the interface language (host language) of your user interface. Explicitly setting this parameter improves the performance and the quality of your search results. See the [Interface Languages](https://developers.google.com/custom-search/docs/xml_results#wsInterfaceLanguages) section of [Internationalizing Queries and Results Presentation](https://developers.google.com/custom-search/docs/xml_results#wsInternationalizing) for more information, and [Supported Interface Languages](https://developers.google.com/custom-search/docs/xml_results_appendices#interfaceLanguages) for a list of supported languages."
                  }
                },
                "type": "object",
                "description": "Custom search request metadata."
              }
            },
            "nextPage": {
              "type": "array",
              "description": "Metadata representing the next page of results, if applicable.",
              "items": {
                "properties": {
                  "googleHost": {
                    "description": "Specifies the Google domain (for example, google.com, google.de, or google.fr) to which the search should be limited.",
                    "type": "string"
                  },
                  "cr": {
                    "description": "Restricts search results to documents originating in a particular country. You may use [Boolean operators](https://developers.google.com/custom-search/docs/xml_results#booleanOperators) in the `cr` parameter's value. Google WebSearch determines the country of a document by analyzing the following: * The top-level domain (TLD) of the document's URL. * The geographic location of the web server's IP address. See [Country (cr) Parameter Values](https://developers.google.com/custom-search/docs/xml_results#countryCollections) for a list of valid values for this parameter.",
                    "type": "string"
                  },
                  "dateRestrict": {
                    "type": "string",
                    "description": "Restricts results to URLs based on date. Supported values include: * `d[number]`: requests results from the specified number of past days. * `w[number]`: requests results from the specified number of past weeks. * `m[number]`: requests results from the specified number of past months. * `y[number]`: requests results from the specified number of past years."
                  },
                  "filter": {
                    "type": "string",
                    "description": "Activates or deactivates the automatic filtering of Google search results. See [Automatic Filtering](https://developers.google.com/custom-search/docs/xml_results#automaticFiltering) for more information about Google's search results filters. Valid values for this parameter are: * `0`: Disabled * `1`: Enabled (default) **Note**: By default, Google applies filtering to all search results to improve the quality of those results."
                  },
                  "disableCnTwTranslation": {
                    "description": "Enables or disables the [Simplified and Traditional Chinese Search](https://developers.google.com/custom-search/docs/xml_results#chineseSearch) feature. Supported values are: * `0`: enabled (default) * `1`: disabled",
                    "type": "string"
                  },
                  "relatedSite": {
                    "description": "Specifies that all search results should be pages that are related to the specified URL. The parameter value should be a URL.",
                    "type": "string"
                  },
                  "orTerms": {
                    "type": "string",
                    "description": "Provides additional search terms to check for in a document, where each document in the search results must contain at least one of the additional search terms. You can also use the [Boolean OR](https://developers.google.com/custom-search/docs/xml_results#BooleanOrqt) query term for this type of query."
                  },
                  "imgSize": {
                    "type": "string",
                    "description": "Restricts results to images of a specified size. Supported values are: * `icon` (small) * `small | medium | large | xlarge` (medium) * `xxlarge` (large) * `huge` (extra-large)"
                  },
                  "startPage": {
                    "description": "The page number of this set of results, where the page length is set by the `count` property.",
                    "format": "int32",
                    "type": "integer"
                  },
                  "gl": {
                    "description": "Boosts search results whose country of origin matches the parameter value. See [Country Codes](https://developers.google.com/custom-search/docs/xml_results#countryCodes) for a list of valid values. Specifying a `gl` parameter value in WebSearch requests should improve the relevance of results. This is particularly true for international customers and, even more specifically, for customers in English-speaking countries other than the United States.",
                    "type": "string"
                  },
                  "sort": {
                    "description": "Specifies that results should be sorted according to the specified expression. For example, sort by date.",
                    "type": "string"
                  },
                  "hq": {
                    "type": "string",
                    "description": "Appends the specified query terms to the query, as if they were combined with a logical `AND` operator."
                  },
                  "searchTerms": {
                    "type": "string",
                    "description": "The search terms entered by the user."
                  },
                  "language": {
                    "type": "string",
                    "description": "The language of the search results."
                  },
                  "excludeTerms": {
                    "description": "Identifies a word or phrase that should not appear in any documents in the search results.",
                    "type": "string"
                  },
                  "imgColorType": {
                    "description": "Restricts results to images of a specified color type. Supported values are: * `mono` (black and white) * `gray` (grayscale) * `color` (color)",
                    "type": "string"
                  },
                  "rights": {
                    "description": "Filters based on licensing. Supported values include: * `cc_publicdomain` * `cc_attribute` * `cc_sharealike` * `cc_noncommercial` * `cc_nonderived`",
                    "type": "string"
                  },
                  "imgDominantColor": {
                    "description": "Restricts results to images with a specific dominant color. Supported values are: * `red` * `orange` * `yellow` * `green` * `teal` * `blue` * `purple` * `pink` * `white` * `gray` * `black` * `brown`",
                    "type": "string"
                  },
                  "title": {
                    "type": "string",
                    "description": "A description of the query."
                  },
                  "totalResults": {
                    "type": "string",
                    "description": "Estimated number of total search results. May not be accurate.",
                    "format": "int64"
                  },
                  "highRange": {
                    "type": "string",
                    "description": "Specifies the ending value for a search range. Use `cse:lowRange` and `cse:highrange` to append an inclusive search range of `lowRange...highRange` to the query."
                  },
                  "startIndex": {
                    "format": "int32",
                    "description": "The index of the current set of search results into the total set of results, where the index of the first result is 1.",
                    "type": "integer"
                  },
                  "outputEncoding": {
                    "type": "string",
                    "description": "The character encoding supported for search results."
                  },
                  "hl": {
                    "type": "string",
                    "description": "Specifies the interface language (host language) of your user interface. Explicitly setting this parameter improves the performance and the quality of your search results. See the [Interface Languages](https://developers.google.com/custom-search/docs/xml_results#wsInterfaceLanguages) section of [Internationalizing Queries and Results Presentation](https://developers.google.com/custom-search/docs/xml_results#wsInternationalizing) for more information, and [Supported Interface Languages](https://developers.google.com/custom-search/docs/xml_results_appendices#interfaceLanguages) for a list of supported languages."
                  },
                  "siteSearch": {
                    "description": "Restricts results to URLs from a specified site.",
                    "type": "string"
                  },
                  "fileType": {
                    "type": "string",
                    "description": "Restricts results to files of a specified extension. Filetypes supported by Google include: * Adobe Portable Document Format (`pdf`) * Adobe PostScript (`ps`) * Lotus 1-2-3 (`wk1`, `wk2`, `wk3`, `wk4`, `wk5`, `wki`, `wks`, `wku`) * Lotus WordPro (`lwp`) * Macwrite (`mw`) * Microsoft Excel (`xls`) * Microsoft PowerPoint (`ppt`) * Microsoft Word (`doc`) * Microsoft Works (`wks`, `wps`, `wdb`) * Microsoft Write (`wri`) * Rich Text Format (`rtf`) * Shockwave Flash (`swf`) * Text (`ans`, `txt`). Additional filetypes may be added in the future. An up-to-date list can always be found in Google's [file type FAQ](https://support.google.com/webmasters/answer/35287)."
                  },
                  "linkSite": {
                    "type": "string",
                    "description": "Specifies that all results should contain a link to a specific URL."
                  },
                  "lowRange": {
                    "type": "string",
                    "description": "Specifies the starting value for a search range. Use `cse:lowRange` and `cse:highrange` to append an inclusive search range of `lowRange...highRange` to the query."
                  },
                  "searchType": {
                    "description": "Allowed values are `web` or `image`. If unspecified, results are limited to webpages.",
                    "type": "string"
                  },
                  "safe": {
                    "type": "string",
                    "description": "Specifies the [SafeSearch level](https://developers.google.com/custom-search/docs/xml_results#safeSearchLevels) used for filtering out adult results. This is a custom property not defined in the OpenSearch spec. Valid parameter values are: * `\"off\"`: Disable SafeSearch * `\"active\"`: Enable SafeSearch"
                  },
                  "inputEncoding": {
                    "description": "The character encoding supported for search requests.",
                    "type": "string"
                  },
                  "count": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Number of search results returned in this set."
                  },
                  "exactTerms": {
                    "type": "string",
                    "description": "Identifies a phrase that all documents in the search results must contain."
                  },
                  "imgType": {
                    "description": "Restricts results to images of a specified type. Supported values are: * `clipart` (Clip art) * `face` (Face) * `lineart` (Line drawing) * `photo` (Photo) * `animated` (Animated) * `stock` (Stock)",
                    "type": "string"
                  },
                  "cx": {
                    "type": "string",
                    "description": "The identifier of an engine created using the Programmable Search Engine [Control Panel](https://programmablesearchengine.google.com/). This is a custom property not defined in the OpenSearch spec. This parameter is **required**."
                  },
                  "siteSearchFilter": {
                    "type": "string",
                    "description": "Specifies whether to include or exclude results from the site named in the `sitesearch` parameter. Supported values are: * `i`: include content from site * `e`: exclude content from site"
                  }
                },
                "type": "object",
                "description": "Custom search request metadata."
              }
            },
            "request": {
              "description": "Metadata representing the current request.",
              "items": {
                "properties": {
                  "startPage": {
                    "format": "int32",
                    "description": "The page number of this set of results, where the page length is set by the `count` property.",
                    "type": "integer"
                  },
                  "dateRestrict": {
                    "description": "Restricts results to URLs based on date. Supported values include: * `d[number]`: requests results from the specified number of past days. * `w[number]`: requests results from the specified number of past weeks. * `m[number]`: requests results from the specified number of past months. * `y[number]`: requests results from the specified number of past years.",
                    "type": "string"
                  },
                  "language": {
                    "description": "The language of the search results.",
                    "type": "string"
                  },
                  "totalResults": {
                    "format": "int64",
                    "description": "Estimated number of total search results. May not be accurate.",
                    "type": "string"
                  },
                  "linkSite": {
                    "type": "string",
                    "description": "Specifies that all results should contain a link to a specific URL."
                  },
                  "siteSearch": {
                    "type": "string",
                    "description": "Restricts results to URLs from a specified site."
                  },
                  "searchType": {
                    "type": "string",
                    "description": "Allowed values are `web` or `image`. If unspecified, results are limited to webpages."
                  },
                  "count": {
                    "format": "int32",
                    "type": "integer",
                    "description": "Number of search results returned in this set."
                  },
                  "fileType": {
                    "type": "string",
                    "description": "Restricts results to files of a specified extension. Filetypes supported by Google include: * Adobe Portable Document Format (`pdf`) * Adobe PostScript (`ps`) * Lotus 1-2-3 (`wk1`, `wk2`, `wk3`, `wk4`, `wk5`, `wki`, `wks`, `wku`) * Lotus WordPro (`lwp`) * Macwrite (`mw`) * Microsoft Excel (`xls`) * Microsoft PowerPoint (`ppt`) * Microsoft Word (`doc`) * Microsoft Works (`wks`, `wps`, `wdb`) * Microsoft Write (`wri`) * Rich Text Format (`rtf`) * Shockwave Flash (`swf`) * Text (`ans`, `txt`). Additional filetypes may be added in the future. An up-to-date list can always be found in Google's [file type FAQ](https://support.google.com/webmasters/answer/35287)."
                  },
                  "hq": {
                    "description": "Appends the specified query terms to the query, as if they were combined with a logical `AND` operator.",
                    "type": "string"
                  },
                  "outputEncoding": {
                    "description": "The character encoding supported for search results.",
                    "type": "string"
                  },
                  "imgDominantColor": {
                    "description": "Restricts results to images with a specific dominant color. Supported values are: * `red` * `orange` * `yellow` * `green` * `teal` * `blue` * `purple` * `pink` * `white` * `gray` * `black` * `brown`",
                    "type": "string"
                  },
                  "gl": {
                    "description": "Boosts search results whose country of origin matches the parameter value. See [Country Codes](https://developers.google.com/custom-search/docs/xml_results#countryCodes) for a list of valid values. Specifying a `gl` parameter value in WebSearch requests should improve the relevance of results. This is particularly true for international customers and, even more specifically, for customers in English-speaking countries other than the United States.",
                    "type": "string"
                  },
                  "startIndex": {
                    "format": "int32",
                    "type": "integer",
                    "description": "The index of the current set of search results into the total set of results, where the index of the first result is 1."
                  },
                  "filter": {
                    "type": "string",
                    "description": "Activates or deactivates the automatic filtering of Google search results. See [Automatic Filtering](https://developers.google.com/custom-search/docs/xml_results#automaticFiltering) for more information about Google's search results filters. Valid values for this parameter are: * `0`: Disabled * `1`: Enabled (default) **Note**: By default, Google applies filtering to all search results to improve the quality of those results."
                  },
                  "excludeTerms": {
                    "type": "string",
                    "description": "Identifies a word or phrase that should not appear in any documents in the search results."
                  },
                  "disableCnTwTranslation": {
                    "description": "Enables or disables the [Simplified and Traditional Chinese Search](https://developers.google.com/custom-search/docs/xml_results#chineseSearch) feature. Supported values are: * `0`: enabled (default) * `1`: disabled",
                    "type": "string"
                  },
                  "orTerms": {
                    "type": "string",
                    "description": "Provides additional search terms to check for in a document, where each document in the search results must contain at least one of the additional search terms. You can also use the [Boolean OR](https://developers.google.com/custom-search/docs/xml_results#BooleanOrqt) query term for this type of query."
                  },
                  "imgColorType": {
                    "description": "Restricts results to images of a specified color type. Supported values are: * `mono` (black and white) * `gray` (grayscale) * `color` (color)",
                    "type": "string"
                  },
                  "rights": {
                    "type": "string",
                    "description": "Filters based on licensing. Supported values include: * `cc_publicdomain` * `cc_attribute` * `cc_sharealike` * `cc_noncommercial` * `cc_nonderived`"
                  },
                  "searchTerms": {
                    "type": "string",
                    "description": "The search terms entered by the user."
                  },
                  "inputEncoding": {
                    "type": "string",
                    "description": "The character encoding supported for search requests."
                  },
                  "imgType": {
                    "description": "Restricts results to images of a specified type. Supported values are: * `clipart` (Clip art) * `face` (Face) * `lineart` (Line drawing) * `photo` (Photo) * `animated` (Animated) * `stock` (Stock)",
                    "type": "string"
                  },
                  "exactTerms": {
                    "type": "string",
                    "description": "Identifies a phrase that all documents in the search results must contain."
                  },
                  "cr": {
                    "description": "Restricts search results to documents originating in a particular country. You may use [Boolean operators](https://developers.google.com/custom-search/docs/xml_results#booleanOperators) in the `cr` parameter's value. Google WebSearch determines the country of a document by analyzing the following: * The top-level domain (TLD) of the document's URL. * The geographic location of the web server's IP address. See [Country (cr) Parameter Values](https://developers.google.com/custom-search/docs/xml_results#countryCollections) for a list of valid values for this parameter.",
                    "type": "string"
                  },
                  "safe": {
                    "type": "string",
                    "description": "Specifies the [SafeSearch level](https://developers.google.com/custom-search/docs/xml_results#safeSearchLevels) used for filtering out adult results. This is a custom property not defined in the OpenSearch spec. Valid parameter values are: * `\"off\"`: Disable SafeSearch * `\"active\"`: Enable SafeSearch"
                  },
                  "relatedSite": {
                    "type": "string",
                    "description": "Specifies that all search results should be pages that are related to the specified URL. The parameter value should be a URL."
                  },
                  "googleHost": {
                    "type": "string",
                    "description": "Specifies the Google domain (for example, google.com, google.de, or google.fr) to which the search should be limited."
                  },
                  "highRange": {
                    "description": "Specifies the ending value for a search range. Use `cse:lowRange` and `cse:highrange` to append an inclusive search range of `lowRange...highRange` to the query.",
                    "type": "string"
                  },
                  "title": {
                    "description": "A description of the query.",
                    "type": "string"
                  },
                  "imgSize": {
                    "type": "string",
                    "description": "Restricts results to images of a specified size. Supported values are: * `icon` (small) * `small | medium | large | xlarge` (medium) * `xxlarge` (large) * `huge` (extra-large)"
                  },
                  "lowRange": {
                    "type": "string",
                    "description": "Specifies the starting value for a search range. Use `cse:lowRange` and `cse:highrange` to append an inclusive search range of `lowRange...highRange` to the query."
                  },
                  "hl": {
                    "type": "string",
                    "description": "Specifies the interface language (host language) of your user interface. Explicitly setting this parameter improves the performance and the quality of your search results. See the [Interface Languages](https://developers.google.com/custom-search/docs/xml_results#wsInterfaceLanguages) section of [Internationalizing Queries and Results Presentation](https://developers.google.com/custom-search/docs/xml_results#wsInternationalizing) for more information, and [Supported Interface Languages](https://developers.google.com/custom-search/docs/xml_results_appendices#interfaceLanguages) for a list of supported languages."
                  },
                  "siteSearchFilter": {
                    "description": "Specifies whether to include or exclude results from the site named in the `sitesearch` parameter. Supported values are: * `i`: include content from site * `e`: exclude content from site",
                    "type": "string"
                  },
                  "cx": {
                    "description": "The identifier of an engine created using the Programmable Search Engine [Control Panel](https://programmablesearchengine.google.com/). This is a custom property not defined in the OpenSearch spec. This parameter is **required**.",
                    "type": "string"
                  },
                  "sort": {
                    "type": "string",
                    "description": "Specifies that results should be sorted according to the specified expression. For example, sort by date."
                  }
                },
                "description": "Custom search request metadata.",
                "type": "object"
              },
              "type": "array"
            }
          },
          "description": "Query metadata for the previous, current, and next pages of results."
        },
        "context": {
          "description": "Metadata and refinements associated with the given search engine, including: * The name of the search engine that was used for the query. * A set of [facet objects](https://developers.google.com/custom-search/docs/refinements#create) (refinements) you can use for refining a search.",
          "additionalProperties": {
            "description": "Properties of the object.",
            "type": "any"
          },
          "type": "object"
        },
        "items": {
          "description": "The current set of custom search results.",
          "type": "array",
          "items": {
            "$ref": "Result"
          }
        }
      }
    },
    "Result": {
      "id": "Result",
      "properties": {
        "mime": {
          "description": "The MIME type of the search result.",
          "type": "string"
        },
        "image": {
          "type": "object",
          "description": "Image belonging to a custom search result.",
          "properties": {
            "byteSize": {
              "format": "int32",
              "description": "The size of the image, in pixels.",
              "type": "integer"
            },
            "thumbnailLink": {
              "description": "A URL to the thumbnail image.",
              "type": "string"
            },
            "thumbnailHeight": {
              "format": "int32",
              "type": "integer",
              "description": "The height of the thumbnail image, in pixels."
            },
            "width": {
              "description": "The width of the image, in pixels.",
              "format": "int32",
              "type": "integer"
            },
            "thumbnailWidth": {
              "description": "The width of the thumbnail image, in pixels.",
              "type": "integer",
              "format": "int32"
            },
            "contextLink": {
              "description": "A URL pointing to the webpage hosting the image.",
              "type": "string"
            },
            "height": {
              "type": "integer",
              "format": "int32",
              "description": "The height of the image, in pixels."
            }
          }
        },
        "formattedUrl": {
          "description": "The URL displayed after the snippet for each search result.",
          "type": "string"
        },
        "htmlSnippet": {
          "type": "string",
          "description": "The snippet of the search result, in HTML."
        },
        "htmlTitle": {
          "description": "The title of the search result, in HTML.",
          "type": "string"
        },
        "title": {
          "type": "string",
          "description": "The title of the search result, in plain text."
        },
        "pagemap": {
          "description": "Contains [PageMap](https://developers.google.com/custom-search/docs/structured_data#pagemaps) information for this search result.",
          "type": "object",
          "additionalProperties": {
            "type": "any",
            "description": "Properties of the object."
          }
        },
        "displayLink": {
          "type": "string",
          "description": "An abridged version of this search result’s URL, e.g. www.example.com."
        },
        "labels": {
          "description": "Encapsulates all information about [refinement labels](https://developers.google.com/custom-search/docs/xml_results).",
          "items": {
            "description": "Refinement label associated with a custom search result.",
            "properties": {
              "label_with_op": {
                "type": "string",
                "description": "Refinement label and the associated refinement operation."
              },
              "displayName": {
                "type": "string",
                "description": "The display name of a refinement label. This is the name you should display in your user interface."
              },
              "name": {
                "description": "The name of a refinement label, which you can use to refine searches. Don't display this in your user interface; instead, use displayName.",
                "type": "string"
              }
            },
            "type": "object"
          },
          "type": "array"
        },
        "snippet": {
          "description": "The snippet of the search result, in plain text.",
          "type": "string"
        },
        "link": {
          "description": "The full URL to which the search result is pointing, e.g. http://www.example.com/foo/bar.",
          "type": "string"
        },
        "fileFormat": {
          "type": "string",
          "description": "The file format of the search result."
        },
        "cacheId": {
          "type": "string",
          "description": "Indicates the ID of Google's cached version of the search result."
        },
        "htmlFormattedUrl": {
          "description": "The HTML-formatted URL displayed after the snippet for each search result.",
          "type": "string"
        },
        "kind": {
          "description": "A unique identifier for the type of current object. For this API, it is `customsearch#result.`",
          "type": "string"
        }
      },
      "description": "A custom search result.",
      "type": "object"
    },
    "Promotion": {
      "description": "Promotion result.",
      "properties": {
        "displayLink": {
          "type": "string",
          "description": "An abridged version of this search's result URL, e.g. www.example.com."
        },
        "title": {
          "type": "string",
          "description": "The title of the promotion."
        },
        "htmlTitle": {
          "description": "The title of the promotion, in HTML.",
          "type": "string"
        },
        "bodyLines": {
          "type": "array",
          "description": "An array of block objects for this promotion. See [Google WebSearch Protocol reference](https://developers.google.com/custom-search/docs/xml_results) for more information.",
          "items": {
            "properties": {
              "link": {
                "description": "The anchor text of the block object's link, if it has a link.",
                "type": "string"
              },
              "url": {
                "description": "The URL of the block object's link, if it has one.",
                "type": "string"
              },
              "htmlTitle": {
                "description": "The block object's text in HTML, if it has text.",
                "type": "string"
              },
              "title": {
                "type": "string",
                "description": "The block object's text, if it has text."
              }
            },
            "description": "Block object belonging to a promotion.",
            "type": "object"
          }
        },
        "link": {
          "type": "string",
          "description": "The URL of the promotion."
        },
        "image": {
          "description": "Image belonging to a promotion.",
          "type": "object",
          "properties": {
            "source": {
              "type": "string",
              "description": "URL of the image for this promotion link."
            },
            "width": {
              "description": "Image width in pixels.",
              "format": "int32",
              "type": "integer"
            },
            "height": {
              "format": "int32",
              "description": "Image height in pixels.",
              "type": "integer"
            }
          }
        }
      },
      "type": "object",
      "id": "Promotion"
    }
  },
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "resources": {
    "cse": {
      "resources": {
        "siterestrict": {
          "methods": {
            "list": {
              "id": "search.cse.siterestrict.list",
              "description": "Returns metadata about the search performed, metadata about the engine used for the search, and the search results. Uses a small set of url patterns.",
              "parameterOrder": [],
              "flatPath": "customsearch/v1/siterestrict",
              "response": {
                "$ref": "Search"
              },
              "path": "customsearch/v1/siterestrict",
              "parameters": {
                "imgDominantColor": {
                  "location": "query",
                  "description": "Returns images of a specific dominant color. Acceptable values are: * `\"black\"` * `\"blue\"` * `\"brown\"` * `\"gray\"` * `\"green\"` * `\"orange\"` * `\"pink\"` * `\"purple\"` * `\"red\"` * `\"teal\"` * `\"white\"` * `\"yellow\"`",
                  "enumDescriptions": [
                    "No dominant color specified.",
                    "Predominantly black images only.",
                    "Predominantly blue images only.",
                    "Predominantly brown images only.",
                    "Predominantly gray images only.",
                    "Predominantly green images only.",
                    "Predominantly orange images only.",
                    "Predominantly pink images only.",
                    "Predominantly purple images only.",
                    "Predominantly red images only.",
                    "Predominantly teal images only.",
                    "Predominantly white images only.",
                    "Predominantly yellow images only."
                  ],
                  "type": "string",
                  "enum": [
                    "imgDominantColorUndefined",
                    "black",
                    "blue",
                    "brown",
                    "gray",
                    "green",
                    "orange",
                    "pink",
                    "purple",
                    "red",
                    "teal",
                    "white",
                    "yellow"
                  ]
                },
                "filter": {
                  "location": "query",
                  "type": "string",
                  "description": "Controls turning on or off the duplicate content filter. * See [Automatic Filtering](https://developers.google.com/custom-search/docs/xml_results#automaticFiltering) for more information about Google's search results filters. Note that host crowding filtering applies only to multi-site searches. * By default, Google applies filtering to all search results to improve the quality of those results. Acceptable values are: * `0`: Turns off duplicate content filter. * `1`: Turns on duplicate content filter."
                },
                "num": {
                  "location": "query",
                  "description": "Number of search results to return. * Valid values are integers between 1 and 10, inclusive.",
                  "format": "int32",
                  "type": "integer"
                },
                "imgSize": {
                  "enumDescriptions": [
                    "No image size specified.",
                    "Only the largest possible images.",
                    "Only very small icon-sized images.",
                    "Only large images.",
                    "Only medium images.",
                    "Only small images.",
                    "Only very large images.",
                    "Only extremely large images."
                  ],
                  "type": "string",
                  "enum": [
                    "imgSizeUndefined",
                    "HUGE",
                    "ICON",
                    "LARGE",
                    "MEDIUM",
                    "SMALL",
                    "XLARGE",
                    "XXLARGE"
                  ],
                  "description": "Returns images of a specified size. Acceptable values are: * `\"huge\"` * `\"icon\"` * `\"large\"` * `\"medium\"` * `\"small\"` * `\"xlarge\"` * `\"xxlarge\"`",
                  "location": "query"
                },
                "hl": {
                  "location": "query",
                  "description": "Sets the user interface language. * Explicitly setting this parameter improves the performance and the quality of your search results. * See the [Interface Languages](https://developers.google.com/custom-search/docs/xml_results#wsInterfaceLanguages) section of [Internationalizing Queries and Results Presentation](https://developers.google.com/custom-search/docs/xml_results#wsInternationalizing) for more information, and (Supported Interface Languages)[https://developers.google.com/custom-search/docs/xml_results_appendices#interfaceLanguages] for a list of supported languages.",
                  "type": "string"
                },
                "linkSite": {
                  "location": "query",
                  "type": "string",
                  "description": "Specifies that all search results should contain a link to a particular URL."
                },
                "imgColorType": {
                  "description": "Returns black and white, grayscale, transparent, or color images. Acceptable values are: * `\"color\"` * `\"gray\"` * `\"mono\"`: black and white * `\"trans\"`: transparent background",
                  "enumDescriptions": [
                    "No image color type specified.",
                    "Black and white images only.",
                    "Grayscale images only.",
                    "Color images only.",
                    "Images with transparent background"
                  ],
                  "type": "string",
                  "enum": [
                    "imgColorTypeUndefined",
                    "mono",
                    "gray",
                    "color",
                    "trans"
                  ],
                  "location": "query"
                },
                "relatedSite": {
                  "location": "query",
                  "type": "string",
                  "description": "Specifies that all search results should be pages that are related to the specified URL."
                },
                "exactTerms": {
                  "type": "string",
                  "description": "Identifies a phrase that all documents in the search results must contain.",
                  "location": "query"
                },
                "cx": {
                  "type": "string",
                  "location": "query",
                  "description": "The Programmable Search Engine ID to use for this request."
                },
                "siteSearchFilter": {
                  "enum": [
                    "siteSearchFilterUndefined",
                    "e",
                    "i"
                  ],
                  "enumDescriptions": [
                    "Filter mode unspecified.",
                    "Exclude results from the listed sites.",
                    "Include only results from the listed sites."
                  ],
                  "description": "Controls whether to include or exclude results from the site named in the `siteSearch` parameter. Acceptable values are: * `\"e\"`: exclude * `\"i\"`: include",
                  "type": "string",
                  "location": "query"
                },
                "dateRestrict": {
                  "location": "query",
                  "type": "string",
                  "description": "Restricts results to URLs based on date. Supported values include: * `d[number]`: requests results from the specified number of past days. * `w[number]`: requests results from the specified number of past weeks. * `m[number]`: requests results from the specified number of past months. * `y[number]`: requests results from the specified number of past years."
                },
                "siteSearch": {
                  "location": "query",
                  "type": "string",
                  "description": "Specifies a given site which should always be included or excluded from results (see `siteSearchFilter` parameter, below)."
                },
                "highRange": {
                  "description": "Specifies the ending value for a search range. * Use `lowRange` and `highRange` to append an inclusive search range of `lowRange...highRange` to the query.",
                  "location": "query",
                  "type": "string"
                },
                "orTerms": {
                  "location": "query",
                  "description": "Provides additional search terms to check for in a document, where each document in the search results must contain at least one of the additional search terms.",
                  "type": "string"
                },
                "lr": {
                  "description": "Restricts the search to documents written in a particular language (e.g., `lr=lang_ja`). Acceptable values are: * `\"lang_ar\"`: Arabic * `\"lang_bg\"`: Bulgarian * `\"lang_ca\"`: Catalan * `\"lang_cs\"`: Czech * `\"lang_da\"`: Danish * `\"lang_de\"`: German * `\"lang_el\"`: Greek * `\"lang_en\"`: English * `\"lang_es\"`: Spanish * `\"lang_et\"`: Estonian * `\"lang_fi\"`: Finnish * `\"lang_fr\"`: French * `\"lang_hr\"`: Croatian * `\"lang_hu\"`: Hungarian * `\"lang_id\"`: Indonesian * `\"lang_is\"`: Icelandic * `\"lang_it\"`: Italian * `\"lang_iw\"`: Hebrew * `\"lang_ja\"`: Japanese * `\"lang_ko\"`: Korean * `\"lang_lt\"`: Lithuanian * `\"lang_lv\"`: Latvian * `\"lang_nl\"`: Dutch * `\"lang_no\"`: Norwegian * `\"lang_pl\"`: Polish * `\"lang_pt\"`: Portuguese * `\"lang_ro\"`: Romanian * `\"lang_ru\"`: Russian * `\"lang_sk\"`: Slovak * `\"lang_sl\"`: Slovenian * `\"lang_sr\"`: Serbian * `\"lang_sv\"`: Swedish * `\"lang_tr\"`: Turkish * `\"lang_zh-CN\"`: Chinese (Simplified) * `\"lang_zh-TW\"`: Chinese (Traditional)",
                  "location": "query",
                  "type": "string"
                },
                "cr": {
                  "description": "Restricts search results to documents originating in a particular country. You may use [Boolean operators](https://developers.google.com/custom-search/docs/xml_results_appendices#booleanOperators) in the cr parameter's value. Google Search determines the country of a document by analyzing: * the top-level domain (TLD) of the document's URL * the geographic location of the Web server's IP address See the [Country Parameter Values](https://developers.google.com/custom-search/docs/xml_results_appendices#countryCollections) page for a list of valid values for this parameter.",
                  "type": "string",
                  "location": "query"
                },
                "lowRange": {
                  "location": "query",
                  "description": "Specifies the starting value for a search range. Use `lowRange` and `highRange` to append an inclusive search range of `lowRange...highRange` to the query.",
                  "type": "string"
                },
                "start": {
                  "format": "uint32",
                  "description": "The index of the first result to return. The default number of results per page is 10, so `&start=11` would start at the top of the second page of results. **Note**: The JSON API will never return more than 100 results, even if more than 100 documents match the query, so setting the sum of `start + num` to a number greater than 100 will produce an error. Also note that the maximum value for `num` is 10.",
                  "type": "integer",
                  "location": "query"
                },
                "rights": {
                  "type": "string",
                  "location": "query",
                  "description": "Filters based on licensing. Supported values include: `cc_publicdomain`, `cc_attribute`, `cc_sharealike`, `cc_noncommercial`, `cc_nonderived` and combinations of these. See [typical combinations](https://wiki.creativecommons.org/wiki/CC_Search_integration)."
                },
                "gl": {
                  "type": "string",
                  "description": "Geolocation of end user. * The `gl` parameter value is a two-letter country code. The `gl` parameter boosts search results whose country of origin matches the parameter value. See the [Country Codes](https://developers.google.com/custom-search/docs/xml_results_appendices#countryCodes) page for a list of valid values. * Specifying a `gl` parameter value should lead to more relevant results. This is particularly true for international customers and, even more specifically, for customers in English- speaking countries other than the United States.",
                  "location": "query"
                },
                "fileType": {
                  "location": "query",
                  "type": "string",
                  "description": "Restricts results to files of a specified extension. A list of file types indexable by Google can be found in Search Console [Help Center](https://support.google.com/webmasters/answer/35287)."
                },
                "q": {
                  "type": "string",
                  "description": "Query",
                  "location": "query"
                },
                "googlehost": {
                  "description": "**Deprecated**. Use the `gl` parameter for a similar effect. The local Google domain (for example, google.com, google.de, or google.fr) to use to perform the search.",
                  "location": "query",
                  "type": "string"
                },
                "searchType": {
                  "enum": [
                    "searchTypeUndefined",
                    "image"
                  ],
                  "type": "string",
                  "description": "Specifies the search type: `image`. If unspecified, results are limited to webpages. Acceptable values are: * `\"image\"`: custom image search.",
                  "enumDescriptions": [
                    "Search type unspecified (defaults to web search).",
                    "Image search."
                  ],
                  "location": "query"
                },
                "excludeTerms": {
                  "type": "string",
                  "location": "query",
                  "description": "Identifies a word or phrase that should not appear in any documents in the search results."
                },
                "sort": {
                  "type": "string",
                  "location": "query",
                  "description": "The sort expression to apply to the results. The sort parameter specifies that the results be sorted according to the specified expression i.e. sort by date. [Example: sort=date](https://developers.google.com/custom-search/docs/structured_search#sort-by-attribute)."
                },
                "imgType": {
                  "type": "string",
                  "enumDescriptions": [
                    "No image type specified.",
                    "Clipart-style images only.",
                    "Images of faces only.",
                    "Line art images only.",
                    "Stock images only.",
                    "Photo images only.",
                    "Animated images only."
                  ],
                  "description": "Returns images of a type. Acceptable values are: * `\"clipart\"` * `\"face\"` * `\"lineart\"` * `\"stock\"` * `\"photo\"` * `\"animated\"`",
                  "enum": [
                    "imgTypeUndefined",
                    "clipart",
                    "face",
                    "lineart",
                    "stock",
                    "photo",
                    "animated"
                  ],
                  "location": "query"
                },
                "c2coff": {
                  "location": "query",
                  "description": "Enables or disables [Simplified and Traditional Chinese Search](https://developers.google.com/custom-search/docs/xml_results#chineseSearch). The default value for this parameter is 0 (zero), meaning that the feature is enabled. Supported values are: * `1`: Disabled * `0`: Enabled (default)",
                  "type": "string"
                },
                "hq": {
                  "location": "query",
                  "description": "Appends the specified query terms to the query, as if they were combined with a logical AND operator.",
                  "type": "string"
                },
                "safe": {
                  "type": "string",
                  "enumDescriptions": [
                    "SafeSearch mode unspecified. (Falls back to engine's configuration.)",
                    "Turn SafeSearch on.",
                    "Deprecated, equivalent to \"active\".",
                    "Deprecated, equivalent to \"active\".",
                    "Turn SafeSearch off."
                  ],
                  "enum": [
                    "safeUndefined",
                    "active",
                    "high",
                    "medium",
                    "off"
                  ],
                  "location": "query",
                  "description": "Search safety level. Acceptable values are: * `\"active\"`: Enables SafeSearch filtering. * `\"off\"`: Disables SafeSearch filtering. (default)"
                }
              },
              "httpMethod": "GET"
            }
          }
        }
      },
      "methods": {
        "list": {
          "response": {
            "$ref": "Search"
          },
          "flatPath": "customsearch/v1",
          "httpMethod": "GET",
          "description": "Returns metadata about the search performed, metadata about the engine used for the search, and the search results.",
          "parameterOrder": [],
          "id": "search.cse.list",
          "parameters": {
            "hl": {
              "location": "query",
              "type": "string",
              "description": "Sets the user interface language. * Explicitly setting this parameter improves the performance and the quality of your search results. * See the [Interface Languages](https://developers.google.com/custom-search/docs/xml_results#wsInterfaceLanguages) section of [Internationalizing Queries and Results Presentation](https://developers.google.com/custom-search/docs/xml_results#wsInternationalizing) for more information, and (Supported Interface Languages)[https://developers.google.com/custom-search/docs/xml_results_appendices#interfaceLanguages] for a list of supported languages."
            },
            "linkSite": {
              "location": "query",
              "type": "string",
              "description": "Specifies that all search results should contain a link to a particular URL."
            },
            "safe": {
              "enum": [
                "safeUndefined",
                "active",
                "high",
                "medium",
                "off"
              ],
              "type": "string",
              "description": "Search safety level. Acceptable values are: * `\"active\"`: Enables SafeSearch filtering. * `\"off\"`: Disables SafeSearch filtering. (default)",
              "enumDescriptions": [
                "SafeSearch mode unspecified. (Falls back to engine's configuration.)",
                "Turn SafeSearch on.",
                "Deprecated, equivalent to \"active\".",
                "Deprecated, equivalent to \"active\".",
                "Turn SafeSearch off."
              ],
              "location": "query"
            },
            "c2coff": {
              "type": "string",
              "description": "Enables or disables [Simplified and Traditional Chinese Search](https://developers.google.com/custom-search/docs/xml_results#chineseSearch). The default value for this parameter is 0 (zero), meaning that the feature is enabled. Supported values are: * `1`: Disabled * `0`: Enabled (default)",
              "location": "query"
            },
            "start": {
              "location": "query",
              "type": "integer",
              "description": "The index of the first result to return. The default number of results per page is 10, so `&start=11` would start at the top of the second page of results. **Note**: The JSON API will never return more than 100 results, even if more than 100 documents match the query, so setting the sum of `start + num` to a number greater than 100 will produce an error. Also note that the maximum value for `num` is 10.",
              "format": "uint32"
            },
            "googlehost": {
              "type": "string",
              "location": "query",
              "description": "**Deprecated**. Use the `gl` parameter for a similar effect. The local Google domain (for example, google.com, google.de, or google.fr) to use to perform the search."
            },
            "excludeTerms": {
              "location": "query",
              "description": "Identifies a word or phrase that should not appear in any documents in the search results.",
              "type": "string"
            },
            "imgColorType": {
              "type": "string",
              "enumDescriptions": [
                "No image color type specified.",
                "Black and white images only.",
                "Grayscale images only.",
                "Color images only.",
                "Images with transparent background"
              ],
              "location": "query",
              "enum": [
                "imgColorTypeUndefined",
                "mono",
                "gray",
                "color",
                "trans"
              ],
              "description": "Returns black and white, grayscale, transparent, or color images. Acceptable values are: * `\"color\"` * `\"gray\"` * `\"mono\"`: black and white * `\"trans\"`: transparent background"
            },
            "num": {
              "type": "integer",
              "description": "Number of search results to return. * Valid values are integers between 1 and 10, inclusive.",
              "location": "query",
              "format": "int32"
            },
            "hq": {
              "type": "string",
              "location": "query",
              "description": "Appends the specified query terms to the query, as if they were combined with a logical AND operator."
            },
            "rights": {
              "type": "string",
              "description": "Filters based on licensing. Supported values include: `cc_publicdomain`, `cc_attribute`, `cc_sharealike`, `cc_noncommercial`, `cc_nonderived` and combinations of these. See [typical combinations](https://wiki.creativecommons.org/wiki/CC_Search_integration).",
              "location": "query"
            },
            "cr": {
              "description": "Restricts search results to documents originating in a particular country. You may use [Boolean operators](https://developers.google.com/custom-search/docs/xml_results_appendices#booleanOperators) in the cr parameter's value. Google Search determines the country of a document by analyzing: * the top-level domain (TLD) of the document's URL * the geographic location of the Web server's IP address See the [Country Parameter Values](https://developers.google.com/custom-search/docs/xml_results_appendices#countryCollections) page for a list of valid values for this parameter.",
              "type": "string",
              "location": "query"
            },
            "imgDominantColor": {
              "type": "string",
              "enum": [
                "imgDominantColorUndefined",
                "black",
                "blue",
                "brown",
                "gray",
                "green",
                "orange",
                "pink",
                "purple",
                "red",
                "teal",
                "white",
                "yellow"
              ],
              "enumDescriptions": [
                "No dominant color specified.",
                "Predominantly black images only.",
                "Predominantly blue images only.",
                "Predominantly brown images only.",
                "Predominantly gray images only.",
                "Predominantly green images only.",
                "Predominantly orange images only.",
                "Predominantly pink images only.",
                "Predominantly purple images only.",
                "Predominantly red images only.",
                "Predominantly teal images only.",
                "Predominantly white images only.",
                "Predominantly yellow images only."
              ],
              "location": "query",
              "description": "Returns images of a specific dominant color. Acceptable values are: * `\"black\"` * `\"blue\"` * `\"brown\"` * `\"gray\"` * `\"green\"` * `\"orange\"` * `\"pink\"` * `\"purple\"` * `\"red\"` * `\"teal\"` * `\"white\"` * `\"yellow\"`"
            },
            "orTerms": {
              "type": "string",
              "description": "Provides additional search terms to check for in a document, where each document in the search results must contain at least one of the additional search terms.",
              "location": "query"
            },
            "highRange": {
              "location": "query",
              "description": "Specifies the ending value for a search range. * Use `lowRange` and `highRange` to append an inclusive search range of `lowRange...highRange` to the query.",
              "type": "string"
            },
            "sort": {
              "location": "query",
              "type": "string",
              "description": "The sort expression to apply to the results. The sort parameter specifies that the results be sorted according to the specified expression i.e. sort by date. [Example: sort=date](https://developers.google.com/custom-search/docs/structured_search#sort-by-attribute)."
            },
            "imgType": {
              "location": "query",
              "enumDescriptions": [
                "No image type specified.",
                "Clipart-style images only.",
                "Images of faces only.",
                "Line art images only.",
                "Stock images only.",
                "Photo images only.",
                "Animated images only."
              ],
              "type": "string",
              "description": "Returns images of a type. Acceptable values are: * `\"clipart\"` * `\"face\"` * `\"lineart\"` * `\"stock\"` * `\"photo\"` * `\"animated\"`",
              "enum": [
                "imgTypeUndefined",
                "clipart",
                "face",
                "lineart",
                "stock",
                "photo",
                "animated"
              ]
            },
            "gl": {
              "location": "query",
              "description": "Geolocation of end user. * The `gl` parameter value is a two-letter country code. The `gl` parameter boosts search results whose country of origin matches the parameter value. See the [Country Codes](https://developers.google.com/custom-search/docs/xml_results_appendices#countryCodes) page for a list of valid values. * Specifying a `gl` parameter value should lead to more relevant results. This is particularly true for international customers and, even more specifically, for customers in English- speaking countries other than the United States.",
              "type": "string"
            },
            "q": {
              "location": "query",
              "description": "Query",
              "type": "string"
            },
            "dateRestrict": {
              "description": "Restricts results to URLs based on date. Supported values include: * `d[number]`: requests results from the specified number of past days. * `w[number]`: requests results from the specified number of past weeks. * `m[number]`: requests results from the specified number of past months. * `y[number]`: requests results from the specified number of past years.",
              "location": "query",
              "type": "string"
            },
            "siteSearch": {
              "location": "query",
              "description": "Specifies a given site which should always be included or excluded from results (see `siteSearchFilter` parameter, below).",
              "type": "string"
            },
            "exactTerms": {
              "type": "string",
              "location": "query",
              "description": "Identifies a phrase that all documents in the search results must contain."
            },
            "relatedSite": {
              "location": "query",
              "description": "Specifies that all search results should be pages that are related to the specified URL.",
              "type": "string"
            },
            "lowRange": {
              "description": "Specifies the starting value for a search range. Use `lowRange` and `highRange` to append an inclusive search range of `lowRange...highRange` to the query.",
              "location": "query",
              "type": "string"
            },
            "searchType": {
              "enumDescriptions": [
                "Search type unspecified (defaults to web search).",
                "Image search."
              ],
              "description": "Specifies the search type: `image`. If unspecified, results are limited to webpages. Acceptable values are: * `\"image\"`: custom image search.",
              "enum": [
                "searchTypeUndefined",
                "image"
              ],
              "location": "query",
              "type": "string"
            },
            "lr": {
              "location": "query",
              "type": "string",
              "description": "Restricts the search to documents written in a particular language (e.g., `lr=lang_ja`). Acceptable values are: * `\"lang_ar\"`: Arabic * `\"lang_bg\"`: Bulgarian * `\"lang_ca\"`: Catalan * `\"lang_cs\"`: Czech * `\"lang_da\"`: Danish * `\"lang_de\"`: German * `\"lang_el\"`: Greek * `\"lang_en\"`: English * `\"lang_es\"`: Spanish * `\"lang_et\"`: Estonian * `\"lang_fi\"`: Finnish * `\"lang_fr\"`: French * `\"lang_hr\"`: Croatian * `\"lang_hu\"`: Hungarian * `\"lang_id\"`: Indonesian * `\"lang_is\"`: Icelandic * `\"lang_it\"`: Italian * `\"lang_iw\"`: Hebrew * `\"lang_ja\"`: Japanese * `\"lang_ko\"`: Korean * `\"lang_lt\"`: Lithuanian * `\"lang_lv\"`: Latvian * `\"lang_nl\"`: Dutch * `\"lang_no\"`: Norwegian * `\"lang_pl\"`: Polish * `\"lang_pt\"`: Portuguese * `\"lang_ro\"`: Romanian * `\"lang_ru\"`: Russian * `\"lang_sk\"`: Slovak * `\"lang_sl\"`: Slovenian * `\"lang_sr\"`: Serbian * `\"lang_sv\"`: Swedish * `\"lang_tr\"`: Turkish * `\"lang_zh-CN\"`: Chinese (Simplified) * `\"lang_zh-TW\"`: Chinese (Traditional)"
            },
            "filter": {
              "type": "string",
              "location": "query",
              "description": "Controls turning on or off the duplicate content filter. * See [Automatic Filtering](https://developers.google.com/custom-search/docs/xml_results#automaticFiltering) for more information about Google's search results filters. Note that host crowding filtering applies only to multi-site searches. * By default, Google applies filtering to all search results to improve the quality of those results. Acceptable values are: * `0`: Turns off duplicate content filter. * `1`: Turns on duplicate content filter."
            },
            "cx": {
              "location": "query",
              "description": "The Programmable Search Engine ID to use for this request.",
              "type": "string"
            },
            "siteSearchFilter": {
              "type": "string",
              "description": "Controls whether to include or exclude results from the site named in the `siteSearch` parameter. Acceptable values are: * `\"e\"`: exclude * `\"i\"`: include",
              "location": "query",
              "enum": [
                "siteSearchFilterUndefined",
                "e",
                "i"
              ],
              "enumDescriptions": [
                "Filter mode unspecified.",
                "Exclude results from the listed sites.",
                "Include only results from the listed sites."
              ]
            },
            "imgSize": {
              "location": "query",
              "enumDescriptions": [
                "No image size specified.",
                "Only the largest possible images.",
                "Only very small icon-sized images.",
                "Only large images.",
                "Only medium images.",
                "Only small images.",
                "Only very large images.",
                "Only extremely large images."
              ],
              "type": "string",
              "enum": [
                "imgSizeUndefined",
                "HUGE",
                "ICON",
                "LARGE",
                "MEDIUM",
                "SMALL",
                "XLARGE",
                "XXLARGE"
              ],
              "description": "Returns images of a specified size. Acceptable values are: * `\"huge\"` * `\"icon\"` * `\"large\"` * `\"medium\"` * `\"small\"` * `\"xlarge\"` * `\"xxlarge\"`"
            },
            "fileType": {
              "type": "string",
              "location": "query",
              "description": "Restricts results to files of a specified extension. A list of file types indexable by Google can be found in Search Console [Help Center](https://support.google.com/webmasters/answer/35287)."
            }
          },
          "path": "customsearch/v1"
        }
      }
    }
  },
  "canonicalName": "CustomSearch API",
  "protocol": "rest",
  "kind": "discovery#restDescription",
  "baseUrl": "https://customsearch.googleapis.com/",
  "id": "customsearch:v1",
  "revision": "20200917"
}
