このガイドでは、Developer Knowledge API の関数(ドキュメントの検索、単一ドキュメントの取得、複数のドキュメントのバッチ取得)の使用方法の例を示します。
始める前に、API を有効にして Developer Knowledge API キーを生成し、キーを環境変数に保存していることを確認してください。
export DEVELOPERKNOWLEDGE_API_KEY="YOUR_API_KEY"
SearchDocumentChunks を使用してドキュメントを検索する
documents.searchDocumentChunks
メソッドを使用して、クエリ文字列に一致するドキュメント チャンクを検索します。結果には、ドキュメントのコンテンツのチャンクと、ドキュメントのコンテンツ全体を取得するために使用できる parent 参照が含まれます。
次の例では、「BigQuery」に一致するドキュメントを検索します。
curl "https://developerknowledge.googleapis.com/v1/documents:searchDocumentChunks?query=BigQuery&key=$DEVELOPERKNOWLEDGE_API_KEY"
検索結果を絞り込むには、pageSize などのパラメータを使用してページあたりの結果数を制限し、pageToken を使用して後続のページを取得します。
検索結果を絞り込む
filter パラメータを使用して、検索結果に厳密なフィルタを適用します。フィルタは、検索結果のチャンクに関連付けられたドキュメントのメタデータに適用されます。
フィルタリングに対応するフィールド:
data_source(STRING): ドキュメントのソース(docs.cloud.google.comなど)。update_time(TIMESTAMP): ドキュメントが最後に更新されたときのタイムスタンプ。uri(STRING): ドキュメントの URI(https://docs.cloud.google.com/bigquery/docs/tablesなど)。
サポートされている演算子:
- STRING フィールドでは、文字列全体が完全に一致する場合に
=(等しい)と!=(等しくない)がサポートされます。 - TIMESTAMP フィールドでは、
=、<、<=、>、>=がサポートされます。タイムスタンプは RFC-3339 形式("2025-01-01T00:00:00Z"など)にする必要があります。
式は、論理演算子 AND、OR、NOT(または -)を使用して組み合わせることができます。なお、OR は AND より優先されます。
次の例では、「BigQuery」に一致するドキュメントを検索し、結果を 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"
GetDocument でドキュメントを取得する
documents.get
メソッドを使用して、単一のドキュメントのコンテンツ全体を取得します。
次の例では、documents/DOCUMENT_ID という名前のドキュメントを取得します。
curl "https://developerknowledge.googleapis.com/v1/documents:get?name=documents/DOCUMENT_ID&key=$DEVELOPERKNOWLEDGE_API_KEY"
レスポンスは、完全な
Document
リソースです。これには、content フィールドが含まれます。
BatchGetDocuments で複数のドキュメントを取得する
documents.batchGet
メソッドを使用すると、1 回の API 呼び出しで最大 100 個のドキュメントを名前で取得できます。これは、複数の GetDocument リクエストを行うよりも効率的です。
次の例では、名前で 2 つのドキュメントを取得します。
curl "https://developerknowledge.googleapis.com/v1/documents:batchGet?names=documents/DOCUMENT_ID_1&names=documents/DOCUMENT_ID_2&key=$DEVELOPERKNOWLEDGE_API_KEY"
レスポンスには、リクエストされた
Document
リソースのリストが含まれます。