- Solicitud HTTP
- Parámetros de búsqueda
- Cuerpo de la solicitud
- Cuerpo de la respuesta
- Permisos de autorización
- LatLng
- DayInfo
- Fecha
- PollenTypeInfo
- PollenType
- IndexInfo
- Índice
- Color
- PlantInfo
- Planta
- PlantDescription
- Pruébalo
Muestra hasta 5 días de información diaria sobre los niveles de polen en más de 65 países, con una resolución de hasta 1 km.
Solicitud HTTP
GET https://pollen.googleapis.com/v1/forecast:lookup
La URL usa la sintaxis de la transcodificación gRPC.
Parámetros de consulta
Parámetros | |
---|---|
location |
Obligatorio. La longitud y la latitud de las que la API busca datos de previsión de polen |
days |
Obligatorio. Es un número que indica cuántos días de previsión se deben solicitar (el valor mínimo es 1 y el máximo es 5). |
pageSize |
Opcional. La cantidad máxima de registros de información diarios que se mostrarán por página. El valor predeterminado y máximo es 5, lo que indica 5 días de datos. |
pageToken |
Opcional. Un token de página recibido de una llamada diaria anterior. Se usa para recuperar la página siguiente. Ten en cuenta que cuando proporcionas un valor para el token de la página, todos los demás parámetros de solicitud proporcionados deben coincidir con la llamada anterior que proporcionó el token de la página. |
languageCode |
Opcional. Permite que el cliente elija el idioma de la respuesta. Si no se pueden proporcionar datos para ese idioma, la API usa la coincidencia más cercana. Los valores permitidos se basan en el estándar IETF BCP-47. El valor predeterminado es "en". |
plantsDescription |
Opcional. Contiene información general sobre las plantas, incluidos detalles sobre su estacionalidad, formas y colores especiales, información sobre reacciones alérgicas cruzadas y fotos de las plantas. El valor predeterminado es "true". |
Cuerpo de la solicitud
El cuerpo de la solicitud debe estar vacío.
Cuerpo de la respuesta
Si el proceso es satisfactorio, el cuerpo de la respuesta contiene datos con la siguiente estructura:
Representación JSON |
---|
{
"regionCode": string,
"dailyInfo": [
{
object ( |
Campos | |
---|---|
regionCode |
El código ISO_3166-1 alpha-2 del país o la región correspondiente a la ubicación proporcionada en la solicitud. Este campo puede omitirse en la respuesta si la ubicación proporcionada en la solicitud se encuentra en un territorio en disputa. |
dailyInfo[] |
Obligatorio. Este objeto contiene la información del pronóstico diario para cada día solicitado. |
nextPageToken |
Opcional. El token para recuperar la página siguiente. |
Alcances de autorización
Requiere el siguiente alcance de OAuth:
https://www.googleapis.com/auth/cloud-platform
Para obtener más información, consulta la descripción general de OAuth 2.0.
LatLng
Es un objeto que representa un par de valores de latitud y longitud. Esto se expresa como un par de dobles para representar la latitud en grados y la longitud en grados. A menos que se especifique lo contrario, este objeto debe cumplir con el estándar WGS84. Los valores deben pertenecer a rangos normalizados.
Representación JSON |
---|
{ "latitude": number, "longitude": number } |
Campos | |
---|---|
latitude |
La latitud expresada en grados. Debe pertenecer al rango [-90.0, +90.0]. |
longitude |
La longitud expresada en grados. Debe pertenecer al rango [-180.0, +180.0]. |
DayInfo
Este objeto contiene la información del pronóstico diario para cada día solicitado.
Representación JSON |
---|
{ "date": { object ( |
Campos | |
---|---|
date |
Es la fecha en UTC en la que se representan los datos de previsión de polen. |
pollenTypeInfo[] |
Esta lista incluirá hasta tres tipos de polen (GRASS, WEED y TREE) que afectarán la ubicación especificada en la solicitud. |
plantInfo[] |
Esta lista incluirá hasta 15 especies de polen que afecten la ubicación especificada en la solicitud. |
Fecha
Representa una fecha de calendario completa o parcial, como un cumpleaños. La hora del día y la zona horaria se especifican en otro lugar o son insignificantes. La fecha está relacionada con el calendario gregoriano. Puede representar una de las siguientes opciones:
- Una fecha completa con valores para el año, mes y día que no sean cero.
- Un mes y un día, con cero año (por ejemplo, un aniversario).
- Un año por sí solo, con un mes cero y un día cero.
- Es un año y un mes, con un día cero (por ejemplo, la fecha de vencimiento de una tarjeta de crédito).
Tipos relacionados:
google.type.TimeOfDay
google.type.DateTime
google.protobuf.Timestamp
Representación JSON |
---|
{ "year": integer, "month": integer, "day": integer } |
Campos | |
---|---|
year |
Año de la fecha. Debe ser entre 1 y 9,999, o bien 0 para especificar una fecha sin año. |
month |
Mes del año. Debe ser del 1 al 12 o 0 para especificar un año sin un mes ni un día. |
day |
Día del mes. Debe ser entre 1 y 31 y ser válido para el año y el mes o bien 0 para especificar un año solo o un año y un mes en los que el día no sea significativo. |
PollenTypeInfo
Este objeto contiene el índice de tipos de polen y la información de recomendaciones de salud sobre un tipo específico de polen.
Representación JSON |
---|
{ "code": enum ( |
Campos | |
---|---|
code |
El nombre interno del tipo de polen. Por ejemplo: "GRASS" |
displayName |
Una representación legible por humanos del nombre del tipo de polen. Ejemplo: "Pasto". |
indexInfo |
Contiene los datos del Índice Universal de Polen (IUP) del tipo de polen. |
healthRecommendations[] |
Lista textual de explicaciones, relacionadas con estadísticas de salud basadas en los niveles actuales de polen. |
inSeason |
Indicación de si la planta está en temporada o no. |
PollenType
Código de tipo de polen
Enumeraciones | |
---|---|
POLLEN_TYPE_UNSPECIFIED |
Tipo de planta no especificado. |
GRASS |
Tipo de polen de pasto. |
TREE |
Tipo de polen de los árboles. |
WEED |
Tipo de polen de las malezas. |
IndexInfo
Este objeto contiene datos que representan el valor, la categoría y la descripción específicos del índice de polen.
Representación JSON |
---|
{ "code": enum ( |
Campos | |
---|---|
code |
El código del índice. Este campo representa el índice para fines de programación mediante el uso de Snake Case en lugar de espacios. Ejemplo: “UPI”. |
displayName |
Una representación legible del nombre del índice. Ejemplo: "Índice universal de polen". |
category |
Es la clasificación de texto de la interpretación de la puntuación numérica del índice. El índice consta de seis categorías:
|
indexDescription |
Explicación textual del nivel actual del índice. |
color |
Es el color que se usa para representar la puntuación numérica del Índice de polen. |
value |
La puntuación numérica del índice. El rango numérico está entre 0 y 5. |
Índice
Código de índice
Enumeraciones | |
---|---|
INDEX_UNSPECIFIED |
Índice sin especificar. |
UPI |
Índice universal de polen. |
Color
Representa un color en el espacio de color RGBA. Esta representación está diseñada para simplificar la conversión desde y hacia las representaciones de color en varios idiomas por sobre la compactación. Por ejemplo, los campos de esta representación se pueden proporcionar de forma trivial al constructor de java.awt.Color
en Java. también se puede proporcionar trivialmente al método +colorWithRed:green:blue:alpha
de UIColor en iOS. y, con solo un poco de trabajo, se puede formatear fácilmente en una cadena CSS rgba()
en JavaScript.
Esta página de referencia no tiene información sobre el espacio de color absoluto que se debe usar para interpretar el valor RGB (por ejemplo, sRGB, Adobe RGB, DCI-P3 y BT.2020). De forma predeterminada, las aplicaciones deben asumir el espacio de color sRGB.
Cuando se debe decidir la igualdad de color, las implementaciones, a menos que se documente lo contrario, tratan dos colores como iguales si todos sus valores rojo, verde, azul y alfa difieren, como máximo, en 1e-5
.
Ejemplo (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();
}
// ...
Ejemplo (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;
}
// ...
Ejemplo (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('');
};
// ...
Representación JSON |
---|
{ "red": number, "green": number, "blue": number, "alpha": number } |
Campos | |
---|---|
red |
La cantidad de rojo en el color como un valor en el intervalo [0, 1]. |
green |
La cantidad de verde en el color como un valor en el intervalo [0, 1]. |
blue |
La cantidad de azul en el color como un valor en el intervalo [0, 1]. |
alpha |
La fracción de este color que se debe aplicar al píxel. Es decir, el color del píxel final se define mediante la siguiente ecuación:
Esto significa que el valor 1.0 corresponde a un color sólido, mientras que el valor 0.0 corresponde a un color completamente transparente. Esto utiliza un mensaje de wrapper en lugar de un escalar flotante simple, para que sea posible distinguir entre un valor predeterminado y el valor que no se configura. Si se omite, este objeto de color se representa como un color sólido (como si al valor alfa se le hubiera dado explícitamente un valor de 1.0). |
PlantInfo
Este objeto contiene la información diaria sobre una planta específica.
Representación JSON |
---|
{ "code": enum ( |
Campos | |
---|---|
code |
Es el nombre interno de la planta. Por ejemplo: “COTTONWOOD”. Aquí puede encontrar una lista de todos los códigos disponibles. |
displayName |
Es una representación legible del nombre de la planta. Ejemplo: "Cottonwood". |
indexInfo |
Este objeto contiene datos que representan el valor, la categoría y la descripción específicos del índice de polen. |
plantDescription |
Contiene información general sobre plantas, incluidos detalles sobre su estacionalidad, formas y colores especiales, información sobre reacciones alérgicas cruzadas y fotos de las plantas. |
inSeason |
Indica si la planta está en temporada o no. |
Planta
Muestra una lista de plantas disponibles con una disponibilidad variable en las distintas ubicaciones.
Enumeraciones | |
---|---|
PLANT_UNSPECIFIED |
Código de plantas no especificado. |
ALDER |
El aliso se clasifica como un tipo de polen de árbol. |
ASH |
La ceniza se clasifica como un tipo de polen de árbol. |
BIRCH |
El abedul se clasifica como un tipo de polen de árbol. |
COTTONWOOD |
El algodón se clasifica como un tipo de polen de árbol. |
ELM |
El olmo se clasifica como un tipo de polen de árbol. |
MAPLE |
El arce se clasifica como un tipo de polen de árbol. |
OLIVE |
El olivo se clasifica como un tipo de polen de árbol. |
JUNIPER |
El enebro se clasifica como un tipo de polen de árbol. |
OAK |
El roble se clasifica como un tipo de polen de árbol. |
PINE |
El pino se clasifica como un tipo de polen de árbol. |
CYPRESS_PINE |
El pino ciprés se clasifica como un tipo de polen de árbol. |
HAZEL |
El avellano se clasifica como un tipo de polen de árbol. |
GRAMINALES |
Graminales se clasifica como un tipo de polen de pasto. |
RAGWEED |
La ambrosía se clasifica como un tipo de polen de malezas. |
MUGWORT |
La artemisa se clasifica como un tipo de polen de maleza. |
PlantDescription
Contiene información general sobre plantas, incluidos detalles sobre su estacionalidad, formas y colores especiales, información sobre reacciones alérgicas cruzadas y fotos de las plantas.
Representación JSON |
---|
{
"type": enum ( |
Campos | |
---|---|
type |
El tipo de polen de la planta. Por ejemplo: “GRASS”. Aquí puede encontrar una lista de todos los códigos disponibles. |
family |
Representación legible por humanos del nombre de la familia de plantas. Ejemplo: "Betuláceas (familia del abedul)". |
season |
Lista textual de explicaciones de las estaciones en las que hay actividad de polen. Ejemplo: “Finales del invierno, primavera”. |
specialColors |
Descripción textual de las plantas colores de hojas, corteza, flores o semillas que ayudan a identificar la planta. |
specialShapes |
Descripción textual de las plantas formas de hojas, corteza, flores o semillas que ayudan a identificar la planta. |
crossReaction |
Descripción textual de las plantas de reacción cruzada de polen. Ejemplo: Polen de aliso, avellano, carpe, haya, sauce y roble. |
picture |
Vínculo a la foto de la planta. |
pictureCloseup |
Vínculo a una foto en primer plano de la planta. |