- Solicitação HTTP
- Parâmetros de consulta
- Corpo da solicitação
- Corpo da resposta
- Escopos de autorização
- LatLng
- DayInfo
- Data
- PollenTypeInfo
- PollenType
- IndexInfo
- Índice
- Cor
- PlantInfo
- Planta
- PlantDescription
Retorna até 5 dias de informações diárias sobre o pólen em mais de 65 países, com resolução de até 1 km.
Solicitação HTTP
GET https://pollen.googleapis.com/v1/forecast:lookup
O URL usa a sintaxe de transcodificação gRPC.
Parâmetros de consulta
Parâmetros | |
---|---|
location |
Obrigatório. A longitude e a latitude de onde a API pesquisa dados de previsão de pólen. |
days |
Obrigatório. Um número que indica quantos dias previstos serão solicitados (valor mínimo 1, valor máximo 5). |
pageSize |
Opcional. O número máximo de registros diários de informações a serem retornados por página. O valor padrão e máximo é 5 (cinco dias de dados). |
pageToken |
Opcional. Um token de página recebido de uma chamada diária anterior. Ele é usado para recuperar a página subsequente. Observe que, ao fornecer um valor para o token de página, todos os outros parâmetros de solicitação fornecidos devem corresponder à chamada anterior que forneceu o token de página. |
languageCode |
Opcional. Permite que o cliente escolha o idioma da resposta. Se não for possível fornecer os dados para um idioma, a API usará a correspondência mais próxima. Os valores permitidos dependem do padrão IETF BCP-47. O valor padrão é "en". |
plantsDescription |
Opcional. Contém informações gerais sobre plantas, incluindo detalhes sobre sazonalidade, formas e cores especiais, informações sobre reações cruzadas alérgicas e fotos de plantas. |
Corpo da solicitação
O corpo da solicitação precisa estar vazio.
Corpo da resposta
Se bem-sucedido, o corpo da resposta exibirá os dados com a seguinte estrutura:
Representação JSON |
---|
{
"regionCode": string,
"dailyInfo": [
{
object ( |
Campos | |
---|---|
regionCode |
O código ISO_3166-1 alfa-2 do país/região correspondente ao local fornecido na solicitação. Esse campo poderá ser omitido da resposta se o local fornecido na solicitação estiver em um território disputado. |
dailyInfo[] |
Obrigatório. Este objeto contém as informações de previsão diária para cada dia solicitado. |
nextPageToken |
Opcional. O token para recuperar a próxima página. |
Escopos de autorização
Requer o seguinte escopo OAuth:
https://www.googleapis.com/auth/cloud-platform
Para mais informações, consulte a Visão geral do OAuth 2.0.
LatLng
Um objeto que representa um par de latitude/longitude. Ele é expresso como um par de valores duplos para representar graus de latitude e longitude. A menos que especificado de outra forma, esse objeto precisa estar em conformidade com o padrão WGS84. Os valores precisam estar dentro de intervalos normalizados.
Representação JSON |
---|
{ "latitude": number, "longitude": number } |
Campos | |
---|---|
latitude |
A latitude em graus. Precisa estar no intervalo [-90,0, +90,0]. |
longitude |
A longitude em graus. Precisa estar no intervalo [-180,0, +180,0]. |
DayInfo
Este objeto contém as informações de previsão diária para cada dia solicitado.
Representação JSON |
---|
{ "date": { object ( |
Campos | |
---|---|
date |
A data em UTC em que os dados de previsão de pólen são representados. |
pollenTypeInfo[] |
Essa lista incluirá (até) três tipos de pólen (grama, erva daninha, árvore) que afetam o local especificado na solicitação. |
plantInfo[] |
Essa lista incluirá (até) 15 espécies de pólen que afetam o local especificado na solicitação. |
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 um dia, com ano zero (por exemplo, uma data comemorativa).
- Um ano sozinho, com mês zero e dia zero.
- Um ano e um mês, com um dia zero (por exemplo, uma data de validade do cartão de crédito).
Tipos relacionados:
google.type.TimeOfDay
google.type.DateTime
google.protobuf.Timestamp
Representação JSON |
---|
{ "year": integer, "month": integer, "day": integer } |
Campos | |
---|---|
year |
Ano da data. Precisa ser de 1 a 9999 ou 0 para especificar uma data sem ano. |
month |
Mês do ano. Precisa ser de 1 a 12, ou 0 para especificar um ano sem um mês e dia. |
day |
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. |
PollenTypeInfo
Esse objeto contém o índice de tipo de pólen e informações de recomendações de saúde sobre um tipo específico de pólen.
Representação JSON |
---|
{ "code": enum ( |
Campos | |
---|---|
code |
O codinome do tipo de pólen. Por exemplo: "GRASS" |
displayName |
Uma representação legível do nome do tipo de pólen. Exemplo: "Grama" |
indexInfo |
Contém os dados do índice universal de pólen (UPI) para o tipo de pólen. |
healthRecommendations[] |
Lista textual de explicações, relacionadas a informações de saúde baseadas nos níveis atuais de pólen. |
inSeason |
Indicação se a planta está em estação ou não. |
PollenType
Código do tipo de pólen
Enums | |
---|---|
POLLEN_TYPE_UNSPECIFIED |
Tipo de planta não especificado. |
GRASS |
Tipo de pólen de grama. |
TREE |
Tipo de pólen de árvore. |
WEED |
Tipo de pólen de erva daninha. |
IndexInfo
Esse objeto contém dados que representam o valor, a categoria e a descrição específicos do índice de pólen.
Representação JSON |
---|
{ "code": enum ( |
Campos | |
---|---|
code |
O código do índice. Esse campo representa o índice para fins de programação usando casos Snake em vez de espaços. Exemplo: "UPI". |
displayName |
Uma representação legível do nome do índice. Exemplo: "Índice de Pólen Universal". |
category |
Classificação de texto da interpretação da pontuação numérica do índice. O índice é composto por seis categorias:
|
indexDescription |
Explicação textual do nível de índice atual. |
color |
A cor usada para representar a pontuação numérica do Índice de Pólen. |
value |
A pontuação numérica do índice. O intervalo numérico está entre 0 e 5. |
Índice
Código do índice
Enums | |
---|---|
INDEX_UNSPECIFIED |
Índice não especificado. |
UPI |
Índice universal de pólen. |
Cor
Representa uma cor no espaço de cores RGBA. Essa representação foi projetada para simplificar a conversão de/para representações de cores em vários idiomas em vez de compactação. Por exemplo, os campos dessa representação podem ser trivialmente fornecidos ao construtor do java.awt.Color
em Java; eles também podem ser fornecidos de maneira trivial ao método +colorWithRed:green:blue:alpha
do UIColor no iOS; e, com um pouco de trabalho, podem ser facilmente formatados em uma string CSS rgba()
em JavaScript.
Esta página de referência não tem informações sobre o espaço de cor absoluto que deve ser usado para interpretar o valor RGB, por exemplo, sRGB, Adobe RGB, DCI-P3 e BT.2020. Por padrão, os aplicativos usam o espaço de cores sRGB.
Quando a igualdade de cor precisa ser decidida, as implementações, a menos que documentadas de outra forma, tratam duas cores como iguais se todos os valores vermelho, verde, azul e alfa tiverem uma diferença no máximo 1e-5
.
Exemplo (Java):
import com.google.type.Color;
// ...
public static java.awt.Color fromProto(Color protocolor) {
float alpha = protocolor.hasAlpha()
? protocolor.getAlpha().getValue()
: 1.0;
return new java.awt.Color(
protocolor.getRed(),
protocolor.getGreen(),
protocolor.getBlue(),
alpha);
}
public static Color toProto(java.awt.Color color) {
float red = (float) color.getRed();
float green = (float) color.getGreen();
float blue = (float) color.getBlue();
float denominator = 255.0;
Color.Builder resultBuilder =
Color
.newBuilder()
.setRed(red / denominator)
.setGreen(green / denominator)
.setBlue(blue / denominator);
int alpha = color.getAlpha();
if (alpha != 255) {
result.setAlpha(
FloatValue
.newBuilder()
.setValue(((float) alpha) / denominator)
.build());
}
return resultBuilder.build();
}
// ...
Exemplo (iOS/Obj-C):
// ...
static UIColor* fromProto(Color* protocolor) {
float red = [protocolor red];
float green = [protocolor green];
float blue = [protocolor blue];
FloatValue* alpha_wrapper = [protocolor alpha];
float alpha = 1.0;
if (alpha_wrapper != nil) {
alpha = [alpha_wrapper value];
}
return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];
}
static Color* toProto(UIColor* color) {
CGFloat red, green, blue, alpha;
if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {
return nil;
}
Color* result = [[Color alloc] init];
[result setRed:red];
[result setGreen:green];
[result setBlue:blue];
if (alpha <= 0.9999) {
[result setAlpha:floatWrapperWithValue(alpha)];
}
[result autorelease];
return result;
}
// ...
Exemplo (JavaScript):
// ...
var protoToCssColor = function(rgb_color) {
var redFrac = rgb_color.red || 0.0;
var greenFrac = rgb_color.green || 0.0;
var blueFrac = rgb_color.blue || 0.0;
var red = Math.floor(redFrac * 255);
var green = Math.floor(greenFrac * 255);
var blue = Math.floor(blueFrac * 255);
if (!('alpha' in rgb_color)) {
return rgbToCssColor(red, green, blue);
}
var alphaFrac = rgb_color.alpha.value || 0.0;
var rgbParams = [red, green, blue].join(',');
return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
};
var rgbToCssColor = function(red, green, blue) {
var rgbNumber = new Number((red << 16) | (green << 8) | blue);
var hexString = rgbNumber.toString(16);
var missingZeros = 6 - hexString.length;
var resultBuilder = ['#'];
for (var i = 0; i < missingZeros; i++) {
resultBuilder.push('0');
}
resultBuilder.push(hexString);
return resultBuilder.join('');
};
// ...
Representação JSON |
---|
{ "red": number, "green": number, "blue": number, "alpha": number } |
Campos | |
---|---|
red |
A quantidade de vermelho na cor como um valor no intervalo [0, 1]. |
green |
A quantidade de verde na cor como um valor no intervalo [0, 1]. |
blue |
A quantidade de azul na cor como um valor no intervalo [0, 1]. |
alpha |
A fração desta cor que deve ser aplicada ao pixel. Ou seja, a cor final do pixel é definida pela equação:
Isto significa que um valor de 1,0 corresponde a uma cor sólida, enquanto um valor de 0,0 corresponde a uma cor completamente transparente. Esse recurso usa uma mensagem de wrapper, em vez de um escalar flutuante simples, para que seja possível distinguir entre um valor padrão e o valor que está sendo desativado. Se omitido, o objeto de cor é renderizado como uma cor sólida, como se o valor alfa tivesse recebido explicitamente um valor de 1,0. |
PlantInfo
Esse objeto contém as informações diárias sobre uma planta específica.
Representação JSON |
---|
{ "code": enum ( |
Campos | |
---|---|
code |
O codinome da planta. Por exemplo: "COTTONWOOD". Confira aqui uma lista de todos os códigos disponíveis. |
displayName |
Uma representação legível do nome da planta. por exemplo, "Cottonwood". |
indexInfo |
Esse objeto contém dados que representam o valor, a categoria e a descrição específicos do índice de pólen. |
plantDescription |
Contém informações gerais sobre plantas, incluindo detalhes sobre sazonalidade, formas e cores especiais, informações sobre reações cruzadas alérgicas e fotos de plantas. |
inSeason |
Indicação de que a planta está na estação do ano ou não. |
Planta
Lista as plantas disponíveis com disponibilidade variável entre locais.
Enums | |
---|---|
PLANT_UNSPECIFIED |
Código de planta não especificado. |
ALDER |
O almieiro é classificado como um tipo de pólen de árvore. |
ASH |
As cinzas são classificadas como um tipo de pólen de árvore. |
BIRCH |
A bétula é classificada como um tipo de pólen de árvore. |
COTTONWOOD |
O choupo é classificado como um tipo de pólen de árvore. |
ELM |
O ulmeiro é classificado como um tipo de pólen de árvore. |
MAPLE |
O bordo é classificado como um tipo de pólen de árvore. |
OLIVE |
A oliveira é classificada como um tipo de pólen de árvore. |
JUNIPER |
O zimbro é classificado como um tipo de pólen de árvore. |
OAK |
O carvalho é classificado como um tipo de pólen de árvore. |
PINE |
O pinheiro é classificado como um tipo de pólen de árvore. |
CYPRESS_PINE |
O pinheiro cipreste é classificado como um tipo de pólen de árvore. |
HAZEL |
A aveleira é classificada como um tipo de pólen de árvore. |
GRAMINALES |
A gramínea é classificada como um tipo de pólen da grama. |
RAGWEED |
A ambrósia é classificada como um tipo de pólen de erva daninha. |
MUGWORT |
A artemísia é classificada como um tipo de pólen de ervas daninhas. |
PlantDescription
Contém informações gerais sobre plantas, incluindo detalhes sobre sazonalidade, formas e cores especiais, informações sobre reações cruzadas alérgicas e fotos de plantas.
Representação JSON |
---|
{
"type": enum ( |
Campos | |
---|---|
type |
O tipo de pólen da planta. Por exemplo: "GRASS". Confira aqui uma lista de todos os códigos disponíveis. |
family |
Uma representação legível do nome da família da planta. Exemplo: "Betulaceae (família da bétula)". |
season |
Lista textual de explicações das estações em que o pólen está ativo. Exemplo: "Fim do inverno, primavera". |
specialColors |
Descrição textual das cores das folhas, cascas, flores ou sementes das plantas que ajuda a identificar a planta. |
specialShapes |
Descrição textual das formas de folhas, cascas, flores ou sementes das plantas que ajuda a identificar a planta. |
crossReaction |
Descrição textual de plantas de reação cruzada com pólen. Exemplo: pólen de almieiro, aveleira, carpino, faia, salgueiro e carvalho. |
picture |
Link para a imagem da planta. |
pictureCloseup |
Link para uma imagem em close da planta. |