微博API
(→API更新日志) |
(→API更新日志) |
||
第796行: | 第796行: | ||
− | '''2013-06- | + | '''2013-06-24''' |
自2013年7月2日起,微博开放平台将对用户关系读取、微博内容读取类接口进行升级;为保证您的线上应用正常运营,请在7月2日前对以下接口进行升级;本次升级对微博类客户端和合规的应用没有影响。升级中,遇到任何问题,请私信[http://e.weibo.com/openapi @微博开放平台],感谢您的理解支持!具体调整接口如下: | 自2013年7月2日起,微博开放平台将对用户关系读取、微博内容读取类接口进行升级;为保证您的线上应用正常运营,请在7月2日前对以下接口进行升级;本次升级对微博类客户端和合规的应用没有影响。升级中,遇到任何问题,请私信[http://e.weibo.com/openapi @微博开放平台],感谢您的理解支持!具体调整接口如下: |
2013年6月25日 (二) 08:36的版本
目录 |
API文档
注:点击查看 V1到V2接口迁移指南,查看 旧版接口文档
标识为 的接口为高级权限接口,需要申请才可以调用,申请方式请见 高级接口申请
标识为 的接口为需要单独向用户提出SCOPE授权请求的接口,用户单独授权后才可以调用,具体使用方法请见 scope
评论 | ||
---|---|---|
读取接口 | comments/show | 获取某条微博的评论列表 |
comments/by_me | 我发出的评论列表 | |
comments/to_me | 我收到的评论列表 | |
comments/timeline | 获取用户发送及收到的评论列表 | |
comments/mentions | 获取@到我的评论 | |
comments/show_batch | 批量获取评论内容 | |
写入接口 | comments/create | 评论一条微博 |
comments/destroy | 删除一条评论 | |
comments/destroy_batch | 批量删除评论 | |
comments/reply | 回复一条评论 |
用户 | ||
---|---|---|
读取接口 | users/show | 获取用户信息 |
users/domain_show | 通过个性域名获取用户信息 | |
users/counts | 批量获取用户的粉丝数、关注数、微博数 |
置顶微博 | ||
---|---|---|
读取接口 | users/get_top_status | 获取用户主页置顶微博 |
写入接口 | users/set_top_status | 设置用户主页置顶微博 |
users/cancel_top_status | 取消用户主页置顶微博 |
关系 | ||
---|---|---|
关注读取接口 | friendships/friends | 获取用户的关注列表 |
friendships/friends/remark_batch | 批量获取当前登录用户的关注人的备注信息 | |
friendships/friends/in_common | 获取共同关注人列表 | |
friendships/friends/bilateral | 获取双向关注列表 | |
friendships/friends/bilateral/ids | 获取双向关注UID列表 | |
friendships/friends/ids | 获取用户关注对象UID列表 | |
粉丝读取接口 | friendships/followers | 获取用户粉丝列表 |
friendships/followers/ids | 获取用户粉丝UID列表 | |
friendships/followers/active | 获取用户优质粉丝列表 | |
关系链读取接口 | friendships/friends_chain/followers | 获取我的关注人中关注了指定用户的人 |
关系读取接口 | friendships/show | 获取两个用户关系的详细情况 |
写入接口 | friendships/create | 关注某用户 |
friendships/destroy | 取消关注某用户 | |
friendships/followers/destroy | 移除当前登录用户的粉丝 | |
friendships/remark/update | 更新关注人备注 |
好友分组 | ||
---|---|---|
读取接口 | friendships/groups | 获取当前登陆用户好友分组列表 |
friendships/groups/timeline | 获取某一好友分组的微博列表 | |
friendships/groups/timeline/ids | 获取某一好友分组的微博ID列表 | |
friendships/groups/members | 获取某一好友分组下的成员列表 | |
friendships/groups/members/ids | 获取某一好友分组下的成员列表的ID | |
friendships/groups/members/description | 批量取好友分组成员的分组说明 | |
friendships/groups/is_member | 判断某个用户是否是指定好友分组内的成员 | |
friendships/groups/listed | 批量获取某些用户在指定用户的好友分组中的收录信息 | |
friendships/groups/show | 获取某个分组的详细信息 | |
friendships/groups/show_batch | 批量获取好友分组的详细信息 | |
写入接口 | friendships/groups/create | 创建好友分组 |
friendships/groups/update | 更新好友分组 | |
friendships/groups/destroy | 删除好友分组 | |
friendships/groups/members/add | 添加关注用户到好友分组 | |
friendships/groups/members/add_batch | 批量添加用户到好友分组 | |
friendships/groups/members/update | 更新好友分组中成员的分组说明 | |
friendships/groups/members/destroy | 删除好友分组内的关注用户 | |
friendships/groups/order | 调整当前登录用户的好友分组顺序 |
账号 | ||
---|---|---|
读取接口 | account/get_privacy | 获取隐私设置信息 |
account/profile/school_list | 获取所有学校列表 | |
account/rate_limit_status | 获取当前用户API访问频率限制 | |
account/profile/email | 获取用户的联系邮箱 | |
account/get_uid | OAuth授权之后获取用户UID(作用相当于旧版接口的 account/verify_credentials) | |
写入接口 | account/end_session | 退出登录 |
收藏 | ||
---|---|---|
读取接口 | favorites | 获取当前用户的收藏列表 |
favorites/ids | 获取当前用户的收藏列表的ID | |
favorites/show | 获取单条收藏信息 | |
favorites/by_tags | 获取当前用户某个标签下的收藏列表 | |
favorites/tags | 当前登录用户的收藏标签列表 | |
favorites/by_tags/ids | 获取当前用户某个标签下的收藏列表的ID | |
写入接口 | favorites/create | 添加收藏 |
favorites/destroy | 删除收藏 | |
favorites/destroy_batch | 批量删除收藏 | |
favorites/tags/update | 更新收藏标签 | |
favorites/tags/update_batch | 更新当前用户所有收藏下的指定标签 | |
favorites/tags/destroy_batch | 删除当前用户所有收藏下的指定标签 |
话题 | ||
---|---|---|
读取接口 | trends | 获取某人话题 |
trends/is_follow | 是否关注某话题 | |
trends/hourly | 返回最近一小时内的热门话题 | |
trends/daily | 返回最近一天内的热门话题 | |
trends/weekly | 返回最近一周内的热门话题 | |
写入接口 | trends/follow | 关注某话题 |
trends/destroy | 取消关注的某一个话题 |
微博标签 | ||
---|---|---|
读取接口 | statuses/tags | 获取用户的微博标签列表 |
statuses/tags/show_batch | 批量获取微博标签 | |
statuses/tag_timeline/ids | 获取用户某个标签的微博ID列表 | |
写入接口 | statuses/tags/create | 创建标签 |
statuses/tags/destroy | 删除标签 | |
statuses/tags/update | 更新标签 | |
statuses/update_tags | 更新某个微博的标签 |
用户标签 | ||
---|---|---|
读取接口 | tags | 返回指定用户的标签列表 |
tags/tags_batch | 批量获取用户标签 | |
tags/suggestions | 返回系统推荐的标签列表 | |
写入接口 | tags/create | 添加用户标签 |
tags/destroy | 删除用户标签 | |
tags/destroy_batch | 批量删除用户标签 |
注册 | ||
---|---|---|
读取接口 | register/verify_nickname | 验证昵称是否可用 |
搜索 | ||
---|---|---|
搜索联想接口 | search/suggestions/users | 搜用户搜索建议 |
search/suggestions/schools | 搜学校搜索建议 | |
search/suggestions/companies | 搜公司搜索建议 | |
search/suggestions/apps | 搜应用搜索建议 | |
search/suggestions/at_users | @联想搜索 | |
搜索话题接口 | search/topics | 搜索某一话题下的微博 |
推荐 | ||
---|---|---|
读取接口 | suggestions/users/hot | 获取系统推荐用户 |
suggestions/users/may_interested | 获取用户可能感兴趣的人 | |
suggestions/users/by_status | 根据微博内容推荐用户 | |
suggestions/statuses/reorder | 主Feed微博按兴趣推荐排序 | |
suggestions/statuses/reorder/ids | 主Feed微博按兴趣推荐排序的微博ID | |
suggestions/favorites/hot | 热门收藏 | |
写入接口 | suggestions/users/not_interested | 不感兴趣的人 |
提醒 | ||
---|---|---|
读取接口 | remind/unread_count | 获取某个用户的各种消息未读数 |
写入接口 | remind/set_count | 对当前登录用户某一种消息未读数进行清零 |
短链 | ||
---|---|---|
转换接口 | short_url/shorten | 长链转短链 |
short_url/expand | 短链转长链 | |
数据接口 | short_url/share/counts | 获取短链接在微博上的微博分享数 |
short_url/share/statuses | 获取包含指定单个短链接的最新微博内容 | |
short_url/comment/counts | 获取短链接在微博上的微博评论数 | |
short_url/comment/comments | 获取包含指定单个短链接的最新微博评论 |
通知 | ||
---|---|---|
发送接口 | notification/send | 给一个或多个用户发送一条新的状态通知 |
公共服务 | ||
---|---|---|
读取接口 | common/code_to_location | 通过地址编码获取地址名称 |
common/get_city | 获取城市列表 | |
common/get_province | 获取省份列表 | |
common/get_country | 获取国家列表 | |
common/get_timezone | 获取时区配置表 |
位置服务(开发指南) | ||
---|---|---|
动态读取接口 | place/public_timeline | 获取公共的位置动态 |
place/friends_timeline | 获取用户好友的位置动态 | |
place/user_timeline | 获取某个用户的位置动态 | |
place/poi_timeline | 获取某个位置地点的动态 | |
place/nearby_timeline | 获取某个位置周边的动态 | |
place/statuses/show | 获取动态的详情 | |
用户读取接口 | place/users/show | 获取LBS位置服务内的用户信息 |
place/users/checkins | 获取用户签到过的地点列表 | |
place/users/photos | 获取用户的照片列表 | |
place/users/tips | 获取用户的点评列表 | |
place/users/todos | 获取用户的todo列表 | |
地点读取接口 | place/pois/show | 获取地点详情 |
place/pois/users | 获取在某个地点签到的人的列表 | |
place/pois/tips | 获取地点点评列表 | |
place/pois/photos | 获取地点照片列表 | |
place/pois/search | 按省市查询地点 | |
place/pois/category | 获取地点分类 | |
附近读取接口 | place/nearby/pois | 获取附近地点 |
place/nearby/users | 获取附近发位置微博的人 | |
place/nearby/photos | 获取附近照片 | |
place/nearby_users/list | 获取附近的人 | |
地点写入接口 | place/pois/create | 添加地点 |
place/pois/add_checkin | 签到 | |
place/pois/add_photo | 添加照片 | |
place/pois/add_tip | 添加点评 | |
place/pois/add_todo | 添加todo | |
附近写入接口 | place/nearby_users/create | 用户添加自己的位置 |
place/nearby_users/destroy | 用户删除自己的位置 |
地理信息 | ||
---|---|---|
基础位置读取接口 | location/base/get_map_image | 生成一张静态的地图图片 |
坐标转换接口 | location/geo/ip_to_geo | 根据IP地址返回地理信息坐标 |
location/geo/address_to_geo | 根据实际地址返回地理信息坐标 | |
location/geo/geo_to_address | 根据地理信息坐标返回实际地址 | |
location/geo/gps_to_offset | 根据GPS坐标获取偏移后的坐标 | |
location/geo/is_domestic | 判断地理信息坐标是否是国内坐标 | |
POI数据搜索接口 | location/pois/search/by_location | 根据关键词按地址位置获取POI点的信息 |
location/pois/search/by_geo | 根据关键词按坐标点范围获取POI点的信息 | |
location/pois/search/by_area | 根据关键词按矩形区域获取POI点的信息 | |
POI数据读写接口 | location/pois/show_batch | 批量获取POI点的信息 |
location/pois/add | 提交一个新增的POI点信息 | |
移动服务读取接口 | location/mobile/get_location | 根据移动基站WIFI等数据获取当前位置信息 |
交通路线读取接口 | location/line/drive_route | 根据起点与终点数据查询自驾车路线信息 |
location/line/bus_route | 根据起点与终点数据查询公交乘坐路线信息 | |
location/line/bus_line | 根据关键词查询公交线路信息 | |
location/line/bus_station | 根据关键词查询公交站点信息 | |
地理信息字段说明 | location/citycode | 城市代码对应表 |
location/citycode_bus | 公交城市代码表 | |
location/category | 分类代码对应表 | |
location/error2 | 地理位置信息接口错误代码及解释 |
OAuth2(开发指南) | ||
---|---|---|
请求授权 | oauth2/authorize | 请求用户授权Token |
获取授权 | oauth2/access_token | 获取授权过的Access Token |
授权查询 | oauth2/get_token_info | 查询用户access_token的授权相关信息 |
替换授权 | oauth2/get_oauth2_token | OAuth1.0的Access Token更换至OAuth2.0的Access Token |
授权回收 | OAuth2/revokeoauth2 | 授权回收接口,帮助开发者主动取消用户的授权 |
API更新日志
微博开放平台,通常会在每周二晚上上线新的代码到线上环境。
我们会通过微博开放平台的官方微博、问答系统、博客、甚至邮件,通知开发者任何重要的变更,确保开发者了解这些变动及其所带来的影响。同时,我们知道任何细微的变化也可能会影响到开发者及他们的应用,所以我们在下面提供一个不定期更新日志,以便开发者查询。
2013-06-24
自2013年7月2日起,微博开放平台将对用户关系读取、微博内容读取类接口进行升级;为保证您的线上应用正常运营,请在7月2日前对以下接口进行升级;本次升级对微博类客户端和合规的应用没有影响。升级中,遇到任何问题,请私信@微博开放平台,感谢您的理解支持!具体调整接口如下:
获取当前登录用户发布的微博消息列表(2/statuses/user_timeline )
获取当前登录用户发布的微博消息ID列表(2/statuses/user_timeline/ids )
获取用户的关注列表(2/riendships/friends)
获取共同关注人列表(2/friendships/friends/in_common)
获取双向关注列表(2/friendships/friends/bilateral)
获取双向关注UID列表(2/friendships/friends/bilateral/ids)
获取用户关注对象UID列表(2/friendships/friends/ids)
获取用户粉丝列表(2/friendships/followers)
获取用户粉丝UID列表(2/friendships/followers/ids)
获取用户优质粉丝列表(2/friendships/followers/active)
2013-03-18
发布授权回收接口,帮助开发者主动取消用户的授权。详情见:http://t.cn/zYeuB0k
2013-02-25
微博读取接口新增批量获取指定的一批用户的微博列表高级接口(2/statuses/timeline_batch)。
微博读取接口新增根据微博ID批量获取微博信息高级接口(2/statuses/show_batch)。
关注读取接口新增批量获取当前登录用户的关注人的备注信息高级接口(2/friendships/friends/remark_batch)。
关系写入接口移除当前登录用户的粉丝高级接口(2/friendships/followers/destroy)。
2013-01-23
账号读取接口新增获取用户联系邮箱接口(2/account/profile/email),用于查询授权用户的联系邮箱。
该接口在调用前需用户在Scope授权页同意,才能被用户正常调用。scope详情见:http://t.cn/zl3cCxa
2012-12-20
即日起,微博开放平台将禁止“累计使用人数小于500,000”的应用使用V1接口。迁移指南:http://t.cn/zWTaigK
2012-12-18
获取微博精选推荐接口(2/suggestions/statuses/hot),由于数据维护问题,已经下线,不再提供。
2012-11-07
即日起,使用开发者帐号授权自己的应用的授权(token)有效期延长为5年。
发布授权查询接口(Oauth2/get_token_info),用于应用查询已授权用户授权时间、过期时间和scope权限等授权相关信息。
2012-11-06
热门微博转发榜及评论榜相关接口,由于数据维护问题,已经下线,不再提供。包含:
2/statuses/hot/comments weekly
2012-10-31
发布地图引擎接口,包含核心类、基础类、覆盖物类多个可用函数。详情见:http://t.cn/zOZ2top
2012-10-26
发布好友分组读写高级接口,共18个。详情见:http://t.cn/zl3KL83
发布微博标签读写高级接口,共7个。详情见:http://t.cn/zl3KqP9
发布置顶微博读写高级接口,共3个。详情见:http://t.cn/zl3KtJD
微博读取接口新增定向微博高级接口,共2个。详情见:http://t.cn/SvqfWa
微博写入接口新增屏蔽微博高级接口,共2个。详情见:http://t.cn/SvqfWa
用户读取接口新增获取用户等级信息接口,共1个。详情见:http://t.cn/z0s5H7L
好友分组、定向微博接口增加scope功能,具体为这些接口在调用前需用户在授权页同意,才能被用户正常调用。scope详情见:http://t.cn/zl3cCxa
2012-10-15
即日起,微博开放平台将禁止“累计使用人数小于10,000”的应用使用V1接口。迁移指南:http://t.cn/zWTaigK
2012-08-27
即日起,微博开放平台将禁止所有“已通过文案审核,但累计使用人数小于1000”的应用使用V1接口,V2接口文档参考:http://t.cn/aF4zI1 。新版接口迁移指南详细见:http://t.cn/zWTaigK
2012-08-22
发布看点的视频上传接口,详细见:http://t.cn/zl2OSCC
2012-07-24
即日起,微博开放平台将禁止所有“未通过审核的应用”调用V1接口,V2接口文档参考:http://t.cn/aF4zI1
2012-06-07
发布社交电视接口,包含微博互动读取、微博互动访问、节目相关信息、电视台列表等接口,详细见:http://t.cn/zOFGx8F
2012-05-28
发布基于地理位置服务的LBS开放接口,包含POI数据、签到、点评等一系列功能,详细见:http://t.cn/zOrkcGt
2012-04-24
发布短链开放接口二期,共7个接口,主要为短链数据、分析功能,详细见:http://t.cn/aoCCN1
2012-03-22
发布短链开放接口一期,共3个接口,主要为短链转换功能,详细见:http://t.cn/aoCCN1
2012-03-14
发布remind/set_count 对当前登录用户某一种消息未读数进行清零接口。
2012-02-24
发布search/topics 搜索某一话题下的微博接口,该接口为替换老的话题微博接口的升级版接口。
2011-12-28
接口trends/statuses,由于数据维护问题,已经下线,不再提供,稍后我们会开放新版的搜索话题接口,该接口功能更强大,更稳定,敬请期待。
2011-12-19
平台对接口:friendships/create 和 friendships/destroy 进行了升级,规范了其错误返回信息,有可能对您的应用产生影响,在此提醒您注意,新的错误返回信息详见:http://t.cn/akamjc
2011-12-01
平台V2版接口,第二批开放接口已经上线并开放,详细接口请见:http://t.cn/aoCCN1
2011-11-18
发布地图服务接口,location接口可以提供基础的地理、地图服务,详细接口请见:http://t.cn/zOeZRBp
2011-10-12
发布新版接口,新版接口性能更高效,授权机制更安全,详情请见:http://t.cn/aF9Ihs
2011-08-23
未读数提醒升级,现在发微博自己@自己将不再提醒未读,影响接口(statuses/unread)。
修复了评论接口(statuses/comment)的头像更新Bug,该Bug会引起收评论对象更新头像时,发出的评论中头像没有更新,同时影响的接口还包括微博回复评论接口(statuses/reply)。
2011-08-16
修复了未读数接口(statuses/unread)重复计数的bug,该bug会引起新粉丝重复计数。
2011-08-09
修复了回复评论接口(statuses/reply)的bug,该bug会引起回复自己的评论时会有新评论的未读数提醒,同时影响的接口还包括微博评论接口(statuses/comment)。
接口访问频次权限
微博接口限制用户每个小时只能请求一定的次数。限制分用户维度和IP维度,详述如下:
一、针对一个服务器IP的请求次数限制
测试授权:
- 1000次/小时
普通授权:
- 10000次/小时
中级授权:
- 20000次/小时
高级授权:
- 30000次/小时
合作授权:
- 40000次/小时
二、针对一个用户在使用一个应用的请求次数限制
测试授权:
- 总限制:单用户每应用 150次/小时
- 发微博:单用户每应用 30次/小时
- 发评论:单用户每应用 60次/小时
- 加关注:单用户每应用 60次/小时 100次/天
普通授权:
- 总限制:单用户每应用 1000次/小时
- 发微博:单用户每应用 30次/小时
- 发评论:单用户每应用 60次/小时
- 加关注:单用户每应用 60次/小时 200次/天
中级授权:
- 总限制:单用户每应用 1500次/小时
- 发微博:单用户每应用 60次/小时
- 发评论:单用户每应用 120次/小时
- 加关注:单用户每应用 120次/小时 300次/天
高级授权:
- 总限制:单用户每应用 2000次/小时
- 发微博:单用户每应用 90次/小时
- 发评论:单用户每应用 180次/小时
- 加关注:单用户每应用 180次/小时 300次/天
合作授权:
- 总限制:单用户每应用 无限制
- 发微博:单用户每应用 120次/小时
- 发评论:单用户每应用 240次/小时
- 加关注:单用户每应用 240次/小时 300次/天
未通过审核的,开发中的应用,将适用测试授权,当应用通过审核成为正式应用,将自动升级为普通授权。
客户端类应用最高可申请至合作伙伴授权(授权有效期90天)级别,网页类应用、网站接入类应用最高可申请至高级授权(授权有效期30天)级别。
当频次权限达到本级别的上限时,可在应用控制台中,接口管理标签下的调用频次选项中进行在线申请。
申请时请详细填写应用的产品介绍、推广策略和改进目标。
申请成功后请等待审核,三个工作日之内反馈结果。
三、未通过审核应用的测试账号限制
针对未通过审核的,开发中的应用,我们除了以上的频次限制外,将还有测试账号的额外请求限制。每个未通过审核应用只能授权15个测试账号来请求接口。除此之外的账号通过该应用,都无法请求接口。当应用通过审核,该限制自动取消。
测试账号设置在 “我的应用>编辑应用属性>测试账号” 里可以找到。
四、黑名单
我们希望API调用者都能遵循请求限制,过度频率的调用API会导致你的应用/IP加入黑名单。加入黑名单之后,所有请求都会无任何返回。
五、开发者如何正确面对频率限制
首先微博API技术原理上是一个HTTP轮询(POLLING)协议,不是即时推送(realtime push)协议。因此即使增大刷新频率也无法完全达到即时获得最新信息效果。根据经验,更新频率我们建议2-3分钟/次为宜,API客户端也可提供一个手工刷新按钮,用户可以手工获取最新数据。
API客户端可以智能控制请求频率,比如最近几次更新都没获取到数据情况下可以适当将间隔时间延长。当一小时内剩余次数多时候可以适当将更新加快。当剩余请求数偏小时,客户端通过延长自己的更新频率控制不超过上限。另外要适当留一些空余指标,防止用户手工执行一些操作产生的调用导致超出上限。
- 客户端可以通过以下接口查询当前剩余请求数:Account/rate_limit_status
- 接口频率限制常见问题请参考 微博开放平台问答系统
API测试工具
- 通过 API测试工具 ,可测试调用新浪微博开放平台所有通用API接口,在配置文件写入测试参数即可。