Package google.type

Índice

Data

Representa uma data inteira ou parcial do calendário, como um aniversário. A hora do dia e o fuso horário são especificados em outro lugar ou são insignificantes. A data é referente ao calendário gregoriano. Isso pode representar uma das seguintes opções:

  • uma data completa, com valores de ano, mês e dia diferentes de zero;
  • um mês e dia, com um ano zero (por exemplo, uma data comemorativa);
  • um ano sozinho, com um mês zero e um dia zero;
  • um ano e mês, com um dia zero (por exemplo, uma data de validade de cartão de crédito).

Tipos relacionados:

Campos
year

int32

Ano da data. Precisa ser de 1 a 9.999 ou 0 para especificar uma data sem ano.

month

int32

Mês do ano. Precisa ser de 1 a 12, ou 0 para especificar um ano sem um mês e dia.

day

int32

Dia do mês. Precisa ser de 1 a 31 e válido para o ano e o mês, ou 0 para especificar um ano sozinho ou um ano e mês em que o dia não é significativo.

DayOfWeek

Representa um dia da semana.

Enums
DAY_OF_WEEK_UNSPECIFIED O dia da semana não é especificado.
MONDAY Segunda-feira
TUESDAY Terça-feira
WEDNESDAY Quarta-feira
THURSDAY Quinta-feira
FRIDAY Sexta-feira
SATURDAY Sábado
SUNDAY Domingo

Intervalo

Representa um intervalo de tempo, codificado como um início de carimbo de data/hora (inclusivo) e um fim de carimbo de data/hora (exclusivo).

O início precisa ser menor ou igual ao fim. Quando o início é igual ao fim, o intervalo fica vazio (não corresponde a nenhum horário). Quando o início e o término não são especificados, o intervalo corresponde a qualquer horário.

Campos
start_time

Timestamp

Opcional. Início inclusivo do intervalo.

Se especificado, um carimbo de data/hora correspondente a esse intervalo precisa ser igual ou posterior ao início.

end_time

Timestamp

Opcional. Término exclusivo do intervalo.

Se especificado, um carimbo de data/hora correspondente a esse intervalo precisa ser anterior ao fim.

PhoneNumber

Um objeto que representa um número de telefone, adequado como um formato de transmissão de API.

Essa representação:

  • não pode ser usado para formatação específica de localidade de um número de telefone, como "+1 (650) 253-0000 ext. 123"

  • não é projetado para armazenamento eficiente;

  • pode não ser adequado para discagem. Bibliotecas especializadas (consulte as referências) devem ser usadas para analisar o número para essa finalidade

Para fazer algo significativo com esse número, como formatá-lo para vários casos de uso, primeiro converta-o em um objeto i18n.phonenumbers.PhoneNumber.

Por exemplo, em Java, seria:

com.google.type.PhoneNumber wireProto =
    com.google.type.PhoneNumber.newBuilder().build();
com.google.i18n.phonenumbers.Phonenumber.PhoneNumber phoneNumber =
    PhoneNumberUtil.getInstance().parse(wireProto.getE164Number(), "ZZ");
if (!wireProto.getExtension().isEmpty()) {
  phoneNumber.setExtension(wireProto.getExtension());
}

Referência(s): - https://github.com/google/libphonenumber

Campos
extension

string

A extensão do número de telefone. A extensão não é padronizada nas recomendações da ITU, exceto por ser definida como uma série de números com um comprimento máximo de 40 dígitos. Além dos dígitos, alguns outros caracteres de discagem, como "," (que indica espera) ou "#", podem ser armazenados aqui.

No momento, nenhuma região usa extensões com códigos curtos. Portanto, esse campo normalmente é definido apenas com um número E.164. Ele é mantido separadamente do número E.164 para permitir extensões de código curto no futuro.

Campo de união kind. Obrigatório. Um número normal ou um código curto. Novos campos podem ser adicionados ao oneof abaixo no futuro. Portanto, os clientes devem ignorar números de telefone para os quais nenhum dos campos codificados estiver definido. kind pode ser apenas de um dos tipos a seguir:
e164_number

