天级预报接口/v2.2

From Caiyun Wiki
Revision as of 05:06, 30 November 2018 by Liuzhonghua (talk | contribs) (返回结构和说明)
Jump to: navigation, search

本文版本:天级预报接口/v2.2,当前稳定版本版本:v2.5,历史版本:v2.2v2.3,和 v2.4

授权与认证

请先至彩云开放平台注册,注册后可以获得 token 。

把您的 token 拼到 API 请求的 URL 中,如

https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/daily.json

其中 TAkhjf8d1nlSlspN 就是一个共用测试 token 。不要把私有token 告诉任何人!

请求样例

示例1如下

https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/daily.json
https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/daily.jsonp?callback=MYCALLBACK
token:这里是测试 token ,即 TAkhjf8d1nlSlspN
经纬度:经度在前,纬度在后,中间用半角逗号隔开,这里是 121.6544,25.1552
返回格式:json 或者 jsonp,jsonp 需提供回调函数名

示例2如下

https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/daily.json?lang=en_US&dailysteps=2&getplacename=True
经纬度附近地址中英文名称 getplacename:True
语言选项 lang:默认为简体中文(zh_CN)、繁体中文(zh_TW)、美式英语(en_US)、英式英语(en_GB)
单位制选项 unit:默认为公制(metric)、科学单位体系(SI) 、英制(imperial)
时区偏移秒数 tzshift:默认为东八区,tzshift=28800;例如:印度东5.5区,tzshift=3600*5.5==19800,v2.3之后版本,返回时区信息,使用秒是为了支持像尼泊尔这样的差 5 小时 45 分钟的地区,它们有非整齐的偏移量
定制返回逐日预报总日数 dailysteps:默认为5天
定制返回变量列表 fields: tmp,vis 默认返回所有变量,【'ast', 'rad', 'prc', 'tmp', 'wnd', 'hmd', 'cld', 'aqi', 'pm25', 'pm25w', 'sky', 'skyh', 'lfi', 'alr', 'pres', 'vis', 'dswrf'】

返回结构和说明

