Method: forms.batchUpdate

일괄 업데이트를 사용하여 양식을 변경합니다.

HTTP 요청

POST https://forms.googleapis.com/v1/forms/{formId}:batchUpdate

URL은 gRPC 트랜스코딩 구문을 사용합니다.

경로 매개변수

매개변수
formId

string

필수 항목입니다. 양식 ID입니다.

요청 본문

요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.

JSON 표현
{
  "includeFormInResponse": boolean,
  "requests": [
    {
      object (Request)
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
필드
includeFormInResponse

boolean

응답에서 업데이트된 버전의 모델을 반환할지 여부입니다.

requests[]

object (Request)

필수 항목입니다. 이 배치의 업데이트 요청입니다.

writeControl

object (WriteControl)

쓰기 요청이 실행되는 방식을 제어합니다.

응답 본문

BatchUpdateFormRequest에 대한 응답입니다.

성공할 경우 응답 본문에 다음 구조의 데이터가 포함됩니다.

JSON 표현
{
  "form": {
    object (Form)
  },
  "replies": [
    {
      object (Response)
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
필드
form

object (Form)

부울 요청 필드 includeFormInResponse에 따라 모든 변형/업데이트가 적용된 양식이 반환되거나 반환되지 않습니다. 이 변경사항으로 생성된 버전 ID보다 늦을 수 있습니다.

replies[]

object (Response)

업데이트의 답글입니다. 이는 업데이트 요청과 1:1로 매핑되지만 일부 요청에 대한 응답은 비어 있을 수도 있습니다.

writeControl

object (WriteControl)

요청을 적용한 후 업데이트된 쓰기 제어입니다.

승인 범위

다음 OAuth 범위 중 하나가 필요합니다.

  • https://www.googleapis.com/auth/drive
  • https://www.googleapis.com/auth/drive.file
  • https://www.googleapis.com/auth/forms.body

자세한 내용은 승인 가이드를 참고하세요.

요청

가능한 업데이트 요청 유형입니다.

JSON 표현
{

  // Union field kind can be only one of the following:
  "updateFormInfo": {
    object (UpdateFormInfoRequest)
  },
  "updateSettings": {
    object (UpdateSettingsRequest)
  },
  "createItem": {
    object (CreateItemRequest)
  },
  "moveItem": {
    object (MoveItemRequest)
  },
  "deleteItem": {
    object (DeleteItemRequest)
  },
  "updateItem": {
    object (UpdateItemRequest)
  }
  // End of list of possible types for union field kind.
}
필드
통합 필드 kind. 요청의 종류입니다. kind은 다음 중 하나여야 합니다.
updateFormInfo

object (UpdateFormInfoRequest)

양식 정보 업데이트

updateSettings

object (UpdateSettingsRequest)

양식의 설정을 업데이트합니다.

createItem

object (CreateItemRequest)

새 항목 만들기.

moveItem

object (MoveItemRequest)

항목을 지정된 위치로 이동합니다.

deleteItem

object (DeleteItemRequest)

항목을 삭제합니다.

updateItem

object (UpdateItemRequest)

항목을 업데이트합니다.

UpdateFormInfoRequest

양식 정보 업데이트

JSON 표현
{
  "info": {
    object (Info)
  },
  "updateMask": string
}
필드
info

object (Info)

업데이트할 정보입니다.

updateMask

string (FieldMask format)

필수 항목입니다. 이 마스크에 이름이 지정된 값만 변경됩니다. 필드를 1개 이상 지정해야 합니다. 루트 info이(가) 함축되어 있으므로 지정해서는 안 됩니다. 단일 "*"를 모든 필드 업데이트의 약식으로 사용할 수 있습니다.

필드의 정규화된 이름을 쉼표로 구분한 목록입니다. 예: "user.displayName,photo"

UpdateSettingsRequest

양식의 FormSettings을 업데이트합니다.

JSON 표현
{
  "settings": {
    object (FormSettings)
  },
  "updateMask": string
}
필드
settings

object (FormSettings)

필수 항목입니다. 업데이트할 설정입니다.

updateMask

string (FieldMask format)

필수 항목입니다. 이 마스크에 이름이 지정된 값만 변경됩니다. 필드를 1개 이상 지정해야 합니다. 루트 settings이(가) 함축되어 있으므로 지정해서는 안 됩니다. 단일 "*"를 모든 필드 업데이트의 약식으로 사용할 수 있습니다.

필드의 정규화된 이름을 쉼표로 구분한 목록입니다. 예: "user.displayName,photo"

CreateItemRequest

양식에 항목을 만듭니다.

JSON 표현
{
  "item": {
    object (Item)
  },
  "location": {
    object (Location)
  }
}
필드
item

object (Item)

필수 항목입니다. 만들 항목입니다.

location

object (Location)

필수 항목입니다. 새 항목을 배치할 위치입니다.

위치

양식 내 특정 위치입니다.

JSON 표현
{

  // Union field where can be only one of the following:
  "index": integer
  // End of list of possible types for union field where.
}
필드
통합 필드 where. 필수 항목입니다. 양식에 위치를 지정합니다. where은 다음 중 하나여야 합니다.
index

integer

양식에 포함된 항목의 색인입니다. 범위 내에 있어야 합니다.

[0..N)

여기서 N은 양식에 포함된 항목의 수입니다.

MoveItemRequest

양식에서 항목을 이동합니다.

JSON 표현
{
  "originalLocation": {
    object (Location)
  },
  "newLocation": {
    object (Location)
  }
}
필드
originalLocation

object (Location)

필수 항목입니다. 이동할 항목의 위치입니다.

newLocation

object (Location)

필수 항목입니다. 항목의 새 위치입니다.

DeleteItemRequest

양식에서 항목을 삭제합니다.

JSON 표현
{
  "location": {
    object (Location)
  }
}
필드
location

object (Location)

필수 항목입니다. 삭제할 항목의 위치입니다.

UpdateItemRequest

양식의 항목을 업데이트합니다.

JSON 표현
{
  "item": {
    object (Item)
  },
  "location": {
    object (Location)
  },
  "updateMask": string
}
필드
item

object (Item)

필수 항목입니다. 항목의 새 값 항목 및 질문 ID는 제공되고 필드 마스크에 있는 경우 사용됩니다. ID가 필드 마스크에 비어 있으면 새 ID가 생성됩니다. 즉, forms.get를 통해 양식을 가져오고, 항목의 로컬 사본을 원하는 대로 수정하고, UpdateItemRequest를 사용하여 다시 작성하는 방식으로 항목을 수정할 수 있습니다. 이때 ID는 같거나 필드 마스크에 없어야 합니다.

location

object (Location)

필수 항목입니다. 업데이트할 항목을 식별하는 위치입니다.

updateMask

string (FieldMask format)

필수 항목입니다. 이 마스크에 이름이 지정된 값만 변경됩니다.

필드의 정규화된 이름을 쉼표로 구분한 목록입니다. 예: "user.displayName,photo"

WriteControl

쓰기 요청이 실행되는 방식을 제어합니다.

JSON 표현
{

  // Union field control can be only one of the following:
  "requiredRevisionId": string,
  "targetRevisionId": string
  // End of list of possible types for union field control.
}
필드
통합 필드 control. 변경사항을 적용할 양식의 버전 및 해당 버전이 양식의 현재 버전이 아닌 경우 요청이 작동할 방법을 결정합니다. control은 다음 중 하나여야 합니다.
requiredRevisionId

string

쓰기 요청이 적용되는 양식의 버전 ID입니다. 양식의 최신 버전이 아닌 경우 요청이 처리되지 않고 400 잘못된 요청 오류가 반환됩니다.

targetRevisionId

string

쓰기 요청이 적용되는 양식의 대상 버전 ID입니다.

이 버전 이후에 변경사항이 발생한 경우 이 업데이트 요청의 변경사항이 해당 변경사항에 따라 변환됩니다. 그 결과 요청의 변경사항과 그 사이에 발생한 변경사항을 모두 포함하는 양식이 새로 수정되며 서버에서 충돌하는 변경사항을 해결합니다.

대상 버전 ID는 최신 버전의 양식에 작성하는 데만 사용할 수 있습니다. 대상 버전이 최신 버전보다 너무 뒤처져 있는 경우 요청이 처리되지 않고 400 (잘못된 요청 오류)이 반환됩니다. 양식의 최신 버전을 읽은 후 요청을 다시 시도할 수 있습니다. 대부분의 경우 대상 버전 ID는 읽은 후 몇 분 동안 유효하지만 자주 수정되는 양식의 경우 이 기간이 더 짧을 수 있습니다.

응답

업데이트의 단일 응답입니다.

JSON 표현
{

  // Union field kind can be only one of the following:
  "createItem": {
    object (CreateItemResponse)
  }
  // End of list of possible types for union field kind.
}
필드
통합 필드 kind. 응답의 종류입니다. kind은 다음 중 하나여야 합니다.
createItem

object (CreateItemResponse)

항목을 만든 결과입니다.

CreateItemResponse

항목을 만든 결과입니다.

JSON 표현
{
  "itemId": string,
  "questionId": [
    string
  ]
}
필드
itemId

string

생성된 항목의 ID입니다.

questionId[]

string

이 항목의 일부로 생성된 질문의 ID입니다. 질문 그룹의 경우 이 항목에 대해 생성된 모든 질문의 ID를 나열합니다.