Le proprietà type
e format
per i parametri e gli schemi possono essere utilizzate per determinare il tipo di dati della proprietà. La proprietà type
indica il tipo di proprietà quando viene inviata nelle richieste e nelle risposte JSON (JSON supporta un piccolo insieme di tipi di dati; per maggiori dettagli, visita il sito json.org). La proprietà format
fornisce informazioni aggiuntive sul tipo sottostante. Le proprietà avranno sempre una proprietà type
, ma alcune potrebbero avere anche una proprietà format
.
Ad esempio, un numero intero a 64 bit non può essere rappresentato in JSON (poiché JavaScript e JSON supportano interi fino a 2^53). Pertanto, un numero intero a 64 bit deve essere rappresentato come stringa nelle richieste/risposte JSON. Pertanto, la proprietà type
verrà impostata su "stringa", ma la proprietà
format
verrà impostata su "int64" per indicare che si tratta di un numero intero a 64 bit.
La specifica JSON Schema definisce già un insieme di valori comuni per la proprietà format
. Il servizio di rilevamento delle API di Google supporta alcuni di questi valori e ne definisce altri. Di seguito è riportato l'elenco completo dei valori type
e
format
supportati dal servizio di rilevamento delle API di Google.
Digita il valore | Formatta valore | Significato |
---|---|---|
any |
|
La proprietà può essere di qualsiasi tipo. Definito dalla specifica JSON Schema. |
any |
google.protobuf.Value |
La proprietà ha la rappresentazione JSON del tipo google.protobuf.Value. |
array |
|
Un array JavaScript di valori. La proprietà items indica lo schema per i valori dell'array. Definito dalle specifiche JSON Schema.
|
array |
google.protobuf.ListValue |
La proprietà ha la rappresentazione JSON del tipo google.protobuf.ListValue. |
boolean |
|
Un valore booleano, "true" o "false". Definito dalle specifiche JSON Schema. |
integer |
int32 |
Un numero intero a 32 bit con segno. Ha un valore minimo di -2.147.483.648 e un valore massimo di 2.147.483.647 (incluso). |
integer |
uint32 |
Un numero intero non firmato a 32 bit. Ha un valore minimo di 0 e un valore massimo di 4.294.967.295 (inclusi). |
number |
double |
Un numero a virgola mobile IEEE 754 a 64 bit a precisione doppia. |
number |
float |
Un numero in virgola mobile IEEE 754 a precisione singola a 32 bit. |
object |
|
Un oggetto JavaScript. Definito dalle specifiche JSON Schema. |
object |
google.protobuf.Struct |
La proprietà ha la rappresentazione JSON del tipo google.protobuf.Struct. |
object |
google.protobuf.Any |
La proprietà ha la rappresentazione JSON del tipo google.protobuf.Any. |
string |
|
Una stringa arbitraria. Definito dalle specifiche JSON Schema. |
string |
byte |
Una stringa di byte con padding e codifica base64, codificata con un alfabeto sicuro per URL e nomi file (a volte indicato come "sicuro per il web" o "base64url"). Definito dal documento RFC4648. |
string |
date |
Una data RFC3339 nel formato AAAA-MM-GG. Definito nella specifica JSON Schema. |
string |
date-time |
Un timestamp RFC3339 nel fuso orario UTC. Nel formato aaaa-MM-ggThh:mm:ss.SSSZ. La parte in millisecondi (".SSS") è facoltativa. Definito nella specifica JSON Schema. |
string |
google-datetime |
Un timestamp RFC3339 nel fuso orario UTC. Nel formato aaaa-MM-ggThh:mm:ss.SSSZ. La parte in millisecondi (".SSS") è facoltativa. |
string |
google-duration |
Una stringa termina con il suffisso "s" (che indica i secondi) ed è preceduta dal numero di secondi, con i nanosecondi espressi come frazioni di secondo. Il punto viene sempre utilizzato come punto decimale, non come virgola. |
string |
google-fieldmask |
Una stringa in cui i nomi dei campi sono separati da una virgola. I nomi dei campi sono rappresentati in convenzioni di denominazione in minuscolo con lettere maiuscole iniziali. |
string |
int64 |
Un numero intero a 64 bit con segno. Ha un valore minimo di -9.223.372.036.854.775.808 e un valore massimo di 9.223.372.036.854.775.807 (incluso). |
string |
uint64 |
Un numero intero senza segno a 64 bit. Ha un valore minimo di 0 e un valore massimo di (2^64)-1 (incluso). |