## getsid

### 简单描述

向BugFree系统获取一个session会话，为后面的方法提供保持会话的session。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getsid |

### 返回结果

名称 | 类型 | 示例值 | 描述
--- | --- | --- | ---
sessionname | String | PHPSESSID | Session名称
sessionid | String | 72iltnrjsjph6nm8rmsru4nbd2 | Session ID
rand | String | dd02a | 随机码，用于生成用户验证码
status | String | success | API执行结果状态

### 代码示例

#支持POST
http://bugfree/api3.php?mode=getsid

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","sessionname":"PHPSESSID","sessionid":"e165e0c89b748a6ec2f0598ab52658fd","rand":"12d01"}

## login

### 简单描述

使用用户名和加密后的密码登陆BugFree系统。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | login |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
username | String | 必须 | 用户登录名 | administrator |
auth | String | 必须 | 认证码。 #加密算法： $auth = md5(md5($username.md5($password)).API_KEY.$rand) 其中$username为用户名，$password为该用户的明文密码，$rand为getsid方法获得的rand值。 | 0de98aa1004345b30489b3195701fb71 |

### 返回结果

名称 | 类型 | 示例值 | 描述
--- | --- | --- | ---
timeout | String | 1286790253 | Session过期时间
status | String | success | API执行结果状态

### 代码示例

#支持Post
#via getsid
# sesseionname = PHPSESSID
# sessionid = 72iltnrjsjph6nm8rmsru4nbd2
# rand = dd02a
#auth = md5(md5($username.md5($password)).API_KEY.$rand)
http://bugfree/api3.php?mode=login&&PHPSESSID=72iltnrjsjph6nm8rmsru4nbd2&username=admin&auth=315ba56f2dba87b280e6835074fb2925

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","timeout":1321431030}

## getbug

### 简单描述

获得Bug信息。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getbug |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
id | Integer | 必须 | Bug的主键 | 1 |

### 代码示例

#支持Post
http://bugfree/api3.php?mode=getbug&PHPSESSID=72iltnrjsjph6nm8rmsru4nbd2&id=129592

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","id":"129592","created_at":"2011-11-17 05:35:15","created_by":"5997","updated_at":"2011-11-18 11:20:14","updated_by":"5997","bug_status":"Active","severity":"4","priority":"4","assign_to":"-1","title":"\u6b22\u8fce\u4f7f\u7528BugFree","mail_to":"","repeat_step":"[\u6b65\u9aa4] \r\n1.\u6b22\u8fce\u4f7f\u7528BugFree \r\n2. \r\n \r\n[\u7ed3\u679c] \r\n \r\n[\u671f\u671b] \r\n \r\n[\u5907\u6ce8] \r\n ","lock_version":"2","resolved_at":null,"resolved_by":null,"closed_at":null,"closed_by":null,"related_bug":"","related_case":"","related_result":"","productmodule_id":"9795","modified_by":"5997","solution":null,"duplicate_id":null,"product_id":"24","reopen_count":"0","product_name":"Sample","module_name":"Sample\/Sample Module","created_by_name":"\u7cfb\u7edf\u7ba1\u7406\u5458","updated_by_name":"\u7cfb\u7edf\u7ba1\u7406\u5458","resolved_by_name":null,"closed_by_name":null,"assign_to_name":"Active","bug_id":"129592","test":"yes","mulitselect":"1,2,3,4","OpenedBuild":"N\/A","BugSubStatus":null,"BugMachine":null,"BugKeyword":null,"ResolvedBuild":null,"BugType":"\u5176\u4ed6","HowFound":"\u5176\u4ed6","BugOS":null,"BugBrowser":null,"action_list":[],"attachment_file":[{"id":"52173","file_title":"favicon.ico","file_location":"Project24\/201111\/112015110.ico","file_type":"ico","file_size":"1.12305KB"}]}

## getcase

### 简单描述

获得Case信息。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getcase |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
id | Integer | 必须 | Case的主键 | 1 |

### 代码示例

