Documentation

Overview

Package customsearch provides access to the CustomSearch API.

For product documentation, see: https://developers.google.com/custom-search/v1/using_rest

Creating a client

Usage example:

import "google.golang.org/api/customsearch/v1"
...
ctx := context.Background()
customsearchService, err := customsearch.NewService(ctx)

In this example, Google Application Default Credentials are used for authentication.

For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.

Other authentication options

To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:

customsearchService, err := customsearch.NewService(ctx, option.WithAPIKey("AIza..."))

To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:

config := &oauth2.Config{...}
// ...
token, err := config.Exchange(ctx, ...)
customsearchService, err := customsearch.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))

See https://godoc.org/google.golang.org/api/option/ for details on options.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Context

type Context struct {
	Facets [][]*ContextFacetsItem `json:"facets,omitempty"`

	Title string `json:"title,omitempty"`

	// ForceSendFields is a list of field names (e.g. "Facets") to
	// unconditionally include in API requests. By default, fields with
	// empty values are omitted from API requests. However, any non-pointer,
	// non-interface field appearing in ForceSendFields will be sent to the
	// server regardless of whether the field is empty or not. This may be
	// used to include empty fields in Patch requests.
	ForceSendFields []string `json:"-"`

	// NullFields is a list of field names (e.g. "Facets") to include in API
	// requests with the JSON null value. By default, fields with empty
	// values are omitted from API requests. However, any field with an
	// empty value appearing in NullFields will be sent to the server as
	// null. It is an error if a field in this list has a non-empty value.
	// This may be used to include null fields in Patch requests.
	NullFields []string `json:"-"`
}

func (*Context) MarshalJSON

func (s *Context) MarshalJSON() ([]byte, error)

type ContextFacetsItem

type ContextFacetsItem struct {
	Anchor string `json:"anchor,omitempty"`

	Label string `json:"label,omitempty"`

	LabelWithOp string `json:"label_with_op,omitempty"`

	// ForceSendFields is a list of field names (e.g. "Anchor") to
	// unconditionally include in API requests. By default, fields with
	// empty values are omitted from API requests. However, any non-pointer,
	// non-interface field appearing in ForceSendFields will be sent to the
	// server regardless of whether the field is empty or not. This may be
	// used to include empty fields in Patch requests.
	ForceSendFields []string `json:"-"`

	// NullFields is a list of field names (e.g. "Anchor") to include in API
	// requests with the JSON null value. By default, fields with empty
	// values are omitted from API requests. However, any field with an
	// empty value appearing in NullFields will be sent to the server as
	// null. It is an error if a field in this list has a non-empty value.
	// This may be used to include null fields in Patch requests.
	NullFields []string `json:"-"`
}

func (*ContextFacetsItem) MarshalJSON

func (s *ContextFacetsItem) MarshalJSON() ([]byte, error)

type CseListCall

type CseListCall struct {
	// contains filtered or unexported fields
}

func (*CseListCall) C2coff

