并发水位曲线(query days 1–90 缺省 30):days = owner_plan_usage_daily 逐日峰值 + 24 格小时峰值(plan-usage-fold.daily 折叠前一日;缺席日无行);today = 今日 24 格小时峰值(Redis 直读,未到/无活动小时 null);带 x-tansr-org 头 = org 语境(全员可读,非成员 404)
GET
/v1/plan/usage
const url = 'https://api.tansr.com/v1/plan/usage?days=30';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.tansr.com/v1/plan/usage?days=30' \ --header 'Authorization: Bearer <token>'Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Header Parameters
Section titled “Header Parameters”x-tansr-org
string
Org 作用域声明(org 公开 id);服务端校验成员资格与角色,非成员恒 404、角色不够 403
Query Parameters
Section titled “Query Parameters”days
integer
逐日窗口(不含今日)
Responses
Section titled “Responses”逐日 + 今日 24 格
Media typeapplication/json
object
Examplegenerated
{ "days": [ { "day": "example", "peakConcurrency": 1, "hourlyPeaks": [ 1 ] } ], "today": { "day": "example", "hourlyPeaks": [ 1 ] }}Bad_request(days 形外)
Media typeapplication/json
object
error
required
object
code
required
错误码注册表单源派生(src/http/errors.ts ERROR_CODES;码稳定,消费方按码翻译)
string
message
required
string
requestId
required
string
detail
object
Example
{ "error": { "code": "adjudicator_not_authorized" }}Not_found(org 非成员)
Media typeapplication/json
object
error
required
object
code
required
错误码注册表单源派生(src/http/errors.ts ERROR_CODES;码稳定,消费方按码翻译)
string
message
required
string
requestId
required
string
detail
object
Example
{ "error": { "code": "adjudicator_not_authorized" }}本文是否有帮助?
感谢反馈,我们会持续改进这篇文章。