#支持Post
http://bugfree/api3.php?mode=getcase&PHPSESSID=72iltnrjsjph6nm8rmsru4nbd2&id=82756

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","id":"82756","created_at":"2011-11-17 05:45:04","created_by":"5997","updated_at":"2011-11-18 11:24:57","updated_by":"5997","case_status":"Active","priority":"4","assign_to":"-1","title":"\u6b22\u8fce\u4f7f\u7528BugFree","mail_to":"","case_step":"[\u6b65\u9aa4] \r\n1. \r\n2. \r\n \r\n[\u9a8c\u8bc1] \r\n \r\n[\u5907\u6ce8] \r\n ","lock_version":"3","related_bug":"","related_case":"","related_result":"36676","productmodule_id":"9795","modified_by":"5997","delete_flag":"0","product_id":"24","product_name":"Sample","module_name":"Sample\/Sample Module","created_by_name":"\u7cfb\u7edf\u7ba1\u7406\u5458","updated_by_name":"\u7cfb\u7edf\u7ba1\u7406\u5458","assign_to_name":"Active","case_id":"82756","testtest":"1,2,3","MarkForDeletion":"\u5426","CaseKeyword":null,"DisplayOrder":"0","ScriptStatus":null,"ScriptedBy":null,"ScriptedDate":null,"ScriptLocation":null,"CaseType":"\u5176\u4ed6","CaseMethod":"\u624b\u52a8\u6267\u884c","CasePlan":null,"action_list":[],"attachment_file":[{"id":"52174","file_title":"logo.png","file_location":"Project24\/201111\/112457160.png","file_type":"png","file_size":"6.41992KB"}]}

## getresult

### 简单描述

获得Result信息。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getresult |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
id | Integer | 必须 | Result的主键 | 1 |

### 代码示例

#支持Post
http://bugfree/api.php?mode=getresult&PHPSESSID=72iltnrjsjph6nm8rmsru4nbd2&id=1

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","id":"36676","created_at":"2011-11-17 06:22:56","created_by":"5997","updated_at":"2011-11-17 06:22:56","updated_by":"5997","result_status":"Completed","assign_to":"-2","result_value":"Passed","mail_to":"","result_step":"[\u6b65\u9aa4] \r\n1. \r\n2. \r\n \r\n[\u9a8c\u8bc1] \r\n \r\n[\u5907\u6ce8] \r\n ","lock_version":"1","related_bug":null,"productmodule_id":"9795","modified_by":"5997","title":"\u6b22\u8fce\u4f7f\u7528BugFree","related_case_id":"82756","product_id":"24","product_name":"Sample","module_name":"Sample\/Sample Module","created_by_name":"\u7cfb\u7edf\u7ba1\u7406\u5458","updated_by_name":"\u7cfb\u7edf\u7ba1\u7406\u5458","assign_to_name":"Closed","result_id":"36676","OpenedBuild":"N\/A","BugOS":null,"BugBrowser":null,"BugMachine":null,"ResultKeyword":null,"action_list":[],"attachment_file":[]}

## addbug

### 简单描述

新增Bug。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | addbug |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
product_id | Integer | 必须 | 产品id | 1 |
productmodule_id | Integer |  | 模块id | 1 |
title | Integer | 必须 | Bug标题 | 1 |
severity | Integer | 必须 | 严重程度 | 1,2,3,4 |
priority | Integer |  | 优先级 | 1,2,3,4 |
repeat_step | String |  | 重现步骤 |  |
assign_to_name | String | 必须 | 指派给 | 系统管理员 |
action_note | String |  | 注释 |  |
mail_to | String |  | 抄送给, 以','分割 | 系统管理员,admin@bugfree.org |
related_case | Integer |  | 相关Case |  |
attachment_file[] | Beta |  | 附件，必须通过POST方法传递 |  |

### 从BugFree 2.x升级到BugFree 3.0的自定义字段参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
BugType | String | 必须 | Bug类型 | 代码错误,用户界面,需求变动,新增需求,需求文档,设计文档,配置相关,安装部署,安全相关,性能压力,标准规范,测试脚本,事务跟踪,Bad Case,其他 |
HowFound | String | 必须 | 如何发现 | 代码错误,用户界面,需求变动,新增需求,需求文档,设计文档,配置相关,安装部署,安全相关,性能压力,标准规范,测试脚本,事务跟踪,Bad Case,其他 |
OpenedBuild | String | 必须 | 创建build |  |
BugOS | String |  | 操作系统 | 全部,Windows 7,Windows Vista,Windows XP,Windows 2000,Linux,FreeBSD,Unix,Mac OS,其他 |
BugBrowser | String |  | 浏览器 | 全部,IE 8.0,IE 7.0,IE 6.0,FireFox 4.0,FireFox 3.0,FireFox 2.0,Chrome,Safari,Opera,其他 |
BugMachine | String |  | 机器配置 |  |
BugKeyword | String |  | 关键字 |  |