func (c *CseListCall) C2coff(c2coff string) *CseListCall

    C2coff sets the optional parameter "c2coff": Turns off the translation between zh-CN and zh-TW.

    func (*CseListCall) Context

    func (c *CseListCall) Context(ctx context.Context) *CseListCall

      Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

      func (*CseListCall) Cr

      func (c *CseListCall) Cr(cr string) *CseListCall

        Cr sets the optional parameter "cr": Country restrict(s).

        func (*CseListCall) Cx

        func (c *CseListCall) Cx(cx string) *CseListCall

          Cx sets the optional parameter "cx": The custom search engine ID to scope this search query

          func (*CseListCall) DateRestrict

          func (c *CseListCall) DateRestrict(dateRestrict string) *CseListCall

            DateRestrict sets the optional parameter "dateRestrict": Specifies all search results are from a time period

            func (*CseListCall) Do

            func (c *CseListCall) Do(opts ...googleapi.CallOption) (*Search, error)

              Do executes the "search.cse.list" call. Exactly one of *Search or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *Search.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

              func (*CseListCall) ExactTerms

              func (c *CseListCall) ExactTerms(exactTerms string) *CseListCall

                ExactTerms sets the optional parameter "exactTerms": Identifies a phrase that all documents in the search results must contain

                func (*CseListCall) ExcludeTerms

                func (c *CseListCall) ExcludeTerms(excludeTerms string) *CseListCall

                  ExcludeTerms sets the optional parameter "excludeTerms": Identifies a word or phrase that should not appear in any documents in the search results

                  func (*CseListCall) Fields

                  func (c *CseListCall) Fields(s ...googleapi.Field) *CseListCall

                    Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                    func (*CseListCall) FileType

                    func (c *CseListCall) FileType(fileType string) *CseListCall

                      FileType sets the optional parameter "fileType": Returns images of a specified type. Some of the allowed values are: bmp, gif, png, jpg, svg, pdf, ...

                      func (*CseListCall) Filter

                      func (c *CseListCall) Filter(filter string) *CseListCall

                        Filter sets the optional parameter "filter": Controls turning on or off the duplicate content filter.

                        Possible values:

                        "0" - Turns off duplicate content filter.
                        "1" - Turns on duplicate content filter.
                        

                        func (*CseListCall) Gl

                        func (c *CseListCall) Gl(gl string) *CseListCall

                          Gl sets the optional parameter "gl": Geolocation of end user.

                          func (*CseListCall) Googlehost

                          func (c *CseListCall) Googlehost(googlehost string) *CseListCall

                            Googlehost sets the optional parameter "googlehost": The local Google domain to use to perform the search.

                            func (*CseListCall) Header

                            func (c *CseListCall) Header() http.Header

                              Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                              func (*CseListCall) HighRange

                              func (c *CseListCall) HighRange(highRange string) *CseListCall

                                HighRange sets the optional parameter "highRange": Creates a range in form as_nlo value..as_nhi value and attempts to append it to query

                                func (*CseListCall) Hl

                                func (c *CseListCall) Hl(hl string) *CseListCall

                                  Hl sets the optional parameter "hl": Sets the user interface language.

                                  func (*CseListCall) Hq

                                  func (c *CseListCall) Hq(hq string) *CseListCall

                                    Hq sets the optional parameter "hq": Appends the extra query terms to the query.

                                    func (*CseListCall) IfNoneMatch

                                    func (c *CseListCall) IfNoneMatch(entityTag string) *CseListCall

                                      IfNoneMatch sets the optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request. Use googleapi.IsNotModified to check whether the response error from Do is the result of In-None-Match.

                                      func (*CseListCall) ImgColorType

                                      func (c *CseListCall) ImgColorType(imgColorType string) *CseListCall

                                        ImgColorType sets the optional parameter "imgColorType": Returns black and white, grayscale, or color images: mono, gray, and color.

                                        Possible values:

                                        "color" - color
                                        "gray" - gray
                                        "mono" - mono
                                        

                                        func (*CseListCall) ImgDominantColor

                                        func (c *CseListCall) ImgDominantColor(imgDominantColor string) *CseListCall

                                          ImgDominantColor sets the optional parameter "imgDominantColor": Returns images of a specific dominant color: red, orange, yellow, green, teal, blue, purple, pink, white, gray, black and brown.

                                          Possible values:

                                          "black" - black
                                          "blue" - blue
                                          "brown" - brown
                                          "gray" - gray
                                          "green" - green
                                          "orange" - orange
                                          "pink" - pink
                                          "purple" - purple
                                          "red" - red
                                          "teal" - teal
                                          "white" - white
                                          "yellow" - yellow
                                          

                                          func (*CseListCall) ImgSize

                                          func (c *CseListCall) ImgSize(imgSize string) *CseListCall

                                            ImgSize sets the optional parameter "imgSize": Returns images of a specified size, where size can be one of: icon, small, medium, large, xlarge, xxlarge, and huge.

                                            Possible values:

                                            "huge" - huge
                                            "icon" - icon
                                            "large" - large
                                            "medium" - medium
                                            "small" - small
                                            "xlarge" - xlarge
                                            "xxlarge" - xxlarge
                                            

                                            func (*CseListCall) ImgType

                                            func (c *CseListCall) ImgType(imgType string) *CseListCall

                                              ImgType sets the optional parameter "imgType": Returns images of a type, which can be one of: clipart, face, lineart, news, and photo.

                                              Possible values:

                                              "clipart" - clipart
                                              "face" - face
                                              "lineart" - lineart
                                              "news" - news
                                              "photo" - photo
                                              

                                              func (*CseListCall) LinkSite

                                              func (c *CseListCall) LinkSite(linkSite string) *CseListCall

                                                LinkSite sets the optional parameter "linkSite": Specifies that all search results should contain a link to a particular URL

                                                func (*CseListCall) LowRange

                                                func (c *CseListCall) LowRange(lowRange string) *CseListCall

                                                  LowRange sets the optional parameter "lowRange": Creates a range in form as_nlo value..as_nhi value and attempts to append it to query

                                                  func (*CseListCall) Lr

                                                  func (c *CseListCall) Lr(lr string) *CseListCall

                                                    Lr sets the optional parameter "lr": The language restriction for the search results

                                                    Possible values:

                                                    "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)
                                                    

                                                    func (*CseListCall) Num

                                                    func (c *CseListCall) Num(num int64) *CseListCall

                                                      Num sets the optional parameter "num": Number of search results to return

                                                      func (*CseListCall) OrTerms

                                                      func (c *CseListCall) OrTerms(orTerms string) *CseListCall

                                                        OrTerms sets the optional parameter "orTerms": 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

                                                        func (*CseListCall) RelatedSite

                                                        func (c *CseListCall) RelatedSite(relatedSite string) *CseListCall

                                                          RelatedSite sets the optional parameter "relatedSite": Specifies that all search results should be pages that are related to the specified URL

                                                          func (*CseListCall) Rights

                                                          func (c *CseListCall) Rights(rights string) *CseListCall

                                                            Rights sets the optional parameter "rights": Filters based on licensing. Supported values include: cc_publicdomain, cc_attribute, cc_sharealike, cc_noncommercial, cc_nonderived and combinations of these.

                                                            func (*CseListCall) Safe

                                                            func (c *CseListCall) Safe(safe string) *CseListCall

                                                              Safe sets the optional parameter "safe": Search safety level

                                                              Possible values:

                                                              "active" - Enables safe search filtering.
                                                              "high" - (Deprecated) Same as active.
                                                              "medium" - (Deprecated) Same as active.
                                                              "off" (default) - Disables safe search filtering.
                                                              

                                                              func (*CseListCall) SearchType

                                                              func (c *CseListCall) SearchType(searchType string) *CseListCall

                                                                SearchType sets the optional parameter "searchType": Specifies the search type: image.

                                                                Possible values:

                                                                "image" - custom image search
                                                                

                                                                func (*CseListCall) SiteSearch

                                                                func (c *CseListCall) SiteSearch(siteSearch string) *CseListCall

                                                                  SiteSearch sets the optional parameter "siteSearch": Specifies all search results should be pages from a given site

                                                                  func (*CseListCall) SiteSearchFilter

                                                                  func (c *CseListCall) SiteSearchFilter(siteSearchFilter string) *CseListCall

                                                                    SiteSearchFilter sets the optional parameter "siteSearchFilter": Controls whether to include or exclude results from the site named in the as_sitesearch parameter

                                                                    Possible values:

                                                                    "e" - exclude
                                                                    "i" - include
                                                                    

                                                                    func (*CseListCall) Sort

                                                                    func (c *CseListCall) Sort(sort string) *CseListCall

                                                                      Sort sets the optional parameter "sort": The sort expression to apply to the results

                                                                      func (*CseListCall) Start

                                                                      func (c *CseListCall) Start(start int64) *CseListCall

                                                                        Start sets the optional parameter "start": The index of the first result to return

                                                                        type CseService

                                                                        type CseService struct {
                                                                        	Siterestrict *CseSiterestrictService
                                                                        	// contains filtered or unexported fields
                                                                        }

                                                                        func NewCseService

                                                                        func NewCseService(s *Service) *CseService

                                                                        func (*CseService) List

                                                                        func (r *CseService) List(q string) *CseListCall

                                                                          List: Returns metadata about the search performed, metadata about the custom search engine used for the search, and the search results.

                                                                          type CseSiterestrictListCall

                                                                          type CseSiterestrictListCall struct {
                                                                          	// contains filtered or unexported fields
                                                                          }

                                                                          func (*CseSiterestrictListCall) C2coff

                                                                            C2coff sets the optional parameter "c2coff": Turns off the translation between zh-CN and zh-TW.

                                                                            func (*CseSiterestrictListCall) Context

                                                                              Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                              func (*CseSiterestrictListCall) Cr

                                                                                Cr sets the optional parameter "cr": Country restrict(s).

                                                                                func (*CseSiterestrictListCall) Cx

                                                                                  Cx sets the optional parameter "cx": The custom search engine ID to scope this search query

                                                                                  func (*CseSiterestrictListCall) DateRestrict

                                                                                  func (c *CseSiterestrictListCall) DateRestrict(dateRestrict string) *CseSiterestrictListCall

                                                                                    DateRestrict sets the optional parameter "dateRestrict": Specifies all search results are from a time period

                                                                                    func (*CseSiterestrictListCall) Do

                                                                                      Do executes the "search.cse.siterestrict.list" call. Exactly one of *Search or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *Search.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

                                                                                      func (*CseSiterestrictListCall) ExactTerms

                                                                                      func (c *CseSiterestrictListCall) ExactTerms(exactTerms string) *CseSiterestrictListCall

                                                                                        ExactTerms sets the optional parameter "exactTerms": Identifies a phrase that all documents in the search results must contain

                                                                                        func (*CseSiterestrictListCall) ExcludeTerms

                                                                                        func (c *CseSiterestrictListCall) ExcludeTerms(excludeTerms string) *CseSiterestrictListCall

                                                                                          ExcludeTerms sets the optional parameter "excludeTerms": Identifies a word or phrase that should not appear in any documents in the search results

                                                                                          func (*CseSiterestrictListCall) Fields

                                                                                            Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                                                            func (*CseSiterestrictListCall) FileType

                                                                                              FileType sets the optional parameter "fileType": Returns images of a specified type. Some of the allowed values are: bmp, gif, png, jpg, svg, pdf, ...

                                                                                              func (*CseSiterestrictListCall) Filter

                                                                                                Filter sets the optional parameter "filter": Controls turning on or off the duplicate content filter.

                                                                                                Possible values:

                                                                                                "0" - Turns off duplicate content filter.
                                                                                                "1" - Turns on duplicate content filter.
                                                                                                

                                                                                                func (*CseSiterestrictListCall) Gl

                                                                                                  Gl sets the optional parameter "gl": Geolocation of end user.

                                                                                                  func (*CseSiterestrictListCall) Googlehost

                                                                                                  func (c *CseSiterestrictListCall) Googlehost(googlehost string) *CseSiterestrictListCall

                                                                                                    Googlehost sets the optional parameter "googlehost": The local Google domain to use to perform the search.

                                                                                                    func (*CseSiterestrictListCall) Header

                                                                                                    func (c *CseSiterestrictListCall) Header() http.Header

                                                                                                      Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                                                                      func (*CseSiterestrictListCall) HighRange

                                                                                                      func (c *CseSiterestrictListCall) HighRange(highRange string) *CseSiterestrictListCall

                                                                                                        HighRange sets the optional parameter "highRange": Creates a range in form as_nlo value..as_nhi value and attempts to append it to query

                                                                                                        func (*CseSiterestrictListCall) Hl

                                                                                                          Hl sets the optional parameter "hl": Sets the user interface language.

                                                                                                          func (*CseSiterestrictListCall) Hq

                                                                                                            Hq sets the optional parameter "hq": Appends the extra query terms to the query.

                                                                                                            func (*CseSiterestrictListCall) IfNoneMatch

                                                                                                            func (c *CseSiterestrictListCall) IfNoneMatch(entityTag string) *CseSiterestrictListCall

                                                                                                              IfNoneMatch sets the optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request. Use googleapi.IsNotModified to check whether the response error from Do is the result of In-None-Match.

                                                                                                              func (*CseSiterestrictListCall) ImgColorType

                                                                                                              func (c *CseSiterestrictListCall) ImgColorType(imgColorType string) *CseSiterestrictListCall

                                                                                                                ImgColorType sets the optional parameter "imgColorType": Returns black and white, grayscale, or color images: mono, gray, and color.

                                                                                                                Possible values:

                                                                                                                "color" - color
                                                                                                                "gray" - gray
                                                                                                                "mono" - mono
                                                                                                                

                                                                                                                func (*CseSiterestrictListCall) ImgDominantColor

                                                                                                                func (c *CseSiterestrictListCall) ImgDominantColor(imgDominantColor string) *CseSiterestrictListCall

                                                                                                                  ImgDominantColor sets the optional parameter "imgDominantColor": Returns images of a specific dominant color: red, orange, yellow, green, teal, blue, purple, pink, white, gray, black and brown.

                                                                                                                  Possible values:

                                                                                                                  "black" - black
                                                                                                                  "blue" - blue
                                                                                                                  "brown" - brown
                                                                                                                  "gray" - gray
                                                                                                                  "green" - green
                                                                                                                  "orange" - orange
                                                                                                                  "pink" - pink
                                                                                                                  "purple" - purple
                                                                                                                  "red" - red
                                                                                                                  "teal" - teal
                                                                                                                  "white" - white
                                                                                                                  "yellow" - yellow
                                                                                                                  

                                                                                                                  func (*CseSiterestrictListCall) ImgSize

                                                                                                                    ImgSize sets the optional parameter "imgSize": Returns images of a specified size, where size can be one of: icon, small, medium, large, xlarge, xxlarge, and huge.

                                                                                                                    Possible values:

                                                                                                                    "huge" - huge
                                                                                                                    "icon" - icon
                                                                                                                    "large" - large
                                                                                                                    "medium" - medium
                                                                                                                    "small" - small
                                                                                                                    "xlarge" - xlarge
                                                                                                                    "xxlarge" - xxlarge
                                                                                                                    

                                                                                                                    func (*CseSiterestrictListCall) ImgType

                                                                                                                      ImgType sets the optional parameter "imgType": Returns images of a type, which can be one of: clipart, face, lineart, news, and photo.

                                                                                                                      Possible values:

                                                                                                                      "clipart" - clipart
                                                                                                                      "face" - face
                                                                                                                      "lineart" - lineart
                                                                                                                      "news" - news
                                                                                                                      "photo" - photo
                                                                                                                      

                                                                                                                      func (*CseSiterestrictListCall) LinkSite

                                                                                                                        LinkSite sets the optional parameter "linkSite": Specifies that all search results should contain a link to a particular URL

                                                                                                                        func (*CseSiterestrictListCall) LowRange

                                                                                                                          LowRange sets the optional parameter "lowRange": Creates a range in form as_nlo value..as_nhi value and attempts to append it to query

                                                                                                                          func (*CseSiterestrictListCall) Lr

                                                                                                                            Lr sets the optional parameter "lr": The language restriction for the search results

                                                                                                                            Possible values:

                                                                                                                            "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)
                                                                                                                            

                                                                                                                            func (*CseSiterestrictListCall) Num

                                                                                                                              Num sets the optional parameter "num": Number of search results to return

                                                                                                                              func (*CseSiterestrictListCall) OrTerms

                                                                                                                                OrTerms sets the optional parameter "orTerms": 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

                                                                                                                                func (*CseSiterestrictListCall) RelatedSite

                                                                                                                                func (c *CseSiterestrictListCall) RelatedSite(relatedSite string) *CseSiterestrictListCall

                                                                                                                                  RelatedSite sets the optional parameter "relatedSite": Specifies that all search results should be pages that are related to the specified URL

                                                                                                                                  func (*CseSiterestrictListCall) Rights

                                                                                                                                    Rights sets the optional parameter "rights": Filters based on licensing. Supported values include: cc_publicdomain, cc_attribute, cc_sharealike, cc_noncommercial, cc_nonderived and combinations of these.

                                                                                                                                    func (*CseSiterestrictListCall) Safe

                                                                                                                                      Safe sets the optional parameter "safe": Search safety level

                                                                                                                                      Possible values:

                                                                                                                                      "high" - Enables highest level of safe search filtering.
                                                                                                                                      "medium" - Enables moderate safe search filtering.
                                                                                                                                      "off" (default) - Disables safe search filtering.
                                                                                                                                      

                                                                                                                                      func (*CseSiterestrictListCall) SearchType

                                                                                                                                      func (c *CseSiterestrictListCall) SearchType(searchType string) *CseSiterestrictListCall

                                                                                                                                        SearchType sets the optional parameter "searchType": Specifies the search type: image.

                                                                                                                                        Possible values:

                                                                                                                                        "image" - custom image search
                                                                                                                                        

                                                                                                                                        func (*CseSiterestrictListCall) SiteSearch

                                                                                                                                        func (c *CseSiterestrictListCall) SiteSearch(siteSearch string) *CseSiterestrictListCall

                                                                                                                                          SiteSearch sets the optional parameter "siteSearch": Specifies all search results should be pages from a given site

                                                                                                                                          func (*CseSiterestrictListCall) SiteSearchFilter

                                                                                                                                          func (c *CseSiterestrictListCall) SiteSearchFilter(siteSearchFilter string) *CseSiterestrictListCall

                                                                                                                                            SiteSearchFilter sets the optional parameter "siteSearchFilter": Controls whether to include or exclude results from the site named in the as_sitesearch parameter

                                                                                                                                            Possible values:

                                                                                                                                            "e" - exclude
                                                                                                                                            "i" - include
                                                                                                                                            

                                                                                                                                            func (*CseSiterestrictListCall) Sort

                                                                                                                                              Sort sets the optional parameter "sort": The sort expression to apply to the results

                                                                                                                                              func (*CseSiterestrictListCall) Start

                                                                                                                                                Start sets the optional parameter "start": The index of the first result to return

                                                                                                                                                type CseSiterestrictService

                                                                                                                                                type CseSiterestrictService struct {
                                                                                                                                                	// contains filtered or unexported fields
                                                                                                                                                }

                                                                                                                                                func NewCseSiterestrictService

                                                                                                                                                func NewCseSiterestrictService(s *Service) *CseSiterestrictService

                                                                                                                                                func (*CseSiterestrictService) List

                                                                                                                                                  List: Returns metadata about the search performed, metadata about the custom search engine used for the search, and the search results. Uses a small set of url patterns.

                                                                                                                                                  type Promotion

                                                                                                                                                  type Promotion struct {
                                                                                                                                                  	BodyLines []*PromotionBodyLines `json:"bodyLines,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	DisplayLink string `json:"displayLink,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	HtmlTitle string `json:"htmlTitle,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Image *PromotionImage `json:"image,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Link string `json:"link,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Title string `json:"title,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "BodyLines") to
                                                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                                  
                                                                                                                                                  	// NullFields is a list of field names (e.g. "BodyLines") to include in
                                                                                                                                                  	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                                  	// values are omitted from API requests. However, any field with an
                                                                                                                                                  	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                  	// This may be used to include null fields in Patch requests.
                                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                                  }

                                                                                                                                                  func (*Promotion) MarshalJSON

                                                                                                                                                  func (s *Promotion) MarshalJSON() ([]byte, error)

                                                                                                                                                  type PromotionBodyLines

                                                                                                                                                  type PromotionBodyLines struct {
                                                                                                                                                  	HtmlTitle string `json:"htmlTitle,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Link string `json:"link,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Title string `json:"title,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Url string `json:"url,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "HtmlTitle") to
                                                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                                  
                                                                                                                                                  	// NullFields is a list of field names (e.g. "HtmlTitle") to include in
                                                                                                                                                  	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                                  	// values are omitted from API requests. However, any field with an
                                                                                                                                                  	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                  	// This may be used to include null fields in Patch requests.
                                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                                  }

                                                                                                                                                  func (*PromotionBodyLines) MarshalJSON

                                                                                                                                                  func (s *PromotionBodyLines) MarshalJSON() ([]byte, error)

                                                                                                                                                  type PromotionImage

                                                                                                                                                  type PromotionImage struct {
                                                                                                                                                  	Height int64 `json:"height,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Source string `json:"source,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Width int64 `json:"width,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "Height") to
                                                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                                  
                                                                                                                                                  	// NullFields is a list of field names (e.g. "Height") to include in API
                                                                                                                                                  	// requests with the JSON null value. By default, fields with empty
                                                                                                                                                  	// values are omitted from API requests. However, any field with an
                                                                                                                                                  	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                  	// This may be used to include null fields in Patch requests.
                                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                                  }

                                                                                                                                                  func (*PromotionImage) MarshalJSON

                                                                                                                                                  func (s *PromotionImage) MarshalJSON() ([]byte, error)

                                                                                                                                                  type Query

                                                                                                                                                  type Query struct {
                                                                                                                                                  	Count int64 `json:"count,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Cr string `json:"cr,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Cx string `json:"cx,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	DateRestrict string `json:"dateRestrict,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	DisableCnTwTranslation string `json:"disableCnTwTranslation,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	ExactTerms string `json:"exactTerms,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	ExcludeTerms string `json:"excludeTerms,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	FileType string `json:"fileType,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Filter string `json:"filter,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Gl string `json:"gl,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	GoogleHost string `json:"googleHost,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	HighRange string `json:"highRange,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Hl string `json:"hl,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Hq string `json:"hq,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	ImgColorType string `json:"imgColorType,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	ImgDominantColor string `json:"imgDominantColor,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	ImgSize string `json:"imgSize,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	ImgType string `json:"imgType,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	InputEncoding string `json:"inputEncoding,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Language string `json:"language,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	LinkSite string `json:"linkSite,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	LowRange string `json:"lowRange,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	OrTerms string `json:"orTerms,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	OutputEncoding string `json:"outputEncoding,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	RelatedSite string `json:"relatedSite,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Rights string `json:"rights,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Safe string `json:"safe,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	SearchTerms string `json:"searchTerms,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	SearchType string `json:"searchType,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	SiteSearch string `json:"siteSearch,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	SiteSearchFilter string `json:"siteSearchFilter,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Sort string `json:"sort,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	StartIndex int64 `json:"startIndex,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	StartPage int64 `json:"startPage,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Title string `json:"title,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	TotalResults int64 `json:"totalResults,omitempty,string"`
                                                                                                                                                  
                                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "Count") to
                                                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                                  
                                                                                                                                                  	// NullFields is a list of field names (e.g. "Count") to include in API
                                                                                                                                                  	// requests with the JSON null value. By default, fields with empty
                                                                                                                                                  	// values are omitted from API requests. However, any field with an
                                                                                                                                                  	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                  	// This may be used to include null fields in Patch requests.
                                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                                  }

                                                                                                                                                  func (*Query) MarshalJSON

                                                                                                                                                  func (s *Query) MarshalJSON() ([]byte, error)

                                                                                                                                                  type Result

                                                                                                                                                  type Result struct {
                                                                                                                                                  	CacheId string `json:"cacheId,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	DisplayLink string `json:"displayLink,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	FileFormat string `json:"fileFormat,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	FormattedUrl string `json:"formattedUrl,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	HtmlFormattedUrl string `json:"htmlFormattedUrl,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	HtmlSnippet string `json:"htmlSnippet,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	HtmlTitle string `json:"htmlTitle,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Image *ResultImage `json:"image,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Kind string `json:"kind,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Labels []*ResultLabels `json:"labels,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Link string `json:"link,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Mime string `json:"mime,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Pagemap map[string][]googleapi.RawMessage `json:"pagemap,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Snippet string `json:"snippet,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Title string `json:"title,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "CacheId") to
                                                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                                  
                                                                                                                                                  	// NullFields is a list of field names (e.g. "CacheId") to include in
                                                                                                                                                  	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                                  	// values are omitted from API requests. However, any field with an
                                                                                                                                                  	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                  	// This may be used to include null fields in Patch requests.
                                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                                  }

                                                                                                                                                  func (*Result) MarshalJSON

                                                                                                                                                  func (s *Result) MarshalJSON() ([]byte, error)

                                                                                                                                                  type ResultImage

                                                                                                                                                  type ResultImage struct {
                                                                                                                                                  	ByteSize int64 `json:"byteSize,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	ContextLink string `json:"contextLink,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Height int64 `json:"height,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	ThumbnailHeight int64 `json:"thumbnailHeight,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	ThumbnailLink string `json:"thumbnailLink,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	ThumbnailWidth int64 `json:"thumbnailWidth,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Width int64 `json:"width,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "ByteSize") to
                                                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                                  
                                                                                                                                                  	// NullFields is a list of field names (e.g. "ByteSize") to include in
                                                                                                                                                  	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                                  	// values are omitted from API requests. However, any field with an
                                                                                                                                                  	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                  	// This may be used to include null fields in Patch requests.
                                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                                  }

                                                                                                                                                  func (*ResultImage) MarshalJSON

                                                                                                                                                  func (s *ResultImage) MarshalJSON() ([]byte, error)

                                                                                                                                                  type ResultLabels

                                                                                                                                                  type ResultLabels struct {
                                                                                                                                                  	DisplayName string `json:"displayName,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	LabelWithOp string `json:"label_with_op,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Name string `json:"name,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
                                                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                                  
                                                                                                                                                  	// NullFields is a list of field names (e.g. "DisplayName") to include
                                                                                                                                                  	// in API requests with the JSON null value. By default, fields with
                                                                                                                                                  	// empty values are omitted from API requests. However, any field with
                                                                                                                                                  	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                  	// This may be used to include null fields in Patch requests.
                                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                                  }

                                                                                                                                                  func (*ResultLabels) MarshalJSON

                                                                                                                                                  func (s *ResultLabels) MarshalJSON() ([]byte, error)
                                                                                                                                                  type Search struct {
                                                                                                                                                  	Context *Context `json:"context,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Items []*Result `json:"items,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Kind string `json:"kind,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Promotions []*Promotion `json:"promotions,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Queries map[string][]Query `json:"queries,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	SearchInformation *SearchSearchInformation `json:"searchInformation,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Spelling *SearchSpelling `json:"spelling,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Url *SearchUrl `json:"url,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                                  	// server.
                                                                                                                                                  	googleapi.ServerResponse `json:"-"`
                                                                                                                                                  
                                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "Context") to
                                                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                                  
                                                                                                                                                  	// NullFields is a list of field names (e.g. "Context") to include in
                                                                                                                                                  	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                                  	// values are omitted from API requests. However, any field with an
                                                                                                                                                  	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                  	// This may be used to include null fields in Patch requests.
                                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                                  }

                                                                                                                                                  func (*Search) MarshalJSON

                                                                                                                                                  func (s *Search) MarshalJSON() ([]byte, error)

                                                                                                                                                  type SearchSearchInformation

                                                                                                                                                  type SearchSearchInformation struct {
                                                                                                                                                  	FormattedSearchTime string `json:"formattedSearchTime,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	FormattedTotalResults string `json:"formattedTotalResults,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	SearchTime float64 `json:"searchTime,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	TotalResults int64 `json:"totalResults,omitempty,string"`
                                                                                                                                                  
                                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "FormattedSearchTime")
                                                                                                                                                  	// to unconditionally include in API requests. By default, fields with
                                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                                  
                                                                                                                                                  	// NullFields is a list of field names (e.g. "FormattedSearchTime") to
                                                                                                                                                  	// include in API requests with the JSON null value. By default, fields
                                                                                                                                                  	// with empty values are omitted from API requests. However, any field
                                                                                                                                                  	// with an empty value appearing in NullFields will be sent to the
                                                                                                                                                  	// server as null. It is an error if a field in this list has a
                                                                                                                                                  	// non-empty value. This may be used to include null fields in Patch
                                                                                                                                                  	// requests.
                                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                                  }

                                                                                                                                                  func (*SearchSearchInformation) MarshalJSON

                                                                                                                                                  func (s *SearchSearchInformation) MarshalJSON() ([]byte, error)

                                                                                                                                                  func (*SearchSearchInformation) UnmarshalJSON

                                                                                                                                                  func (s *SearchSearchInformation) UnmarshalJSON(data []byte) error

                                                                                                                                                  type SearchSpelling

                                                                                                                                                  type SearchSpelling struct {
                                                                                                                                                  	CorrectedQuery string `json:"correctedQuery,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	HtmlCorrectedQuery string `json:"htmlCorrectedQuery,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "CorrectedQuery") to
                                                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                                  
                                                                                                                                                  	// NullFields is a list of field names (e.g. "CorrectedQuery") to
                                                                                                                                                  	// include in API requests with the JSON null value. By default, fields
                                                                                                                                                  	// with empty values are omitted from API requests. However, any field
                                                                                                                                                  	// with an empty value appearing in NullFields will be sent to the
                                                                                                                                                  	// server as null. It is an error if a field in this list has a
                                                                                                                                                  	// non-empty value. This may be used to include null fields in Patch
                                                                                                                                                  	// requests.
                                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                                  }

                                                                                                                                                  func (*SearchSpelling) MarshalJSON

                                                                                                                                                  func (s *SearchSpelling) MarshalJSON() ([]byte, error)

                                                                                                                                                  type SearchUrl

                                                                                                                                                  type SearchUrl struct {
                                                                                                                                                  	Template string `json:"template,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	Type string `json:"type,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "Template") to
                                                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                                  
                                                                                                                                                  	// NullFields is a list of field names (e.g. "Template") to include in
                                                                                                                                                  	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                                  	// values are omitted from API requests. However, any field with an
                                                                                                                                                  	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                  	// This may be used to include null fields in Patch requests.
                                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                                  }

                                                                                                                                                  func (*SearchUrl) MarshalJSON

                                                                                                                                                  func (s *SearchUrl) MarshalJSON() ([]byte, error)

                                                                                                                                                  type Service

                                                                                                                                                  type Service struct {
                                                                                                                                                  	BasePath  string // API endpoint base URL
                                                                                                                                                  	UserAgent string // optional additional User-Agent fragment
                                                                                                                                                  
                                                                                                                                                  	Cse *CseService
                                                                                                                                                  	// contains filtered or unexported fields
                                                                                                                                                  }

                                                                                                                                                  func New

                                                                                                                                                  func New(client *http.Client) (*Service, error)

                                                                                                                                                    New creates a new Service. It uses the provided http.Client for requests.

                                                                                                                                                    Deprecated: please use NewService instead. To provide a custom HTTP client, use option.WithHTTPClient. If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.

                                                                                                                                                    func NewService

                                                                                                                                                    func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error)

                                                                                                                                                      NewService creates a new Service.