项目
获取工作区项目用户
https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/ project_users
列出给定工作区的所有项目用户。
- 旋度
- 去
- Ruby
- JavaScript
- Python
- 生锈
旋度https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/ project_users\
- h“application / json内容类型:\
- u<电子邮件>:<密码>
要求的事情,犯错:=http.NewRequest(http.MethodGet,
“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users”)
如果犯错! =零{
打印(犯错)
}
要求的事情.头.集(“内容类型”,“application / json;charset = utf - 8”)
要求的事情.SetBasicAuth(“< >邮件”,“<密码>”)
客户端:=&http.客户端{}
分别地,犯错:=客户端.做(要求的事情)
如果犯错! =零{
打印(犯错)
}
推迟分别地.身体.关闭()
身体,犯错:=ioutil.ReadAll(分别地.身体)
如果犯错! =零{
打印(犯错)
}
fmt.打印(字符串(身体))
需要“net/http”
需要“uri”
需要json的
uri=URI(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users”)
http=网::HTTP.新(uri.宿主,uri.港口)
要求的事情=网::HTTP::得到.新(uri.路径)
要求的事情[“内容类型”]=“application / json”
请求.basic_auth“电子邮件> <”,' <密码> '
res=http.请求(要求的事情)
把JSON.解析(res.身体)
获取(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users”,{
方法:“获得”,
头:{
“内容类型”:“application / json”,
“授权”:`基本$ {base64.编码(<电子邮件>:<密码>)}`
},
})
.然后((分别地)= >分别地.json())
.然后((json)= >{
控制台.日志(json);
})
.抓(犯错= >控制台.错误(犯错));
进口请求
从base64进口b64encode
数据=请求.得到(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users”,头={“内容类型”:“application / json”,“授权”:“基本% s”%b64encode(b”<邮件>:<密码> ").解码(“ascii”)})
打印(数据.json())
走读生箱东京;
走读生箱serde_json;
使用reqwest::{客户端};
使用reqwest::头::{CONTENT_TYPE};
#(东京::主要)
异步fn主要()->结果<(),reqwest::错误>{
让客户端=客户端::新().basic_auth(“< >邮件”,“<密码>”);
让json=客户端.请求(方法::得到,“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users”.to_string())
.头(CONTENT_TYPE,“application / json”)
.发送()
.等待?
.json()
.等待?;
println !(“{:# ?}”,json);
好吧(())
}
参数
路径
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
workspace_id | 整数 | 真正的 | 数字类型的工作空间ID |
查询
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
project_ids | 字符串 | 假 | 项目的数字id,以逗号分隔 |
with_group_members | 布尔 | 假 | 包括小组成员 |
响应
- 200
- 400
- 403
- 500
[
{
“在”:{
“描述”:“上次修改是什么时候”,
“类型”:“字符串”
},
“gid”:{
“描述”:“组ID,遗留字段”,
“类型”:“整数”
},
“group_id”:{
“描述”:“组ID”,
“类型”:“整数”
},
“id”:{
“描述”:“项目用户ID”,
“类型”:“整数”
},
“labour_cost”:{
“描述”:“本项目用户的人工成本”,
“类型”:“整数”
},
“经理”:{
“描述”:“用户是否是项目的经理”,
“类型”:“布尔”
},
“project_id”:{
“描述”:“ID”项目,
“类型”:“整数”
},
“速度”:{
“描述”:“项目用户自定义费率”,
“类型”:“数量”,
“可以为空”:真正的
},
“rate_last_updated”:{
“描述”:“最近更新汇率日期”,
“类型”:“字符串”
},
“user_id”:{
“描述”:“用户ID”,
“类型”:“整数”
},
“workspace_id”:{
“描述”:“工作区ID”,
“类型”:“整数”
}
}
]
可能的错误消息:
*未找到工作区
* project_ids不能超过200个元素。
用户无权访问此资源。
内部服务器错误
将一个用户添加到工作区项目用户中
https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/ project_users
为给定的工作空间包含一个项目用户。
- 旋度
- 去
- Ruby
- JavaScript
- Python
- 生锈
旋度-X POST https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/ project_users\
- h“application / json内容类型:\
- d”{labour_cost”:“整数”、“经理”:“布尔”、“project_id”:“整数”,“速度”:“数量”,“rate_change_mode”:“弦”、“user_id”:“整数”}”\
- u<电子邮件>:<密码>
字节,犯错:=json.元帅('{“labour_cost”:“整数”,“经理”:“布尔”,“project_id”:“整数”,“速度”:“数量”,“rate_change_mode”:“字符串”,“user_id”:“整数”}')
如果犯错! =零{
打印(犯错)
}
要求的事情,犯错:=http.NewRequest(http.MethodPost,
“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users”,字节.NewBuffer(字节))
如果犯错! =零{
打印(犯错)
}
要求的事情.头.集(“内容类型”,“application / json;charset = utf - 8”)
要求的事情.SetBasicAuth(“< >邮件”,“<密码>”)
客户端:=&http.客户端{}
分别地,犯错:=客户端.做(要求的事情)
如果犯错! =零{
打印(犯错)
}
推迟分别地.身体.关闭()
身体,犯错:=ioutil.ReadAll(分别地.身体)
如果犯错! =零{
打印(犯错)
}
fmt.打印(字符串(身体))
需要“net/http”
需要“uri”
需要json的
uri=URI(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users”)
http=网::HTTP.新(uri.宿主,uri.港口)
要求的事情=网::HTTP::帖子.新(uri.路径)
要求的事情[“内容类型”]=“application / json”
要求的事情.身体={“labour_cost”:“整数”,“经理”:“布尔”,“project_id”:“整数”,“速度”:“数量”,“rate_change_mode”:“字符串”,“user_id”:“整数”}.to_json
请求.basic_auth“电子邮件> <”,' <密码> '
res=http.请求(要求的事情)
把JSON.解析(res.身体)
获取(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users”,{
方法:“职位”,
身体:{“labour_cost”:“整数”,“经理”:“布尔”,“project_id”:“整数”,“速度”:“数量”,“rate_change_mode”:“字符串”,“user_id”:“整数”},
头:{
“内容类型”:“application / json”,
“授权”:`基本$ {base64.编码(<电子邮件>:<密码>)}`
},
})
.然后((分别地)= >分别地.json())
.然后((json)= >{
控制台.日志(json);
})
.抓(犯错= >控制台.错误(犯错));
进口请求
从base64进口b64encode
数据=请求.帖子(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users”,json=”{labour_cost”:“整数”、“经理”:“布尔”、“project_id”:“整数”,“速度”:“数量”,“rate_change_mode”:“弦”、“user_id”:“整数”}”,头={“内容类型”:“application / json”,“授权”:“基本% s”%b64encode(b”<邮件>:<密码> ").解码(“ascii”)})
打印(数据.json())
走读生箱东京;
走读生箱serde_json;
使用reqwest::{客户端};
使用reqwest::头::{CONTENT_TYPE};
#(东京::主要)
异步fn主要()->结果<(),reqwest::错误>{
让客户端=客户端::新().basic_auth(“< >邮件”,“<密码>”);
让json=客户端.请求(方法::帖子,“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users”.to_string())
.json(&serde_json::json !({“labour_cost”:“整数”,“经理”:“布尔”,“project_id”:“整数”,“速度”:“数量”,“rate_change_mode”:“字符串”,“user_id”:“整数”}))
.头(CONTENT_TYPE,“application / json”)
.发送()
.等待?
.json()
.等待?;
println !(“{:# ?}”,json);
好吧(())
}
参数
路径
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
workspace_id | 整数 | 真正的 | 数字类型的工作空间ID |
身体
的名字 | 类型 | 描述 |
---|---|---|
labour_cost | 整数 | 本项目用户的人工成本 |
经理 | 布尔 | 用户是否将是项目的经理 |
project_id | 整数 | 项目ID |
率 | 数量 | 此业务群组用户的费率 |
rate_change_mode | 字符串 | 此业务群组用户的费率更改模式。可以是start-today, override-current, override-all |
user_id | 整数 | 用户ID |
响应
- 200
- 400
- 403
- 500
{
“在”:{
“描述”:“上次修改是什么时候”,
“类型”:“字符串”
},
“gid”:{
“描述”:“组ID,遗留字段”,
“类型”:“整数”
},
“group_id”:{
“描述”:“组ID”,
“类型”:“整数”
},
“id”:{
“描述”:“项目用户ID”,
“类型”:“整数”
},
“labour_cost”:{
“描述”:“本项目用户的人工成本”,
“类型”:“整数”
},
“经理”:{
“描述”:“用户是否是项目的经理”,
“类型”:“布尔”
},
“project_id”:{
“描述”:“ID”项目,
“类型”:“整数”
},
“速度”:{
“描述”:“项目用户自定义费率”,
“类型”:“数量”,
“可以为空”:真正的
},
“rate_last_updated”:{
“描述”:“最近更新汇率日期”,
“类型”:“字符串”
},
“user_id”:{
“描述”:“用户ID”,
“类型”:“整数”
},
“workspace_id”:{
“描述”:“工作区ID”,
“类型”:“整数”
}
}
可能的错误消息:
*未找到工作区
*无效的project_id
*无效的用户id
用户无权访问此资源。
内部服务器错误
PATCH工作空间中的补丁项目用户
https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/ project_users /{project_user_ids}
为给定的工作空间修补项目用户列表。
- 旋度
- 去
- Ruby
- JavaScript
- Python
- 生锈
旋度-X PATCH https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/ project_users /{project_user_ids}\
- h“application / json内容类型:\
- u<电子邮件>:<密码>
要求的事情,犯错:=http.NewRequest(http.MethodGet,
“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_ids}”)
如果犯错! =零{
打印(犯错)
}
要求的事情.头.集(“内容类型”,“application / json;charset = utf - 8”)
要求的事情.SetBasicAuth(“< >邮件”,“<密码>”)
客户端:=&http.客户端{}
分别地,犯错:=客户端.做(要求的事情)
如果犯错! =零{
打印(犯错)
}
推迟分别地.身体.关闭()
身体,犯错:=ioutil.ReadAll(分别地.身体)
如果犯错! =零{
打印(犯错)
}
fmt.打印(字符串(身体))
需要“net/http”
需要“uri”
需要json的
uri=URI(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_ids} ')
http=网::HTTP.新(uri.宿主,uri.港口)
要求的事情=网::HTTP::补丁.新(uri.路径)
要求的事情[“内容类型”]=“application / json”
请求.basic_auth“电子邮件> <”,' <密码> '
res=http.请求(要求的事情)
把JSON.解析(res.身体)
获取(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_ids}”,{
方法:“补丁”,
头:{
“内容类型”:“application / json”,
“授权”:`基本$ {base64.编码(<电子邮件>:<密码>)}`
},
})
.然后((分别地)= >分别地.json())
.然后((json)= >{
控制台.日志(json);
})
.抓(犯错= >控制台.错误(犯错));
进口请求
从base64进口b64encode
数据=请求.补丁(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_ids} ',头={“内容类型”:“application / json”,“授权”:“基本% s”%b64encode(b”<邮件>:<密码> ").解码(“ascii”)})
打印(数据.json())
走读生箱东京;
走读生箱serde_json;
使用reqwest::{客户端};
使用reqwest::头::{CONTENT_TYPE};
#(东京::主要)
异步fn主要()->结果<(),reqwest::错误>{
让客户端=客户端::新().basic_auth(“< >邮件”,“<密码>”);
让json=客户端.请求(方法::补丁,“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_ids}”.to_string())
.头(CONTENT_TYPE,“application / json”)
.发送()
.等待?
.json()
.等待?;
println !(“{:# ?}”,json);
好吧(())
}
参数
路径
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
workspace_id | 整数 | 真正的 | 数字类型的工作空间ID |
查询
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
project_user_ids | []整数 | 真正的 | 业务群组用户的数字id |
响应
- 200
- 400
- 403
- 500
{
“失败”:{
“描述”:“已发现错误列表”,
“项目”:[
{
“id”:{
“描述”:“机构用户ID”,
“类型”:“整数”
},
“消息”:{
“描述”:"发现错误信息",
“类型”:“字符串”
}
}
]
},
“成功”:{
“描述”:"已成功修补的组织用户id列表",
“类型”:[
“整数”
]
}
}
可能的错误消息:
*无效值作为用户id
*未定义可修补字段
PATCH需要至少一个ID
* PATCH请求一次只能有%d个条目
*无效的操作:
*无效路径格式:
*路径未找到:
*不支持操作({patch_operation} {patch_path})
*无效路径
* /manager需要一个布尔值
* /labour_cost需要int64或null
* /rate期望float64或null
*不支持操作(add /labour_cost)
*不支持操作(add /rate)
*不支持操作(add /manager)
用户无权访问此资源。
内部服务器错误
PUT将用户更新为工作区项目用户
https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/ project_users /{project_user_id}
为给定工作区的项目用户更新数据。
- 旋度
- 去
- Ruby
- JavaScript
- Python
- 生锈
旋度-X PUT https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/ project_users /{project_user_id}\
- h“application / json内容类型:\
- d”{labour_cost”:“整数”、“经理”:“布尔”,“速度”:“数量”,“rate_change_mode”:“字符串”}”\
- u<电子邮件>:<密码>
字节,犯错:=json.元帅('{“labour_cost”:“整数”,“经理”:“布尔”,“速度”:“数量”,“rate_change_mode”:“字符串”}')
如果犯错! =零{
打印(犯错)
}
要求的事情,犯错:=http.NewRequest(http.MethodPut,
“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_id}”,字节.NewBuffer(字节))
如果犯错! =零{
打印(犯错)
}
要求的事情.头.集(“内容类型”,“application / json;charset = utf - 8”)
要求的事情.SetBasicAuth(“< >邮件”,“<密码>”)
客户端:=&http.客户端{}
分别地,犯错:=客户端.做(要求的事情)
如果犯错! =零{
打印(犯错)
}
推迟分别地.身体.关闭()
身体,犯错:=ioutil.ReadAll(分别地.身体)
如果犯错! =零{
打印(犯错)
}
fmt.打印(字符串(身体))
需要“net/http”
需要“uri”
需要json的
uri=URI(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_id} ')
http=网::HTTP.新(uri.宿主,uri.港口)
要求的事情=网::HTTP::把.新(uri.路径)
要求的事情[“内容类型”]=“application / json”
要求的事情.身体={“labour_cost”:“整数”,“经理”:“布尔”,“速度”:“数量”,“rate_change_mode”:“字符串”}.to_json
请求.basic_auth“电子邮件> <”,' <密码> '
res=http.请求(要求的事情)
把JSON.解析(res.身体)
获取(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_id}”,{
方法:“把”,
身体:{“labour_cost”:“整数”,“经理”:“布尔”,“速度”:“数量”,“rate_change_mode”:“字符串”},
头:{
“内容类型”:“application / json”,
“授权”:`基本$ {base64.编码(<电子邮件>:<密码>)}`
},
})
.然后((分别地)= >分别地.json())
.然后((json)= >{
控制台.日志(json);
})
.抓(犯错= >控制台.错误(犯错));
进口请求
从base64进口b64encode
数据=请求.把(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_id} ',json=”{labour_cost”:“整数”、“经理”:“布尔”,“速度”:“数量”,“rate_change_mode”:“字符串”}”,头={“内容类型”:“application / json”,“授权”:“基本% s”%b64encode(b”<邮件>:<密码> ").解码(“ascii”)})
打印(数据.json())
走读生箱东京;
走读生箱serde_json;
使用reqwest::{客户端};
使用reqwest::头::{CONTENT_TYPE};
#(东京::主要)
异步fn主要()->结果<(),reqwest::错误>{
让客户端=客户端::新().basic_auth(“< >邮件”,“<密码>”);
让json=客户端.请求(方法::把,“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_id}”.to_string())
.json(&serde_json::json !({“labour_cost”:“整数”,“经理”:“布尔”,“速度”:“数量”,“rate_change_mode”:“字符串”}))
.头(CONTENT_TYPE,“application / json”)
.发送()
.等待?
.json()
.等待?;
println !(“{:# ?}”,json);
好吧(())
}
参数
路径
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
workspace_id | 整数 | 真正的 | 数字类型的工作空间ID |
project_user_id | 整数 | 真正的 | 数字类型的业务群组用户ID |
身体
的名字 | 类型 | 描述 |
---|---|---|
labour_cost | 整数 | 本项目用户的人工成本 |
经理 | 布尔 | 用户是否将是项目的经理 |
率 | 数量 | 此业务群组用户的费率 |
rate_change_mode | 字符串 | 此业务群组用户的费率更改模式。可以是start-today, override-current, override-all |
响应
- 200
- 400
- 403
- 500
{
“在”:{
“描述”:“上次修改是什么时候”,
“类型”:“字符串”
},
“gid”:{
“描述”:“组ID,遗留字段”,
“类型”:“整数”
},
“group_id”:{
“描述”:“组ID”,
“类型”:“整数”
},
“id”:{
“描述”:“项目用户ID”,
“类型”:“整数”
},
“labour_cost”:{
“描述”:“本项目用户的人工成本”,
“类型”:“整数”
},
“经理”:{
“描述”:“用户是否是项目的经理”,
“类型”:“布尔”
},
“project_id”:{
“描述”:“ID”项目,
“类型”:“整数”
},
“速度”:{
“描述”:“项目用户自定义费率”,
“类型”:“数量”,
“可以为空”:真正的
},
“rate_last_updated”:{
“描述”:“最近更新汇率日期”,
“类型”:“字符串”
},
“user_id”:{
“描述”:“用户ID”,
“类型”:“整数”
},
“workspace_id”:{
“描述”:“工作区ID”,
“类型”:“整数”
}
}
可能的错误消息:
*未找到工作区
*数据缺失
*无效的project_id
*无效的用户id
用户无权访问此资源。
内部服务器错误
DELETE从工作空间项目用户中删除业务群组用户
https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/ project_users /{project_user_id}
删除给定工作区的业务群组用户。
- 旋度
- 去
- Ruby
- JavaScript
- Python
- 生锈
旋度-X DELETE https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/ project_users /{project_user_id}\
- h“application / json内容类型:\
- u<电子邮件>:<密码>
要求的事情,犯错:=http.NewRequest(http.MethodPut,
“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_id}”)
如果犯错! =零{
打印(犯错)
}
要求的事情.头.集(“内容类型”,“application / json;charset = utf - 8”)
要求的事情.SetBasicAuth(“< >邮件”,“<密码>”)
客户端:=&http.客户端{}
分别地,犯错:=客户端.做(要求的事情)
如果犯错! =零{
打印(犯错)
}
推迟分别地.身体.关闭()
身体,犯错:=ioutil.ReadAll(分别地.身体)
如果犯错! =零{
打印(犯错)
}
fmt.打印(字符串(身体))
需要“net/http”
需要“uri”
需要json的
uri=URI(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_id} ')
http=网::HTTP.新(uri.宿主,uri.港口)
要求的事情=网::HTTP::删除.新(uri.路径)
要求的事情[“内容类型”]=“application / json”
请求.basic_auth“电子邮件> <”,' <密码> '
res=http.请求(要求的事情)
把JSON.解析(res.身体)
获取(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_id}”,{
方法:“删除”,
头:{
“内容类型”:“application / json”,
“授权”:`基本$ {base64.编码(<电子邮件>:<密码>)}`
},
})
.然后((分别地)= >分别地.json())
.然后((json)= >{
控制台.日志(json);
})
.抓(犯错= >控制台.错误(犯错));
进口请求
从base64进口b64encode
数据=请求.删除(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_id} ',头={“内容类型”:“application / json”,“授权”:“基本% s”%b64encode(b”<邮件>:<密码> ").解码(“ascii”)})
打印(数据.json())
走读生箱东京;
走读生箱serde_json;
使用reqwest::{客户端};
使用reqwest::头::{CONTENT_TYPE};
#(东京::主要)
异步fn主要()->结果<(),reqwest::错误>{
让客户端=客户端::新().basic_auth(“< >邮件”,“<密码>”);
让json=客户端.请求(方法::删除,“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} / project_users / {project_user_id}”.to_string())
.头(CONTENT_TYPE,“application / json”)
.发送()
.等待?
.json()
.等待?;
println !(“{:# ?}”,json);
好吧(())
}
参数
路径
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
workspace_id | 整数 | 真正的 | 数字类型的工作空间ID |
project_user_id | 整数 | 真正的 | 数字类型的业务群组用户ID |
响应
- 200
- 400
- 403
- 500
成功操作。
可能的错误消息:
*未找到工作区
*项目用户无法找到/访问
*无效的project_id
用户无权访问此资源。
内部服务器错误
得到WorkspaceProjects
https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/项目
获取给定工作区的项目。
- 旋度
- 去
- Ruby
- JavaScript
- Python
- 生锈
旋度https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/项目\
- h“application / json内容类型:\
- u<电子邮件>:<密码>
要求的事情,犯错:=http.NewRequest(http.MethodGet,
“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目”)
如果犯错! =零{
打印(犯错)
}
要求的事情.头.集(“内容类型”,“application / json;charset = utf - 8”)
要求的事情.SetBasicAuth(“< >邮件”,“<密码>”)
客户端:=&http.客户端{}
分别地,犯错:=客户端.做(要求的事情)
如果犯错! =零{
打印(犯错)
}
推迟分别地.身体.关闭()
身体,犯错:=ioutil.ReadAll(分别地.身体)
如果犯错! =零{
打印(犯错)
}
fmt.打印(字符串(身体))
需要“net/http”
需要“uri”
需要json的
uri=URI(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目”)
http=网::HTTP.新(uri.宿主,uri.港口)
要求的事情=网::HTTP::得到.新(uri.路径)
要求的事情[“内容类型”]=“application / json”
请求.basic_auth“电子邮件> <”,' <密码> '
res=http.请求(要求的事情)
把JSON.解析(res.身体)
获取(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目”,{
方法:“获得”,
头:{
“内容类型”:“application / json”,
“授权”:`基本$ {base64.编码(<电子邮件>:<密码>)}`
},
})
.然后((分别地)= >分别地.json())
.然后((json)= >{
控制台.日志(json);
})
.抓(犯错= >控制台.错误(犯错));
进口请求
从base64进口b64encode
数据=请求.得到(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目”,头={“内容类型”:“application / json”,“授权”:“基本% s”%b64encode(b”<邮件>:<密码> ").解码(“ascii”)})
打印(数据.json())
走读生箱东京;
走读生箱serde_json;
使用reqwest::{客户端};
使用reqwest::头::{CONTENT_TYPE};
#(东京::主要)
异步fn主要()->结果<(),reqwest::错误>{
让客户端=客户端::新().basic_auth(“< >邮件”,“<密码>”);
让json=客户端.请求(方法::得到,“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目”.to_string())
.头(CONTENT_TYPE,“application / json”)
.发送()
.等待?
.json()
.等待?;
println !(“{:# ?}”,json);
好吧(())
}
参数
路径
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
workspace_id | 整数 | 真正的 | 数字类型的工作空间ID |
查询
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
活跃的 | 布尔 | 假 | 活跃的 |
自 | 整数 | 假 | 使用UNIX时间戳检索自此日期以来创建/修改/删除的项目。 |
计费 | 布尔 | 假 | 计费 |
user_id | 数组 | 假 | user_id |
client_id | 数组 | 假 | client_id |
group_ids | 数组 | 假 | group_ids |
的名字 | 字符串 | 真正的 | 的名字 |
页面 | 整数 | 真正的 | 页面 |
sort_field | 字符串 | 真正的 | sort_field |
sort_order | 字符串 | 真正的 | sort_order |
only_templates | 布尔 | 真正的 | only_templates |
per_page | 整数 | 假 | 每页的记录数。 |
响应
- 200
- 403
- 500
[
{
“活跃”:{
“描述”:“项目是活动的还是存档的”,
“类型”:“布尔”
},
“actual_hours”:{
“描述”:“实际小时”,
“类型”:“整数”,
“可以为空”:真正的
},
“在”:{
“描述”:“最后更新日期”,
“类型”:“字符串”
},
“auto_estimates”:{
“描述”:“评估是否基于任务时间,高级功能”,
“类型”:“布尔”,
“可以为空”:真正的
},
“计费”:{
“描述”:“项目是否收费,是否有优质功能”,
“类型”:“布尔”,
“可以为空”:真正的
},
“cid”:{
“描述”:"客户端ID遗留字段",
“类型”:“整数”
},
“client_id”:{
“描述”:“客户机ID”,
“类型”:“整数”,
“可以为空”:真正的
},
“颜色”:{
“描述”:“颜色”,
“类型”:“字符串”
},
“created_at”:{
“描述”:“创建日期”,
“类型”:“字符串”
},
“货币”:{
“描述”:“货币,高级功能”,
“类型”:“字符串”,
“可以为空”:真正的
},
“current_period”:{
“对象”:{
“end_date”:{
“类型”:“字符串”
},
“start_date”:{
“类型”:“字符串”
}
},
“描述”:“当前项目期间,特惠功能”
},
“end_date”:{
“描述”:“结束日期”,
“类型”:“字符串”
},
“estimated_hours”:{
“描述”:“估计小时”,
“类型”:“整数”,
“可以为空”:真正的
},
“first_time_entry”:{
“描述”:“第一次参加这个项目。只有在使用with_first_time_entry请求时才包含它",
“类型”:“字符串”
},
“fixed_fee”:{
“描述”:“固定费用,高级功能”,
“类型”:“数量”
},
“id”:{
“描述”:“ID”项目,
“类型”:“整数”
},
“is_private”:{
“描述”:“该项目是否属于私人项目”,
“类型”:“布尔”
},
“名称”:{
“描述”:“名称”,
“类型”:“字符串”
},
“速度”:{
“描述”:“每小时率”,
“类型”:“数量”
},
“rate_last_updated”:{
“描述”:“最后调整利率日期”,
“类型”:“字符串”,
“可以为空”:真正的
},
“重复”:{
“描述”:“项目是否反复出现,是否是优质功能”,
“类型”:“布尔”
},
“recurring_parameters”:{
“描述”:“项目重复参数,高级功能”,
“项目”:[
{
“custom_period”:{
“描述”:自定义句点,当“period”字段为“Custom”时使用,
“类型”:“整数”
},
“estimated_seconds”:{
“描述”:“估计秒”,
“类型”:“整数”
},
“parameter_end_date”:{
“描述”:“重复结束日期”,
“类型”:“字符串”,
“可以为空”:真正的
},
“parameter_start_date”:{
“描述”:“重复开始日期”,
“类型”:“字符串”
},
“期”:{
“描述”:“期”,
“类型”:“字符串”
},
“project_start_date”:{
“描述”:“项目开始日期”,
“类型”:“字符串”
}
}
]
},
“server_deleted_at”:{
“描述”:“删除日期”,
“类型”:“字符串”,
“可以为空”:真正的
},
“start_date”:{
“描述”:“开始日期”,
“类型”:“字符串”
},
“模板”:{
“描述”:“项目是否作为模板、特惠功能”,
“类型”:“布尔”,
“可以为空”:真正的
},
“wid”:{
“描述”:“工作区ID遗留字段”,
“类型”:“整数”
},
“workspace_id”:{
“描述”:“工作区ID”,
“类型”:“整数”
}
}
]
用户无权访问此资源。
内部服务器错误
帖子WorkspaceProjects
https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/项目
为给定的工作空间创建项目。
- 旋度
- 去
- Ruby
- JavaScript
- Python
- 生锈
旋度-X POST https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/项目\
- h“application / json内容类型:\
- d”{“活跃”:“布尔”,“auto_estimates”:“布尔”、“计费”:“布尔”、“cid”:“整数”、“client_id”:“整数”、“client_name”:“字符串”,“色”:“弦”、“货币”:“弦”、“end_date”:“弦”、“estimated_hours”:“整数”、“fixed_fee”:“数量”,“is_private”:“布尔”,“名字”:“字符串”,“速度”:“数量”,“rate_change_mode”:“字符串”,“重复”:“布尔”、“recurring_parameters”:{“custom_period”:“整数”、“时期”:“字符串”,“project_start_date”:“字符串”},“start_date”:“弦”、“模板”:“布尔”、“template_id”:“在羊毛"}\
- u<电子邮件>:<密码>
字节,犯错:=json.元帅('{“活跃”:“布尔”,“auto_estimates”:“布尔”,“计费”:“布尔”,“cid”:“整数”,“client_id”:“整数”,“client_name”:“字符串”,“颜色”:“字符串”,“货币”:“字符串”,“end_date”:“字符串”,“estimated_hours”:“整数”,“fixed_fee”:“数量”,“is_private”:“布尔”,“名称”:“字符串”,“速度”:“数量”,“rate_change_mode”:“字符串”,“重复”:“布尔”,“recurring_parameters”:{“custom_period”:“整数”,“期”:“字符串”,“project_start_date”:“字符串”},“start_date”:“字符串”,“模板”:“布尔”,“template_id”:“整数”}')
如果犯错! =零{
打印(犯错)
}
要求的事情,犯错:=http.NewRequest(http.MethodPost,
“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目”,字节.NewBuffer(字节))
如果犯错! =零{
打印(犯错)
}
要求的事情.头.集(“内容类型”,“application / json;charset = utf - 8”)
要求的事情.SetBasicAuth(“< >邮件”,“<密码>”)
客户端:=&http.客户端{}
分别地,犯错:=客户端.做(要求的事情)
如果犯错! =零{
打印(犯错)
}
推迟分别地.身体.关闭()
身体,犯错:=ioutil.ReadAll(分别地.身体)
如果犯错! =零{
打印(犯错)
}
fmt.打印(字符串(身体))
需要“net/http”
需要“uri”
需要json的
uri=URI(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目”)
http=网::HTTP.新(uri.宿主,uri.港口)
要求的事情=网::HTTP::帖子.新(uri.路径)
要求的事情[“内容类型”]=“application / json”
要求的事情.身体={“活跃”:“布尔”,“auto_estimates”:“布尔”,“计费”:“布尔”,“cid”:“整数”,“client_id”:“整数”,“client_name”:“字符串”,“颜色”:“字符串”,“货币”:“字符串”,“end_date”:“字符串”,“estimated_hours”:“整数”,“fixed_fee”:“数量”,“is_private”:“布尔”,“名称”:“字符串”,“速度”:“数量”,“rate_change_mode”:“字符串”,“重复”:“布尔”,“recurring_parameters”:{“custom_period”:“整数”,“期”:“字符串”,“project_start_date”:“字符串”},“start_date”:“字符串”,“模板”:“布尔”,“template_id”:“整数”}.to_json
请求.basic_auth“电子邮件> <”,' <密码> '
res=http.请求(要求的事情)
把JSON.解析(res.身体)
获取(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目”,{
方法:“职位”,
身体:{“活跃”:“布尔”,“auto_estimates”:“布尔”,“计费”:“布尔”,“cid”:“整数”,“client_id”:“整数”,“client_name”:“字符串”,“颜色”:“字符串”,“货币”:“字符串”,“end_date”:“字符串”,“estimated_hours”:“整数”,“fixed_fee”:“数量”,“is_private”:“布尔”,“名称”:“字符串”,“速度”:“数量”,“rate_change_mode”:“字符串”,“重复”:“布尔”,“recurring_parameters”:{“custom_period”:“整数”,“期”:“字符串”,“project_start_date”:“字符串”},“start_date”:“字符串”,“模板”:“布尔”,“template_id”:“整数”},
头:{
“内容类型”:“application / json”,
“授权”:`基本$ {base64.编码(<电子邮件>:<密码>)}`
},
})
.然后((分别地)= >分别地.json())
.然后((json)= >{
控制台.日志(json);
})
.抓(犯错= >控制台.错误(犯错));
进口请求
从base64进口b64encode
数据=请求.帖子(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目”,json=”{“活跃”:“布尔”,“auto_estimates”:“布尔”、“计费”:“布尔”、“cid”:“整数”、“client_id”:“整数”、“client_name”:“字符串”,“色”:“弦”、“货币”:“弦”、“end_date”:“弦”、“estimated_hours”:“整数”、“fixed_fee”:“数量”,“is_private”:“布尔”,“名字”:“字符串”,“速度”:“数量”,“rate_change_mode”:“字符串”,“重复”:“布尔”、“recurring_parameters”:{“custom_period”:“整数”、“时期”:“字符串”,“project_start_date”:“字符串”},“start_date”:“弦”、“模板”:“布尔”、“template_id”:“在羊毛"},头={“内容类型”:“application / json”,“授权”:“基本% s”%b64encode(b”<邮件>:<密码> ").解码(“ascii”)})
打印(数据.json())
走读生箱东京;
走读生箱serde_json;
使用reqwest::{客户端};
使用reqwest::头::{CONTENT_TYPE};
#(东京::主要)
异步fn主要()->结果<(),reqwest::错误>{
让客户端=客户端::新().basic_auth(“< >邮件”,“<密码>”);
让json=客户端.请求(方法::帖子,“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目”.to_string())
.json(&serde_json::json !({“活跃”:“布尔”,“auto_estimates”:“布尔”,“计费”:“布尔”,“cid”:“整数”,“client_id”:“整数”,“client_name”:“字符串”,“颜色”:“字符串”,“货币”:“字符串”,“end_date”:“字符串”,“estimated_hours”:“整数”,“fixed_fee”:“数量”,“is_private”:“布尔”,“名称”:“字符串”,“速度”:“数量”,“rate_change_mode”:“字符串”,“重复”:“布尔”,“recurring_parameters”:{“custom_period”:“整数”,“期”:“字符串”,“project_start_date”:“字符串”},“start_date”:“字符串”,“模板”:“布尔”,“template_id”:“整数”}))
.头(CONTENT_TYPE,“application / json”)
.发送()
.等待?
.json()
.等待?;
println !(“{:# ?}”,json);
好吧(())
}
参数
路径
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
workspace_id | 整数 | 真正的 | 数字类型的工作空间ID |
身体
的名字 | 类型 | 描述 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
活跃的 | 布尔 | 项目是活动的还是存档的 | ||||||||||||
auto_estimates | 布尔 | 评估是否基于任务时间、可选的、高级功能 | ||||||||||||
计费 | 布尔 | 项目是否设置为可计费、可选、高级功能 | ||||||||||||
cid | 整数 | 客户端ID,遗留 | ||||||||||||
client_id | 整数 | 客户端ID,可选 | ||||||||||||
client_name | 字符串 | 客户端名称,可选 | ||||||||||||
颜色 | 字符串 | 项目的颜色 | ||||||||||||
货币 | 字符串 | 项目货币,可选,高级功能 | ||||||||||||
end_date | 字符串 | 项目时间框架的结束日期 | ||||||||||||
estimated_hours | 整数 | 估计时间,可选,高级功能 | ||||||||||||
fixed_fee | 数量 | 项目固定收费,可选,溢价功能 | ||||||||||||
is_private | 布尔 | 项目是否私有 | ||||||||||||
的名字 | 字符串 | 项目名称 | ||||||||||||
率 | 数量 | 每小时收费,可选,高级功能 | ||||||||||||
rate_change_mode | 字符串 | 费率变化模式,可选,高级功能。可以是start-today, override-current, override-all | ||||||||||||
反复出现的 | 布尔 | 项目是循环的,可选的,高级功能 | ||||||||||||
recurring_parameters |
|
项目重复参数,可选,高级功能 | ||||||||||||
start_date | 字符串 | 项目时间框架的开始日期 | ||||||||||||
模板 | 布尔 | 项目是模板,可选,高级功能 | ||||||||||||
template_id | 整数 | 模板ID,可选 |
响应
- 200
- 403
- 500
{
“活跃”:{
“描述”:“项目是活动的还是存档的”,
“类型”:“布尔”
},
“actual_hours”:{
“描述”:“实际小时”,
“类型”:“整数”,
“可以为空”:真正的
},
“在”:{
“描述”:“最后更新日期”,
“类型”:“字符串”
},
“auto_estimates”:{
“描述”:“评估是否基于任务时间,高级功能”,
“类型”:“布尔”,
“可以为空”:真正的
},
“计费”:{
“描述”:“项目是否收费,是否有优质功能”,
“类型”:“布尔”,
“可以为空”:真正的
},
“cid”:{
“描述”:"客户端ID遗留字段",
“类型”:“整数”
},
“client_id”:{
“描述”:“客户机ID”,
“类型”:“整数”,
“可以为空”:真正的
},
“颜色”:{
“描述”:“颜色”,
“类型”:“字符串”
},
“created_at”:{
“描述”:“创建日期”,
“类型”:“字符串”
},
“货币”:{
“描述”:“货币,高级功能”,
“类型”:“字符串”,
“可以为空”:真正的
},
“current_period”:{
“对象”:{
“end_date”:{
“类型”:“字符串”
},
“start_date”:{
“类型”:“字符串”
}
},
“描述”:“当前项目期间,特惠功能”
},
“end_date”:{
“描述”:“结束日期”,
“类型”:“字符串”
},
“estimated_hours”:{
“描述”:“估计小时”,
“类型”:“整数”,
“可以为空”:真正的
},
“first_time_entry”:{
“描述”:“第一次参加这个项目。只有在使用with_first_time_entry请求时才包含它",
“类型”:“字符串”
},
“fixed_fee”:{
“描述”:“固定费用,高级功能”,
“类型”:“数量”
},
“id”:{
“描述”:“ID”项目,
“类型”:“整数”
},
“is_private”:{
“描述”:“该项目是否属于私人项目”,
“类型”:“布尔”
},
“名称”:{
“描述”:“名称”,
“类型”:“字符串”
},
“速度”:{
“描述”:“每小时率”,
“类型”:“数量”
},
“rate_last_updated”:{
“描述”:“最后调整利率日期”,
“类型”:“字符串”,
“可以为空”:真正的
},
“重复”:{
“描述”:“项目是否反复出现,是否是优质功能”,
“类型”:“布尔”
},
“recurring_parameters”:{
“描述”:“项目重复参数,高级功能”,
“项目”:[
{
“custom_period”:{
“描述”:自定义句点,当“period”字段为“Custom”时使用,
“类型”:“整数”
},
“estimated_seconds”:{
“描述”:“估计秒”,
“类型”:“整数”
},
“parameter_end_date”:{
“描述”:“重复结束日期”,
“类型”:“字符串”,
“可以为空”:真正的
},
“parameter_start_date”:{
“描述”:“重复开始日期”,
“类型”:“字符串”
},
“期”:{
“描述”:“期”,
“类型”:“字符串”
},
“project_start_date”:{
“描述”:“项目开始日期”,
“类型”:“字符串”
}
}
]
},
“server_deleted_at”:{
“描述”:“删除日期”,
“类型”:“字符串”,
“可以为空”:真正的
},
“start_date”:{
“描述”:“开始日期”,
“类型”:“字符串”
},
“模板”:{
“描述”:“项目是否作为模板、特惠功能”,
“类型”:“布尔”,
“可以为空”:真正的
},
“wid”:{
“描述”:“工作区ID遗留字段”,
“类型”:“整数”
},
“workspace_id”:{
“描述”:“工作区ID”,
“类型”:“整数”
}
}
用户无权访问此资源。
内部服务器错误
补丁WorkspaceProjects
https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/项目/{project_ids}
批量编辑工作区项目。
- 旋度
- 去
- Ruby
- JavaScript
- Python
- 生锈
旋度-X PATCH https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/项目/{project_ids}\
- h“application / json内容类型:\
- d'{"array":[{"op":{"description":"要执行的补丁操作,"添加"、"移除"、"替换"之一,"type":"string"},"path":{"description":"补丁字段的路径,示例:" /name"","type":"string"},"value":{"object":{},"description":"添加或替换操作时设置的值,示例:"新名称"。值类型实际上取决于正在修补的字段。”}}]}'\
- u<电子邮件>:<密码>
字节,犯错:=json.元帅('{“数组”:[{“人事处”:{“描述”:“要执行的补丁操作,其中之一”添加”、“删除”、“取代"",“类型”:“字符串”},“路径”:{“描述”:"补丁字段的路径,示例:"/的名字"",“类型”:“字符串”},“价值”:{“对象”:{},“描述”:当操作为时要设置的值添加或者取代,例如:"新名字”。值类型实际上取决于正在修补的字段。”}}]}')
如果犯错! =零{
打印(犯错)
}
要求的事情,犯错:=http.NewRequest(http.MethodGet,
“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_ids}”,字节.NewBuffer(字节))
如果犯错! =零{
打印(犯错)
}
要求的事情.头.集(“内容类型”,“application / json;charset = utf - 8”)
要求的事情.SetBasicAuth(“< >邮件”,“<密码>”)
客户端:=&http.客户端{}
分别地,犯错:=客户端.做(要求的事情)
如果犯错! =零{
打印(犯错)
}
推迟分别地.身体.关闭()
身体,犯错:=ioutil.ReadAll(分别地.身体)
如果犯错! =零{
打印(犯错)
}
fmt.打印(字符串(身体))
需要“net/http”
需要“uri”
需要json的
uri=URI(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_ids} ')
http=网::HTTP.新(uri.宿主,uri.港口)
要求的事情=网::HTTP::补丁.新(uri.路径)
要求的事情[“内容类型”]=“application / json”
要求的事情.身体={“数组”:[{“人事处”:{“描述”:“要执行的补丁操作,其中之一”添加”、“删除”、“取代"",“类型”:“字符串”},“路径”:{“描述”:"补丁字段的路径,示例:"/的名字"",“类型”:“字符串”},“价值”:{“对象”:{},“描述”:“当操作为时要设置的值”添加或者取代,例如:"新名字”。值类型实际上取决于正在修补的字段。”}}]}.to_json
请求.basic_auth“电子邮件> <”,' <密码> '
res=http.请求(要求的事情)
把JSON.解析(res.身体)
获取(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_ids}”,{
方法:“补丁”,
身体:{“数组”:[{“人事处”:{“描述”:“要执行的补丁操作,其中之一”添加”、“删除”、“取代"",“类型”:“字符串”},“路径”:{“描述”:"补丁字段的路径,示例:"/的名字"",“类型”:“字符串”},“价值”:{“对象”:{},“描述”:当操作为时要设置的值添加或者取代,例如:"新的名字”。值类型实际上取决于正在修补的字段。”}}]},
头:{
“内容类型”:“application / json”,
“授权”:`基本$ {base64.编码(<电子邮件>:<密码>)}`
},
})
.然后((分别地)= >分别地.json())
.然后((json)= >{
控制台.日志(json);
})
.抓(犯错= >控制台.错误(犯错));
进口请求
从base64进口b64encode
数据=请求.补丁(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_ids} ',json='{"array":[{"op":{"description":"要执行的补丁操作,"添加"、"移除"、"替换"之一,"type":"string"},"path":{"description":"补丁字段的路径,示例:" /name"","type":"string"},"value":{"object":{},"description":"添加或替换操作时设置的值,示例:"新名称"。值类型实际上取决于正在修补的字段。”}}]}',头={“内容类型”:“application / json”,“授权”:“基本% s”%b64encode(b”<邮件>:<密码> ").解码(“ascii”)})
打印(数据.json())
走读生箱东京;
走读生箱serde_json;
使用reqwest::{客户端};
使用reqwest::头::{CONTENT_TYPE};
#(东京::主要)
异步fn主要()->结果<(),reqwest::错误>{
让客户端=客户端::新().basic_auth(“< >邮件”,“<密码>”);
让json=客户端.请求(方法::补丁,“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_ids}”.to_string())
.json(&serde_json::json !({“数组”:[{“人事处”:{“描述”:“要执行的补丁操作,其中之一”添加”、“删除”、“取代"",“类型”:“字符串”},“路径”:{“描述”:"补丁字段的路径,示例:"/的名字"",“类型”:“字符串”},“价值”:{“对象”:{},“描述”:当操作为时要设置的值添加或者取代,例如:"新的名字”。值类型实际上取决于正在修补的字段。”}}]}))
.头(CONTENT_TYPE,“application / json”)
.发送()
.等待?
.json()
.等待?;
println !(“{:# ?}”,json);
好吧(())
}
参数
路径
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
workspace_id | 整数 | 真正的 | 数字类型的工作空间ID |
project_ids | 字符串 | 真正的 | 项目id的数字id,以“,”分隔。例如:204301830, 202700150, 202687559 |
身体
的名字 | 类型 | 描述 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
数组 | 的数组
|
批处理操作数组 |
响应
- 200
- 500
{
“失败”:{
“项目”:[
{
“id”:{
“类型”:“整数”
},
“消息”:{
“类型”:“字符串”
}
}
]
},
“成功”:{
“类型”:[
“整数”
]
}
}
内部服务器错误
得到WorkspaceProject
https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/项目/{project_id}
获取给定工作区的项目。
- 旋度
- 去
- Ruby
- JavaScript
- Python
- 生锈
旋度https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/项目/{project_id}\
- h“application / json内容类型:\
- u<电子邮件>:<密码>
要求的事情,犯错:=http.NewRequest(http.MethodGet,
“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id}”)
如果犯错! =零{
打印(犯错)
}
要求的事情.头.集(“内容类型”,“application / json;charset = utf - 8”)
要求的事情.SetBasicAuth(“< >邮件”,“<密码>”)
客户端:=&http.客户端{}
分别地,犯错:=客户端.做(要求的事情)
如果犯错! =零{
打印(犯错)
}
推迟分别地.身体.关闭()
身体,犯错:=ioutil.ReadAll(分别地.身体)
如果犯错! =零{
打印(犯错)
}
fmt.打印(字符串(身体))
需要“net/http”
需要“uri”
需要json的
uri=URI(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id} ')
http=网::HTTP.新(uri.宿主,uri.港口)
要求的事情=网::HTTP::得到.新(uri.路径)
要求的事情[“内容类型”]=“application / json”
请求.basic_auth“电子邮件> <”,' <密码> '
res=http.请求(要求的事情)
把JSON.解析(res.身体)
获取(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id}”,{
方法:“获得”,
头:{
“内容类型”:“application / json”,
“授权”:`基本$ {base64.编码(<电子邮件>:<密码>)}`
},
})
.然后((分别地)= >分别地.json())
.然后((json)= >{
控制台.日志(json);
})
.抓(犯错= >控制台.错误(犯错));
进口请求
从base64进口b64encode
数据=请求.得到(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id} ',头={“内容类型”:“application / json”,“授权”:“基本% s”%b64encode(b”<邮件>:<密码> ").解码(“ascii”)})
打印(数据.json())
走读生箱东京;
走读生箱serde_json;
使用reqwest::{客户端};
使用reqwest::头::{CONTENT_TYPE};
#(东京::主要)
异步fn主要()->结果<(),reqwest::错误>{
让客户端=客户端::新().basic_auth(“< >邮件”,“<密码>”);
让json=客户端.请求(方法::得到,“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id}”.to_string())
.头(CONTENT_TYPE,“application / json”)
.发送()
.等待?
.json()
.等待?;
println !(“{:# ?}”,json);
好吧(())
}
参数
路径
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
workspace_id | 整数 | 真正的 | 数字类型的工作空间ID |
project_id | 整数 | 真正的 | 项目的数字ID |
查询
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
with_first_time_entry | 布尔 | 假 | 将包括项目的第一次进入日期 |
响应
- 200
- 403
- 500
{
“活跃”:{
“描述”:“项目是活动的还是存档的”,
“类型”:“布尔”
},
“actual_hours”:{
“描述”:“实际小时”,
“类型”:“整数”,
“可以为空”:真正的
},
“在”:{
“描述”:“最后更新日期”,
“类型”:“字符串”
},
“auto_estimates”:{
“描述”:“评估是否基于任务时间,高级功能”,
“类型”:“布尔”,
“可以为空”:真正的
},
“计费”:{
“描述”:“项目是否收费,是否有优质功能”,
“类型”:“布尔”,
“可以为空”:真正的
},
“cid”:{
“描述”:"客户端ID遗留字段",
“类型”:“整数”
},
“client_id”:{
“描述”:“客户机ID”,
“类型”:“整数”,
“可以为空”:真正的
},
“颜色”:{
“描述”:“颜色”,
“类型”:“字符串”
},
“created_at”:{
“描述”:“创建日期”,
“类型”:“字符串”
},
“货币”:{
“描述”:“货币,高级功能”,
“类型”:“字符串”,
“可以为空”:真正的
},
“current_period”:{
“对象”:{
“end_date”:{
“类型”:“字符串”
},
“start_date”:{
“类型”:“字符串”
}
},
“描述”:“当前项目期间,特惠功能”
},
“end_date”:{
“描述”:“结束日期”,
“类型”:“字符串”
},
“estimated_hours”:{
“描述”:“估计小时”,
“类型”:“整数”,
“可以为空”:真正的
},
“first_time_entry”:{
“描述”:“第一次参加这个项目。只有在使用with_first_time_entry请求时才包含它",
“类型”:“字符串”
},
“fixed_fee”:{
“描述”:“固定费用,高级功能”,
“类型”:“数量”
},
“id”:{
“描述”:“ID”项目,
“类型”:“整数”
},
“is_private”:{
“描述”:“该项目是否属于私人项目”,
“类型”:“布尔”
},
“名称”:{
“描述”:“名称”,
“类型”:“字符串”
},
“速度”:{
“描述”:“每小时率”,
“类型”:“数量”
},
“rate_last_updated”:{
“描述”:“最后调整利率日期”,
“类型”:“字符串”,
“可以为空”:真正的
},
“重复”:{
“描述”:“项目是否反复出现,是否是优质功能”,
“类型”:“布尔”
},
“recurring_parameters”:{
“描述”:“项目重复参数,高级功能”,
“项目”:[
{
“custom_period”:{
“描述”:自定义句点,当“period”字段为“Custom”时使用,
“类型”:“整数”
},
“estimated_seconds”:{
“描述”:“估计秒”,
“类型”:“整数”
},
“parameter_end_date”:{
“描述”:“重复结束日期”,
“类型”:“字符串”,
“可以为空”:真正的
},
“parameter_start_date”:{
“描述”:“重复开始日期”,
“类型”:“字符串”
},
“期”:{
“描述”:“期”,
“类型”:“字符串”
},
“project_start_date”:{
“描述”:“项目开始日期”,
“类型”:“字符串”
}
}
]
},
“server_deleted_at”:{
“描述”:“删除日期”,
“类型”:“字符串”,
“可以为空”:真正的
},
“start_date”:{
“描述”:“开始日期”,
“类型”:“字符串”
},
“模板”:{
“描述”:“项目是否作为模板、特惠功能”,
“类型”:“布尔”,
“可以为空”:真正的
},
“wid”:{
“描述”:“工作区ID遗留字段”,
“类型”:“整数”
},
“workspace_id”:{
“描述”:“工作区ID”,
“类型”:“整数”
}
}
用户无权访问此资源。
内部服务器错误
把WorkspaceProject
https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/项目/{project_id}
更新给定工作区的项目。
- 旋度
- 去
- Ruby
- JavaScript
- Python
- 生锈
旋度-X PUT https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/项目/{project_id}\
- h“application / json内容类型:\
- d”{“活跃”:“布尔”,“auto_estimates”:“布尔”、“计费”:“布尔”、“cid”:“整数”、“client_id”:“整数”、“client_name”:“字符串”,“色”:“弦”、“货币”:“弦”、“end_date”:“弦”、“estimated_hours”:“整数”、“fixed_fee”:“数量”,“is_private”:“布尔”,“名字”:“字符串”,“速度”:“数量”,“rate_change_mode”:“字符串”,“重复”:“布尔”、“recurring_parameters”:{“custom_period”:“整数”、“时期”:“字符串”,“project_start_date”:“字符串”},“start_date”:“弦”、“模板”:“布尔”、“template_id”:“在羊毛"}\
- u<电子邮件>:<密码>
字节,犯错:=json.元帅('{“活跃”:“布尔”,“auto_estimates”:“布尔”,“计费”:“布尔”,“cid”:“整数”,“client_id”:“整数”,“client_name”:“字符串”,“颜色”:“字符串”,“货币”:“字符串”,“end_date”:“字符串”,“estimated_hours”:“整数”,“fixed_fee”:“数量”,“is_private”:“布尔”,“名称”:“字符串”,“速度”:“数量”,“rate_change_mode”:“字符串”,“重复”:“布尔”,“recurring_parameters”:{“custom_period”:“整数”,“期”:“字符串”,“project_start_date”:“字符串”},“start_date”:“字符串”,“模板”:“布尔”,“template_id”:“整数”}')
如果犯错! =零{
打印(犯错)
}
要求的事情,犯错:=http.NewRequest(http.MethodPut,
“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id}”,字节.NewBuffer(字节))
如果犯错! =零{
打印(犯错)
}
要求的事情.头.集(“内容类型”,“application / json;charset = utf - 8”)
要求的事情.SetBasicAuth(“< >邮件”,“<密码>”)
客户端:=&http.客户端{}
分别地,犯错:=客户端.做(要求的事情)
如果犯错! =零{
打印(犯错)
}
推迟分别地.身体.关闭()
身体,犯错:=ioutil.ReadAll(分别地.身体)
如果犯错! =零{
打印(犯错)
}
fmt.打印(字符串(身体))
需要“net/http”
需要“uri”
需要json的
uri=URI(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id} ')
http=网::HTTP.新(uri.宿主,uri.港口)
要求的事情=网::HTTP::把.新(uri.路径)
要求的事情[“内容类型”]=“application / json”
要求的事情.身体={“活跃”:“布尔”,“auto_estimates”:“布尔”,“计费”:“布尔”,“cid”:“整数”,“client_id”:“整数”,“client_name”:“字符串”,“颜色”:“字符串”,“货币”:“字符串”,“end_date”:“字符串”,“estimated_hours”:“整数”,“fixed_fee”:“数量”,“is_private”:“布尔”,“名称”:“字符串”,“速度”:“数量”,“rate_change_mode”:“字符串”,“重复”:“布尔”,“recurring_parameters”:{“custom_period”:“整数”,“期”:“字符串”,“project_start_date”:“字符串”},“start_date”:“字符串”,“模板”:“布尔”,“template_id”:“整数”}.to_json
请求.basic_auth“电子邮件> <”,' <密码> '
res=http.请求(要求的事情)
把JSON.解析(res.身体)
获取(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id}”,{
方法:“把”,
身体:{“活跃”:“布尔”,“auto_estimates”:“布尔”,“计费”:“布尔”,“cid”:“整数”,“client_id”:“整数”,“client_name”:“字符串”,“颜色”:“字符串”,“货币”:“字符串”,“end_date”:“字符串”,“estimated_hours”:“整数”,“fixed_fee”:“数量”,“is_private”:“布尔”,“名称”:“字符串”,“速度”:“数量”,“rate_change_mode”:“字符串”,“重复”:“布尔”,“recurring_parameters”:{“custom_period”:“整数”,“期”:“字符串”,“project_start_date”:“字符串”},“start_date”:“字符串”,“模板”:“布尔”,“template_id”:“整数”},
头:{
“内容类型”:“application / json”,
“授权”:`基本$ {base64.编码(<电子邮件>:<密码>)}`
},
})
.然后((分别地)= >分别地.json())
.然后((json)= >{
控制台.日志(json);
})
.抓(犯错= >控制台.错误(犯错));
进口请求
从base64进口b64encode
数据=请求.把(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id} ',json=”{“活跃”:“布尔”,“auto_estimates”:“布尔”、“计费”:“布尔”、“cid”:“整数”、“client_id”:“整数”、“client_name”:“字符串”,“色”:“弦”、“货币”:“弦”、“end_date”:“弦”、“estimated_hours”:“整数”、“fixed_fee”:“数量”,“is_private”:“布尔”,“名字”:“字符串”,“速度”:“数量”,“rate_change_mode”:“字符串”,“重复”:“布尔”、“recurring_parameters”:{“custom_period”:“整数”、“时期”:“字符串”,“project_start_date”:“字符串”},“start_date”:“弦”、“模板”:“布尔”、“template_id”:“在羊毛"},头={“内容类型”:“application / json”,“授权”:“基本% s”%b64encode(b”<邮件>:<密码> ").解码(“ascii”)})
打印(数据.json())
走读生箱东京;
走读生箱serde_json;
使用reqwest::{客户端};
使用reqwest::头::{CONTENT_TYPE};
#(东京::主要)
异步fn主要()->结果<(),reqwest::错误>{
让客户端=客户端::新().basic_auth(“< >邮件”,“<密码>”);
让json=客户端.请求(方法::把,“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id}”.to_string())
.json(&serde_json::json !({“活跃”:“布尔”,“auto_estimates”:“布尔”,“计费”:“布尔”,“cid”:“整数”,“client_id”:“整数”,“client_name”:“字符串”,“颜色”:“字符串”,“货币”:“字符串”,“end_date”:“字符串”,“estimated_hours”:“整数”,“fixed_fee”:“数量”,“is_private”:“布尔”,“名称”:“字符串”,“速度”:“数量”,“rate_change_mode”:“字符串”,“重复”:“布尔”,“recurring_parameters”:{“custom_period”:“整数”,“期”:“字符串”,“project_start_date”:“字符串”},“start_date”:“字符串”,“模板”:“布尔”,“template_id”:“整数”}))
.头(CONTENT_TYPE,“application / json”)
.发送()
.等待?
.json()
.等待?;
println !(“{:# ?}”,json);
好吧(())
}
参数
路径
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
workspace_id | 整数 | 真正的 | 数字类型的工作空间ID |
project_id | 整数 | 真正的 | 项目的数字ID |
身体
的名字 | 类型 | 描述 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
活跃的 | 布尔 | 项目是活动的还是存档的 | ||||||||||||
auto_estimates | 布尔 | 评估是否基于任务时间、可选的、高级功能 | ||||||||||||
计费 | 布尔 | 项目是否设置为可计费、可选、高级功能 | ||||||||||||
cid | 整数 | 客户端ID,遗留 | ||||||||||||
client_id | 整数 | 客户端ID,可选 | ||||||||||||
client_name | 字符串 | 客户端名称,可选 | ||||||||||||
颜色 | 字符串 | 项目的颜色 | ||||||||||||
货币 | 字符串 | 项目货币,可选,高级功能 | ||||||||||||
end_date | 字符串 | 项目时间框架的结束日期 | ||||||||||||
estimated_hours | 整数 | 估计时间,可选,高级功能 | ||||||||||||
fixed_fee | 数量 | 项目固定收费,可选,溢价功能 | ||||||||||||
is_private | 布尔 | 项目是否私有 | ||||||||||||
的名字 | 字符串 | 项目名称 | ||||||||||||
率 | 数量 | 每小时收费,可选,高级功能 | ||||||||||||
rate_change_mode | 字符串 | 费率变化模式,可选,高级功能。可以是start-today, override-current, override-all | ||||||||||||
反复出现的 | 布尔 | 项目是循环的,可选的,高级功能 | ||||||||||||
recurring_parameters |
|
项目重复参数,可选,高级功能 | ||||||||||||
start_date | 字符串 | 项目时间框架的开始日期 | ||||||||||||
模板 | 布尔 | 项目是模板,可选,高级功能 | ||||||||||||
template_id | 整数 | 模板ID,可选 |
响应
- 200
- 403
- 500
{
“活跃”:{
“描述”:“项目是活动的还是存档的”,
“类型”:“布尔”
},
“actual_hours”:{
“描述”:“实际小时”,
“类型”:“整数”,
“可以为空”:真正的
},
“在”:{
“描述”:“最后更新日期”,
“类型”:“字符串”
},
“auto_estimates”:{
“描述”:“评估是否基于任务时间,高级功能”,
“类型”:“布尔”,
“可以为空”:真正的
},
“计费”:{
“描述”:“项目是否收费,是否有优质功能”,
“类型”:“布尔”,
“可以为空”:真正的
},
“cid”:{
“描述”:"客户端ID遗留字段",
“类型”:“整数”
},
“client_id”:{
“描述”:“客户机ID”,
“类型”:“整数”,
“可以为空”:真正的
},
“颜色”:{
“描述”:“颜色”,
“类型”:“字符串”
},
“created_at”:{
“描述”:“创建日期”,
“类型”:“字符串”
},
“货币”:{
“描述”:“货币,高级功能”,
“类型”:“字符串”,
“可以为空”:真正的
},
“current_period”:{
“对象”:{
“end_date”:{
“类型”:“字符串”
},
“start_date”:{
“类型”:“字符串”
}
},
“描述”:“当前项目期间,特惠功能”
},
“end_date”:{
“描述”:“结束日期”,
“类型”:“字符串”
},
“estimated_hours”:{
“描述”:“估计小时”,
“类型”:“整数”,
“可以为空”:真正的
},
“first_time_entry”:{
“描述”:“第一次参加这个项目。只有在使用with_first_time_entry请求时才包含它",
“类型”:“字符串”
},
“fixed_fee”:{
“描述”:“固定费用,高级功能”,
“类型”:“数量”
},
“id”:{
“描述”:“ID”项目,
“类型”:“整数”
},
“is_private”:{
“描述”:“该项目是否属于私人项目”,
“类型”:“布尔”
},
“名称”:{
“描述”:“名称”,
“类型”:“字符串”
},
“速度”:{
“描述”:“每小时率”,
“类型”:“数量”
},
“rate_last_updated”:{
“描述”:“最后调整利率日期”,
“类型”:“字符串”,
“可以为空”:真正的
},
“重复”:{
“描述”:“项目是否反复出现,是否是优质功能”,
“类型”:“布尔”
},
“recurring_parameters”:{
“描述”:“项目重复参数,高级功能”,
“项目”:[
{
“custom_period”:{
“描述”:自定义句点,当“period”字段为“Custom”时使用,
“类型”:“整数”
},
“estimated_seconds”:{
“描述”:“估计秒”,
“类型”:“整数”
},
“parameter_end_date”:{
“描述”:“重复结束日期”,
“类型”:“字符串”,
“可以为空”:真正的
},
“parameter_start_date”:{
“描述”:“重复开始日期”,
“类型”:“字符串”
},
“期”:{
“描述”:“期”,
“类型”:“字符串”
},
“project_start_date”:{
“描述”:“项目开始日期”,
“类型”:“字符串”
}
}
]
},
“server_deleted_at”:{
“描述”:“删除日期”,
“类型”:“字符串”,
“可以为空”:真正的
},
“start_date”:{
“描述”:“开始日期”,
“类型”:“字符串”
},
“模板”:{
“描述”:“项目是否作为模板、特惠功能”,
“类型”:“布尔”,
“可以为空”:真正的
},
“wid”:{
“描述”:“工作区ID遗留字段”,
“类型”:“整数”
},
“workspace_id”:{
“描述”:“工作区ID”,
“类型”:“整数”
}
}
用户无权访问此资源。
内部服务器错误
删除WorkspaceProject
https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/项目/{project_id}
删除给定工作区的项目。
- 旋度
- 去
- Ruby
- JavaScript
- Python
- 生锈
旋度-X DELETE https://api.track.www.lizkeller.com/api/v9/workspaces/{workspace_id}/项目/{project_id}\
- h“application / json内容类型:\
- u<电子邮件>:<密码>
要求的事情,犯错:=http.NewRequest(http.MethodPut,
“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id}”)
如果犯错! =零{
打印(犯错)
}
要求的事情.头.集(“内容类型”,“application / json;charset = utf - 8”)
要求的事情.SetBasicAuth(“< >邮件”,“<密码>”)
客户端:=&http.客户端{}
分别地,犯错:=客户端.做(要求的事情)
如果犯错! =零{
打印(犯错)
}
推迟分别地.身体.关闭()
身体,犯错:=ioutil.ReadAll(分别地.身体)
如果犯错! =零{
打印(犯错)
}
fmt.打印(字符串(身体))
需要“net/http”
需要“uri”
需要json的
uri=URI(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id} ')
http=网::HTTP.新(uri.宿主,uri.港口)
要求的事情=网::HTTP::删除.新(uri.路径)
要求的事情[“内容类型”]=“application / json”
请求.basic_auth“电子邮件> <”,' <密码> '
res=http.请求(要求的事情)
把JSON.解析(res.身体)
获取(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id}”,{
方法:“删除”,
头:{
“内容类型”:“application / json”,
“授权”:`基本$ {base64.编码(<电子邮件>:<密码>)}`
},
})
.然后((分别地)= >分别地.json())
.然后((json)= >{
控制台.日志(json);
})
.抓(犯错= >控制台.错误(犯错));
进口请求
从base64进口b64encode
数据=请求.删除(“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id} ',头={“内容类型”:“application / json”,“授权”:“基本% s”%b64encode(b”<邮件>:<密码> ").解码(“ascii”)})
打印(数据.json())
走读生箱东京;
走读生箱serde_json;
使用reqwest::{客户端};
使用reqwest::头::{CONTENT_TYPE};
#(东京::主要)
异步fn主要()->结果<(),reqwest::错误>{
让客户端=客户端::新().basic_auth(“< >邮件”,“<密码>”);
让json=客户端.请求(方法::删除,“https://api.track.www.lizkeller.com/api/v9/workspaces/ {workspace_id} /项目/ {project_id}”.to_string())
.头(CONTENT_TYPE,“application / json”)
.发送()
.等待?
.json()
.等待?;
println !(“{:# ?}”,json);
好吧(())
}
参数
路径
的名字 | 类型 | 要求 | 描述 |
---|---|---|---|
workspace_id | 整数 | 真正的 | 数字类型的工作空间ID |
project_id | 整数 | 真正的 | 项目的数字ID |
响应
- 200
- 403
- 500
成功操作。
用户无权访问此资源。
内部服务器错误