{   status:ok,                                                                                                                              // 返回状态
    api_version:v2.2,                                                                                                                       // 版本号
    api_status:active,                                                                                                                      // 版本号状态
    lang:en_US,                                                                                                                             // 语言
    unit:metric,                                                                                                                            // 单位制
    result:{
            primary:0,
            daily:{
                status:ok,                                                                                                                  // 逐日预报模块返回状态
                temperature:[{date:2018-11-20,max:23.0,avg:20.37,min:20.0},{date:2018-11-21,max:26.0,avg:22.97,min:20.33}],                     // 温度,最大值,平均值,最小值
                pres:[{date:2018-11-20,max:100519.86,avg:100238.05,min:100119.53},{date:2018-11-21,max:100470.46,avg:100214.34,min:99940.79}],  // 气压,最大值,平均值,最小值
                humidity:[{date:2018-11-20,max:0.86,avg:0.84,min:0.76},{date:2018-11-21,max:0.87,avg:0.79,min:0.68}],                           // 相对湿度,最大值,平均值,最小值
                wind:[{   date:2018-11-20,
                            max:{direction:70.43,speed:24.17},                                                                                  // 风速,最大值,平均值,最小值
                            avg:{direction:101.11,speed:21.81},
                            min:{direction:148.08,speed:14.8}},
                        {   date:2018-11-21,
                            max:{direction:19.36,speed:29.25},
                            avg:{direction:24.59,speed:14.73},
                            min:{direction:254.91,speed:2.53}}],
                precipitation:[{date:2018-11-20,max:0.0699,avg:0.0,min:0.0},{date:2018-11-21,max:0.2583,avg:0.0581,min:0.0}],                   // 本地降水强度,最大值,平均值,最小值(单位见表格)

                cloudrate:[{date:2018-11-20,max:0.91,avg:0.62,min:0.18},{date:2018-11-21,max:1.0,avg:0.45,min:0.0}],                            // 云量,最大值,平均值,最小值
                dswrf:[{date:2018-11-20,max:344.1,avg:84.0,min:0.0},{date:2018-11-21,max:601.5,avg:197.7,min:0.0}],                             // 短波辐射,最大值,平均值,最小值
                visibility:[{date:2018-11-20,max:24.1,avg:22.9,min:14.2},{date:2018-11-21,max:24.1,avg:20.4,min:13.7}],                         // 能见度,最大值,平均值,最小值
                
                skycon:[{date:2018-11-20,value:PARTLY_CLOUDY_DAY},{date:2018-11-21,value:PARTLY_CLOUDY_DAY}],                                   // 全天,主要天气现象
                skycon_08h_20h:[{date:2018-11-20,value:PARTLY_CLOUDY_DAY},{date:2018-11-21,value:PARTLY_CLOUDY_DAY}]                            // 白天,主要天气现象
                skycon_20h_32h:[{date:2018-11-20,value:PARTLY_CLOUDY_NIGHT},{date:2018-11-21,value:RAIN}],                                      // 夜晚,主要天气现象

                ultraviolet:[{index:3,desc:Moderat,datetime:2018-11-20},{index:3,desc:Moderat,datetime:2018-11-21}],                            // 午间,紫外线指数和自然语言描述
                comfort:[{index:4,desc:Warm,datetime:2018-11-20},{index:4,desc:Warm,datetime:2018-11-21}],                                      // 全天,舒适度指数和自然语言描述
                carWashing:[{index:3,desc:Less appropriate,datetime:2018-11-20},{index:3,desc:Less appropriate,datetime:2018-11-21}],           // 全天,洗车指数和自然语言描述
                coldRisk:[{index:3,desc:Prone,datetime:2018-11-20},{index:3,desc:Prone,datetime:2018-11-21}],                                   // 全天,感冒指数和自然语言描述
                dressing:[{index:5,desc:Cool,datetime:2018-11-20},{index:3,desc:Hot,datetime:2018-11-21}],                                      // 全天,冷暖指数和自然语言描述(淘汰...)
                
                pm25:[{date:2018-11-20,max:20,avg:15.62,min:8},{date:2018-11-21,max:28,avg:22.29,min:12}],                                      // PM2.5,最大值,平均值,最小值
                aqi:[{date:2018-11-20,max:42,avg:24.08,min:14},{date:2018-11-21,max:40,avg:31.75,min:17}],                                      // AQI(国标),最大值,平均值,最小值

                astro:[{date:2018-11-20,
                        sunset:{time:17:04},
                        sunrise:{time:06:13}},
                       {date:2018-11-21,
                       sunset:{time:17:04},                                                                                                      // 日出时间(当地时区的时刻,tzshift不作用在这个变量)
                       sunrise:{time:06:14}}],                                                                                                   // 日出时间(当地时区的时刻,tzshift不作用在这个变量)
                }
            },
    location:[25.1552,
                121.6544],                                                                                                                       // 经纬度
    placename:Unnamed Road, Wanli District, New Taipei City, Taiwan 207,                                                                         // 经纬度处地址
    server_time:1542698313,                                                                                                                      // 服务器本次返回的utc时间戳
    tzshift:14400,                                                                                                                               // 时区的偏移秒数,如东八区就是 28800 秒
}

变量说明

逐日预报,没有逐日预报的自然语言描述字段
名称 健值路径(jsonpath) 时间粒度 地理范围 注释
温度 $.result.daily.temperature[max,min,avg] 温度 逐日预报 全球 地表2米气温
气压 $.result.daily.pres[max,min,avg] 气压(Pa) 逐日预报 全球 地面气压
相对湿度 $.result.daily.humidity[max,min,avg] 相对湿度(%) 逐日预报 全球 地表2米湿度
风速 $.result.daily.wind.speed[max,min,avg] 风速 逐日预报 全球 地表10米风速
本地降水强度 $.result.daily.precipitation[max,min,avg] 降水强度 逐日预报 全球 本地降水强度
云量 $.result.daily.cloudrate[max,min,avg] 云量(0.0-1.0) 逐日预报 全球 全天总云量
短波辐射 $.result.daily.dswrf[max,min,avg] 向下短波辐射通量(W/M2) 逐日预报 全球 地表向下短波辐射通量
能见度 $.result.daily.visibility[max,min,avg] 能见度 逐日预报 全球 地表水平能见度
全天主要天气现象 $.result.daily.skycon.value 天气状况 逐日预报 全球 全天主要天气现象
白天主要天气现象 $.result.daily.skycon_08h_20h.value 天气状况 逐日预报 全球 白天主要天气现象
夜晚主要天气现象 $.result.daily.skycon_20h_32h.value 天气状况 逐日预报 全球 夜晚主要天气现象
紫外线指数 $.result.daily.ultraviolet.desc 紫外线指数自然语言 逐日预报 全球 紫外线指数及其描述
舒适度指数 $.result.daily.comfort.desc 舒适度指数自然语言 逐日预报 全球 舒适度指数及其描述
洗车指数 $.result.daily.carWashing.desc 舒适度指数自然语言 逐日预报 全球 洗车指数及其描述
感冒指数 $.result.daily.coldRisk.desc 舒适度指数自然语言 逐日预报 全球 感冒指数及其描述
冷热指数 $.result.daily.dressing.desc 舒适度指数自然语言 逐日预报 全球 冷热指数及其描述
PM25浓度 $.result.daily.pm25[max,min,avg] PM25浓度(μg/m3) 逐日预报 大陆、港澳台、暂无印度 PM25浓度
AQI $.result.daily.aqi[max,min,avg] 国标AQI 逐日预报 大陆、港澳台、暂无印度 国标AQI
日出日落 $.result.astro.aqi[sunrise,sunset] 国标AQI 逐日预报 大陆、港澳台、暂无印度 日出日落(当地时区的时刻,tzshift不作用在这个变量)

