Method: forecast.lookup

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

object (LatLng)

Obrigatório. A longitude e a latitude de onde a API pesquisa dados de previsão de pólen.

days

integer

Obrigatório. Um número que indica quantos dias previstos serão solicitados (valor mínimo 1, valor máximo 5).

pageSize

integer

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

string

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

string

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

boolean

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 (DayInfo)
    }
  ],
  "nextPageToken": string
}
Campos
regionCode

string

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[]

object (DayInfo)

Obrigatório. Este objeto contém as informações de previsão diária para cada dia solicitado.

nextPageToken

string

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

number

A latitude em graus. Precisa estar no intervalo [-90,0, +90,0].

longitude

number

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 (Date)
  },
  "pollenTypeInfo": [
    {
      object (PollenTypeInfo)
    }
  ],
  "plantInfo": [
    {
      object (PlantInfo)
    }
  ]
}
Campos
date

object (Date)

A data em UTC em que os dados de previsão de pólen são representados.

pollenTypeInfo[]

object (PollenTypeInfo)

Essa lista incluirá (até) três tipos de pólen (grama, erva daninha, árvore) que afetam o local especificado na solicitação.

plantInfo[]

object (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:

Representação JSON
{
  "year": integer,
  "month": integer,
  "day": integer
}
Campos
year

integer

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

month

integer

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

day

integer

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 (PollenType),
  "displayName": string,
  "indexInfo": {
    object (IndexInfo)
  },
  "healthRecommendations": [
    string
  ],
  "inSeason": boolean
}
Campos
code

enum (PollenType)

O codinome do tipo de pólen. Por exemplo: "GRASS"

displayName

string

Uma representação legível do nome do tipo de pólen. Exemplo: "Grama"

indexInfo

object (IndexInfo)

Contém os dados do índice universal de pólen (UPI) para o tipo de pólen.

healthRecommendations[]

string

Lista textual de explicações, relacionadas a informações de saúde baseadas nos níveis atuais de pólen.

inSeason

boolean

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 (Index),
  "displayName": string,
  "category": string,
  "indexDescription": string,
  "color": {
    object (Color)
  },
  "value": integer
}
Campos
code

enum (Index)

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

string

Uma representação legível do nome do índice. Exemplo: "Índice de Pólen Universal".

category

string

Classificação de texto da interpretação da pontuação numérica do índice. O índice é composto por seis categorias:

  • 0: "Nenhum"
  • 1: "Muito baixo"
  • 2: "Baixo"
  • 3: "Moderado"
  • 4: "alto"
  • 5: "Muito alto
indexDescription

string

Explicação textual do nível de índice atual.

color

object (Color)

A cor usada para representar a pontuação numérica do Índice de Pólen.

value

integer

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

number

A quantidade de vermelho na cor como um valor no intervalo [0, 1].

green

number

A quantidade de verde na cor como um valor no intervalo [0, 1].

blue

number

A quantidade de azul na cor como um valor no intervalo [0, 1].

alpha

number

A fração desta cor que deve ser aplicada ao pixel. Ou seja, a cor final do pixel é definida pela equação:

pixel color = alpha * (this color) + (1.0 - alpha) * (background color)

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 (Plant),
  "displayName": string,
  "indexInfo": {
    object (IndexInfo)
  },
  "plantDescription": {
    object (PlantDescription)
  },
  "inSeason": boolean
}
Campos
code

enum (Plant)

O codinome da planta. Por exemplo: "COTTONWOOD". Confira aqui uma lista de todos os códigos disponíveis.

displayName

string

Uma representação legível do nome da planta. por exemplo, "Cottonwood".

indexInfo

object (IndexInfo)

Esse objeto contém dados que representam o valor, a categoria e a descrição específicos do índice de pólen.

plantDescription

object (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

boolean

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 (PollenType),
  "family": string,
  "season": string,
  "specialColors": string,
  "specialShapes": string,
  "crossReaction": string,
  "picture": string,
  "pictureCloseup": string
}
Campos
type

enum (PollenType)

O tipo de pólen da planta. Por exemplo: "GRASS". Confira aqui uma lista de todos os códigos disponíveis.

family

string

Uma representação legível do nome da família da planta. Exemplo: "Betulaceae (família da bétula)".

season

string

Lista textual de explicações das estações em que o pólen está ativo. Exemplo: "Fim do inverno, primavera".

specialColors

string

Descrição textual das cores das folhas, cascas, flores ou sementes das plantas que ajuda a identificar a planta.

specialShapes

string

Descrição textual das formas de folhas, cascas, flores ou sementes das plantas que ajuda a identificar a planta.

crossReaction

string

Descrição textual de plantas de reação cruzada com pólen. Exemplo: pólen de almieiro, aveleira, carpino, faia, salgueiro e carvalho.

picture

string

Link para a imagem da planta.

pictureCloseup

string

Link para uma imagem em close da planta.