Method: forms.batchUpdate

Zmień formularz za pomocą aktualizacji zbiorczej.

Żądanie HTTP

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

Adres URL używa składni transkodowania gRPC.

Parametry ścieżki

Parametry
formId

string

Wymagany. Identyfikator formularza.

Treść żądania

Treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "includeFormInResponse": boolean,
  "requests": [
    {
      object (Request)
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
Pola
includeFormInResponse

boolean

Określa, czy w odpowiedzi ma zostać zwrócona zaktualizowana wersja modelu.

requests[]

object (Request)

Wymagany. Prośby o aktualizację tej partii.

writeControl

object (WriteControl)

Umożliwia kontrolowanie sposobu wykonywania żądań zapisu.

Treść odpowiedzi

Odpowiedź na żądanie BatchUpdateFormRequest.

W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "form": {
    object (Form)
  },
  "replies": [
    {
      object (Response)
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
Pola
form

object (Form)

Na podstawie pola zapytania typu bool includeFormInResponse zwracany jest formularz ze wszystkimi zastosowanymi zmianami lub bez nich. Może to być później niż identyfikator wersji utworzonej przez te zmiany.

replies[]

object (Response)

Odpowiedź na aktualizacje. Odpowiadają one 1:1 żądaniom o aktualizację, ale odpowiedzi na niektóre żądania mogą być puste.

writeControl

object (WriteControl)

Zaktualizowany element kontroli zapisu po zastosowaniu prośby.

Zakresy autoryzacji

Wymaga jednego z tych zakresów OAuth:

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

Więcej informacji znajdziesz w przewodniku dotyczącym autoryzacji.

Żądanie

Rodzaje próśb o aktualizację, które można przesłać.

Zapis 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.
}
Pola
Pole unii kind. Rodzaj prośby. kind może być tylko jednym z tych elementów:
updateFormInfo

object (UpdateFormInfoRequest)

Zaktualizuj informacje w formularzu.

updateSettings

object (UpdateSettingsRequest)

Zaktualizuje ustawienia formularza.

createItem

object (CreateItemRequest)

Tworzenie nowego elementu.

moveItem

object (MoveItemRequest)

Przenoszenie elementu w określone miejsce.

deleteItem

object (DeleteItemRequest)

usunąć element.

updateItem

object (UpdateItemRequest)

Zaktualizuj element.

UpdateFormInfoRequest

Zaktualizuj informacje w formularzu.

Zapis JSON
{
  "info": {
    object (Info)
  },
  "updateMask": string
}
Pola
info

object (Info)

Informacje do zaktualizowania.

updateMask

string (FieldMask format)

Wymagany. Zmieniane są tylko wartości określone w tej masce. Musisz określić co najmniej 1 pole. Element info jest elementem nadrzędnym, którego nie trzeba deklarować. Jako skrót do aktualizowania wszystkich pól możesz użyć pojedynczego znaku "*".

Jest to lista pełnych nazw pól rozdzielona przecinkami. Przykład: "user.displayName,photo".

UpdateSettingsRequest

Zaktualizuj formularz FormSettings.

Zapis JSON
{
  "settings": {
    object (FormSettings)
  },
  "updateMask": string
}
Pola
settings

object (FormSettings)

Wymagany. Ustawienia, które chcesz zaktualizować.

updateMask

string (FieldMask format)

Wymagany. Zmieniane są tylko wartości określone w tej masce. Musisz określić co najmniej 1 pole. Element settings jest domyślny i nie musi być podany. Jako skrót do aktualizowania wszystkich pól możesz użyć pojedynczego znaku "*".

Jest to lista pełnych nazw pól rozdzielona przecinkami. Przykład: "user.displayName,photo".

CreateItemRequest

tworzenie elementu w formularzu.

Zapis JSON
{
  "item": {
    object (Item)
  },
  "location": {
    object (Location)
  }
}
Pola
item

object (Item)

Wymagany. Element do utworzenia.

location

object (Location)

Wymagany. Gdzie umieścić nowy element.

Lokalizacja

Konkretna lokalizacja w formularzu.

Zapis JSON
{

  // Union field where can be only one of the following:
  "index": integer
  // End of list of possible types for union field where.
}
Pola
Pole unii where. Wymagany. W formularzu podaj lokalizację. where może być tylko jednym z tych elementów:
index

integer

Indeks elementu w formularzu. Musi mieścić się w zakresie

[0..N)

gdzie N to liczba elementów w formularzu.

MoveItemRequest

Przenoszenie elementu w formularzu.

Zapis JSON
{
  "originalLocation": {
    object (Location)
  },
  "newLocation": {
    object (Location)
  }
}
Pola
originalLocation

object (Location)

Wymagany. Lokalizacja elementu do przeniesienia.

newLocation

object (Location)

Wymagany. Nowa lokalizacja elementu.

DeleteItemRequest

usunąć element w formularzu,

Zapis JSON
{
  "location": {
    object (Location)
  }
}
Pola
location

object (Location)

Wymagany. Lokalizacja elementu do usunięcia.

UpdateItemRequest

Zmień element w formularzu.

Zapis JSON
{
  "item": {
    object (Item)
  },
  "location": {
    object (Location)
  },
  "updateMask": string
}
Pola
item

object (Item)

Wymagany. Nowe wartości elementu. Pamiętaj, że identyfikatory produktów i pytań są używane, jeśli zostały podane (i znajdują się w masce pola). Jeśli identyfikator jest pusty (i znajduje się w polu maski), generowany jest nowy identyfikator. Oznacza to, że możesz zmodyfikować element, pobierając formularz za pomocą funkcji forms.get, modyfikując lokalną kopię tego elementu zgodnie z potrzebami i zapisuj ją ponownie za pomocą funkcji UpdateItemRequest. Identyfikatory pozostaną takie same (lub nie będą w masce pola).

location

object (Location)

Wymagany. Lokalizacja identyfikująca element do zaktualizowania.

updateMask

string (FieldMask format)

Wymagany. Zmieniane są tylko wartości określone w tej masce.

Jest to lista pełnych nazw pól rozdzielona przecinkami. Przykład: "user.displayName,photo".

WriteControl

Umożliwia kontrolowanie sposobu wykonywania żądań zapisu.

Zapis 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.
}
Pola
Pole unii control. Określa wersję formularza, z którego mają zostać zastosowane zmiany, oraz sposób działania żądania, jeśli ta wersja nie jest bieżącą wersją formularza. control może być tylko jednym z tych elementów:
requiredRevisionId

string

Identyfikator wersji formularza, do którego ma zastosowanie żądanie zapisu. Jeśli nie jest to najnowsza wersja formularza, żądanie nie zostanie przetworzone i zwróci błąd 400 „Błędne żądanie”.

targetRevisionId

string

Identyfikator docelowej wersji formularza, do którego ma zostać zastosowane żądanie zapisu.

Jeśli po tej wersji wprowadzono zmiany, zmiany w tym żądaniu aktualizacji zostaną dopasowane do tych zmian. Spowoduje to nową wersję formularza, która zawiera zarówno zmiany w żądaniu, jak i późniejsze zmiany, a serwer rozwiązuje sprzeczne zmiany.

Identyfikator wersji docelowej można używać tylko do zapisywania w najnowszych wersjach formularza. Jeśli wersja docelowa jest zbyt odległa od najnowszej wersji, żądanie nie jest przetwarzane i zwraca kod 400 (błąd żądania). Po zapoznaniu się z najnowszą wersją formularza możesz ponownie przesłać prośbę. W większości przypadków identyfikator wersji docelowej pozostaje ważny przez kilka minut po odczytaniu, ale w przypadku często edytowanych formularzy ten czas może być krótszy.

Odpowiedź

Pojedyncza odpowiedź z aktualizacji.

Zapis JSON
{

  // Union field kind can be only one of the following:
  "createItem": {
    object (CreateItemResponse)
  }
  // End of list of possible types for union field kind.
}
Pola
Pole unii kind. Rodzaj odpowiedzi. kind może być tylko jednym z tych elementów:
createItem

object (CreateItemResponse)

Wynik tworzenia elementu.

CreateItemResponse

Wynik tworzenia elementu.

Zapis JSON
{
  "itemId": string,
  "questionId": [
    string
  ]
}
Pola
itemId

string

Identyfikator utworzonego elementu.

questionId[]

string

Identyfikator pytania utworzonego w ramach tego elementu. W przypadku grupy pytań zawiera ona identyfikatory wszystkich pytań utworzonych dla tego elementu.