阅读:68560次   评论:84条   更新时间:2011-10-28    
ITeye目前提供如下的API,更多API将会陆续推出。

(文档编写中...)

用户认证 Top

目前所有的API都需要认证,验证方式为HTTP Basic  Access Authentication

如果你的系统有curl,可以用curl来非常简单地来尝试这些API,以用户认证的API为例子:

curl -u 用户名:密码 http://api.iteye.com/api/auth/verify


认证成功返回JSON格式字符串:
{"domain": "博客子域名", "name": "用户名", "id": 用户ID}

认证失败返回字符串:
error.auth.fail
对应的HTTP Response Code为401

为了避免暴力破解密码,如果某个IP的连续认证错误超过6次,在一个小时内将会无法进行认证,返回字符串:
error.auth.over.limit
对应的HTTP Response Code为401

为了避免对服务器过大压力,限制单个IP的单个用户请求,每小时不能超过300次,超过的用户在一小时内调用任何API都会返回字符串:
error.api.over.limit
对应的HTTP Response Code为400

闲聊API Top

基本数据参数说明
返回值中如果包含闲聊记录,统一都是JSON格式的字符串,有如下属性
id: 		闲聊ID
created_at: 	创建时间
body:		闲聊内容
user:		闲聊发布者,属性如下
	name:	用户名
	logo:	头像文件路径(最大宽高150x150),如果要获取缩略图,路径为xxx-thumb.jpg(最大宽高48x48)
	domain: 用户的博客子域名
receiver:	闲聊接收者,属性同user,可能为空
reply_to_id:	回复某条闲聊ID,可能为空
via:		通过什么发布

返回值每页显示30条闲聊记录
可选参数的统一定义:
last_id: 只抓取大于这个id的闲聊记录
page: 抓取第N页记录

闲聊一下
URL: http://api.iteye.com/api/twitters/list
返回值: 包含闲聊记录的JSON格式字符串(数组格式)
可选参数: last_id, page

我的闲聊
URL: http://api.iteye.com/api/twitters/my
返回值: 包含闲聊记录的JSON格式字符串 (数组格式)
可选参数: last_id, page

@我的
URL: http://api.iteye.com/api/twitters/replies
返回值: 包含闲聊记录的JSON格式字符串(数组格式)
可选参数: last_id, page

全站闲聊
URL: http://api.iteye.com/api/twitters/all
返回值: 包含闲聊记录的JSON格式字符串(数组格式)
可选参数: last_id, page

发布新闲聊
URL: http://api.iteye.com/api/twitters/create
返回值: 新发布成功的闲聊记录的JSON格式字符串
必需参数:
body: 闲聊内容
可选参数:
reply_to_id: 回复某条闲聊的id
via: 通过什么发布

删除闲聊
URL: http://api.iteye.com/api/twitters/destroy
返回值: 成功删除的闲聊id,如果失败,返回"error.record.not.found"字符串

通过ID获取闲聊记录
URL: http://api.iteye.com/api/twitters/show
必需参数:
id: 你需要获取的闲聊id,如果要一次获取多个记录,可以用逗号分隔传递(id=1,2,3),最多支持30个id
返回值:
找不到任何记录,返回"error.record.not.found"字符串
获取一条记录,返回该闲聊记录的JSON格式字符串
获取多条记录,多条闲聊记录的JSON格式字符串(数组格式)

用户收藏API Top

基本数据参数说明
返回值中如果包含收藏记录,统一都是JSON格式的字符串,有如下属性
id:		收藏ID
url:		收藏的链接
title:		收藏的标题
description:	描述
cached_tag_list:标签(多个标签用半角英文逗号隔开)
public:		代表是公开收藏还是私人收藏
created_at:	添加该收藏的时间


列出用户收藏
URL: http://api.iteye.com/api/user_favorites/list
返回值: 包含用户收藏的JSON格式字符串(数组格式)
注意:目前是全部列出用户的收藏数据,如果用户收藏非常多的话,速度可能会比较慢,建议一次获取以后进行缓存。以后可能会加入分页的功能。

新加收藏
URL: http://api.iteye.com/api/user_favorites/create
返回值: 添加成功的用户收藏的JSON格式字符串
必需参数:
url: 收藏文章的链接
title: 收藏文章的标题
可选参数:
description: 描述
tag_list: 标签(多个标签用半角英文逗号隔开)
share: 是否公开和大家共享,用false代表不公开(默认公开)

更新收藏
URL: http://api.iteye.com/api/user_favorites/update
返回值: 更新成功的用户收藏的JSON格式字符串,如果找不到对应id对应的数据,返回"error.record.not.found"字符串
必需参数:
id: 更新用户收藏的ID
其他参数同“新加收藏”

