Tipo e formato

As properties type e format em parâmetros e esquemas podem ser usadas para determinar o tipo de dados da property. A property type indica o tipo da property quando ela é enviada em solicitações e respostas JSON. O JSON aceita um conjunto pequeno de tipos de dados. Consulte json.org (em inglês) para ver detalhes. A property format contém mais informações sobre o tipo subjacente. As properties sempre terão uma property type, mas algumas também podem ter uma property format.

Por exemplo, um número inteiro de 64 bits não pode ser representado em JSON (já que JavaScript e JSON aceitam números inteiros até 2^53). Portanto, um número inteiro de 64 bits precisa ser representado como uma string nas solicitações/respostas JSON. Portanto, a property type será definida como "string", mas a property format será definida como "int64" para indicar que é um número inteiro de 64 bits.

A especificação do esquema JSON já define um conjunto de valores comuns para a property format. O serviço de descoberta de APIs do Google aceita alguns desses valores e também define outros. A lista completa dos valores type e format aceitos pelo serviço de descoberta de APIs do Google está resumida abaixo.

Valor "Tipo" Valor do formato Significado
any A propriedade pode ter qualquer tipo. Definido pela especificação do esquema JSON.
array Uma matriz de valores JavaScript. A property items indica o esquema dos valores da matriz. Definido pela especificação do esquema JSON.
boolean Um valor booleano, "true" ou "false". Definido pela especificação do esquema JSON.
integer int32 Um número inteiro assinado de 32 bits Ele tem um valor mínimo de -2.147.483.648 e um valor máximo de 2.147.483.647 (incluso).
integer uint32 Um número inteiro sem assinatura de 32 bits. Ele tem um valor mínimo de 0 e um valor máximo de 4.294.967.295 (incluso).
number double Um ponto flutuante IEEE 754 de dupla precisão de 64 bits.
number float Um ponto flutuante IEEE 754 de 32 bits de precisão única.
object Um objeto JavaScript. Definido pela especificação do esquema JSON.
string Uma string arbitrária. Definido pela especificação do esquema JSON.
string byte Uma string de bytes codificada em base64 com padding, codificada com um URL e alfabeto seguro de nome de arquivo (às vezes chamado de "seguro para Web" ou "base64url"). Definido por RFC 4648.
string date Uma data RFC 3339 no formato AAAA-MM-DD. Definido na especificação do Esquema JSON.
string date-time Um carimbo de data/hora RFC 3339 no horário UTC. Isso está no formato aaaa-MM-ddTHH:mm:ss.SSSZ. A parte de milissegundos (".SSS") é opcional. Definido na especificação do Esquema JSON.
string google-datetime Um carimbo de data/hora RFC 3339 no horário UTC. Isso está no formato aaaa-MM-ddTHH:mm:ss.SSSZ. A parte de milissegundos (".SSS") é opcional.
string google-duration Uma string termina com o sufixo "s" (indicando segundos) e é precedida pelo número de segundos, com nanossegundos expressos como segundos fracionários. O ponto é sempre usado como um separador decimal, não uma vírgula.
string google-fieldmask Uma string em que os nomes de campos são separados por uma vírgula. Os nomes dos campos são representados em convenções de nomenclatura de letras minúsculas.
string int64 Um número inteiro assinado de 64 bits Ele tem um valor mínimo de -9.223.372.036.854.775.808 e um valor máximo de 9.223.372.036.854.775.807 (incluso).
string uint64 Um número inteiro sem assinatura de 64 bits. Ele tem um valor mínimo de 0 e um valor máximo de (2^64)-1 (incluso).