developerknowledge

package
v0.280.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 19, 2026 License: BSD-3-Clause Imports: 18 Imported by: 0

Documentation

Overview

Package developerknowledge provides access to the Developer Knowledge API.

For product documentation, see: https://developers.google.com/knowledge

Library status

These client libraries are officially supported by Google. However, this library is considered complete and is in maintenance mode. This means that we will address critical bugs and security issues but will not add any new features.

When possible, we recommend using our newer [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go) that are still actively being worked and iterated on.

Creating a client

Usage example:

import "google.golang.org/api/developerknowledge/v1alpha"
...
ctx := context.Background()
developerknowledgeService, err := developerknowledge.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 google.golang.org/api/option.WithAPIKey:

developerknowledgeService, err := developerknowledge.NewService(ctx, option.WithAPIKey("AIza..."))

To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow, use google.golang.org/api/option.WithTokenSource:

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

See google.golang.org/api/option.ClientOption for details on options.

Index

Constants

View Source
const (
	// See, edit, configure, and delete your Google Cloud data and see the email
	// address for your Google Account.
	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
)

OAuth2 scopes used by this API.

Variables

This section is empty.

Functions

This section is empty.

Types

type Answer added in v0.277.0

type Answer struct {
	// AnswerText: Contains the text of the answer.
	AnswerText string `json:"answerText,omitempty"`
	// ForceSendFields is a list of field names (e.g. "AnswerText") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "AnswerText") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Answer: An answer to a query.

func (Answer) MarshalJSON added in v0.277.0

func (s Answer) MarshalJSON() ([]byte, error)

type AnswerQueryRequest added in v0.277.0

type AnswerQueryRequest struct {
	// Query: Required. The query to answer.
	Query string `json:"query,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Query") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Query") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

AnswerQueryRequest: Request message for DeveloperKnowledge.AnswerQuery.

func (AnswerQueryRequest) MarshalJSON added in v0.277.0

func (s AnswerQueryRequest) MarshalJSON() ([]byte, error)

type AnswerQueryResponse added in v0.277.0

type AnswerQueryResponse struct {
	// Answer: The answer to the query.
	Answer *Answer `json:"answer,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Answer") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Answer") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

AnswerQueryResponse: Response message for DeveloperKnowledge.AnswerQuery.

func (AnswerQueryResponse) MarshalJSON added in v0.277.0

func (s AnswerQueryResponse) MarshalJSON() ([]byte, error)

type BatchGetDocumentsResponse

type BatchGetDocumentsResponse struct {
	// Documents: Contains the documents requested.
	Documents []*Document `json:"documents,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Documents") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Documents") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

BatchGetDocumentsResponse: Response message for DeveloperKnowledge.BatchGetDocuments.

func (BatchGetDocumentsResponse) MarshalJSON

func (s BatchGetDocumentsResponse) MarshalJSON() ([]byte, error)

type Document

type Document struct {
	// Content: Output only. Contains the full content of the document in Markdown
	// format.
	Content string `json:"content,omitempty"`
	// DataSource: Output only. Specifies the data source of the document. Example
	// data source: `firebase.google.com`
	DataSource string `json:"dataSource,omitempty"`
	// Description: Output only. Provides a description of the document.
	Description string `json:"description,omitempty"`
	// Name: Identifier. Contains the resource name of the document. Format:
	// `documents/{uri_without_scheme}` Example:
	// `documents/docs.cloud.google.com/storage/docs/creating-buckets`
	Name string `json:"name,omitempty"`
	// Title: Output only. Provides the title of the document.
	Title string `json:"title,omitempty"`
	// UpdateTime: Output only. Represents the timestamp when the content or
	// metadata of the document was last updated.
	UpdateTime string `json:"updateTime,omitempty"`
	// Uri: Output only. Provides the URI of the content, such as
	// `docs.cloud.google.com/storage/docs/creating-buckets`.
	Uri string `json:"uri,omitempty"`
	// View: Output only. Specifies the DocumentView of the document.
	//
	// Possible values:
	//   "DOCUMENT_VIEW_UNSPECIFIED" - The default / unset value. See each API
	// method for its default value if DocumentView is not specified.
	//   "DOCUMENT_VIEW_BASIC" - Includes only the basic metadata fields: - `name`
	// - `uri` - `data_source` - `title` - `description` - `update_time` - `view`
	// This is the default of view for DeveloperKnowledge.SearchDocumentChunks.
	//   "DOCUMENT_VIEW_FULL" - Includes all Document fields.
	//   "DOCUMENT_VIEW_CONTENT" - Includes the `DOCUMENT_VIEW_BASIC` fields and
	// the `content` field. This is the default of view for
	// DeveloperKnowledge.GetDocument and DeveloperKnowledge.BatchGetDocuments.
	View string `json:"view,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Content") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Content") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Document: A Document represents a piece of content from the Developer Knowledge corpus.

func (Document) MarshalJSON

func (s Document) MarshalJSON() ([]byte, error)

type DocumentChunk

type DocumentChunk struct {
	// Content: Output only. Contains the content of the document chunk.
	Content string `json:"content,omitempty"`
	// Document: Output only. Represents metadata about the Document this chunk is
	// from. The DocumentView of this Document message will be set to
	// `DOCUMENT_VIEW_BASIC`. It is included here for convenience so that clients
	// do not need to call DeveloperKnowledge.GetDocument or
	// DeveloperKnowledge.BatchGetDocuments if they only need the metadata fields.
	// Otherwise, clients should use DeveloperKnowledge.GetDocument or
	// DeveloperKnowledge.BatchGetDocuments to fetch the full document content.
	Document *Document `json:"document,omitempty"`
	// Id: Output only. Specifies the ID of this chunk within the document. The
	// chunk ID is unique within a document, but not globally unique across
	// documents. The chunk ID is not stable and may change over time.
	Id string `json:"id,omitempty"`
	// Parent: Output only. Contains the resource name of the document this chunk
	// is from. Format: `documents/{uri_without_scheme}` Example:
	// `documents/docs.cloud.google.com/storage/docs/creating-buckets`
	Parent string `json:"parent,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Content") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Content") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

DocumentChunk: A DocumentChunk represents a piece of content from a Document in the DeveloperKnowledge corpus. To fetch the entire document content, pass the `parent` to DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments.

func (DocumentChunk) MarshalJSON

func (s DocumentChunk) MarshalJSON() ([]byte, error)

type DocumentsBatchGetCall

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

func (*DocumentsBatchGetCall) Context

Context sets the context to be used in this call's Do method.

func (*DocumentsBatchGetCall) Do

Do executes the "developerknowledge.documents.batchGet" call. Any non-2xx status code is an error. Response headers are in either *BatchGetDocumentsResponse.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 (*DocumentsBatchGetCall) Fields

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

func (*DocumentsBatchGetCall) Header

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

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

func (*DocumentsBatchGetCall) IfNoneMatch

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

IfNoneMatch sets an 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.

func (*DocumentsBatchGetCall) Names

Names sets the optional parameter "names": Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` If you are changing the batch size, consider the value of `maxConcurrentGCSFetches` constant in the service implementation: http://cs///depot/google3/devrel/boq/developerknowledge/service/developerknowledge.go

func (*DocumentsBatchGetCall) View added in v0.277.0

View sets the optional parameter "view": Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.BatchGetDocuments defaults to `DOCUMENT_VIEW_CONTENT`.

Possible values:

"DOCUMENT_VIEW_UNSPECIFIED" - The default / unset value. See each API

method for its default value if DocumentView is not specified.

"DOCUMENT_VIEW_BASIC" - Includes only the basic metadata fields: - `name`

- `uri` - `data_source` - `title` - `description` - `update_time` - `view` This is the default of view for DeveloperKnowledge.SearchDocumentChunks.

"DOCUMENT_VIEW_FULL" - Includes all Document fields.
"DOCUMENT_VIEW_CONTENT" - Includes the `DOCUMENT_VIEW_BASIC` fields and

the `content` field. This is the default of view for DeveloperKnowledge.GetDocument and DeveloperKnowledge.BatchGetDocuments.

type DocumentsGetCall

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

func (*DocumentsGetCall) Context

Context sets the context to be used in this call's Do method.

func (*DocumentsGetCall) Do

func (c *DocumentsGetCall) Do(opts ...googleapi.CallOption) (*Document, error)

Do executes the "developerknowledge.documents.get" call. Any non-2xx status code is an error. Response headers are in either *Document.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 (*DocumentsGetCall) Fields

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

func (*DocumentsGetCall) Header

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

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

func (*DocumentsGetCall) IfNoneMatch

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

IfNoneMatch sets an 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.

func (*DocumentsGetCall) View added in v0.277.0

func (c *DocumentsGetCall) View(view string) *DocumentsGetCall

View sets the optional parameter "view": Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.GetDocument defaults to `DOCUMENT_VIEW_CONTENT`.

Possible values:

"DOCUMENT_VIEW_UNSPECIFIED" - The default / unset value. See each API

method for its default value if DocumentView is not specified.

"DOCUMENT_VIEW_BASIC" - Includes only the basic metadata fields: - `name`

- `uri` - `data_source` - `title` - `description` - `update_time` - `view` This is the default of view for DeveloperKnowledge.SearchDocumentChunks.

"DOCUMENT_VIEW_FULL" - Includes all Document fields.
"DOCUMENT_VIEW_CONTENT" - Includes the `DOCUMENT_VIEW_BASIC` fields and

the `content` field. This is the default of view for DeveloperKnowledge.GetDocument and DeveloperKnowledge.BatchGetDocuments.

type DocumentsSearchDocumentChunksCall

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

func (*DocumentsSearchDocumentChunksCall) Context

Context sets the context to be used in this call's Do method.

func (*DocumentsSearchDocumentChunksCall) Do

Do executes the "developerknowledge.documents.searchDocumentChunks" call. Any non-2xx status code is an error. Response headers are in either *SearchDocumentChunksResponse.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 (*DocumentsSearchDocumentChunksCall) Fields

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

func (*DocumentsSearchDocumentChunksCall) Filter added in v0.277.0

Filter sets the optional parameter "filter": Applies a strict filter to the search results. The expression supports a subset of the syntax described at https://google.aip.dev/160. While `SearchDocumentChunks` returns DocumentChunks, the filter is applied to `DocumentChunk.document` fields. Supported fields for filtering: * `data_source` (STRING): The source of the document, e.g. `docs.cloud.google.com`. See https://developers.google.com/knowledge/reference/corpus-reference for the complete list of data sources in the corpus. * `update_time` (TIMESTAMP): The timestamp of when the document was last meaningfully updated. A meaningful update is one that changes document's markdown content or metadata. * `uri` (STRING): The document URI, e.g. `https://docs.cloud.google.com/bigquery/docs/tables`. STRING fields support `=` (equals) and `!=` (not equals) operators for **exact match** on the whole string. Partial match, prefix match, and regexp match are not supported. TIMESTAMP fields support `=`, `<`, `<=`, `>`, and `>=` operators. Timestamps must be in RFC-3339 format, e.g., "2025-01-01T00:00:00Z". You can combine expressions using `AND`, `OR`, and `NOT` (or `-`) logical operators. `OR` has higher precedence than `AND`. Use parentheses for explicit precedence grouping. Examples: * `data_source = "docs.cloud.google.com" OR data_source = "firebase.google.com" * `data_source != "firebase.google.com" * `update_time < "2024-01-01T00:00:00Z" * `update_time >= "2025-01-22T00:00:00Z" AND (data_source = "developer.chrome.com" OR data_source = "web.dev")` * `uri = "https://docs.cloud.google.com/release-notes" The `filter` string must not exceed 500 characters; values longer than 500 characters will result in an `INVALID_ARGUMENT` error.

func (*DocumentsSearchDocumentChunksCall) Header

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

func (*DocumentsSearchDocumentChunksCall) IfNoneMatch

IfNoneMatch sets an 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.

func (*DocumentsSearchDocumentChunksCall) PageSize

PageSize sets the optional parameter "pageSize": Specifies the maximum number of results to return. The service may return fewer than this value. If unspecified, at most 5 results will be returned. The maximum value is 20; values above 20 will result in an INVALID_ARGUMENT error.

func (*DocumentsSearchDocumentChunksCall) PageToken

PageToken sets the optional parameter "pageToken": Contains a page token, received from a previous `SearchDocumentChunks` call. Provide this to retrieve the subsequent page.

func (*DocumentsSearchDocumentChunksCall) Pages

Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

func (*DocumentsSearchDocumentChunksCall) Query

Query sets the optional parameter "query": Required. Provides the raw query string provided by the user, such as "How to create a Cloud Storage bucket?".

type DocumentsService

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

func NewDocumentsService

func NewDocumentsService(s *Service) *DocumentsService

func (*DocumentsService) BatchGet

func (r *DocumentsService) BatchGet() *DocumentsBatchGetCall

BatchGet: Retrieves multiple documents, each with its full Markdown content.

func (*DocumentsService) Get

Get: Retrieves a single document with its full Markdown content.

  • name: Specifies the name of the document to retrieve. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets`.

func (*DocumentsService) SearchDocumentChunks

func (r *DocumentsService) SearchDocumentChunks() *DocumentsSearchDocumentChunksCall

SearchDocumentChunks: Searches for developer knowledge across Google's developer documentation. Returns DocumentChunks based on the user's query. There may be many chunks from the same Document. To retrieve full documents, use DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments with the DocumentChunk.parent returned in the SearchDocumentChunksResponse.results.

type SearchDocumentChunksResponse

type SearchDocumentChunksResponse struct {
	// NextPageToken: Optional. Provides a token that can be sent as `page_token`
	// to retrieve the next page. If this field is omitted, there are no subsequent
	// pages.
	NextPageToken string `json:"nextPageToken,omitempty"`
	// Results: Contains the search results for the given query. Each DocumentChunk
	// in this list contains a snippet of content relevant to the search query. Use
	// the DocumentChunk.parent field of each result with
	// DeveloperKnowledge.GetDocument or DeveloperKnowledge.BatchGetDocuments to
	// retrieve the full document content.
	Results []*DocumentChunk `json:"results,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

SearchDocumentChunksResponse: Response message for DeveloperKnowledge.SearchDocumentChunks.

func (SearchDocumentChunksResponse) MarshalJSON

func (s SearchDocumentChunksResponse) MarshalJSON() ([]byte, error)

type Service

type Service struct {
	BasePath  string // API endpoint base URL
	UserAgent string // optional additional User-Agent fragment

	Documents *DocumentsService

	V1alpha *V1alphaService
	// contains filtered or unexported fields
}

func New deprecated

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.

type V1alphaAnswerQueryCall added in v0.277.0

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

func (*V1alphaAnswerQueryCall) Context added in v0.277.0

Context sets the context to be used in this call's Do method.

func (*V1alphaAnswerQueryCall) Do added in v0.277.0

Do executes the "developerknowledge.answerQuery" call. Any non-2xx status code is an error. Response headers are in either *AnswerQueryResponse.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 (*V1alphaAnswerQueryCall) Fields added in v0.277.0

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

func (*V1alphaAnswerQueryCall) Header added in v0.277.0

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

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

type V1alphaService added in v0.277.0

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

func NewV1alphaService added in v0.277.0

func NewV1alphaService(s *Service) *V1alphaService

func (*V1alphaService) AnswerQuery added in v0.277.0

func (r *V1alphaService) AnswerQuery(answerqueryrequest *AnswerQueryRequest) *V1alphaAnswerQueryCall

AnswerQuery: Answers a query using grounded generation.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL