@belvador/ api (英语)
输入客户端 贝尔瓦多 (单位:千美元)https://api.belvador.dev, OpenAPI 3.1 (中文(简体) ).
每个操作都被它的 OpenAPI 调用 operationId 包含 API 线名中的参数( snake case);
操作表和参数类型来自与 OpenAPI 文档相同的登记册.
npm install @belvador/api
import { BelvadorApiError, createClient } from "@belvador/api";
const belvador = createClient({ token: process.env.BELVADOR_TOKEN! });
const { data } = await belvador.call("issues.list", { status: "unresolved", period: "24h", limit: 20 });
for await (const rows of belvador.pages("monitors.list", { limit: 100 })) console.log(rows.length);
try {
await belvador.call(
"monitors.create",
{
project_id: 1,
slug: "nightly-backup",
name: "Nightly backup",
kind: "crontab",
schedule: { type: "crontab", value: "0 2 * * *" },
timezone: "UTC",
checkin_margin_min: 5,
max_runtime_min: 30,
failure_threshold: 1,
recovery_threshold: 1,
expected_environments: ["production"],
},
{ idempotencyKey: crypto.randomUUID() },
);
} catch (e) {
if (e instanceof BelvadorApiError && e.code === "API_SCOPE_INSUFFICIENT") console.log("needs", e.scope);
}
- 键: 个人纪念物(
blv_pat_),服务代号(blv_svc_)或 OAuth 访问符 (blv_oat_) (中文(简体) ). 在设置 ~ API 令牌中创建一个 。 客户端从不将符号放入出错消息中. - 错误 是 RFC 9457 问题+json,表面为
BelvadorApiError拥有稳定code, (中文(简体) ),status, (中文(简体) ),scope(计:API_SCOPE_INSUFFICIENT, (中文(简体) ),retryAfter财务报告和审定财务报表requestId。 。 。 . - 核准: 敏感操作(钥匙、成员、信使、提醒目的地、节点更改)
APPROVAL_REQUIRED与e.approval=:{ id, url, expiresAt, state }。一个人打开url打开 belvador.dev 并用其验证码批准; 以相同的密码再次呼叫idempotencyKey(或call("approvals.get", { approval_id }))读出结果. 仅限 https/approve/<id>链接被保留. - 检索:读取,写出
idempotencyKey,在429 / 502–504和网络上重审 错误 (retries,默认值 2), 荣誉Retry-After最高为10 s.NODE_OFFLINE未重审. - 范围数字 :
await belvador.scopes()返回符号的有效范围(Belvador-Scopes头曰. - 节点数据 (问题,事件,跨度,痕迹,日志) 活在工作空间自己的节点上. 与
nodeReads: "edge"客户端询问POST /v1/tickets一张短命的读票和读票edge.belvador.dev直接, 因此数据不会通过 API 网关; 它会掉回网关 当信使不能持有票时.
命令行
belvador-api privacy pull 写一个项目的隐私政策, 如 JSON Belvador SDKs 所接受
(单位:千美元)privacyPolicy(), SDK 0.6.0+),所以一个建筑可以运送相同的规则 你的节点适用:
BELVADOR_TOKEN=blv_svc_… npx -p @belvador/api belvador-api privacy pull --project 42 --out belvador-privacy.json
--project 是工程的编号(它的 DSN 结束) 。 代币需要 projects:read; 读取
仅来自 BELVADOR_TOKEN 从不印刷。 退出代码: 0 写入, 1 被 API 拒绝(代码为
打印),2个用法错误.
节点20.10 Bun、Deno和现代浏览器(任何运行时间) fetch 财务报告和审定财务报表 AbortSignal.any麻省理工学院有执照.