天气现象

主要天气现象的优先级:降水 > 雾霾aqi大于200 > 大风9米秒 > 多云 > 晴

天气现象 代码
晴(白天) CLEAR_DAY
晴(夜间) CLEAR_NIGHT
多云(白天) PARTLY_CLOUDY_DAY
多云(夜间) PARTLY_CLOUDY_NIGHT
CLOUDY
大风 WIND
雾霾 HAZE
RAIN
SNOW

支持的单位制

1.目前支持的单位制包括:科学单位体系(SI,大写)、英制(imperial)、公制(不带参数&unit默认公制,公制还包括: metric:v1和metric:v2):

单位制
要素
SI(科学单位体系) imperial(英制) metric:v1(公制v1) metric:v2(公制v2) default metric(默认公制)
实况降水量 米/秒(meter/sec) 英寸/小时(in/hr) 雷达降水强度(0~1) 毫米/小时(mm/hr) 雷达降水强度(0~1)
逐分钟降水短临预报降水量 米/秒(meter/sec) 英寸/小时(in/hr) 雷达降水强度(0~1) 毫米/小时(mm/hr) 雷达降水强度(0~1)
逐小时预报降水量 米/秒(meter/sec) 英寸/小时(in/hr) 雷达降水强度(0~1) 毫米/小时(mm/hr) 毫米/小时(mm/hr)
逐日预报降水量 米/秒(meter/sec) 英寸/小时(in/hr) 雷达降水强度(0~1) 毫米/小时(mm/hr) 毫米/小时(mm/hr)
距离 米(m) 英里(mi) 公里(km) 公里(km) 公里(km)
温度 开尔文(K) 华氏度(℉) 摄氏度(℃) 摄氏度(℃) 摄氏度(℃)
气压 帕(Pa) 帕(Pa) 帕(Pa) 帕(Pa) 帕(Pa)
相对湿度 0~1 0~1 0~1 0~1 0~1
风向 从北顺时针(0~360°) 从北顺时针(0~360°) 从北顺时针(0~360°) 从北顺时针(0~360°) 从北顺时针(0~360°)
风速 米/秒(m/s) 英里/小时(mi/hr) 公里/小时(km/hr) 公里/小时(km/hr) 公里/小时(km/hr)
云量 0~1 0~1 0~1 0~1 0~1
能见度 米(m) 英里(mi) 公里(km) 公里(km) 公里(km)

unit=metric:v1时,所有类型中precipitation的单位都是:雷达降水强度(0~1)

unit=metric:v2时,所有类型中precipitation的单位都是:毫米/小时(mm/hr)

2.判断降水等级:

  • 带参数&unit=metric:v1,请求实况、分钟级、逐小时和逐日降水强度,单位都为雷达降水强度(0 ~ 1);
  • 雷达降水强度(0 ~ 1)判断降水等级:0.03~0.25 小雨(雪), 0.25~0.35 中雨(雪), 0.35~0.48大雨(雪), >0.48 暴雨(雪);
  • v2.4版本中,本地存在降水时,可以根据skycon(存在于realtime、hourly、daily字段),和skycon_08h_20h和skycon_20h_32h(存在于daily字段),中的:LIGHT_RAIN, MODERATE_RAIN, HEAVY_RAIN, STORM_RAIN(LIGHT_SNOW, MODERATE_SNOW, HEAVY_SNOW,STORM_SNOW)直接获取降水等级
  • 大暴雨(雪)和特大暴雨(雪),需要根据24小时累计公制降水量(mm/24hr)来判断,研发中...