### 代码示例

#支持Post
http://bugfree/api.php?mode=addbug&product_id=154&productmodule_id=830&title=test&severity=1&assign_to_name=系统管理员&BugType=%B4%FA%C2%EB%B4%ED%CE%F3&HowFound=%B9%A6%C4%DC%B2%E2%CA%D4&OpenedBuild=test&BugKeyword=test&priority=1&mail_to=系统管理员&PHPSESSID=b87e1bb2806efda076fa8f3fc4a9f43d

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","BugID":"129591"}

## addcase

### 简单描述

新增Case。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | addcase |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
product_id | Integer | 必须 | 产品id | 1 |
productmodule_id | Integer | 必须 | 模块id | 1 |
title | Integer | 必须 | Case标题 | 1 |
case_step | String | 必须 | Case步骤 |  |
assign_to_name | String | 必须 | 指派给 | 系统管理员 |
case_status | String | 必须 | Case状态 | Active, Blocked, Investigating, Reviewed |
priority | Integer | 必须 | Case优先级 | 1,2,3,4 |
action_note | String | 必须 | 注释 |  |
related_bug | Integer |  | 相关Bug |  |
related_case | Integer |  | 相关Case |  |
mail_to | String |  | 抄送给, 以','分割 | 系统管理员,admin@bugfree.org |
attachment_file[] | Beta |  | 附件，必须通过POST方法传递 |  |

### 从BugFree 2.x升级到BugFree 3.0的自定义字段参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
CaseType | String | 必须 | Case类型 | 功能,配置相关,安装部署,安全相关,性能压力,其他 |
CaseMethod | String | 必须 | 测试方法 | 手动执行,自动化脚本 |
ScriptedBy | String |  | 脚本编写者 |  |
ScriptedDate | String |  | 格式: yyyy-mm-dd |  |
ScriptStatus | String |  | 脚本状态 | 未计划,计划,被阻止,正在编写,已完成,已评审 |
ScriptLocation | String |  | 脚本地址 |  |
CasePlan | String |  | 测试计划 | 功能测试,单元测试,版本验证测试,集成测试,系统测试,冒烟测试,验收测试 |
CaseKeyword | String |  | 关键字 |  |
DisplayOrder | Integer |  | 显示顺序 | 0 |

### 代码示例

#支持Post
http://bugfree/api.php?mode=addcase&format=json&PHPSESSID=72iltnrjsjph6nm8rmsru4nbd2&product_id=24&prodcutmodule_id=9795&title=欢迎使用BugFree&case_step=test&assign_to_name=系统管理员&case_status=Active&CaseType=功能&priority=1&CaseMethod=手动测试&ReplyNote=test&ScriptedBy=admin&ScriptedDate=2012-10-10&ScriptStatus=未计划&ScriptLocation=test&CasePlan=功能测试&CaseKeyword=test&related_bug=1&related_case=1

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","CaseID":"82759"}

## addresult

### 简单描述

新增Result。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | addresult |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
related_case_id | Integer | 必须 | CaseID | 1 |
result_value | String | 必须 | Result结果 | Passed, Failed |
result_status | Integer | 必须 | 运行状态 | Completed, Investigating, Resolved |
assign_to_name | String | 必须 | 指派给 | 系统管理员 |
action_note | String | 必须 | 注释 |  |
attachment_file[] | Beta |  | 附件，必须通过POST方法传递 |  |

### 从BugFree 2.x升级到BugFree 3.0的自定义字段参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
OpenedBuild | String | 必须 | 创建build |  |
BugOS | String |  | 操作系统 | 全部,Windows 7,Windows Vista,Windows XP,Windows 2000,Linux,FreeBSD,Unix,Mac OS,其他 |
BugBrowser | String |  | 浏览器 | 全部,IE 8.0,IE 7.0,IE 6.0,FireFox 4.0,FireFox 3.0,FireFox 2.0,Chrome,Safari,Opera,其他 |
BugMachine | String |  | 机器配置 |  |
ResultKeyword | String |  | 关键字 |  |

### 代码示例

#支持Post
http://bugfree/api.php?mode=addresult&related_case_id=1&result_value=passed&result_status=Completed&assign_to=系统管理员&action_note=test&OpenedBuild=N/A&PHPSESSID=ggq773lqr7f2nmia6qmst10rm0

### 返回示例

JSON数据格式:

