Buscar y recuperar documentos

En esta guía, se proporcionan ejemplos de cómo usar las funciones de la API de Developer Knowledge: buscar documentos, recuperar un solo documento y recuperar varios documentos en un lote.

Antes de comenzar, asegúrate de haber habilitado la API y generado una clave de la API de Developer Knowledge key, y guarda la clave en una variable de entorno variable:

export DEVELOPERKNOWLEDGE_API_KEY="YOUR_API_KEY"

Busca documentos con SearchDocumentChunks

Usa el documents.searchDocumentChunks método para encontrar fragmentos de documentos que coincidan con una cadena de consulta. Los resultados incluyen fragmentos de contenido del documento y una referencia parent que puedes usar para recuperar el contenido completo del documento.

En el siguiente ejemplo, se buscan documentos que coincidan con "BigQuery":

curl "https://developerknowledge.googleapis.com/v1/documents:searchDocumentChunks?query=BigQuery&key=$DEVELOPERKNOWLEDGE_API_KEY"

Puedes refinar los resultados de la búsqueda con parámetros como pageSize para limitar la cantidad de resultados por página y pageToken para recuperar las páginas posteriores.

Filtra los resultados de la búsqueda

Usa el parámetro filter para aplicar un filtro estricto a los resultados de la búsqueda. El filtro se aplica a los metadatos de los documentos asociados con los fragmentos de resultados de la búsqueda.

Campos admitidos para el filtrado:

  • data_source (STRING): Es la fuente del documento, por ejemplo, docs.cloud.google.com.
  • update_time (TIMESTAMP): Es la marca de tiempo de la última actualización del documento.
  • uri (STRING): Es el URI del documento, por ejemplo, https://docs.cloud.google.com/bigquery/docs/tables.

Operadores admitidos:

  • Los campos STRING admiten = (igual) y != (no es igual) para coincidencias exactas en toda la cadena.
  • Los campos TIMESTAMP admiten =, <, <=, >, y >=. Las marcas de tiempo deben estar en formato RFC-3339 (p.ej., "2025-01-01T00:00:00Z").

Puedes combinar expresiones con los operadores lógicos AND, OR y NOT (o -). Ten en cuenta que OR tiene mayor precedencia que AND.

En el siguiente ejemplo, se buscan documentos que coincidan con "BigQuery" y se restringen los resultados a los de docs.cloud.google.com:

curl "https://developerknowledge.googleapis.com/v1/documents:searchDocumentChunks?query=BigQuery&filter=data_source%3D%22docs.cloud.google.com%22&key=$DEVELOPERKNOWLEDGE_API_KEY"

Recupera un documento con GetDocument

Usa el documents.get método para recuperar el contenido completo de un solo documento.

En el siguiente ejemplo, se recupera un documento con el nombre documents/DOCUMENT_ID:

curl "https://developerknowledge.googleapis.com/v1/documents:get?name=documents/DOCUMENT_ID&key=$DEVELOPERKNOWLEDGE_API_KEY"

La respuesta es el recurso completo Document, incluido el campo content.

Recupera varios documentos con BatchGetDocuments

Usa el documents.batchGet método para recuperar hasta 100 documentos por nombre en una sola llamada a la API. Esto es más eficiente que realizar varias solicitudes GetDocument.

En el siguiente ejemplo, se recuperan dos documentos por nombre:

curl "https://developerknowledge.googleapis.com/v1/documents:batchGet?names=documents/DOCUMENT_ID_1&names=documents/DOCUMENT_ID_2&key=$DEVELOPERKNOWLEDGE_API_KEY"

La respuesta contiene una lista de los recursos solicitados Document.