Method: forecast.lookup

65개 이상의 국가에서 최대 5일간 꽃가루 정보를 최대 1km 해상도로 반환합니다.

HTTP 요청

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

URL은 gRPC 트랜스코딩 구문을 사용합니다.

쿼리 매개변수

매개변수
location

object (LatLng)

필수 항목입니다. API가 꽃가루 예보 데이터를 검색하는 위도 및 경도입니다.

days

integer

필수 항목입니다. 요청할 예측 일수를 나타내는 숫자입니다 (최솟값 1, 최댓값은 5).

pageSize

integer

선택사항입니다. 페이지당 반환할 일일 정보 레코드의 최대 개수입니다. 기본값 및 최댓값은 5이며, 이는 5일간의 데이터를 나타냅니다.

pageToken

string

선택사항입니다. 이전 일일 호출에서 수신된 페이지 토큰입니다. 후속 페이지를 검색하는 데 사용됩니다.

페이지 토큰의 값을 제공할 때 제공된 다른 모든 요청 매개변수는 페이지 토큰을 제공한 이전 호출과 일치해야 합니다.

languageCode

string

선택사항입니다. 클라이언트가 응답의 언어를 선택할 수 있도록 합니다. 해당 언어에 대한 데이터를 제공할 수 없는 경우 API는 가장 근접한 일치 항목을 사용합니다. 허용되는 값은 IETF BCP-47 표준을 따릅니다. 기본값은 'en'입니다.

plantsDescription

boolean

선택사항입니다. 계절성에 관한 세부정보, 특별한 모양과 색상, 알레르기 교차 반응에 관한 정보, 식물 사진 등 식물에 관한 일반적인 정보를 포함합니다. 기본값은 'true'입니다.

요청 본문

요청 본문은 비어 있어야 합니다.

응답 본문

성공한 경우 응답 본문은 다음과 같은 구조의 데이터를 포함합니다.

JSON 표현
{
  "regionCode": string,
  "dailyInfo": [
    {
      object (DayInfo)
    }
  ],
  "nextPageToken": string
}
필드
regionCode

string

요청에 제공된 위치에 해당하는 국가/지역의 ISO_3166-1 alpha-2 코드입니다. 요청에 제공된 위치가 분쟁 지역 내에 있는 경우 응답에서 이 필드가 생략될 수 있습니다.

dailyInfo[]

object (DayInfo)

필수 항목입니다. 이 객체에는 요청된 각 날짜에 대한 일일 예보 정보가 포함됩니다.

nextPageToken

string

선택사항입니다. 다음 페이지를 검색하기 위한 토큰입니다.

승인 범위

다음 OAuth 범위가 필요합니다.

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

자세한 내용은 OAuth 2.0 개요를 참고하세요.

LatLng

위도/경도 쌍을 나타내는 객체로 위도(도)와 경도(도)를 나타내는 double의 쌍으로 표현됩니다. 달리 명시되지 않는 한 이 객체는 WGS84 표준을 준수해야 합니다. 값은 정규화된 범위 내에 있어야 합니다.

JSON 표현
{
  "latitude": number,
  "longitude": number
}
필드
latitude

number

위도입니다. 범위는 [-90.0, +90.0]입니다.

longitude

number

경도입니다. 범위는 [-180.0, +180.0]입니다.

DayInfo

이 객체에는 요청된 각 날짜에 대한 일일 예보 정보가 포함됩니다.

JSON 표현
{
  "date": {
    object (Date)
  },
  "pollenTypeInfo": [
    {
      object (PollenTypeInfo)
    }
  ],
  "plantInfo": [
    {
      object (PlantInfo)
    }
  ]
}
필드
date

object (Date)

꽃가루 예보 데이터가 표시되는 날짜입니다(UTC 기준).

pollenTypeInfo[]

object (PollenTypeInfo)

이 목록에는 요청에 지정된 위치에 영향을 주는 꽃가루 유형 (GRASS, WEED, TREE)이 포함됩니다.

plantInfo[]

object (PlantInfo)

이 목록에는 요청에 지정된 위치에 영향을 주는 꽃가루 종류가 최대 15개까지 포함됩니다.

날짜

생일과 같은 전체 또는 부분 달력 날짜를 나타냅니다. 시간과 시간대는 아무 곳으로 지정되거나 중요하지 않습니다. 날짜는 그레고리력을 기준으로 합니다. 이는 다음 중 하나를 나타낼 수 있습니다.

  • 연도, 월, 일 값이 0이 아닌 전체 날짜
  • 월과 일, 연도는 0(예: 기념일)
  • 연도만, 월과 일은 0
  • 연도와 월, 일은 0(예: 신용카드 만료일)

관련 유형:

JSON 표현
{
  "year": integer,
  "month": integer,
  "day": integer
}
필드
year

integer

