Method: forms.batchUpdate

Ändern Sie das Formular mit einem Batch von Aktualisierungen.

HTTP-Anfrage

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

Die URL verwendet die Syntax der gRPC-Transcodierung.

Pfadparameter

Parameter
formId

string

Erforderlich. Die Formular-ID.

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

JSON-Darstellung
{
  "includeFormInResponse": boolean,
  "requests": [
    {
      object (Request)
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
Felder
includeFormInResponse

boolean

Gibt an, ob in der Antwort eine aktualisierte Version des Modells zurückgegeben werden soll.

requests[]

object (Request)

Erforderlich. Die Aktualisierungsanfragen dieses Batches.

writeControl

object (WriteControl)

Steuert, wie Schreibanfragen ausgeführt werden.

Antworttext

Antwort auf eine BatchUpdateFormRequest

Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:

JSON-Darstellung
{
  "form": {
    object (Form)
  },
  "replies": [
    {
      object (Response)
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
Felder
form

object (Form)

Basierend auf dem booleschen Anfragefeld includeFormInResponse wird ein Formular mit allen angewendeten Mutationen/Aktualisierungen zurückgegeben oder nicht. Sie liegt möglicherweise nach der Überarbeitungs-ID, die durch diese Änderungen erstellt wurde.

replies[]

object (Response)

Die Antwort auf die Aktualisierungen. Dadurch wird eine 1:1-Zuordnung zu den Aktualisierungsanfragen hergestellt, obwohl Antworten auf einige Anfragen möglicherweise leer sind.

writeControl

object (WriteControl)

Die aktualisierte Schreibsteuerung nach Anwendung der Anfrage.

Autorisierungsbereiche

Erfordert einen der folgenden OAuth-Bereiche:

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

Weitere Informationen finden Sie im Leitfaden zur Autorisierung.

Anfragen

Die Arten von Aktualisierungsanfragen, die gestellt werden können.

JSON-Darstellung
{

  // 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.
}
Felder
Union-Feld kind. Die Art der Anfrage. Für kind ist nur einer der folgenden Werte zulässig:
updateFormInfo

object (UpdateFormInfoRequest)

Formularinformationen aktualisieren.

updateSettings

object (UpdateSettingsRequest)

Aktualisiert die Einstellungen des Formulars.

createItem

object (CreateItemRequest)

Neues Element erstellen.

moveItem

object (MoveItemRequest)

Verschiebt ein Element an einen bestimmten Speicherort.

deleteItem

object (DeleteItemRequest)

Element löschen

updateItem

object (UpdateItemRequest)

Artikel aktualisieren

UpdateFormInfoRequest

Formularinformationen aktualisieren.

JSON-Darstellung
{
  "info": {
    object (Info)
  },
  "updateMask": string
}
Felder
info

object (Info)

Die zu aktualisierenden Informationen.

updateMask

string (FieldMask format)

Erforderlich. Es werden nur Werte geändert, die in dieser Maske benannt sind. Es muss mindestens ein Feld angegeben werden. Der Stamm info ist impliziert und sollte nicht angegeben werden. Ein einzelnes "*" kann als Abkürzung zum Aktualisieren jedes Felds verwendet werden.

Dies ist eine durch Kommas getrennte Liste voll qualifizierter Feldnamen. Beispiel: "user.displayName,photo".

UpdateSettingsRequest

FormSettings des Formulars aktualisieren.

JSON-Darstellung
{
  "settings": {
    object (FormSettings)
  },
  "updateMask": string
}
Felder
settings

object (FormSettings)

Erforderlich. Die Einstellungen, die aktualisiert werden sollen.

updateMask

string (FieldMask format)

Erforderlich. Es werden nur Werte geändert, die in dieser Maske benannt sind. Es muss mindestens ein Feld angegeben werden. Der Stamm settings ist impliziert und sollte nicht angegeben werden. Ein einzelnes "*" kann als Abkürzung zum Aktualisieren jedes Felds verwendet werden.

Dies ist eine durch Kommas getrennte Liste voll qualifizierter Feldnamen. Beispiel: "user.displayName,photo".

CreateItemRequest

Erstellen Sie ein Element in einem Formular.

JSON-Darstellung
{
  "item": {
    object (Item)
  },
  "location": {
    object (Location)
  }
}
Felder
item

object (Item)

Erforderlich. Das zu erstellende Element.

location

object (Location)

Erforderlich. Wo das neue Element platziert werden soll

Standort

Ein bestimmter Ort in einem Formular.

JSON-Darstellung
{

  // Union field where can be only one of the following:
  "index": integer
  // End of list of possible types for union field where.
}
Felder
Union-Feld where Erforderlich. Geben Sie im Formular einen Standort an. Für where ist nur einer der folgenden Werte zulässig:
index

integer

Index eines Elements im Formular. Dieser Wert muss im Bereich liegen

[0..N)

, wobei N die Anzahl der Elemente im Formular ist.

MoveItemRequest

Elemente in einem Formular verschieben.

JSON-Darstellung
{
  "originalLocation": {
    object (Location)
  },
  "newLocation": {
    object (Location)
  }
}
Felder
originalLocation

object (Location)

Erforderlich. Die Position des Elements, das verschoben werden soll.

newLocation

object (Location)

Erforderlich. Der neue Speicherort für das Element.

DeleteItemRequest

Elemente in einem Formular löschen

JSON-Darstellung
{
  "location": {
    object (Location)
  }
}
Felder
location

object (Location)

Erforderlich. Der Speicherort des Elements, das gelöscht werden soll.

UpdateItemRequest

Elemente in einem Formular aktualisieren.

JSON-Darstellung
{
  "item": {
    object (Item)
  },
  "location": {
    object (Location)
  },
  "updateMask": string
}
Felder
item

object (Item)

Erforderlich. Neue Werte für das Element. Die Element- und Frage-IDs werden verwendet, wenn sie angegeben sind und sich in der Feldmaske befinden. Wenn eine ID leer ist (und sich in der Feldmaske befindet), wird eine neue ID generiert. Das bedeutet, dass Sie ein Element ändern können, indem Sie das Formular über forms.get abrufen, die lokale Kopie des Elements nach Ihren Wünschen anpassen und UpdateItemRequest verwenden, um es zurückzuschreiben, wobei die IDs identisch sind (oder nicht in der Feldmaske enthalten sind).

location

object (Location)

Erforderlich. Der Ort, an dem das zu aktualisierende Element identifiziert wird.

updateMask

string (FieldMask format)

Erforderlich. Es werden nur Werte geändert, die in dieser Maske benannt sind.

Dies ist eine durch Kommas getrennte Liste voll qualifizierter Feldnamen. Beispiel: "user.displayName,photo".

WriteControl

Steuert, wie Schreibanfragen ausgeführt werden.

JSON-Darstellung
{

  // Union field control can be only one of the following:
  "requiredRevisionId": string,
  "targetRevisionId": string
  // End of list of possible types for union field control.
}
Felder
Union-Feld control. Bestimmt die Überarbeitung des Formulars, ab der Änderungen angewendet werden sollen, und das Verhalten der Anfrage, wenn die Überarbeitung nicht die aktuelle Version des Formulars ist. Für control ist nur einer der folgenden Werte zulässig:
requiredRevisionId

string

Die Überarbeitungs-ID des Formulars, auf das die Schreibanfrage angewendet wird. Wenn dies nicht die neueste Version des Formulars ist, wird die Anfrage nicht verarbeitet und gibt den Fehler 400 ungültige Anfrage zurück.

targetRevisionId

string

Die Zielversions-ID des Formulars, auf das die Schreibanfrage angewendet wird.

Wenn nach dieser Überarbeitung Änderungen vorgenommen wurden, werden die Änderungen in dieser Aktualisierungsanfrage in Übereinstimmung mit diesen Änderungen umgewandelt. Dies führt zu einer neuen Überarbeitung des Formulars, die sowohl die Änderungen in der Anfrage als auch die dazwischen liegenden Änderungen enthält. Dabei löst der Server widersprüchliche Änderungen auf.

Die Zielversions-ID darf nur zum Schreiben in aktuelle Versionen eines Formulars verwendet werden. Wenn die Zielüberarbeitung zu weit hinter der letzten Überarbeitung zurückliegt, wird die Anfrage nicht verarbeitet und gibt den Fehler 400 (Fehler bei ungültiger Anfrage) zurück. Die Anfrage kann noch einmal gesendet werden, nachdem die aktuelle Version des Formulars gelesen wurde. In den meisten Fällen bleibt eine Zielversions-ID nach dem Lesen noch einige Minuten gültig, aber bei häufig bearbeiteten Formularen kann dieses Fenster kürzer sein.

Antwort

Eine einzelne Antwort auf ein Update.

JSON-Darstellung
{

  // Union field kind can be only one of the following:
  "createItem": {
    object (CreateItemResponse)
  }
  // End of list of possible types for union field kind.
}
Felder
Union-Feld kind. Die Art der Antwort. Für kind ist nur einer der folgenden Werte zulässig:
createItem

object (CreateItemResponse)

Das Ergebnis der Erstellung eines Elements.

CreateItemResponse

Das Ergebnis der Erstellung eines Elements.

JSON-Darstellung
{
  "itemId": string,
  "questionId": [
    string
  ]
}
Felder
itemId

string

Die ID des erstellten Elements.

questionId[]

string

Die ID der Frage, die als Teil dieses Elements erstellt wurde. Für eine Fragengruppe werden die IDs aller Fragen aufgeführt, die für dieses Element erstellt wurden.