Riepilogo tipo e formato

Le proprietà type e format in parametri e schemi possono essere utilizzate per determinare il tipo di dati della proprietà. La proprietà type indica il tipo di proprietà quando viene inviata in richieste e risposte JSON (JSON supporta un piccolo insieme di tipi di dati; consulta json.org per ulteriori dettagli). La proprietà format fornisce ulteriori informazioni sul tipo sottostante. Le proprietà avranno sempre una proprietà type, ma alcune possono anche avere una proprietà format.

Ad esempio, un numero intero a 64 bit non può essere rappresentato in formato JSON (dal momento che JavaScript e JSON supportano i numeri interi fino a 2^53). Pertanto, un numero intero a 64 bit deve essere rappresentato come stringa nelle richieste/risposte JSON. Quindi la proprietà type verrà impostata su "string", ma la proprietà format verrà impostata su "int64" per indicare che si tratta di un numero intero a 64 bit.

Le specifiche di schema JSON definiscono già un insieme di valori comuni per la proprietà format. Google API Discovery Service supporta alcuni di questi valori e ne definisce altri. L'elenco completo dei valori type e format supportati dal servizio di rilevamento delle API di Google è riportato di seguito.

Tipo di valore Valore formato Significato
any La proprietà può avere qualsiasi tipo. Definito dalle specifiche dello schema JSON.
array Un array di valori JavaScript. La proprietà items indica lo schema per i valori dell'array. Definito dalla specifica schema JSON.
boolean Un valore booleano, "true" o "false". Definito dalla specifica schema JSON.
integer int32 Un numero intero firmato a 32 bit. Ha un valore minimo di -2.147.483.648 e un valore massimo di 2.147.483.647 (incluso).
integer uint32 Un numero intero senza segno a 32 bit. Ha un valore minimo pari a 0 e un valore massimo di 4.294.967.295 (incluso).
number double Un virgola mobile IEEE 754 a doppia precisione a 64 bit.
number float Un virgola mobile IEEE 754 a precisione singola a 32 bit.
object Un oggetto JavaScript. Definito dalla specifica schema JSON.
string Una stringa arbitraria. Definito dalla specifica schema JSON.
string byte Una stringa imbottita con codifica Base64 di byte, codificata con un alfabeto sicuro e URL (a volte indicato come "sicuro per il Web" o "quo66url" di base). Definito da RFC4648.
string date Una data RFC3339 nel formato AAAA-MM-GG. Definizione nelle specifiche schema JSON.
string date-time Un timestamp RFC3339 in ora UTC. nel formato aaaa-MM-ggTHH:mm:ss.SSSZ. La porzione in millisecondi (".SSS") è facoltativa. Definizione nelle specifiche schema JSON.
string google-datetime Un timestamp RFC3339 in ora UTC. nel formato aaaa-MM-ggTHH:mm:ss.SSSZ. La porzione in millisecondi (".SSS") è facoltativa.
string google-duration Una stringa termina nel suffisso "s" (indicante i secondi) ed è preceduta dal numero di secondi, con i nanosecondi espressi come secondi frazionari. Il punto è sempre utilizzato come punto decimale, non come virgola.
string google-fieldmask Una stringa in cui i nomi dei campi sono separati da virgole. I nomi dei campi vengono rappresentati nelle convenzioni di denominazione con cammello inferiore.
string int64 Un numero intero firmato a 64 bit. Ha un valore minimo di -9.223.372.036.854.775.808 e un valore massimo di 9.223.372.036.854.775.807 (inclusi).
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).