날짜의 연도입니다. 1~9999 사이여야 하며, 연도 없이 날짜를 지정하려면 0이어야 합니다.

month

integer

연도의 월입니다. 1~12 사이여야 하며, 월과 일 없이 연도를 지정하려면 0이어야 합니다.

day

integer

월의 일입니다. 1~31 사이여야 하고 해당 연도 및 월에 유효해야 합니다. 또는 연도만 지정하거나 일이 중요하지 않아 연도와 월을 지정하려면 0이어야 합니다.

PollenTypeInfo

이 객체에는 꽃가루 유형 색인과 특정 꽃가루 유형에 관한 건강 권장사항 정보가 포함됩니다.

JSON 표현
{
  "code": enum (PollenType),
  "displayName": string,
  "indexInfo": {
    object (IndexInfo)
  },
  "healthRecommendations": [
    string
  ],
  "inSeason": boolean
}
필드
code

enum (PollenType)

꽃가루 유형의 코드 이름입니다. 예: 'GRASS'

displayName

string

꽃가루 유형 이름을 사람이 읽을 수 있는 표현으로 나타냅니다. 예: '잔디'

indexInfo

object (IndexInfo)

꽃가루 유형의 세계 꽃가루 지수 (UPI) 데이터가 포함되어 있습니다.

healthRecommendations[]

string

현재 꽃가루 수준을 기준으로 건강 인사이트와 관련된 설명 텍스트 목록입니다.

inSeason

boolean

식물이 제철인지 여부 표시

PollenType

꽃가루 유형 코드

열거형
POLLEN_TYPE_UNSPECIFIED 지정되지 않은 식물 유형입니다.
GRASS 풀 꽃가루 유형입니다.
TREE 나무 꽃가루 유형입니다.
WEED 잡초 꽃가루 유형.

IndexInfo

이 객체에는 특정 꽃가루 색인 값, 카테고리 및 설명을 나타내는 데이터가 포함됩니다.

JSON 표현
{
  "code": enum (Index),
  "displayName": string,
  "category": string,
  "indexDescription": string,
  "color": {
    object (Color)
  },
  "value": integer
}
필드
code

enum (Index)

색인의 코드입니다. 이 필드는 공백 대신 스네이크 사례를 사용하여 프로그래밍 목적의 색인을 나타냅니다. 예: 'UPI'.

displayName

string

사람이 읽을 수 있는 색인 이름 표현입니다. 예: '세계 꽃가루 지수'

category

string

색인 숫자 점수 해석의 텍스트 분류입니다. 이 색인은 6가지 카테고리로 구성됩니다.

  • 0: '없음'
  • 1: '매우 낮음'
  • 2: '낮음'
  • 3: '보통'
  • 4: '높음'
  • 5: '매우 높음
indexDescription

string

현재 색인 수준에 대한 텍스트 설명입니다.

color

object (Color)

꽃가루 지수 숫자 점수를 나타내는 데 사용되는 색상입니다.

value

integer

색인의 숫자 점수입니다. 숫자 범위는 0에서 5 사이입니다.

색인

색인 코드

열거형
INDEX_UNSPECIFIED 색인이 지정되지 않았습니다.
UPI 세계 꽃가루 지수

색상

RGBA 색상 공간의 색상을 나타냅니다. 이 표현은 간결성을 통해 다양한 언어에서 색상 표현과 색상 표현 간에 간단히 변환할 수 있도록 설계되었습니다. 예를 들어 이 표현의 필드는 Java에서 java.awt.Color의 생성자에 쉽게 제공될 수 있습니다. iOS에서 UIColor의 +colorWithRed:green:blue:alpha 메서드에 쉽게 제공될 수도 있습니다. 그리고 약간의 작업만 하면 JavaScript에서 CSS rgba() 문자열로 쉽게 형식을 지정할 수 있습니다.

이 참조 페이지에는 RGB 값(예: sRGB, Adobe RGB, DCI-P3, BT.2020)을 해석하는 데 사용해야 하는 절대 색공간에 대한 정보가 없습니다. 기본적으로 애플리케이션은 sRGB 색공간을 가정해야 합니다.

색상 동등성을 결정해야 하는 경우 달리 문서화되지 않는 한 구현은 모든 빨간색, 녹색, 파란색, 알파 값이 각각 최대 1e-5만큼 차이가 나는 경우 두 색상을 동일한 것으로 취급합니다.

예시(자바):

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

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

예시(자바스크립트):

// ...

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

// ...
JSON 표현
{
  "red": number,
  "green": number,
  "blue": number,
  "alpha": number
}
필드
red

number

[0, 1] 간격의 값으로 표시되는 색상의 빨간색 양입니다.

green

number

[0, 1] 간격의 값으로 표시되는 색상의 녹색 양입니다.

blue

number

