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/v1" ... 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
- type BatchGetDocumentsResponse
- type Document
- type DocumentChunk
- type DocumentsBatchGetCall
- func (c *DocumentsBatchGetCall) Context(ctx context.Context) *DocumentsBatchGetCall
- func (c *DocumentsBatchGetCall) Do(opts ...googleapi.CallOption) (*BatchGetDocumentsResponse, error)
- func (c *DocumentsBatchGetCall) Fields(s ...googleapi.Field) *DocumentsBatchGetCall
- func (c *DocumentsBatchGetCall) Header() http.Header
- func (c *DocumentsBatchGetCall) IfNoneMatch(entityTag string) *DocumentsBatchGetCall
- func (c *DocumentsBatchGetCall) Names(names ...string) *DocumentsBatchGetCall
- func (c *DocumentsBatchGetCall) View(view string) *DocumentsBatchGetCall
- type DocumentsGetCall
- func (c *DocumentsGetCall) Context(ctx context.Context) *DocumentsGetCall
- func (c *DocumentsGetCall) Do(opts ...googleapi.CallOption) (*Document, error)
- func (c *DocumentsGetCall) Fields(s ...googleapi.Field) *DocumentsGetCall
- func (c *DocumentsGetCall) Header() http.Header
- func (c *DocumentsGetCall) IfNoneMatch(entityTag string) *DocumentsGetCall
- func (c *DocumentsGetCall) View(view string) *DocumentsGetCall
- type DocumentsSearchDocumentChunksCall
- func (c *DocumentsSearchDocumentChunksCall) Context(ctx context.Context) *DocumentsSearchDocumentChunksCall
- func (c *DocumentsSearchDocumentChunksCall) Do(opts ...googleapi.CallOption) (*SearchDocumentChunksResponse, error)
- func (c *DocumentsSearchDocumentChunksCall) Fields(s ...googleapi.Field) *DocumentsSearchDocumentChunksCall
- func (c *DocumentsSearchDocumentChunksCall) Filter(filter string) *DocumentsSearchDocumentChunksCall
- func (c *DocumentsSearchDocumentChunksCall) Header() http.Header
- func (c *DocumentsSearchDocumentChunksCall) IfNoneMatch(entityTag string) *DocumentsSearchDocumentChunksCall
- func (c *DocumentsSearchDocumentChunksCall) PageSize(pageSize int64) *DocumentsSearchDocumentChunksCall
- func (c *DocumentsSearchDocumentChunksCall) PageToken(pageToken string) *DocumentsSearchDocumentChunksCall
- func (c *DocumentsSearchDocumentChunksCall) Pages(ctx context.Context, f func(*SearchDocumentChunksResponse) error) error
- func (c *DocumentsSearchDocumentChunksCall) Query(query string) *DocumentsSearchDocumentChunksCall
- type DocumentsService
- type SearchDocumentChunksResponse
- type Service
Constants ¶
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 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 ¶
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 ¶
func (c *DocumentsBatchGetCall) Context(ctx context.Context) *DocumentsBatchGetCall
Context sets the context to be used in this call's Do method.
func (*DocumentsBatchGetCall) Do ¶
func (c *DocumentsBatchGetCall) Do(opts ...googleapi.CallOption) (*BatchGetDocumentsResponse, error)
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 ¶
func (c *DocumentsBatchGetCall) Fields(s ...googleapi.Field) *DocumentsBatchGetCall
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 ¶
func (c *DocumentsBatchGetCall) Names(names ...string) *DocumentsBatchGetCall
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 ¶
func (c *DocumentsBatchGetCall) View(view string) *DocumentsBatchGetCall
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 ¶
func (c *DocumentsGetCall) Context(ctx context.Context) *DocumentsGetCall
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 ¶
func (c *DocumentsGetCall) Fields(s ...googleapi.Field) *DocumentsGetCall
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 ¶
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 ¶
func (c *DocumentsSearchDocumentChunksCall) Context(ctx context.Context) *DocumentsSearchDocumentChunksCall
Context sets the context to be used in this call's Do method.
func (*DocumentsSearchDocumentChunksCall) Do ¶
func (c *DocumentsSearchDocumentChunksCall) Do(opts ...googleapi.CallOption) (*SearchDocumentChunksResponse, error)
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 ¶
func (c *DocumentsSearchDocumentChunksCall) Fields(s ...googleapi.Field) *DocumentsSearchDocumentChunksCall
Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.
func (*DocumentsSearchDocumentChunksCall) Filter ¶
func (c *DocumentsSearchDocumentChunksCall) Filter(filter string) *DocumentsSearchDocumentChunksCall
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 ¶
func (c *DocumentsSearchDocumentChunksCall) Header() http.Header
Header returns a http.Header that can be modified by the caller to add headers to the request.
func (*DocumentsSearchDocumentChunksCall) IfNoneMatch ¶
func (c *DocumentsSearchDocumentChunksCall) IfNoneMatch(entityTag string) *DocumentsSearchDocumentChunksCall
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 ¶
func (c *DocumentsSearchDocumentChunksCall) PageSize(pageSize int64) *DocumentsSearchDocumentChunksCall
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 ¶
func (c *DocumentsSearchDocumentChunksCall) PageToken(pageToken string) *DocumentsSearchDocumentChunksCall
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 ¶
func (c *DocumentsSearchDocumentChunksCall) Pages(ctx context.Context, f func(*SearchDocumentChunksResponse) error) error
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 ¶
func (c *DocumentsSearchDocumentChunksCall) Query(query string) *DocumentsSearchDocumentChunksCall
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 ¶
func (r *DocumentsService) Get(name string) *DocumentsGetCall
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
// contains filtered or unexported fields
}
func New
deprecated
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 ¶
NewService creates a new Service.