"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","ResultID":"36677"}

## updatebug

### 简单描述

修改Bug。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | addbug |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
id | Integer | 必须 | BugID | 1 |
product_id | Integer |  | 产品id | 1 |
productmodule_id | Integer |  | 模块id | 1 |
title | Integer |  | Bug标题 | 1 |
severity | Integer | 必须 | 严重程度 | 1,2,3,4 |
priority | Integer |  | 优先级 | 1,2,3,4 |
repeat_step | String |  | 重现步骤 |  |
assign_to_name | String |  | 指派给 | 系统管理员 |
action_note | String |  | 注释 |  |
mail_to | String |  | 抄送给, 以','分割 | 系统管理员,admin@bugfree.org |
related_case | Integer |  | 相关Case |  |
bug_status | String |  | Bug状态 | Active, Resolved, Closed |
attachment_file[] | Beta |  | 附件，必须通过POST方法传递 |  |

### 从BugFree 2.x升级到BugFree 3.0的自定义字段参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
BugType | String |  | Bug类型 | 代码错误,用户界面,需求变动,新增需求,需求文档,设计文档,配置相关,安装部署,安全相关,性能压力,标准规范,测试脚本,事务跟踪,Bad Case,其他 |
HowFound | String |  | 如何发现 | 代码错误,用户界面,需求变动,新增需求,需求文档,设计文档,配置相关,安装部署,安全相关,性能压力,标准规范,测试脚本,事务跟踪,Bad Case,其他 |
OpenedBuild | String |  | 创建build |  |
BugOS | String |  | 操作系统 | 全部,Windows 7,Windows Vista,Windows XP,Windows 2000,Linux,FreeBSD,Unix,Mac OS,其他 |
BugBrowser | String |  | 浏览器 | 全部,IE 8.0,IE 7.0,IE 6.0,FireFox 4.0,FireFox 3.0,FireFox 2.0,Chrome,Safari,Opera,其他 |
BugMachine | String |  | 机器配置 |  |
BugKeyword | String |  | 关键字 |  |

### 代码示例

#支持Post
http://bugfree/api.php?mode=updatebug&product_id=154&productmodule_id=830&id=129591&title=test&assign_to_name=系统管理员&severity=1&BugType=%B4%FA%C2%EB%B4%ED%CE%F3&HowFound=%B9%A6%C4%DC%B2%E2%CA%D4&OpenedBuild=test&BugKeyword=test&priority=1&mail_to=系统管理员&PHPSESSID=b87e1bb2806efda076fa8f3fc4a9f43d

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","BugID":"129591"}

## updatecase

### 简单描述

修改Case。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | addcase |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
id | Integer | 必须 | CaseID | 1 |
product_id | Integer |  | 产品id | 1 |
productmodule_id | Integer |  | 模块id | 1 |
title | Integer |  | Case标题 | 1 |
case_step | String |  | Case步骤 |  |
assign_to_name | String |  | 指派给 | 系统管理员 |
case_status | String |  | Case状态 | Active, Blocked, Investigating, Reviewed |
priority | Integer |  | Case优先级 | 1,2,3,4 |
action_note | String |  | 注释 |  |
related_bug | Integer |  | 相关Bug |  |
related_case | Integer |  | 相关Case |  |
mail_to | String |  | 抄送给, 以','分割 | 系统管理员,admin@bugfree.org |
attachment_file[] | Beta |  | 附件，必须通过POST方法传递 |  |

### 从BugFree 2.x升级到BugFree 3.0的自定义字段参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
CaseType | String |  | Case类型 | 功能,配置相关,安装部署,安全相关,性能压力,其他 |
CaseMethod | String |  | 测试方法 | 手动执行,自动化脚本 |
ScriptedBy | String |  | 脚本编写者 |  |
ScriptedDate | String |  | 格式: yyyy-mm-dd |  |
ScriptStatus | String |  | 脚本状态 | 未计划,计划,被阻止,正在编写,已完成,已评审 |
ScriptLocation | String |  | 脚本地址 |  |
CasePlan | String |  | 测试计划 | 功能测试,单元测试,版本验证测试,集成测试,系统测试,冒烟测试,验收测试 |
CaseKeyword | String |  | 关键字 |  |
DisplayOrder | Integer |  | 显示顺序 | 0 |

### 代码示例

