跳转到内容

会话列表(会话查看器):本户/本 org(x-tansr-org,owner/admin/billing)+ usage 聚合;window=Nd(≤90d,按最近心跳圈定)、limit 缺省 50 上限 100(上限常量单点 src/contract/limits.ts,越界 400);正文零留存,meta 恒白名单键;分币收口:usage.cost 恒 CNY 桶(单币数据逐数不变,口径注记)+ usage.byCurrency 分币桶(恒不跨币加总);usage 与 byCurrency 行补 cacheRTokens/cacheWTokens(四象限语义,上游未报 = 0;既有字段零漂移)

GET
/v1/sessions
curl --request GET \
--url https://api.tansr.com/v1/sessions \
--header 'Authorization: Bearer <token>'
x-tansr-org
string

Org 作用域声明(org 公开 id);服务端校验成员资格与角色,非成员恒 404、角色不够 403

列表({window, data[]})

Media typeapplication/json
object
window
required
string
data
required
Array<object>
object
id
required
string
client
required
string
startedAt
required
string
endedAt
required

最近心跳(last_seen)时刻

string
meta
required

白名单键(零留存:读侧同样过滤)

object
clientVersion
string
platform
string
usage
required
object
requests
required
integer
inTokens
required
integer
outTokens
required
integer
cacheRTokens
required

缓存读命中 tokens(CW8 B6 加法;上游未报 = 0)

integer
cacheWTokens
required

缓存写段 tokens(CW8 B6 加法;上游未报 = 0)

integer
cost
required

DECIMAL 字符串;T-A39 口径收口:恒 CNY 桶(T-A26 credits/dashboard 同锚,单币数据逐数不变);分币全景见 byCurrency

string
byCurrency
required

分币种用量桶(T-A39 加法;恒不跨币加总)

Array<object>
object
currency
required
string
requests
required
integer
inTokens
required
integer
outTokens
required
integer
cacheRTokens
required

缓存读命中 tokens(CW8 B6 加法)

integer
cacheWTokens
required

缓存写段 tokens(CW8 B6 加法)

integer
cost
required

DECIMAL 字符串(单币)

string
Examplegenerated
{
"window": "example",
"data": [
{
"id": "example",
"client": "example",
"startedAt": "example",
"endedAt": "example",
"meta": {
"clientVersion": "example",
"platform": "example"
},
"usage": {
"requests": 1,
"inTokens": 1,
"outTokens": 1,
"cacheRTokens": 1,
"cacheWTokens": 1,
"cost": "example",
"byCurrency": [
{
"currency": "example",
"requests": 1,
"inTokens": 1,
"outTokens": 1,
"cacheRTokens": 1,
"cacheWTokens": 1,
"cost": "example"
}
]
}
}
]
}

Bad_request(window 形状 / limit 越界)

Media typeapplication/json
object
error
required
object
code
required

错误码注册表单源派生(src/http/errors.ts ERROR_CODES;码稳定,消费方按码翻译)

string
Allowed values: adjudicator_not_authorized admin_forbidden admin_key_invalid app_disabled app_ip_denied app_key_invalid approval_self_forbidden asr_not_configured asr_quota_exceeded auth_channel_undelivered bad_request conflict content_blocked context_window_exceeded currency_not_supported device_code_denied device_code_expired device_code_pending device_code_slow_down egress_blocked endpoint_disabled envelope_key_undelivered fence_denied forbidden idempotency_conflict idp_untrusted image_not_supported imagegen_not_configured imagegen_quota_exceeded insufficient_balance internal_error invalid_api_key license_required limit_exceeded liquidation_not_enabled model_not_authorized model_not_found nonce_replayed not_found order_state_invalid org_byok_not_available org_ceiling_exceeded otp_invalid otp_rate_limited pay_amount_mismatch pay_channel_undelivered pay_signature_invalid payload_too_large payment_required plan_apps_exceeded plan_concurrency_exceeded plan_end_users_exceeded plan_gate_unavailable plan_members_exceeded plan_required plan_tier_insufficient policy_locked pool_signing_undelivered preflight_required pricing_guard_tripped principal_required protocol_unsupported quota_exceeded rate_limited refund_not_eligible section_not_deliverable session_archived signature_invalid stream_backpressure token_expired tts_not_configured tts_quota_exceeded unauthorized upstream_connect_timeout upstream_disconnected upstream_error upstream_idle_timeout upstream_timeout upstream_total_timeout upstream_ttfb_timeout validation_failed videogen_not_configured videogen_quota_exceeded websearch_not_configured websearch_quota_exceeded
message
required
string
requestId
required
string
detail
object
Example
{
"error": {
"code": "adjudicator_not_authorized"
}
}