string

O número de telefone, representado por um sinal de adição ("+") seguido por um número de telefone que usa um formato ITU E.164 relaxado, que consiste no código de discagem do país (de 1 a 3 dígitos) e no número do assinante, sem espaços ou formatação adicionais. Por exemplo: - correto: "+15552220123" - incorreto: "+1 (555) 222-01234 x123".

O formato ITU E.164 limita o número a 12 dígitos, mas, na prática, nem todos os países respeitam isso. Por isso, relaxamos essa restrição aqui. Números nacionais não são permitidos.

Referências: - https://www.itu.int/rec/T-REC-E.164-201011-I - https://en.wikipedia.org/wiki/E.164. - https://en.wikipedia.org/wiki/List_of_country_calling_codes

short_code

ShortCode

Um código curto.

Referência(s): - https://en.wikipedia.org/wiki/Short_code

ShortCode

Um objeto que representa um código curto, que é um número de telefone geralmente muito menor do que os números de telefone comuns e pode ser usado para encaminhar mensagens em sistemas MMS e SMS, bem como para discagem abreviada (por exemplo, "Envie um SMS para 611 para saber quantos minutos restam no seu plano").

Os códigos curtos são restritos a uma região e não podem ser discados internacionalmente. Isso significa que o mesmo código curto pode existir em diferentes regiões, com uso e preços diferentes, mesmo que elas compartilhem o mesmo código de discagem do país (por exemplo, EUA e Canadá).

Campos
region_code

string

Obrigatório. O código de região BCP-47 do local em que as chamadas para esse código curto podem ser feitas, como "US" e "BB".

Referência(s): - http://www.unicode.org/reports/tr35/#unicode_region_subtag

number

string

Obrigatório. Os dígitos do código curto, sem o sinal de adição ("+") ou o código de país. Por exemplo, "611".

PostalAddress

Representa um endereço postal. Por exemplo, para endereços de entrega postal ou de pagamentos. Com um endereço postal, o serviço de correios pode entregar itens em um local, uma caixa postal ou outro local semelhante. Não se destina a modelar locais geográficos (estradas, cidades, montanhas).

No uso normal, um endereço seria criado por entrada do usuário ou pela importação de dados, dependendo do tipo de processo.

Orientações sobre a inserção / edição de endereços: – Use um widget de endereço pronto para internacionalização, como https://github.com/google/libaddressinput. – Os usuários não devem ver elementos da IU para inserção ou edição de campos fora dos países em que os campos são usados.

Para mais orientações sobre como usar este esquema, consulte: https://support.google.com/business/answer/6397478.

Campos
revision

int32

A revisão do esquema do PostalAddress. Precisa ser definido como 0, que é a revisão mais recente.

Todas as novas revisões precisam ser compatíveis com versões anteriores.

region_code

string

Obrigatório. Código de região CLDR do país/região do endereço. Nunca é inferido e cabe ao usuário garantir que o valor esteja correto. Para detalhes, consulte https://cldr.unicode.org/ e https://www.unicode.org/cldr/charts/30/supplemental/territory_information.html. Exemplo: "CH" para Suíça.

language_code

string

Opcional. Código de idioma BCP-47 do conteúdo deste endereço (se conhecido). Costuma ser o idioma da IU do formulário de entrada ou espera-se que corresponda a um dos idiomas usados no país/região do endereço ou nos equivalentes transliterados dele. Pode afetar a formatação em determinados países, mas não é fundamental para a exatidão dos dados e nunca afetará a validação ou outras operações relacionadas à não formatação.

Se você não conhece o valor, omita-o (em vez de especificar um padrão possivelmente incorreto).

Exemplos: "zh-Hant", "ja", "ja-latn", "pt".

postal_code

string

Opcional. Código postal do endereço. Nem todos os países usam ou exigem códigos postais, mas nos locais onde são usados, eles podem desencadear uma validação adicional com outras partes do endereço (por exemplo, validação de estado/código postal nos EUA).