#支持Post
http://bugfree/api.php?mode=updatecase&format=json&PHPSESSID=72iltnrjsjph6nm8rmsru4nbd2&id=82759&product_id=24&productmodule_id=9795

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","CaseID":"82759"}

## updateresult

### 简单描述

修改Result。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | addresult |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
id | Integer | 必须 | ResultID | 1 |
related_case_id | Integer |  | CaseID | 1 |
result_value | String |  | Result结果 | Passed, Failed |
result_status | Integer |  | 运行状态 | Completed, Investigating, Resolved |
assign_to_name | String |  | 指派给 | 系统管理员,admin@bugfree.org |
action_note | String |  | 注释 |  |
attachment_file[] | Beta |  | 附件，必须通过POST方法传递 |  |

### 从BugFree 2.x升级到BugFree 3.0的自定义字段参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
OpenedBuild | String |  | 创建build |  |
BugOS | String |  | 操作系统 | 全部,Windows 7,Windows Vista,Windows XP,Windows 2000,Linux,FreeBSD,Unix,Mac OS,其他 |
BugBrowser | String |  | 浏览器 | 全部,IE 8.0,IE 7.0,IE 6.0,FireFox 4.0,FireFox 3.0,FireFox 2.0,Chrome,Safari,Opera,其他 |
BugMachine | String |  | 机器配置 |  |
ResultKeyword | String |  | 关键字 |  |

### 代码示例

#支持Post
http://bugfree/api.php?mode=addresult&id=36677&result_value=passed

### 返回示例

JSON数据格式:

"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","ResultID":"36677"}

## getquery

### 简单描述

根据query查找信息。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getquery |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
QueryID | Integer | 必须 | QueryID | 1 |
page | Integer | 必须 | 页数 | 1 | 1
size | Integer | 必须 | 页大小 | 100 | 100

### 代码示例

#支持Post
http://bugfree/api.php?mode=getquery&PHPSESSID=72iltnrjsjph6nm8rmsru4nbd2&QueryID=1&page=1&size=20

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","BugList":{"129592":{"id":"129592","title":"\u6b22\u8fce\u4f7f\u7528BugFree","module_path":"Sample\/Sample Module","bug_status":"Active","assign_to_name":"Active","mail_to":"","updated_by_name":"\u7cfb\u7edf\u7ba1\u7406\u5458","updated_at":"2011-11-17 05:35:15","created_at":"\u7cfb\u7edf\u7ba1\u7406\u5458","created_at":"2011-11-17 05:35:15","resolved_by_name":null,"resolved_at":null,"duplicate_id":null,"closed_by_name":null,"closed_at":null,"related_bug":"","related_case":"","resulted_bug":"","modified_by_name":"\u7cfb\u7edf\u7ba1\u7406\u5458","reopen_count":"0","solution":null,"test":"yes","mulitselect":"1,2,3,4","OpenedBuild":"N\/A","BugSubStatus":null,"BugMachine":null,"BugKeyword":null,"ResolvedBuild":null,"severity":"4","priority":"4","BugType":"\u5176\u4ed6","HowFound":"\u5176\u4ed6","BugOS":null,"BugBrowser":null}},"BugIDs":"129592","page":1,"size":100,"type":"bug"}

## query

### 简单描述

查找信息。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | query |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
query | XML | 必须 | 将根据传输的XML转义成SQL查询，XML Schema见下文。该参数只支持POST方法传输。 | XML参数示例见下文 |
product_id | Integer | 必须 | ProductID。在BugFree 2.x里定义为ProjectID。查询将会基于product_id | 1 |

### 代码示例

#仅支持Post
setPostAction('http://bugfree/api.php');
setPostField('mode', 'query');
setPostField('PHPSESSID', '72iltnrjsjph6nm8rmsru4nbd2');
setPostField('query', $xml);

### XML参数示例

<?xml version="1.0" encoding="UTF-8"?>
<query table="Bug" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://bugfree/query.xsd">
<fields logic="OR">
<field name="1" operator="EQ" value="1"/>
</fields>
</query>

