Method: forecast.lookup

Restituisce fino a 5 giorni di informazioni giornaliere sul polline in più di 65 paesi, con risoluzione fino a 1 km.

Richiesta HTTP

GET https://pollen.googleapis.com/v1/forecast:lookup

L'URL utilizza la sintassi di transcodifica gRPC.

Parametri di query

Parametri
location

object (LatLng)

Obbligatorio. La longitudine e la latitudine da cui l'API cerca i dati di previsione sulla concentrazione di pollini.

days

integer

Obbligatorio. Un numero che indica quanti giorni di previsione richiedere (valore minimo 1, valore massimo 5).

pageSize

integer

(Facoltativo) Il numero massimo di record di informazioni giornalieri da restituire per pagina. Il valore predefinito e massimo è 5 e indicano 5 giorni di dati.

pageToken

string

(Facoltativo) Un token di pagina ricevuto da una chiamata giornaliera precedente. Viene utilizzato per recuperare la pagina successiva.

Tieni presente che quando fornisci un valore per il token di pagina, tutti gli altri parametri di richiesta forniti devono corrispondere alla chiamata precedente che ha fornito il token di pagina.

languageCode

string

(Facoltativo) Consente al client di scegliere la lingua per la risposta. Se non è possibile fornire dati per la lingua, l'API utilizza la corrispondenza più simile. I valori consentiti si basano sullo standard IETF BCP-47. Il valore predefinito è "en".

plantsDescription

boolean

(Facoltativo) Contiene informazioni generali sulle piante, inclusi dettagli sulla loro stagionalità, forme e colori speciali, informazioni sulle reazioni crociate allergiche e foto delle piante. Il valore predefinito è "true".

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "regionCode": string,
  "dailyInfo": [
    {
      object (DayInfo)
    }
  ],
  "nextPageToken": string
}
Campi
regionCode

string

Il codice ISO_3166-1 alpha-2 del paese/della regione corrispondente alla località indicata nella richiesta. Questo campo potrebbe essere omesso dalla risposta se la località fornita nella richiesta si trova in un territorio conteso.

dailyInfo[]

object (DayInfo)

Obbligatorio. Questo oggetto contiene le informazioni di previsione giornaliere per ogni giorno richiesto.

nextPageToken

string

(Facoltativo) Il token per recuperare la pagina successiva.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la panoramica di OAuth 2.0.

LatLng

Un oggetto che rappresenta una coppia latitudine/longitudine. Questo valore è espresso come coppia di doppi per rappresentare i gradi di latitudine e i gradi di longitudine. Se non diversamente specificato, questo oggetto deve essere conforme allo standard WGS84. I valori devono essere compresi negli intervalli normalizzati.

Rappresentazione JSON
{
  "latitude": number,
  "longitude": number
}
Campi
latitude

number

La latitudine in gradi. Deve essere compreso nell'intervallo [-90,0, +90,0].

longitude

number

Longitudine in gradi. Deve essere compreso nell'intervallo [-180,0, +180,0].

DayInfo

Questo oggetto contiene le informazioni di previsione giornaliere per ogni giorno richiesto.

Rappresentazione JSON
{
  "date": {
    object (Date)
  },
  "pollenTypeInfo": [
    {
      object (PollenTypeInfo)
    }
  ],
  "plantInfo": [
    {
      object (PlantInfo)
    }
  ]
}
Campi
date

object (Date)

La data nel fuso orario UTC in cui sono rappresentati i dati di previsione del polline.

pollenTypeInfo[]

object (PollenTypeInfo)

Questo elenco includerà fino a tre tipi di polline (GRASS, WEED, ALBERO) che interessano la località specificata nella richiesta.

plantInfo[]

object (PlantInfo)

Questo elenco includerà fino a 15 specie di polline che interessano la località specificata nella richiesta.

Data

Rappresenta una data di calendario intera o parziale, come un compleanno. L'ora del giorno e il fuso orario sono specificati altrove o non sono significativi. La data è relativa al calendario gregoriano. Può trattarsi di uno dei seguenti valori:

  • Una data completa, con valori diversi da zero per anno, mese e giorno.
  • Un mese e un giorno con zero anni (ad esempio, un anniversario).
  • Un anno a sé stante, con uno zero mese e uno zero-day.
  • Un anno e un mese, con zero day (ad esempio, la data di scadenza della carta di credito).

Tipi correlati:

Rappresentazione JSON
{
  "year": integer,
  "month": integer,
  "day": integer
}
Campi
year