sorting_code

string

Opcional. Código de classificação adicional específico de país. Não é usado na maioria das regiões. Quando usado, o valor é uma string como "CEDEX", opcionalmente seguida por um número (por exemplo, "CEDEX 7") ou apenas um número, representando o "código do setor" (Jamaica), o "indicador da área de entrega" (Malawi) ou o "indicador do correio" (por exemplo, Costa do Marfim).

administrative_area

string

Opcional. A maior subdivisão administrativa que é usada para endereços postais de um país ou uma região. Por exemplo, pode ser um estado, uma província, uma zona ou uma prefeitura. Especificamente na Espanha, é a província, e não a comunidade autônoma (por exemplo, "Barcelona", não "Catalunha"). Muitos países não usam área administrativa em endereços postais. Por exemplo, na Suíça, ela deve ficar em branco.

locality

string

Opcional. Geralmente se refere à parte do endereço relativa a cidade/município. Exemplos: cidade nos EUA, comunidade na Itália, distrito postal no Reino Unido. Em regiões em que as localidades não são claramente definidas ou não se encaixam bem nessa estrutura, deixe a localidade em branco e use address_lines.

sublocality

string

Opcional. Sublocalidade do endereço. Por exemplo, pode ser bairro ou distrito.

address_lines[]

string

Linhas de endereço não estruturadas que descrevem os níveis mais baixos de um endereço.

Como os valores em address_lines não têm informações de tipo e podem conter diversos valores em um único campo (por exemplo, "Austin, TX"), é importante que a ordem da linha seja clara. Ela precisa estar em "ordem de envelope" para o país ou região do endereço. Em locais em que isso pode variar (por exemplo, Japão), address_language é usado para explicitar (por exemplo, "ja" para ordem do maior para o menor e "ja-Latn" ou "en" para ordem do menor para o maior). Desta forma, a linha mais específica de um endereço pode ser selecionada com base no idioma.

A representação estrutural mínima permitida de um endereço consiste em um region_code com todas as informações restantes colocadas em address_lines. Seria possível formatar esse endereço sem geocodificação, mas nenhum raciocínio semântico poderia ser feito sobre qualquer um dos componentes do endereço até que ele fosse pelo menos parcialmente resolvido.

Criar um endereço que contenha apenas um region_code e address_lines e depois geocodificar é a maneira recomendada de lidar com endereços não estruturados (em vez de adivinhar quais partes do endereço devem ser localidades ou áreas administrativas).

recipients[]

string

Opcional. O destinatário no endereço. Sob certas circunstâncias, este campo pode conter informações em várias linhas. Por exemplo, informações sobre cuidados.

organization

string

Opcional. O nome da organização no endereço.

TimeOfDay

Representa um horário do dia. A data e o fuso horário não são relevantes ou são especificados em outro lugar. Uma API pode permitir segundos bissextos. Os tipos relacionados são google.type.Date e google.protobuf.Timestamp.

Campos
hours

int32

Horas de um dia no formato de 24 horas. Precisa ser maior ou igual a 0 e normalmente precisa ser menor ou igual a 23. Uma API pode permitir o valor "24:00:00" para o horário de fechamento da empresa, por exemplo.

minutes

int32

Minutos de uma hora. Precisa ser maior ou igual a 0 e menor ou igual a 59.

seconds

int32

Segundos de um minuto. Precisa ser maior ou igual a 0 e normalmente precisa ser menor ou igual a 59. Uma API pode permitir o valor 60 se permitir segundos bissextos.

nanos

int32

Frações de segundos em nanossegundos. Precisa ser maior ou igual a 0 e menor ou igual a 999.999.999.

TimeZone

Representa um fuso horário do banco de dados IANA.

Campos
id

string

Fuso horário do banco de dados IANA. Por exemplo, "America/New_York".

version

string

Opcional. Número da versão do banco de dados de fuso horário IANA. Por exemplo, "2019a".