REST Resource: projects.agent.knowledgeBases.documents

Resource: Document

A knowledge document to be used by a KnowledgeBase.

For more information, see the knowledge base guide.

Note: The projects.agent.knowledgeBases.documents resource is deprecated; only use projects.knowledgeBases.documents.

JSON representation
  "name": string,
  "displayName": string,
  "mimeType": string,
  "knowledgeTypes": [
    enum (KnowledgeType)
  "enableAutoReload": boolean,
  "latestReloadStatus": {
    object (ReloadStatus)
  "metadata": {
    string: string,
  "state": enum (State),

  // Union field source can be only one of the following:
  "contentUri": string,
  "content": string,
  "rawContent": string
  // End of list of possible types for union field source.


Optional. The document resource name. The name must be empty when creating a document. Format: projects/<Project ID>/locations/<Location ID>/knowledgeBases/<Knowledge Base ID>/documents/<Document ID>.



Required. The display name of the document. The name must be 1024 bytes or less; otherwise, the creation request fails.



Required. The MIME type of this document.


enum (KnowledgeType)

Required. The knowledge type of document content.



Optional. If true, we try to automatically reload the document every day (at a time picked by the system). If false or unspecified, we don't try to automatically reload the document.

Currently you can only enable automatic reload for documents sourced from a public url, see source field for the source types.

Reload status can be tracked in latestReloadStatus. If a reload fails, we will keep the document unchanged.

If a reload fails with internal errors, the system will try to reload the document on the next day. If a reload fails with non-retriable errors (e.g. PERMISSION_DENIED), the system will not try to reload the document anymore. You need to manually reload the document successfully by calling documents.reload and clear the errors.


object (ReloadStatus)

Output only. The time and status of the latest reload. This reload may have been triggered automatically or manually and may not have succeeded.


map (key: string, value: string)

Optional. Metadata for the document. The metadata supports arbitrary key-value pairs. Suggested use cases include storing a document's title, an external URL distinct from the document's contentUri, etc. The max size of a key or a value of the metadata is 1024 bytes.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.


enum (State)

Output only. The current state of the document.

Union field source. The source of this document. source can be only one of the following:


The URI where the file content is located.

For documents stored in Google Cloud Storage, these URIs must have the form gs://<bucket-name>/<object-name>.

NOTE: External URLs must correspond to public webpages, i.e., they must be indexed by Google Search. In particular, URLs for showing documents in Google Cloud Storage (i.e. the URL in your browser) are not supported. Instead use the gs:// format URI described above.



The raw content of the document. This field is only permitted for EXTRACTIVE_QA and FAQ knowledge types. Note: This field is in the process of being deprecated, please use rawContent instead.


string (bytes format)

The raw content of the document. This field is only permitted for EXTRACTIVE_QA and FAQ knowledge types.

A base64-encoded string.


The knowledge type of document content.

KNOWLEDGE_TYPE_UNSPECIFIED The type is unspecified or arbitrary.

The document content contains question and answer pairs as either HTML or CSV. Typical FAQ HTML formats are parsed accurately, but unusual formats may fail to be parsed.

CSV must have questions in the first column and answers in the second, with no header. Because of this explicit format, they are always parsed accurately.

EXTRACTIVE_QA Documents for which unstructured text is extracted and used for question answering.
ARTICLE_SUGGESTION The entire document content as a whole can be used for query results. Only for Contact Center Solutions on Dialogflow.
AGENT_FACING_SMART_REPLY The document contains agent-facing Smart Reply entries.
SMART_REPLY The legacy enum for agent-facing smart reply feature.


The status of a reload attempt.

JSON representation
  "time": string,
  "status": {
    object (Status)

string (Timestamp format)

Output only. The time of a reload attempt. This reload may have been triggered automatically or manually and may not have succeeded.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".


object (Status)

Output only. The status of a reload attempt or the initial load.


Possible states of the document

STATE_UNSPECIFIED The document state is unspecified.
CREATING The document creation is in progress.
ACTIVE The document is active and ready to use.
UPDATING The document updation is in progress.
RELOADING The document is reloading.
DELETING The document deletion is in progress.



Creates a new document.


Deletes the specified document.


Retrieves the specified document.


Returns the list of all documents of the knowledge base.


Updates the specified document.


Reloads the specified document from its specified source, content_uri or content.