요청 및 응답

이 가이드에서는 Google Docs API를 구성하는 기본 요청 및 응답 메서드와 문서를 일괄 업데이트하는 방법을 소개합니다.

HTTP 요청을 사용하거나 언어별 클라이언트 라이브러리에서 메서드 호출을 사용하여 Google Docs API를 호출할 수 있습니다. 두 방법은 대략적으로 동일합니다.

Google Docs API는 일반적으로 요청 호출의 결과가 포함된 HTTP 응답을 반환합니다. 클라이언트 라이브러리를 사용하여 요청을 실행하면 응답이 언어별 방식으로 반환됩니다.

요청 메서드

Docs API는 다음 메서드를 지원합니다.

  • documents.create: 빈 Google Docs 문서를 만듭니다.
  • documents.get: 지정된 문서의 전체 인스턴스를 반환합니다. 반환된 JSON을 파싱하여 문서 콘텐츠, 서식, 기타 기능을 추출할 수 있습니다.
  • documents.batchUpdate: 문서에 원자적으로 적용할 수정 요청 목록을 제출하고 결과 목록을 반환합니다.

documents.getdocuments.batchUpdate 메서드에는 타겟 문서를 지정하는 매개변수로 documentId가 필요합니다. documents.create 메서드는 생성된 문서의 인스턴스를 반환하며, 이 인스턴스에서 documentId를 읽을 수 있습니다. documentId에 대한 자세한 내용은 문서 ID를 참고하세요.

일괄 업데이트

documents.batchUpdate 메서드는 수행할 단일 요청을 각각 지정하는 request 객체 목록을 사용합니다. 예를 들어 단락 형식을 지정한 다음 인라인 이미지를 추가합니다. 각 요청은 적용되기 전에 유효성이 검사되며 요청은 일괄 요청에 표시된 순서에 따라 처리됩니다.

일괄 업데이트의 모든 요청은 원자적으로 적용됩니다. 즉, 요청이 유효하지 않으면 전체 업데이트가 실패하고 (잠재적으로 종속된) 변경사항이 적용되지 않습니다.

일부 documents.batchUpdate 메서드는 적용된 요청에 관한 정보가 포함된 응답을 제공합니다. 이러한 메서드는 response 객체 목록이 포함된 응답 본문을 반환합니다. 다른 요청은 정보를 반환하고 빈 응답을 표시할 필요가 없습니다. 응답 목록의 객체는 상응하는 요청과 동일한 인덱스 순서를 차지합니다.

일괄 요청을 실행하는 데 많이 사용되는 패턴은 다음과 같습니다.

requests = []
requests.append(first request)
requests.append(second request)
...

body = ... & requests & ...

...batchUpdate(body)

Docs API 호출을 일괄 처리하는 방법에 관한 자세한 내용은 일괄 요청 권장사항을 참고하고 요청 및 응답 유형에 관한 자세한 내용은 documents.batchUpdate 참조 문서를 참고하세요.

일괄 업데이트 작업

일괄 업데이트 요청에는 다양한 유형이 있습니다. 다음은 서로 다른 카테고리로 그룹화한 요청 유형입니다.

객체 추가 / 삽입 업데이트 / 대체 삭제
텍스트 InsertTextRequest ReplaceAllTextRequest
스타일 CreateParagraphBulletsRequest UpdateTextStyleRequest
UpdateParagraphStyleRequest
UpdateTableCellStyleRequest
UpdateTableRowStyleRequest
UpdateDocumentStyleRequest
UpdateSectionStyleRequest
DeleteParagraphBulletsRequest
이름이 지정된 범위 CreateNamedRangeRequest ReplaceNamedRangeContentRequest DeleteNamedRangeRequest
DeleteContentRangeRequest
이미지 InsertInlineImageRequest ReplaceImageRequest
테이블 InsertTableRequest
InsertTableRowRequest
InsertTableColumnRequest
UpdateTableColumnPropertiesRequest
MergeTableCellsRequest
UnmergeTableCellsRequest
PinTableHeaderRowsRequest
DeleteTableRowRequest
DeleteTableColumnRequest
페이지 객체 (headerfooter 포함) InsertPageBreakRequest
CreateHeaderRequest
CreateFooterRequest
CreateFootnoteRequest
InsertSectionBreakRequest
DeletePositionedObjectRequest
DeleteHeaderRequest
DeleteFooterRequest