### XML Schema

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="query">
<xs:complexType>
<xs:choice>
<xs:element name="fields" type="fields" />
<xs:element name="field" type="field" />
</xs:choice>
<xs:attribute name="table" type="table" use="required" />
<xs:attribute name="select" type="select" use="optional"
default="*" />
<xs:attribute name="order" type="xs:string"
use="optional" />
<xs:attribute name="asc" type="xs:boolean" use="optional"
default="false" />
<xs:attribute name="page" type="xs:integer"
use="optional" default="1" />
<xs:attribute name="size" type="xs:integer"
use="optional" default="20" />
</xs:complexType>
</xs:element>
<xs:complexType name="fields">
<xs:sequence>
<xs:element name="fields" type="fields"
minOccurs="0" maxOccurs="unbounded" />
<xs:element name="field" type="field" minOccurs="1"
maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="logic" type="logic" use="required" />
</xs:complexType>
<xs:complexType name="field">
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="operator" type="operator" use="required" />
<xs:attribute name="value" type="xs:string" use="required" />
</xs:complexType>
<xs:simpleType name="table">
<xs:restriction base="xs:string">
<xs:enumeration value="Bug" />
<xs:enumeration value="Case" />
<xs:enumeration value="Result" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="select">
<xs:restriction base="xs:string">
<xs:enumeration value="*" />
<xs:enumeration value="count(*)" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="logic">
<xs:restriction base="xs:string">
<xs:enumeration value="OR" />
<xs:enumeration value="AND" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="operator">
<xs:restriction base="xs:string">
<xs:enumeration value="BETWEEN" />
<xs:enumeration value="GT" />
<xs:enumeration value="LT" />
<xs:enumeration value="GE" />
<xs:enumeration value="LE" />
<xs:enumeration value="EQ" />
<xs:enumeration value="NEQ" />
<xs:enumeration value="LIKE" />
<xs:enumeration value="NOTLIKE" />
<xs:enumeration value="IN" />
<xs:enumeration value="NOTIN" />
</xs:restriction>
</xs:simpleType>
</xs:schema>

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","QueryList":{"129592":{"id":"129592","title":"\u6b22\u8fce\u4f7f\u7528BugFree","module_path":"Sample\/Sample Module","bug_status":"Active","assign_to_name":"Active","mail_to":"","updated_by_name":"\u7cfb\u7edf\u7ba1\u7406\u5458","updated_at":"2011-11-17 05:35:15","created_at":"\u7cfb\u7edf\u7ba1\u7406\u5458","created_at":"2011-11-17 05:35:15","resolved_by_name":null,"resolved_at":null,"duplicate_id":null,"closed_by_name":null,"closed_at":null,"related_bug":"","related_case":"","resulted_bug":"","modified_by_name":"\u7cfb\u7edf\u7ba1\u7406\u5458","reopen_count":"0","solution":null,"test":"yes","mulitselect":"1,2,3,4","OpenedBuild":"N\/A","BugSubStatus":null,"BugMachine":null,"BugKeyword":null,"ResolvedBuild":null,"severity":"4","priority":"4","BugType":"\u5176\u4ed6","HowFound":"\u5176\u4ed6","BugOS":null,"BugBrowser":null}},"page":1,"size":100}

## findproducts

### 简单描述

查找products。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getquery |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
id | Integer |  | product id | 1 |
name | String |  | product name | Sample |
size | Integer | 必须 | 页大小 | 100 | 100

### 代码示例

#支持Post
http://bugfree/api.php?mode=findproducts&id=24&PHPSESSID=9seofg47sti52fn3jop2gfofi3

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","ProductList":[{"id":"24","name":"Sample"}]}

## findmodules

### 简单描述

查找modules。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getquery |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
id | Integer |  | module id | 1 |
name | String |  | module name | Sample |
product_id | Integer | 必须 | product id | 1 |

### 代码示例

#支持Post
http://bugfree/api.php?mode=findmodules&product_id=24&&id=9795&PHPSESSID=9seofg47sti52fn3jop2gfofi3

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","ModuleList":[{"id":"9795","name":"Sample Module","product_id":"24","grade":"1","parent_id":null,"full_path_name":"Sample Module"}]}

## finduser

### 简单描述

查找user。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getquery |
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
realname | String |  | user realname | Sample |

### 代码示例

#支持Post
http://bugfree/api3.php?mode=finduser&realname=sample&PHPSESSID=9seofg47sti52fn3jop2gfofi3

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","userinfo":{"id":"4572","username":"aaa","password":"586f1d5d320f4f0f7475d8f83f29e5ec","realname":"aaa","email":"aa@test.com","wangwang":"","email_flag":"1","wangwang_flag":"0","created_at":"2011-02-21 14:51:52","created_by":"3558","updated_at":"2011-12-07 13:32:48","updated_by":"0","is_dropped":"0","authmode":"ldap","lock_version":"247"}}