## getsid

### 简单描述

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

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getsid |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8

### 返回结果

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

### 代码示例

#支持POST
http://bugfree/api.php?mode=getsid&format=json&charset=utf8

### 返回示例

JSON数据格式:

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

CSV数据格式:

successcodeinfosessionnamesessionidrand0操作成功PHPSESSIDe165e0c89b748a6ec2f0598ab52658fd6ed5cc304190fb9f789360f0bb86ad9b34943

## login

### 简单描述

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

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | login |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8
$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/api.php?mode=login&format=json&charset=utf8&PHPSESSID=72iltnrjsjph6nm8rmsru4nbd2&username=admin&auth=315ba56f2dba87b280e6835074fb2925

### 返回示例

JSON数据格式:

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

CSV数据格式:

successcodeinfotimeout0操作成功13214309916249596918a5534eda7191b4553d6b39c

## getbug

### 简单描述

获得Bug信息。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getbug |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

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

### 代码示例

#支持Post
http://bugfree/api.php?mode=getbug&format=json&charset=utf8&PHPSESSID=72iltnrjsjph6nm8rmsru4nbd2&BugID=1

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","BugID":"129592","OpenedDate":"2011-11-17 05:35:15","OpenedByID":"5997","LastEditedDate":"2011-11-17 05:35:15","LastEditedByID":"5997","BugStatus":"Active","AssignedToID":"-1","BugTitle":"\u6b22\u8fce\u4f7f\u7528BugFree","MailTo":"","ReproSteps":"[\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":"1","ResolvedDate":null,"ResolvedByID":null,"ClosedDate":null,"ClosedByID":null,"LinkID":"","CaseID":"","ResultID":"","ModuleID":"9795","ModifiedByID":"5997","Resolution":null,"DuplicateID":null,"ProjectID":"24","reopen_count":"0","ProjectName":"Sample","ModulePath":"Sample\/Sample Module","OpenedBy":"\u7cfb\u7edf\u7ba1\u7406\u5458","LastEditedBy":"\u7cfb\u7edf\u7ba1\u7406\u5458","ResolvedBy":null,"ClosedBy":null,"AssignedTo":"Active","bug_BugID":"129592","test":"yes","mulitselect":"1,2,3,4","OpenedBuild":"N\/A","BugSubStatus":null,"BugMachine":null,"BugKeyword":null,"ResolvedBuild":null,"BugSeverity":"4","BugPriority":"4","BugType":"\u5176\u4ed6","HowFound":"\u5176\u4ed6","BugOS":null,"BugBrowser":null}

CSV数据格式:

successcodeinfoBugIDOpenedDateOpenedByIDLastEditedDate LastEditedByIDBugStatusAssignedToIDBugTitleMailToReproSteps lock_versionResolvedDateResolvedByIDClosedDateClosedByIDLinkID CaseIDResultIDModuleIDModifiedByIDResolutionDuplicateIDProjectID reopen_countProjectNameModulePathOpenedByLastEditedByResolvedBy ClosedByAssignedTobug_BugIDtestmulitselectOpenedBuildBugSubStatus BugMachineBugKeywordResolvedBuildBugSeverityBugPriorityBugType HowFoundBugOSBugBrowser0操作成功1295922011-11-17 05:35:1559972011-11-17 05:35:155997Active-1欢迎使用BugFree[步骤] 1.欢迎使用BugFree 2. [结果] [期望] [备注] 197955997240SampleSample/Sample Module系统管理员系统管理员Active129592yes1,2,3,4N/A44其他其他 bafe2f9bc4c0d27619f16cf9ffb154dc

## getcase

### 简单描述

获得Case信息。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getcase |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

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

### 代码示例

#支持Post
http://bugfree/api.php?mode=getcase&format=json&charset=utf8&PHPSESSID=72iltnrjsjph6nm8rmsru4nbd2&CaseID=1

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","CaseID":"82756","OpenedDate":"2011-11-17 05:45:04","OpenedByID":"5997","LastEditedDate":"2011-11-17 06:22:58","LastEditedByID":"5997","CaseStatus":"Active","AssignedToID":"-1","CaseTitle":"\u6b22\u8fce\u4f7f\u7528BugFree","MailTo":"","CaseSteps":"[\u6b65\u9aa4] \r\n1. \r\n2. \r\n \r\n[\u9a8c\u8bc1] \r\n \r\n[\u5907\u6ce8] \r\n ","lock_version":"2","BugID":"","LinkID":"","ResultID":"36676","ModuleID":"9795","ModifiedByID":"5997","ProjectID":"24","ProjectName":"Sample","ModulePath":"Sample\/Sample Module","OpenedBy":"\u7cfb\u7edf\u7ba1\u7406\u5458","LastEditedBy":"\u7cfb\u7edf\u7ba1\u7406\u5458","AssignedTo":"Active","case_CaseID":"82756","testtest":"1,2,3","MarkForDeletion":"\u5426","CaseKeyword":null,"DisplayOrder":"0","ScriptStatus":null,"ScriptedBy":null,"ScriptedDate":null,"ScriptLocation":null,"CasePriority":"4","CaseType":"\u5176\u4ed6","CaseMethod":"\u624b\u52a8\u6267\u884c","CasePlan":null}

CSV数据格式:

successcodeinfoCaseIDOpenedDateOpenedByIDLastEditedDate LastEditedByIDCaseStatusAssignedToIDCaseTitleMailToCaseSteps lock_versionBugIDLinkIDResultIDModuleIDModifiedByIDProjectID ProjectNameModulePathOpenedByLastEditedByAssignedTocase_CaseID testtestMarkForDeletionCaseKeywordDisplayOrderScriptStatus ScriptedByScriptedDateScriptLocationCasePriorityCaseTypeCaseMethod CasePlan0操作成功827562011-11-17 05:45:0459972011-11-17 06:22:585997Active-1欢迎使用BugFree[步骤] 1. 2. [验证] [备注] 2366769795599724SampleSample/Sample Module系统管理员系统管理员Active827561,2,3否04其他手动执行 254f1b0ba88eae0af95d6f7158007dff

## getresult

### 简单描述

获得Result信息。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getresult |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

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

### 代码示例

#支持Post
http://bugfree/api.php?mode=getresult&format=json&charset=utf8&PHPSESSID=72iltnrjsjph6nm8rmsru4nbd2&ResultID=1

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","ResultID":"36676","OpenedDate":"2011-11-17 06:22:56","OpenedByID":"5997","LastEditedDate":"2011-11-17 06:22:56","LastEditedByID":"5997","ResultStatus":"Completed","AssignedToID":"-2","ResultValue":"Passed","MailTo":"","ResultSteps":"[\u6b65\u9aa4] \r\n1. \r\n2. \r\n \r\n[\u9a8c\u8bc1] \r\n \r\n[\u5907\u6ce8] \r\n ","lock_version":"1","BugID":null,"ModuleID":"9795","ModifiedByID":"5997","ResultTitle":"\u6b22\u8fce\u4f7f\u7528BugFree","CaseID":"82756","ProjectID":"24","ProjectName":"Sample","ModulePath":"Sample\/Sample Module","OpenedBy":"\u7cfb\u7edf\u7ba1\u7406\u5458","LastEditedBy":"\u7cfb\u7edf\u7ba1\u7406\u5458","AssignedTo":"Closed","result_ResultID":"36676","OpenedBuild":"N\/A","BugOS":null,"BugBrowser":null,"BugMachine":null,"ResultKeyword":null}

CSV数据格式:

successcodeinfoResultIDOpenedDateOpenedByIDLastEditedDate LastEditedByIDResultStatusAssignedToIDResultValueMailToResultSteps lock_versionBugIDModuleIDModifiedByIDResultTitleCaseIDProjectID ProjectNameModulePathOpenedByLastEditedByAssignedToresult_ResultID OpenedBuildBugOSBugBrowserBugMachineResultKeyword0操作成功36676 2011-11-17 06:22:5659972011-11-17 06:22:565997Completed-2Passed[步骤] 1. 2. [验证] [备注] 197955997欢迎使用BugFree8275624SampleSample/Sample Module系统管理员系统管理员Closed36676N/A297c6407ff95609a9848b3e915f3b149

## addbug

### 简单描述

新增Bug。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | addbug |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
ProjectID | Integer | 必须 | 项目id | 1 |
ModuleID | Integer |  | 模块id | 1 |
BugTitle | Integer | 必须 | Bug标题 | 1 |
BugSeverity | Integer | 必须 | 严重程度 | 1,2,3,4 |
BugPriority | Integer |  | 优先级 | 1,2,3,4 |
ReproSteps | String |  | 重现步骤 |  |
AssignedTo | String | 必须 | 指派给 | adminitrator |
ReplyNote | String |  | 注释 |  |
MailTo | String |  | 抄送给, 以','分割 |  |
CaseID | Integer |  | 相关Case |  |

### 从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&ProjectID=154&ModuleID=830&BugTitle=test&AssignedTo=admin&BugSeverity=1&BugType=%B4%FA%C2%EB%B4%ED%CE%F3&HowFound=%B9%A6%C4%DC%B2%E2%CA%D4&OpenedBuild=test&BugKeyword=test&BugPriority=1&MailTo=admin&PHPSESSID=b87e1bb2806efda076fa8f3fc4a9f43d

### 返回示例

JSON数据格式:

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

CSV数据格式:

successcodeinfoBugID0操作成功129590bbc9a15123f621b6b56e1577e1589bde

## addcase

### 简单描述

新增Case。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | addcase |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
ProjectID | Integer | 必须 | 项目id | 1 |
ModuleID | Integer | 必须 | 模块id | 1 |
CaseTitle | Integer | 必须 | Case标题 | 1 |
CaseSteps | String | 必须 | Case步骤 |  |
AssignedTo | String | 必须 | 指派给 | adminitrator |
CaseStatus | String | 必须 | Case状态 | Active, Blocked, Investigating, Reviewed |
CasePriority | Integer | 必须 | Case优先级 | 1,2,3,4 |
ReplyNote | String | 必须 | 注释 |  |
BugID | Integer |  | 相关Bug |  |
LinkID | Integer |  | 相关Case |  |
MailTo | String |  | 抄送给, 以','分割 |  |

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

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
CaseType | String | 必须 | Case类型 | 功能,配置相关,安装部署,安全相关,性能压力,其他 |
| CasePriority | Integer | 必须 | Case优先级 | 1,2,3,4 |
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&ProjectID=24&ModuleID=9795&CaseTitle=欢迎使用BugFree&CaseSteps=test&AssignedTo=admin&CaseStatus=Active&CaseType=功能&CasePriority=1&CaseMethod=手动测试&ReplyNote=test&ScriptedBy=admin&ScriptedDate=2012-10-10&ScriptStatus=未计划&ScriptLocation=test&CasePlan=功能测试&CaseKeyword=test&BugID=1&LinkID=1

### 返回示例

JSON数据格式:

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

CSV数据格式:

successcodeinfoCaseID0操作成功82759dcd44563d3c44e4823f00538f75a597d

## addresult

### 简单描述

新增Result。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | addresult |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
CaseID | Integer | 必须 | CaseID | 1 |
ResultValue | String | 必须 | Result结果 | Passed, Failed |
ResultStatus | Integer | 必须 | 运行状态 | Completed, Investigating, Resolved |
AssignedTo | String | 必须 | 指派给 | adminitrator |
ReplyNote | String | 必须 | 注释 |  |

### 从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&CaseID=1&ResultValue=passed&ResultStatus=Completed&AssignedTo=admin&ReplyNote=test&OpenedBuild=N/A&PHPSESSID=ggq773lqr7f2nmia6qmst10rm0

### 返回示例

JSON数据格式:

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

CSV数据格式:

successcodeinfoResultID0操作成功36677ab6e69cfa84e801195c9661520095514

## updatebug

### 简单描述

修改Bug。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | addbug |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
BugID | Integer | 必须 | BugID | 1 |
ProjectID | Integer | 必须 | 项目id | 1 |
ModuleID | Integer |  | 模块id | 1 |
BugTitle | Integer | 必须 | Bug标题 | 1 |
BugSeverity | Integer | 必须 | 严重程度 | 1,2,3,4 |
BugPriority | Integer |  | 优先级 | 1,2,3,4 |
ReproSteps | String |  | 重现步骤 |  |
AssignedTo | String | 必须 | 指派给 | adminitrator |
ReplyNote | String |  | 注释 |  |
MailTo | String |  | 抄送给, 以','分割 |  |
CaseID | Integer |  | 相关Case |  |
BugStatus | String |  | Bug状态 | Active, Resolved, Closed |

### 从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&ProjectID=154&ModuleID=830&BugID=129591&BugTitle=test&AssignedTo=admin&BugSeverity=1&BugType=%B4%FA%C2%EB%B4%ED%CE%F3&HowFound=%B9%A6%C4%DC%B2%E2%CA%D4&OpenedBuild=test&BugKeyword=test&BugPriority=1&MailTo=admin&PHPSESSID=b87e1bb2806efda076fa8f3fc4a9f43d

### 返回示例

JSON数据格式:

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

CSV数据格式:

successcodeinfoBugID0操作成功129590bbc9a15123f621b6b56e1577e1589bde

## updatecase

### 简单描述

修改Case。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | addcase |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
CaseID | Integer | 必须 | CaseID | 1 |
ProjectID | Integer | 必须 | 项目id | 1 |
ModuleID | Integer | 必须 | 模块id | 1 |
CaseTitle | Integer | 必须 | Case标题 | 1 |
CaseSteps | String | 必须 | Case步骤 |  |
AssignedTo | String | 必须 | 指派给 | adminitrator |
CaseStatus | String | 必须 | Case状态 | Active, Blocked, Investigating, Reviewed |
CasePriority | Integer | 必须 | Case优先级 | 1,2,3,4 |
ReplyNote | String | 必须 | 注释 |  |
BugID | Integer |  | 相关Bug |  |
LinkID | Integer |  | 相关Case |  |
MailTo | String |  | 抄送给, 以','分割 |  |

### 从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&CaseID=82759&ProjectID=24&ModuleID=9795&CaseTitle=欢迎使用BugFree&CaseSteps=test&AssignedTo=admin&CaseStatus=Active&CaseType=功能&CasePriority=1&CaseMethod=手动测试&ReplyNote=test&ScriptedBy=admin&ScriptedDate=2012-10-10&ScriptStatus=未计划&ScriptLocation=test&CasePlan=功能测试&CaseKeyword=test&BugID=1&LinkID=1

### 返回示例

JSON数据格式:

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

CSV数据格式:

successcodeinfoCaseID0操作成功82759dcd44563d3c44e4823f00538f75a597d

## updateresult

### 简单描述

修改Result。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | addresult |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8
$sesseionname | String | 必须 | 以getsid取得的sessionname为键名，sessionid为键值 | $sessionid |

### 应用级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
ResultID | Integer | 必须 | ResultID | 1 |
CaseID | Integer | 必须 | CaseID | 1 |
ResultValue | String | 必须 | Result结果 | Passed, Failed |
ResultStatus | Integer | 必须 | 运行状态 | Completed, Investigating, Resolved |
AssignedTo | String | 必须 | 指派给 | adminitrator |
ReplyNote | String | 必须 | 注释 |  |

### 从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&ResultID=36677&CaseID=1&ResultValue=passed&ResultStatus=Completed&AssignedTo=admin&ReplyNote=test&OpenedBuild=N/A&PHPSESSID=ggq773lqr7f2nmia6qmst10rm0

### 返回示例

JSON数据格式:

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

CSV数据格式:

successcodeinfoResultID0操作成功36677ab6e69cfa84e801195c9661520095514

## getquery

### 简单描述

根据query查找信息。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getquery |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8
$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&format=json&charset=utf8&PHPSESSID=72iltnrjsjph6nm8rmsru4nbd2&QueryID=1&page=1&size=20

### 返回示例

JSON数据格式:

{"status":"success","code":0,"info":"\u64cd\u4f5c\u6210\u529f","BugList":{"129592":{"BugID":"129592","BugTitle":"\u6b22\u8fce\u4f7f\u7528BugFree","ModulePath":"Sample\/Sample Module","BugStatus":"Active","AssignedTo":"Active","MailTo":"","LastEditedBy":"\u7cfb\u7edf\u7ba1\u7406\u5458","LastEditedDate":"2011-11-17 05:35:15","OpenedBy":"\u7cfb\u7edf\u7ba1\u7406\u5458","OpenedDate":"2011-11-17 05:35:15","ResolvedBy":null,"ResolvedDate":null,"DuplicateID":null,"ClosedBy":null,"ClosedDate":null,"LinkID":"","CaseID":"","ResultID":"","ModifiedByID":"\u7cfb\u7edf\u7ba1\u7406\u5458","reopen_count":"0","Resolution":null,"test":"yes","mulitselect":"1,2,3,4","OpenedBuild":"N\/A","BugSubStatus":null,"BugMachine":null,"BugKeyword":null,"ResolvedBuild":null,"BugSeverity":"4","BugPriority":"4","BugType":"\u5176\u4ed6","HowFound":"\u5176\u4ed6","BugOS":null,"BugBrowser":null}},"BugIDs":"129592","page":1,"size":100,"type":"bug"}

CSV数据格式:

successcodeinfoBugListBugIDspagesizetype0操作成功 BugID,BugTitle,ModulePath,BugStatus,AssignedTo,MailTo,LastEditedBy,LastEditedDate,OpenedBy,OpenedDate,ResolvedBy,ResolvedDate,DuplicateID,ClosedBy,ClosedDate,LinkID,CaseID,ResultID,ModifiedByID,reopen_count,Resolution,test,mulitselect,OpenedBuild,BugSubStatus,BugMachine,BugKeyword,ResolvedBuild,BugSeverity,BugPriority,BugType,HowFound,BugOS,BugBrowser "129592","欢迎使用BugFree","Sample/Sample Module","Active","Active","","系统管理员","2011-11-17 05:35:15","系统管理员","2011-11-17 05:35:15","","","","","","","","","系统管理员","0","","yes","1,2,3,4","N/A","","","","","4","4","其他","其他","","" 1295921100bug6c4823ea0c6a25fe1134e3b0ee8c61e0

## query

### 简单描述

查找信息。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | query |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8
$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('format', 'json');
setPostField('charset', 'utf8');
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":{"BugID":"129592","BugTitle":"\u6b22\u8fce\u4f7f\u7528BugFree","ModulePath":"Sample\/Sample Module","BugStatus":"Active","AssignedTo":"Active","MailTo":"","LastEditedBy":"\u7cfb\u7edf\u7ba1\u7406\u5458","LastEditedDate":"2011-11-17 05:35:15","OpenedBy":"\u7cfb\u7edf\u7ba1\u7406\u5458","OpenedDate":"2011-11-17 05:35:15","ResolvedBy":null,"ResolvedDate":null,"DuplicateID":null,"ClosedBy":null,"ClosedDate":null,"LinkID":"","CaseID":"","ResultID":"","ModifiedByID":"\u7cfb\u7edf\u7ba1\u7406\u5458","reopen_count":"0"}},"size":100,"page":1}

CSV数据格式:

successcodeinfoQueryListsizepage0操作成功 BugID,BugTitle,ModulePath,BugStatus,AssignedTo,MailTo,LastEditedBy,LastEditedDate,OpenedBy,OpenedDate,ResolvedBy,ResolvedDate,DuplicateID,ClosedBy,ClosedDate,LinkID,CaseID,ResultID,ModifiedByID,reopen_count "129592","欢迎使用BugFree","Sample/Sample Module","Active","Active","","系统管理员","2011-11-17 05:35:15","系统管理员","2011-11-17 05:35:15","","","","","","","","","系统管理员","0" 1001141e5e45ae71d8c2d9d6cf60f274c314

## findproducts

### 简单描述

查找products。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getquery |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8
$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&format=json

### 返回示例

JSON数据格式:

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

CSV数据格式:

successcodeinfoProductList0操作成功 id,name "24","Sample" e22fe1b756d82daa9ddef35e4041e558

## findmodules

### 简单描述

查找modules。

### 系统级输入参数

名称 | 类型 | 是否必须 | 描述 | 示例值 | 默认值
--- | --- | --- | --- | --- | ---
mode | String | 必须 | API接口名称 | getquery |
format | String | 可选 | 指定响应格式 | json,csv | csv
charset | String | 可选 | 指定请求和响应字符集 | utf8 | utf8
$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&format=json

### 返回示例

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"}]}

CSV数据格式:

successcodeinfoModuleList0操作成功 id,name,product_id,grade,parent_id,full_path_name "9795","Sample Module","24","1","","Sample Module" 73195cd3760a63c08fac96dc6bcc174a