@ codespar/ api 类型
CodeSpar管理级API的共享REST电线合同 api.codespar.dev。 。 。 .
每个请求正文和响应形状被一一定义为Zod schema,从中推断出匹配的TypeScript类型. 两个后端( N)codespar-enterprise)和仪表板(codespar-web) 从这里导入——不再有手卷式镜像类型.
为什么
两个bug在一个48小时的窗口中被运出,因为web和后端独立重新声明了相同的响应类型:
- 新创建的 API 密钥作为“ Revoked ” 渲染(
revoked_at在创建响应中省略, 假定存在网络类型,undefined !== null真实的. - API 密钥列表返回为空( 后端返回)
{ keys: [...] },网页解析data.api_keys) (中文(简体) ).
这里的Schemas是真理的唯一来源. 解析取取边界的响应, 这些失败成为不可能 —— 丢失/ 重命名的字段在运行时抛出, 而不是渲染破损的 UI .
使用量
import {
ApiKeyRowSchema,
ListApiKeysResponseSchema,
type ListApiKeysResponse,
} from "@codespar/api-types";
const res = await fetch("/v1/api-keys", { headers: { authorization: `Bearer ${token}` } });
const body: ListApiKeysResponse = ListApiKeysResponseSchema.parse(await res.json());
// ^^^^ throws ZodError if the backend drifts
每个模块都输出方案(FooSchema)和推断类型(Foo) (中文(简体) ). 导入您需要的任意一边 .
覆盖范围
api-keys——创建/列表/行projects- 创建/更新/列表/行connections——创建/列表/行/webhook-secret 旋转servers— 列表/行 / auth-schemasessions——创建/列表/行/细节/工具调用/执行
auth_type 语句
一个连接 auth_type 确定如何储存证书
转交上游供应商。 截止到0.4.0,enum有6个
值 :
| 数值 | 用于 |
|---|---|
api_key | 大多数供应商——阿萨斯,梅尔卡多·帕果,NFe.io,花纹等. |
path_secret | Z-API风格的提供商,将证书嵌入到URL路径中,并带有相伴头. |
oauth | 供应商需要OAuth流量(例如用户授权的集成). |
cert | mTLS——BR开封银行飞行员(BB活;Itaú / Santander / Bradesco / Caixa next). |
hmac_signed | Foxbit + LATAM 加密交换器,用所衍生的HMAC来签名每个请求. |
none | 公共APIs / 没有证书. |
0.4.0中有什么新鲜事
添加 cert 财务报告和审定财务报表 hmac_signed auth_type 连接的值
计划——合同现在涵盖BR开放式银行式mTLS飞行员和
HMAC签名的加密交换 API 与最初的4.
已知所限.
AuthSchemaFieldKindSchema(单位:千美元)kind语句 对于一个认证计划中的单个字段)尚不包括hmac- 只有连接级别auth_type恩姆会的 这个 仪表板ProviderConnectModal通过标记来工作 HMAC 签名的字段为path_secret有点 消费者阅读认证 计划应该直接预料这种不匹配,直到将来的未成年人 碰碰会收紧野外的药.
版本
- 此软件包反映了
/v1/*REST 表面为api.codespar.dev。 。 。 . - 附加变化(新字段,新终点计划) → 小起伏.
- 分解变化(去地取出,类型收缩) → 相接后端放出的同时运出大起落.
保持TS + Python +后端对齐——漂移是打破信任最响亮的方式.
还需要吗?
需要治理、预算限制和代理付款的审计线索? 代码Spar 企业 在这些MCP服务器上添加了政策引擎,支付路由,以及合规模板.
许可证
麻省理工学院 - 代码.dev