integer

Anno della data. Il valore deve essere compreso tra 1 e 9999 oppure 0 per specificare una data senza anno.

month

integer

Mese dell'anno. Il valore deve essere compreso tra 1 e 12 oppure 0 per specificare un anno senza mese e giorno.

day

integer

Giorno di un mese. Deve essere compreso tra 1 e 31 e deve essere valido per l'anno e il mese oppure 0 per specificare un anno da solo o un anno e mese in cui il giorno non è significativo.

PollenTypeInfo

Questo oggetto contiene l'indice del tipo di polline e informazioni sui consigli sanitari relativi a uno specifico tipo di polline.

Rappresentazione JSON
{
  "code": enum (PollenType),
  "displayName": string,
  "indexInfo": {
    object (IndexInfo)
  },
  "healthRecommendations": [
    string
  ],
  "inSeason": boolean
}
Campi
code

enum (PollenType)

Il nome in codice del tipo di polline. Ad esempio: "GRASS".

displayName

string

Una rappresentazione leggibile del nome del tipo di polline. Esempio: "Erba"

indexInfo

object (IndexInfo)

Contiene i dati dell'indice universale di polline (UPI) per il tipo di polline.

healthRecommendations[]

string

Elenco testuale di spiegazioni, relative a informazioni sulla salute basate sugli attuali livelli di polline.

inSeason

boolean

Indica se la pianta è in stagione o meno.

PollenType

Codice tipo di polline

Enum
POLLEN_TYPE_UNSPECIFIED Tipo di impianto non specificato.
GRASS Tipo di polline di erba.
TREE Tipo di polline di albero.
WEED Tipo di polline di erbacce.

IndexInfo

Questo oggetto contiene dati che rappresentano il valore, la categoria e la descrizione specifici dell'indice del polline.

Rappresentazione JSON
{
  "code": enum (Index),
  "displayName": string,
  "category": string,
  "indexDescription": string,
  "color": {
    object (Color)
  },
  "value": integer
}
Campi
code

enum (Index)

Il codice dell'indice. Questo campo rappresenta l'indice ai fini della programmazione utilizzando casi snake al posto degli spazi. Esempio: "UPI".

displayName

string

Una rappresentazione leggibile del nome dell'indice. Esempio: "Indice di pollini universale".

category

string

Classificazione del testo dell'interpretazione del punteggio numerico dell'indice. L'indice è costituito da sei categorie:

  • 0: "Nessuno"
  • 1: "Molto basso"
  • 2: "Basso"
  • 3: "Moderato"
  • 4: "Alto"
  • 5: "Molto alto
indexDescription

string

Spiegazione testuale del livello dell'indice corrente.

color

object (Color)

Il colore utilizzato per rappresentare il punteggio numerico dell'indice di polline.

value

integer

Il punteggio numerico dell'indice. L'intervallo numerico è compreso tra 0 e 5.

Indice

Codice indice

Enum
INDEX_UNSPECIFIED Indice non specificato.
UPI Indice universale di polline.

Colore

Rappresenta un colore nello spazio colore RGBA. Questa rappresentazione è progettata per facilitare la conversione da e verso rappresentazioni a colori in vari linguaggi piuttosto che per la compattezza. Ad esempio, i campi di questa rappresentazione possono essere forniti banalmente al costruttore di java.awt.Color in Java; può anche essere fornito banalmente al metodo +colorWithRed:green:blue:alpha di UIColor in iOS; e, con un po' di lavoro, può essere facilmente formattata in una stringa rgba() CSS in JavaScript.

Questa pagina di riferimento non contiene informazioni sullo spazio colore assoluto che dovrebbe essere utilizzato per interpretare il valore RGB, ad esempio sRGB, Adobe RGB, DCI-P3 e BT.2020. Per impostazione predefinita, le applicazioni devono utilizzare lo spazio colore sRGB.

Quando è necessario decidere l'uguaglianza dei colori, le implementazioni, salvo diversa indicazione, tratta i due colori come uguali se tutti i rispettivi valori di rosso, verde, blu e alfa differiscono di un massimo di 1e-5.

Esempio (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();
 }
 // ...

Esempio (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;
}
// ...

Esempio (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('');
};

// ...
Rappresentazione JSON
{
  "red": number,
  "green": number,
  "blue": number,
  "alpha": number
}
Campi
red

number

La quantità di rosso nel colore come valore nell'intervallo [0, 1].

green

