- 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
Devuelve hasta 5 días de información diaria sobre el 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 desde las que la API busca datos sobre el pronóstico del polen. |
days |
Obligatorio. Es un número que indica cuántos días de previsión se solicitarán (el valor mínimo es 1 y el máximo es 5). |
pageSize |
Opcional. La cantidad máxima de registros de información diaria que se muestran por página. El valor predeterminado y máximo es 5 (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 se proporciona 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. |
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 alfa-2 del país o la región que corresponde a la ubicación proporcionada en la solicitud. Este campo podría omitirse de 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 de previsión diaria para cada día solicitado. |
nextPageToken |
Opcional. El token para recuperar la página siguiente. |
Permisos 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 de previsión diaria para cada día solicitado.
Representación JSON |
---|
{ "date": { object ( |
Campos | |
---|---|
date |
Es la fecha en UTC en la que se representan los datos del pronóstico del polen. |
pollenTypeInfo[] |
Esta lista incluirá (hasta) tres tipos de polen (hierba, maleza y árbol) que afectan 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 no son significativas. La fecha está relacionada con el calendario gregoriano. Esto puede representar una de las siguientes opciones:
- Una fecha completa con valores de año, mes y día que no sean cero
- Es un mes y un día con un año cero (por ejemplo, un aniversario).
- Un año 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 encontrarse entre 1 y 9999, o bien entre 0 para especificar una fecha sin año. |
month |
Mes del año Debe encontrarse entre 1 y 12, o bien 0 para especificar un año sin mes ni día. |
day |
Día del mes. Debe encontrarse entre 1 y 31 y ser válido para el año y el mes, o bien 0 para especificar solo un año o un año y mes en los que el día no sea importante. |
PollenTypeInfo
Este objeto contiene el índice del tipo de polen y la información de recomendaciones sanitarias sobre un tipo específico de polen.
Representación JSON |
---|
{ "code": enum ( |
Campos | |
---|---|
code |
Es el nombre interno del tipo de polen. Por ejemplo: “GRASS”. |
displayName |
Una representación legible del tipo de polen. Ejemplo: "Grasa". |
indexInfo |
Contiene los datos del Índice Universal de Polen (IUP) para el tipo de polen. |
healthRecommendations[] |
Lista textual de explicaciones relacionadas con las estadísticas de salud basadas en los niveles actuales de polen. |
inSeason |
Indicar si la planta está en temporada o no. |
PollenType
Código de tipo de polen
Enumeradores | |
---|---|
POLLEN_TYPE_UNSPECIFIED |
Tipo de planta no especificado. |
GRASS |
Tipo de polen de hierba. |
TREE |
Tipo de polen de árbol. |
WEED |
Tipo de polen de maleza. |
IndexInfo
Este objeto contiene datos que representan el valor, la categoría y la descripción del índice de polen específico.
Representación JSON |
---|
{ "code": enum ( |
Campos | |
---|---|
code |
El código del índice. Este campo representa el índice para fines de programación utilizando snake case en lugar de espacios. Ejemplo: “UPI”. |
displayName |
Una representación legible del nombre del índice. Ejemplo: "Índice universal de polen". |
category |
Clasificación de texto de la interpretación de puntuaciones numéricas de índices El índice consta de seis categorías:
|
indexDescription |
Explicación textual del nivel actual del índice. |
color |
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
Enumeradores | |
---|---|
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 representaciones de color en varios lenguajes sobre la compactación. Por ejemplo, los campos de esta representación se pueden proporcionar de manera trivial al constructor de java.awt.Color
en Java; también se pueden proporcionar de manera trivial al método +colorWithRed:green:blue:alpha
de UIColor en iOS y, con un poco de trabajo, se puede formatear fácilmente en una cadena rgba()
de CSS 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 adoptar 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 de rojo, verde, azul y alfa difieren en un 1e-5
como máximo.
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 asignado 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í encontrará una lista de todos los códigos disponibles. |
displayName |
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 del índice de polen específico. |
plantDescription |
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. |
inSeason |
Indicación de que la planta está en temporada o no. |
Planta
Muestra una lista de las plantas disponibles con una disponibilidad variable según la ubicación.
Enumeradores | |
---|---|
PLANT_UNSPECIFIED |
Código de planta 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 algodonero 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 es un tipo de polen de árbol clasificado. |
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 de ciprés se clasifica como un tipo de polen de árbol. |
HAZEL |
El avellano se clasifica como un tipo de polen de árbol. |
GRAMINALES |
Los graminas se clasifican como un tipo de polen de hierba. |
RAGWEED |
La ambrosía se clasifica como un tipo de polen de maleza. |
MUGWORT |
La artemisa se clasifica como un tipo de polen de maleza. |
PlantDescription
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.
Representación JSON |
---|
{
"type": enum ( |
Campos | |
---|---|
type |
Tipo de polen de la planta. Por ejemplo: “GRASS”. Aquí encontrará una lista de todos los códigos disponibles. |
family |
Una representación legible del nombre de la familia de plantas. Ejemplo: "Betuláceas (la familia del abedul)". |
season |
Lista textual de explicaciones de las estaciones en las que el polen está activo. Ejemplo: "Finales del invierno, primavera". |
specialColors |
Descripción textual de los colores de las hojas, la corteza, las flores o las semillas de las plantas que ayudan a identificarlas. |
specialShapes |
Descripción textual de las formas de las hojas, la corteza, las flores o las semillas de las plantas que ayudan a identificarlas. |
crossReaction |
Descripción textual de plantas de reacción cruzada del polen. Ejemplo: Polen de aliso, avellano, carpe, haya, sauce y roble. |
picture |
Enlace a la foto de la planta. |
pictureCloseup |
Vínculo a una foto en primer plano de la planta. |