Method: forms.batchUpdate

Das Formular mit mehreren Aktualisierungen ändern

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 eine aktualisierte Version des Modells in der Antwort zurückgegeben werden soll.

requests[]

object (Request)

Erforderlich. Die Aktualisierungsanfragen für diesen Batch.

writeControl

object (WriteControl)

Hiermit wird gesteuert, wie Schreibanfragen ausgeführt werden.

Antworttext

Antwort auf eine BatchUpdateFormRequest-Anfrage.

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/Updates zurückgegeben. Diese kann nach der Überarbeitungs-ID liegen, die durch diese Änderungen erstellt wurde.

replies[]

object (Response)

Die Antwort zu den Updates. Dies wird 1:1 den Aktualisierungsanfragen zugeordnet, wobei Antworten auf einige Anfragen möglicherweise leer sind.

writeControl

object (WriteControl)

Das aktualisierte Schreibsteuerelement 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

Welche Arten von Aktualisierungsanfragen möglich sind

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)

Aktualisieren Sie die Formularinformationen.

updateSettings

object (UpdateSettingsRequest)

Aktualisiert die Einstellungen des Formulars.

createItem

object (CreateItemRequest)

Neues Element erstellen.

moveItem

object (MoveItemRequest)

Element an einen bestimmten Speicherort verschieben

deleteItem

object (DeleteItemRequest)

Ein Element löschen

updateItem

object (UpdateItemRequest)

Ein Element aktualisieren.

UpdateFormInfoRequest

Aktualisieren Sie die Formularinformationen.

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

object (Info)

Informationen, die aktualisiert werden sollen.

updateMask

string (FieldMask format)

Erforderlich. Nur in dieser Maske benannte Werte werden geändert. Es muss mindestens ein Feld angegeben werden. Das Stammverzeichnis info ist impliziert und sollte nicht angegeben werden. Ein einzelnes "*"-Objekt kann als Kurzbefehl für die Aktualisierung aller Felder verwendet werden.

Dies ist eine durch Kommas getrennte Liste vollständig qualifizierter Namen von Feldern. 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. Nur in dieser Maske benannte Werte werden geändert. Es muss mindestens ein Feld angegeben werden. Das Stammverzeichnis settings ist impliziert und sollte nicht angegeben werden. Ein einzelnes "*"-Objekt kann als Kurzbefehl für die Aktualisierung aller Felder verwendet werden.

Dies ist eine durch Kommas getrennte Liste vollständig qualifizierter Namen von Feldern. Beispiel: "user.displayName,photo".

Anfrage erstellen

Elemente in einem Formular erstellen

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

object (Item)

Erforderlich. Das zu erstellende Element

location

object (Location)

Erforderlich. Platzieren Sie den neuen Artikel.

Location

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 einen Standort im Formular an. Für where ist nur einer der folgenden Werte zulässig:
index

integer

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

[0..N)

, wobei N die Anzahl der Elemente im Formular ist.

Anfrage verschieben

Elemente in Formulare verschieben

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

object (Location)

Erforderlich. Der Speicherort des zu verschiebenden Elements.

newLocation

object (Location)

Erforderlich. Der neue Speicherort für den Artikel.

Anfrage löschen

Elemente in einem Formular löschen

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

object (Location)

Erforderlich. Der Speicherort des zu löschenden Elements.

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. Artikel- und Frage-IDs werden verwendet, wenn sie angegeben wurden und sich in der Feldmaske befinden. Wenn eine ID leer ist und sich in der Feldmaske befindet, wird eine neue ID generiert. Du kannst ein Element also ändern, indem du das Formular über forms.get abholst und die lokale Kopie des Elements nach Belieben änderst. Außerdem kannst du es mit UpdateItemRequest zurücksenden, wobei die IDs gleich sind (oder nicht in der Feldmaske).

location

object (Location)

Erforderlich. Der Standort, der das zu aktualisierende Element identifiziert.

updateMask

string (FieldMask format)

Erforderlich. Nur in dieser Maske benannte Werte werden geändert.

Dies ist eine durch Kommas getrennte Liste vollständig qualifizierter Namen von Feldern. Beispiel: "user.displayName,photo".

Schreibsteuerung

Hiermit wird gesteuert, 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, auf die die Änderungen angewendet werden sollen, und wie sich die Anfrage verhält, wenn diese Überarbeitung nicht die aktuelle Überarbeitung 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. Falls es sich nicht um die letzte Überarbeitung des Formulars handelt, wird die Anfrage nicht verarbeitet und der Fehler 400 wird zurückgegeben.

targetRevisionId

string

Die Zielüberarbeitungs-ID des Formulars, auf das die Schreibanfrage angewendet wird.

Wenn nach dieser Überarbeitung Änderungen vorgenommen wurden, werden die Änderungen in dieser Aktualisierungsanfrage mit diesen Änderungen umgewandelt. Das führt zu einer neuen Überarbeitung des Formulars, in der sowohl die Änderungen in der Anfrage als auch die dazwischenliegenden Änderungen berücksichtigt werden, wobei der Server widersprüchliche Änderungen löst.

Die Zielüberarbeitungs-ID kann 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 ein 400-Fehler (Fehlerhafte Anfrage) zurückgegeben. Die Anfrage kann wiederholt werden, nachdem die aktuelle Version des Formulars gelesen wurde. In den meisten Fällen bleibt die Zielüberarbeitungs-ID einige Minuten nach dem Lesen gültig. Bei häufig bearbeiteten Formularen kann es jedoch kürzer sein.

Antwort

Eine einzelne Antwort von einem 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 des Erstellens eines Elements.

Antwort Antwort erstellen

Das Ergebnis des Erstellens 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 Artikels erstellt wurde. Bei einer Fragengruppe werden die IDs aller für dieses Element erstellten Fragen aufgelistet.