Mit den Attributen type
und format
für Parameter und Schemas kann der Datentyp des Attributs bestimmt werden. Das Attribut type
gibt den Typ des Attributs an, wenn es in JSON-Anfragen und -Antworten gesendet wird. JSON unterstützt eine kleine Anzahl von Datentypen, siehe json.org. “ Das Attribut format
stellt zusätzliche Informationen zum zugrunde liegenden Typ bereit. Attribute haben immer ein type
-Attribut, einige haben aber möglicherweise auch ein format
-Attribut.
Eine 64-Bit-Ganzzahl kann beispielsweise nicht in JSON dargestellt werden, da JavaScript und JSON Ganzzahlen bis 2^53 unterstützen. Daher muss eine 64-Bit-Ganzzahl als String in JSON-Anfragen/-Antworten dargestellt werden. Das Attribut type
wird also auf "string" gesetzt, das Attribut format
wird jedoch auf "int64" gesetzt, um anzugeben, dass es sich um eine 64-Bit-Ganzzahl handelt.
Die JSON-Schemaspezifikation definiert bereits eine Reihe von gängigen Werten für das Attribut format
. Der Google APIs Discovery Service unterstützt einige dieser Werte und definiert auch andere. Die vollständige Liste der type
- und format
-Werte, die vom Google APIs Discovery Service unterstützt werden, finden Sie weiter unten.
Typwert | Formatwert | Bedeutung |
---|---|---|
any |
|
Das Attribut kann einen beliebigen Typ haben. Definiert durch die JSON-Schemaspezifikation. |
array |
|
Ein JavaScript-Array von Werten. Das Attribut items gibt das Schema für die Arraywerte an. Definiert durch die JSON-Schemaspezifikation.
|
boolean |
|
Ein boolescher Wert, entweder "true" oder "false" Definiert durch die JSON-Schemaspezifikation. |
integer |
int32 |
Eine vorzeichenbehaftete 32-Bit-Ganzzahl. Sie hat einen Mindestwert von -2,147,483,648 und einen Höchstwert von 2,147,483,647 (einschließlich). |
integer |
uint32 |
Eine vorzeichenlose 32-Bit-Ganzzahl. Sie hat einen Mindestwert von 0 und einen Höchstwert von 4,294,967,295 (einschließlich). |
number |
double |
Eine 64-Bit-IEEE 754-Gleitkommazahl mit doppelter Genauigkeit. |
number |
float |
Eine 32-Bit-IEEE 754-Gleitkommazahl mit einfacher Genauigkeit. |
object |
|
Ein JavaScript-Objekt. Definiert durch die JSON-Schemaspezifikation. |
string |
|
Ein beliebiger String. Definiert durch die JSON-Schemaspezifikation. |
string |
byte |
Ein aufgefüllter base64-codierter String aus Byte, der mit einem URL-sicheren und Dateinamen-sicheren Alphabet (auch als "web-safe" oder "base64url" bezeichnet) codiert ist. Definiert durch RFC4648. |
string |
date |
Ein RFC3339-Datum im Format JJJJ-MM-TT. Wird in der JSON-Schemaspezifikation definiert. |
string |
date-time |
Ein RFC3339-Zeitstempel in UTC-Zeit. Im Format JJJJ-MM-TTTHH:mm:ss.SSSZ. Der Millisekundenteil (".SSS") ist optional. Wird in der JSON-Schemaspezifikation definiert. |
string |
google-datetime |
Ein RFC3339-Zeitstempel in UTC-Zeit. Im Format JJJJ-MM-TTTHH:mm:ss.SSSZ. Der Millisekundenteil (".SSS") ist optional. |
string |
google-duration |
Ein String endet mit dem Suffix "s" (in Sekunden), wobei die Anzahl von Sekunden vorangestellt wird. Dabei werden die Nanosekunden als Sekundenbruchteile angegeben. Der Punkt wird immer als Dezimalzeichen verwendet, kein Komma. |
string |
google-fieldmask |
Ein String, bei dem Feldnamen durch ein Komma getrennt sind. Feldnamen werden in Namenskonventionen mit kleingeschriebener Camel-Case-Schreibweise dargestellt. |
string |
int64 |
Eine vorzeichenbehaftete 64-Bit-Ganzzahl. Sie hat einen Mindestwert von -9.223.372.036.854.775.808 und einen Höchstwert von 9.223.372.036.854.775.807 (einschließlich). |
string |
uint64 |
Eine vorzeichenlose 64-Bit-Ganzzahl. Sie hat einen Mindestwert von 0 und einen Höchstwert von (2^64)-1 (einschließlich). |