概览快速入门API 参考文档价格变更日志服务状态获取 API 密钥
开发者快速入门API 参考文档控制台价格API 变更日志服务状态
探索电影电视节目帮助服务条款隐私政策获取应用Cookie 政策价格退款与取消可接受使用政策版权方服务状态查询下架通知新动态
·

© 2026 Wambesha

v0.110.0
概览

Discovery

  • SearchGET
  • DiscoverGET
  • LookupGET
  • GenresGET
  • Similar titlesGET

Titles

  • Batch titlesGET
  • Title recordGET
  • SeasonsGET
  • EpisodesGET
  • CreditsGET
  • ImagesGET
  • Where a title is heldGET

People

  • PersonGET
  • FilmographyGET

Changes

  • Change feedGET
  • ChangelogGET

Account

  • Plan and usageGET
  • Usage historyGET
  • Recent requestsGET
  • KeysGET
  • Rotate keyPOST

共 21 个端点,显示 21 个

API 参考文档仅提供英文版本。

Account/keys

GET/v1/account/keys

仅计入调用配额

Every API key on your account - name, prefix, last four, environment, restrictions and last use. Never the secret. Never charged.

参数

此端点不接受任何参数。

响应字段

  • itemsApiKeySummary[]
  • maxKeysinteger · int64可为 null

    How many LIVE keys this account's plan permits, or null for unbounded (Enterprise). REQUIRED and NULLABLE — the two are not alternatives. PublicApiKeyListResponse is @JsonInclude(ALWAYS), so this key is on the wire on every response; what varies is whether its value is a number or null. Declaring it required expresses "always present", and type: [integer, 'null'] expresses "may be null". Leaving it OUT of required was a real defect for a day: openapi-typescript then emits maxKeys?: number | null, i.e. possibly ABSENT, which is a state the runtime cannot produce - and a client helper typed (maxKeys: number | null) stops compiling against its own API. This is an ACCOUNT-scoped schema, and the reasoning above does not generalise to the community pillar. .claude/rules/validation-patterns.md records the house convention there: a nullable field stays OUT of required, and the CommunityPost.editableUntil precedent is a NON-NULL field, so it is not the parallel it looks like. CommunityStatementOfReasons in this same change correctly leaves six nullable fields out of required on that convention. Do not read this block as licence to add them. A client that treats a missing value as 0 tells an Enterprise customer they may create no keys. Pair it with liveCount to decide whether to offer the create form or refuse it.

  • liveCountinteger · int64

    How many keys are currently live, i.e. counted against maxKeys. Revoked keys appear in items but are not counted here, so liveCount is deliberately not items.length.

响应标头

  • X-Request-ID

    The id of this request, on every response - success or error. Quote it to support: it is how we find your request in our logs. An X-Request-ID you send is honoured and echoed back, so you can use your own; otherwise we generate one. /v1 error bodies carry no trace id of their own.

  • X-Quota-Reset

    RFC 3339 instant at which the billing period rolls. Present on every response to a request whose key was metered - every 2xx, every error a handler returned, and the quota 429. Absent on a refusal that happens before metering: a missing or unknown key (401), a restricted key or a plan that does not carry the endpoint (403), a public demo-key gate refusal, and the pre-authentication flood throttle.

  • X-Calls-Remaining

    Requests left in the period after this one, never below 0. Present whenever X-Quota-Reset is (see there for when a response carries no quota headers).

  • X-Verifications-Remaining

    How many verifications you can still make before a limit stops you. The daily limit and the monthly allowance are counted separately; this is whichever of the two runs out first. Sent whenever X-Quota-Reset is.

  • X-Quota-Grace

    true when THIS request fell inside the 10% grace band above a monthly ceiling. A grace request is served and is not billed; treat true as "back off now", not as headroom. Always true or false, never absent when the other quota headers are present.

  • Retry-After429

    Seconds to wait before retrying. On every 429 - the quota hard stop, the public demo key's limits, and the pre-authentication flood throttle (which carries this header alone, because no key has been read yet).

  • X-Demo-Challenge-Mode仅限演示密钥

    Sent only on responses to the public demo key. The value interactive asks the documentation page to show the visible verification widget - it is sent once a browser has made more than five runs in ten minutes or has received a 429. The page then repeats the header, X-Demo-Challenge-Mode: interactive, on its next request, with the widget's token in X-Demo-Challenge. Requests made with your own key never receive it.

错误

  • unauthenticated

  • forbidden

  • plan-required

  • validation-failed

  • rate-limited

  • upstream-unavailable

详情⌄

Every key on the account, newest first, with its scopes, IP allowlist and referrer restriction.

Revoked keys are included. A customer investigating a leak needs to see the key that leaked, and its usage history is retained for exactly that.

No secret is ever returned here, and none can be: the store holds a SHA-256 hash, so there is no code path that could produce the original value.

Creating, renaming and revoking are NOT on this key-authenticated surface - they need a session, at /api/v1/developer/keys. That split is deliberate: a customer who has just revoked their only key would otherwise have no way to mint a replacement.

上一个Recent requests下一个Rotate key

立即试用

正在加载演示密钥…

curl "https://api.wambesha.com/v1/account/keys" \
  -H "Authorization: Bearer YOUR_API_KEY"

示例

{
  "items": [
    {
      "id": "5c1d7e00-0c17-4d0c-9c17-00000000cafe",
      "name": "cycle17 docs examples",
      "prefix": "wba_test_",
      "lastFour": "a048",
      "environment": "TEST",
      "createdAt": "2026-09-27T16:21:03Z",
      "lastUsedAt": "2026-09-27T16:21:04Z",
      "expiresAt": null,
      "revokedAt": null,
      "rotatedAt": null,
      "rotationGraceUntil": null,
      "scopes": [],
      "ipAllowlist": [],
      "referrerAllowlist": []
    }
  ],
  "maxKeys": 20,
  "liveCount": 1
}