删除收藏
URL: http://api.iteye.com/api/user_favorites/destroy
返回值: 删除成功的记录id,如果找不到对应id对应的数据,返回"error.record.not.found"字符串
必需参数:
id: 删除用户收藏的ID

站内短信API Top

基本数据参数说明
返回值中如果包含站内短信记录,统一都是JSON格式的字符串,有如下属性
id: 		短信ID
created_at: 	创建时间
system_notice:	是否系统短信的标记
has_read:	是否已读的标记
attach:		是否有附件的标记
title:		短信标题
plain_body:	短信内容(已经去除HTML标签)
sender:		短信发送者,属性如下
	name:	用户名
	logo:	头像文件路径(最大宽高150x150),如果要获取缩略图,路径为xxx-thumb.jpg(最大宽高48x48)
	domain: 用户的博客子域名
receiver:	闲聊接收者,属性同sender


收件箱
URL: http://api.iteye.com/api/messages/inbox
返回值: 包含闲聊记录的JSON格式字符串(数组格式,每页15条记录)
可选参数:
last_id: 只抓取大于这个id的站内短信记录
page: 抓取第N页记录
注意:调用这个方法以后,如果返回值中有包含未读短信,在下一次调用的时候将会标记为已读

发送站内短信
URL: http://api.iteye.com/api/messages/create
返回值: 新发送成功短信的JSON格式字符串,如果失败,返回"error.具体的错误信息"字符串
必需参数:
title: 短信标题
body: 短信内容
receiver_name: 收件人用户名

回复站内短信
URL: http://api.iteye.com/api/messages/reply
返回值: 新回复成功短信的JSON格式字符串,如果失败,返回"error.具体的错误信息"字符串
必需参数:
id: 要回复的短信ID
title: 短信标题
body: 短信内容

删除站内短信
URL: http://api.iteye.com/api/messages/destroy
返回值: 成功删除的短信id,如果失败,返回"error.record.not.found"字符串
必需参数:
id: 要删除的短信ID

疑难问题 Top

1、用curl测试成功,但是用Java编写程序发现失败,说拒绝连接

通过应用程序访问API的时候,请在User-Agent信息上面声明:"JavaEye API Client"




评论 共 84 条 请登录后发表评论
24 楼 zzheric 2009-04-30 09:59
支持下,好东西 
23 楼 liuchaoyong 2009-04-21 15:16
 
22 楼 neora 2009-04-05 21:53
为什么失败的结果不是JSON格式?
21 楼 stevensinclair 2009-04-04 14:28
What's this?
20 楼 whaosoft 2009-04-03 00:48
挺好玩的 我也来试试
19 楼 chb 2009-03-31 15:51
建议出air客户端,可以支持离线写博
18 楼 phyeas 2009-03-21 18:06
想问个问题,这个每小时300api是从第一次请求开始算起还是从每小时的第一秒算起
17 楼 javaTo 2009-03-11 12:40
恩,不错,刚开始弄没必要太过复杂。

有空弄来玩玩

PS:JE也来越牛了,向JE开发团队致敬!
16 楼 liangguanhui 2009-03-09 23:43
为什么不专门出一个java的client develop SDK呢?
15 楼 wcily123 2009-03-09 19:18
谁会能在详细些不?
14 楼 hurricane1026 2009-03-09 15:27
问一下,每小时300次api是不是太少了点?
13 楼 王者之剑 2009-03-09 12:38
支持
12 楼 myreligion 2009-03-05 12:05
看来我应该研发一个api all in one了,可以在提供了api的网站之间传递消息,例如把JavaEye的消息直接发到gmail上,通过淘宝的api把淘宝旺旺的消息发到JE上,呵呵。
11 楼 http_url 2009-03-02 20:08
不明白是什么意思,谁懂的给讲讲
10 楼 erikchang 2009-03-02 19:29
目前不实用!建议改善
9 楼 forgood 2009-03-02 08:38
谁对这方面懂的比较多,可以详细的说说,谢谢了。
8 楼 njuptsoz 2009-02-27 22:54
好!
7 楼 lookdd1 2009-02-27 10:08
没有关于论坛的API啊?
6 楼 kimmking 2009-02-25 21:32
saved--
5 楼 laiseeme 2009-02-24 20:18
做个极好  
4 楼 kong_bai 2009-02-24 09:20
好东西~
3 楼 geminiyellow 2009-02-24 00:22
等我先记录一下,回头再看

发表评论

您还没有登录,请您登录后再发表评论

文章信息

Global site tag (gtag.js) - Google Analytics