number

La quantità di verde nel colore come valore nell'intervallo [0, 1].

blue

number

La quantità di blu nel colore come valore nell'intervallo [0, 1].

alpha

number

La frazione di questo colore che deve essere applicata al pixel. In altre parole, il colore finale dei pixel è definito dall'equazione:

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

Ciò significa che un valore pari a 1,0 corrisponde a un colore in tinta unita, mentre un valore pari a 0,0 a un colore completamente trasparente. Viene utilizzato un messaggio wrapper anziché un semplice scalare in virgola mobile in modo che sia possibile distinguere tra un valore predefinito e il valore non impostato. Se omesso, l'oggetto colore viene visualizzato come colore a tinta unita (come se al valore alpha fosse stato assegnato esplicitamente un valore 1,0).

PlantInfo

Questo oggetto contiene le informazioni giornaliere su una pianta specifica.

Rappresentazione JSON
{
  "code": enum (Plant),
  "displayName": string,
  "indexInfo": {
    object (IndexInfo)
  },
  "plantDescription": {
    object (PlantDescription)
  },
  "inSeason": boolean
}
Campi
code

enum (Plant)

Il nome in codice della pianta. Ad esempio: "COTTONWOOD". Qui puoi trovare un elenco di tutti i codici disponibili.

displayName

string

Una rappresentazione leggibile del nome della pianta. Esempio: "Cottonwood".

indexInfo

object (IndexInfo)

Questo oggetto contiene dati che rappresentano il valore, la categoria e la descrizione specifici dell'indice del polline.

plantDescription

object (PlantDescription)

Contiene informazioni generali sulle piante, inclusi dettagli sulla loro stagionalità, forme e colori speciali, informazioni sulle reazioni crociate allergiche e foto delle piante.

inSeason

boolean

Indicazione della pianta in stagione o meno.

Pianta

Elenca le piante disponibili con disponibilità diversa da una località all'altra.

Enum
PLANT_UNSPECIFIED Codice impianto non specificato.
ALDER L'ontano è classificato come un tipo di polline di albero.
ASH Il frassino è classificato come un tipo di polline di albero.
BIRCH La betulla è classificata come un tipo di polline di albero.
COTTONWOOD Il pioppo è classificato come un tipo di polline di albero.
ELM L'olmo è classificato come un tipo di polline di albero.
MAPLE L'acero è classificato come un tipo di polline di albero.
OLIVE L'ulivo è classificato come un tipo di polline di albero.
JUNIPER Il ginepro è classificato come un tipo di polline di albero.
OAK La quercia è classificata come un tipo di polline di albero.
PINE Il pino è classificato come un tipo di polline di albero.
CYPRESS_PINE Il cipresso è classificato come un tipo di polline di albero.
HAZEL Il nocciolo è classificato come un tipo di polline di albero.
GRAMINALES I graminali sono classificati come un tipo di polline di erba.
RAGWEED L'ambrosia è classificata come un tipo di polline di piante infestanti.
MUGWORT L'artemisia comune è un tipo di polline di piante infestanti.

PlantDescription

Contiene informazioni generali sulle piante, inclusi dettagli sulla loro stagionalità, forme e colori speciali, informazioni sulle reazioni crociate allergiche e foto delle piante.

Rappresentazione JSON
{
  "type": enum (PollenType),
  "family": string,
  "season": string,
  "specialColors": string,
  "specialShapes": string,
  "crossReaction": string,
  "picture": string,
  "pictureCloseup": string
}
Campi
type

enum (PollenType)

Il tipo di polline della pianta. Ad esempio: "GRASS". Qui puoi trovare un elenco di tutti i codici disponibili.

family

string

Una rappresentazione leggibile del nome della famiglia delle piante. Esempio: "Betulacee (famiglia della betulla)".

season

string

Elenco testuale di spiegazioni delle stagioni in cui il polline è attivo. Esempio: "Tardo inverno, primavera".

specialColors

string

Descrizione testuale delle piante colori di foglie, corteccia, fiori o semi che aiutano a identificare la pianta.

specialShapes

string

Descrizione testuale delle piante forme di foglie, corteccia, fiori o semi che aiutano a identificare la pianta.

crossReaction

string

Descrizione testuale delle piante a reazione crociata del polline. Esempio: polline di ontano, nocciolo, carpino, faggio, salice e quercia.

picture

string

Link all'immagine della pianta.

pictureCloseup

string

Link a un'immagine in primo piano della pianta.