[0, 1] 간격의 값으로 표시되는 색상의 파란색 양입니다.

alpha

number

픽셀에 적용해야 하는 이 색상의 비율입니다. 즉, 최종 픽셀 색상은 등식으로 정의됩니다.

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

즉, 1.0 값은 단색에 해당하는 반면 0.0 값은 완전히 투명한 색상에 해당합니다. 이 옵션은 단순한 부동 소수점 스칼라 대신 래퍼 메시지를 사용하므로 기본값과 설정되지 않은 값을 구분할 수 있습니다. 생략하면 이 색상 객체가 단색으로 렌더링됩니다 (알파 값에 1.0 값이 명시적으로 지정된 것처럼).

PlantInfo

이 객체에는 특정 식물에 관한 일일 정보가 포함됩니다.

JSON 표현
{
  "code": enum (Plant),
  "displayName": string,
  "indexInfo": {
    object (IndexInfo)
  },
  "plantDescription": {
    object (PlantDescription)
  },
  "inSeason": boolean
}
필드
code

enum (Plant)

식물 코드 이름입니다. 예: 'COTTONWOOD' 사용 가능한 모든 코드의 목록은 여기에서 확인할 수 있습니다.

displayName

string

사람이 읽을 수 있는 식물 이름 표현입니다. 예: '미루'

indexInfo

object (IndexInfo)

이 객체에는 특정 꽃가루 색인 값, 카테고리 및 설명을 나타내는 데이터가 포함됩니다.

plantDescription

object (PlantDescription)

계절성에 관한 세부정보, 특별한 모양과 색상, 알레르기 교차 반응에 관한 정보, 식물 사진 등 식물에 관한 일반적인 정보를 포함합니다.

inSeason

boolean

식물이 제철인지 여부를 나타냅니다.

식물

위치별로 이용 가능성이 다른 식물을 나열합니다.

열거형
PLANT_UNSPECIFIED 지정되지 않은 식물 코드입니다.
ALDER 오리나무는 나무 꽃가루 유형으로 분류됩니다.
ASH 물푸레나무는 나무 꽃가루 유형으로 분류됩니다.
BIRCH 자작나무는 나무 꽃가루 유형으로 분류됩니다.
COTTONWOOD 미루나무는 나무 꽃가루 유형으로 분류됩니다.
ELM 느릅나무는 나무 꽃가루 유형으로 분류됩니다.
MAPLE 단풍나무는 나무 꽃가루 유형으로 분류됩니다.
OLIVE 올리브는 나무 꽃가루 유형으로 분류됩니다.
JUNIPER 향나무는 나무 꽃가루 유형으로 분류됩니다.
OAK 참나무는 나무 꽃가루 유형으로 분류됩니다.
PINE 소나무는 나무 꽃가루 유형으로 분류됩니다.
CYPRESS_PINE 편백나무는 나무 꽃가루 유형으로 분류됩니다.
HAZEL 헤이즐은 나무 꽃가루 유형으로 분류됩니다.
GRAMINALES 그래미널은 풀 꽃가루 유형으로 분류됩니다.
RAGWEED 돼지풀은 잡초 꽃가루 유형으로 분류됩니다.
MUGWORT 쑥은 잡초 꽃가루 유형으로 분류됩니다.

PlantDescription

계절성에 관한 세부정보, 특별한 모양과 색상, 알레르기 교차 반응에 관한 정보, 식물 사진 등 식물에 관한 일반적인 정보를 포함합니다.

JSON 표현
{
  "type": enum (PollenType),
  "family": string,
  "season": string,
  "specialColors": string,
  "specialShapes": string,
  "crossReaction": string,
  "picture": string,
  "pictureCloseup": string
}
필드
type

enum (PollenType)

식물의 꽃가루 유형입니다. 예: 'GRASS'. 사용 가능한 모든 코드의 목록은 여기에서 확인할 수 있습니다.

family

string

사람이 읽을 수 있는 방식으로 표현된 식물군 이름입니다. 예: '자작나무과 식물'

season

string

꽃가루가 생기는 계절에 대한 텍스트 설명입니다. 예: '늦겨울, 봄'

specialColors

string

식물에 대한 텍스트 설명 나뭇잎, 나무껍질, 꽃, 씨앗의 색상 등 식물을 식별하는 데 도움이 됩니다.

specialShapes

string

식물에 대한 텍스트 설명 식물을 식별하는 데 도움이 되는 나뭇잎, 나무껍질, 꽃 또는 씨의 모양입니다.

crossReaction

string

꽃가루 교차 반응 식물에 관한 텍스트 설명입니다. 예: 오리나무, 헤이즐나무, 서어나무, 너도밤나무, 버드나무, 참나무 꽃가루가 있습니다.

picture

string

식물 사진 링크

pictureCloseup

string

식물의 근접 사진 링크