Developer Knowledge API는 Google의 공개 개발자 문서에 프로그래매틱 방식으로 액세스할 수 있도록 지원하므로 이 기술 자료를 자체 애플리케이션 및 워크플로에 통합할 수 있습니다.
개요
Developer Knowledge API는 Google의 개발자 문서에 대한 기계 가독형 액세스의 표준 소스로 설계되었습니다. 문서를 검색하고 가져오며 쿼리에 답변하는 기능을 제공합니다.
SearchDocumentChunks: 쿼리를 기반으로 관련 페이지 URI 및 콘텐츠 스니펫을 찾습니다.GetDocument또는BatchGetDocuments: 검색 결과의 전체 콘텐츠를 가져옵니다.AnswerQuery: 문서 코퍼스에서 가져온 쿼리에 대한 답변을 생성합니다.
Developer Knowledge API는 문서 페이지를 구조화되지 않은 마크다운 콘텐츠로 검색하고 가져오는 기능을 지원합니다. 검색 가능한 콘텐츠의 코퍼스는 코퍼스 참조에 나열되어 있습니다.
Developer Knowledge 사용 방법
워크플로에 따라 다음 서피스를 통해 Developer Knowledge에 액세스할 수 있습니다.
- REST API 및 RPC API: HTTP 또는 gRPC 엔드포인트를 직접 호출합니다. 메서드 사양은 REST 참조 및 RPC 참조를 확인하세요.
- 클라이언트 라이브러리: C#, Go, Java, Node.js 및 TypeScript, PHP, Python, Ruby용 공식 클라이언트 라이브러리를 사용하여 Developer Knowledge API를 애플리케이션에 통합합니다.
- Google Cloud CLI (
gcloud): 터미널에서gcloud developer-knowledge명령어를 실행하여 문서 청크를 검색하고, 마크다운 콘텐츠를 가져오고, 답변을 생성합니다. - 개발자 지식 MCP 서버: 모델 컨텍스트 프로토콜 (MCP) 도구(
search_documents,get_documents, 및answer_query)를 사용하여 AI 코딩 지원 어시스턴트 또는 에이전트를 Google의 문서에 연결합니다. MCP 참조를 확인하세요.
API와 MCP 서버 중에서 선택
Developer Knowledge API와 Developer Knowledge MCP 서버는 다양한 통합 요구사항을 충족하도록 설계되었습니다.
- 다음과 같은 경우 Developer Knowledge API, 클라이언트 라이브러리 또는 gcloud CLI를 사용합니다.
- 프로젝트에서 AI 에이전트를 사용하지 않습니다.
- 에이전트의 맞춤 도구 또는 도구 집합을 정의하려고 합니다.
- 결과를 모델에 전달하기 전에 처리하거나 결합하려고 합니다(예: 전체 콘텐츠를 가져오기 전에 문서 바이트 길이 확인).
-
검색 결과를 필터링
(
data_source또는update_time기준)하거나 필드 마스크를 적용해야 합니다.
- 다음과 같은 경우**Developer Knowledge MCP 서버 및 에이전트 기술** 을 사용합니다.
- 맞춤 도구 정의 및 설명을 작성하지 않고 AI 코딩 지원 어시스턴트 또는 에이전트를 연결하려고 합니다.
- Developer Knowledge MCP 서버에 새로운 기능이 추가되면 자동 업데이트를 원합니다.
- 검색 결과에 맞춤 메타데이터 필터링이 필요하지 않습니다.
API 사용 설정
Developer Knowledge API를 사용하려면 먼저 Google Cloud 프로젝트에서 API를 사용 설정해야 합니다.
- Google API 라이브러리에서 Developer Knowledge API 페이지 를 엽니다.
- API를 사용하려는 프로젝트가 올바르게 선택되어 있는지 확인합니다. API를 사용합니다.
- 사용 설정 을 클릭합니다. API를 사용 설정하거나 사용하는 데 특정 IAM 역할이 필요하지 않습니다. API.
인증
다음 방법 중 하나를 사용하여 Developer Knowledge API에 대한 요청을 인증할 수 있습니다.
- API 키: 직접 REST 요청 또는
Developer Knowledge MCP 서버를
key쿼리 매개변수 또는X-Goog-Api-Key헤더를 사용하여 인증합니다. - 애플리케이션 기본 사용자 인증 정보 (ADC), OAuth 2.0 또는 서비스 계정: 공식 클라이언트 라이브러리 또는 프로덕션 워크플로를 사용할 때 요청을 인증합니다. 사용자 인증 정보 설정에 관한 자세한 내용은 애플리케이션 기본 사용자 인증 정보 문서를 참고하세요.
- 사용자 인증 정보 (gcloud CLI): Google Cloud 계정에 로그인하여
CLI 요청을 인증합니다.
gcloud auth login설정 안내는 gcloud CLI 빠른 시작을 참고하세요.
OAuth 범위
OAuth 2.0 또는 서비스 계정으로 인증할 때 Developer Knowledge API 및 Developer Knowledge MCP 서버는 다음 OAuth 범위를 허용합니다.
https://www.googleapis.com/auth/cloud-platform: 애플리케이션 기본 사용자 인증 정보 (ADC), gcloud CLI, 공식 Google Cloud 클라이언트 라이브러리에서 사용하는 기본 범위입니다.https://www.googleapis.com/auth/devprofiles.full_control: 사용자 OAuth 2.0 동의 흐름 및 MCP 서버 통합에 사용되는 범위입니다.https://www.googleapis.com/auth/developerprofiles.readonly: 최종 사용자 OAuth 동의 화면이 필요하지 않은 서비스 계정 및 사용자 인증 정보에 지원되는 읽기 전용 범위입니다.
Bearer 토큰 승인
서비스 계정 또는 OAuth 2.0 액세스 토큰으로 직접 REST 요청을 인증하려면 Authorization: Bearer 헤더에 토큰을 전달하고 X-Goog-User-Project에서 결제 프로젝트를 지정합니다.
export ACCESS_TOKEN=$(gcloud auth print-access-token)
curl -X POST "https://developerknowledge.googleapis.com/v1:answerQuery" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "X-Goog-User-Project: PROJECT_ID" \
-H "Content-Type: application/json" \
-d '{"query": "How do I create a BigQuery dataset?"}'
PROJECT_ID를 Google Cloud 프로젝트 ID로 바꿉니다.
Python, Node.js, Go, Java 애플리케이션의 경우 공식 클라이언트 라이브러리가 애플리케이션 기본 사용자 인증 정보 (ADC) 및 토큰 새로고침을 자동으로 처리합니다. 예시는 Developer Knowledge API와 함께 클라이언트 라이브러리 사용을 참고하세요.
포함된 문서
API에서 검색하는 문서에 관한 자세한 내용은 코퍼스 참조를 확인하세요.
Developer Knowledge API는 최신 Google 개발자 문서에 대한 액세스를 제공하는 것을 목표로 합니다. Google Cloud의 목표는 게시 후 48시간 이내에 콘텐츠를 다시 색인화하여 영업일 기준 2일 이내에 신규 또는 업데이트된 문서를 제공하는 것입니다.알려진 제한사항
- 마크다운 품질: 마크다운은 소스 HTML에서 생성됩니다. 일부 불일치 또는 형식 문제가 있을 수 있습니다.
- 콘텐츠 범위: 코퍼스 참조의 공개 페이지만 포함됩니다. GitHub, OSS 사이트, 블로그, YouTube와 같은 다른 소스의 콘텐츠는 포함되지 않습니다.