OceanAltOceanAlt

调用密钥

不注册也能调 —— 今天能用的接口,明天照样能用,一行代码都不用改。留个邮箱换一把密钥,额度更高,而且可以给这把密钥上三道锁:只许调哪些能力、只许从哪些地址调、到哪天自动失效。

申请密钥不会把你加进营销邮件列表。我们只用这个邮箱完成密钥签发和必要的账户 / 安全通知;将来若希望发送产品或营销信息,会另行征得你同意。

三档分别是什么

① 匿名

每分钟 60 次 · 每月 2,000 次免费

全部功能:查地址、查端点、盲签比对、付款前判决、批量、时点查询、签名证据包

怎么进:
什么都不用做,直接调
我们看得到:
只有你的 IP。我们不做任何归因。

② 注册

每分钟 180 次 · 每月 5,000 次免费

同样的功能,更高的额度(按密钥计)

怎么进:
留个邮箱,点一下邮件里的链接
我们看得到:
一个邮箱,和这把密钥的用量计数(每月次数、最近一次调用时间)。默认不保存按密钥的逐条调用明细——只有你自己在密钥设置里打开「决策日志」,我们才会记录并让你随时导出给审计。

③ KYA(Know Your Agent,认识你的 Agent)

每分钟 300 次 · 每月 50,000 次免费

同样的功能,最高的额度(按主体聚合,不按 Agent 个数叠加)

怎么进:
用注册表里的 Agent 凭证调用
我们看得到:
可关联的 Agent 身份:注册表记录 → 授权边界 → 这把凭证 → 这次调用。我们核的是这条链在我们这里是否有效,不是它背后的人是谁。

用超了会怎样:降速,不中断。我们不希望仅仅因为免费额度用尽,就让一个已经接入的正常 Agent 突然失效。超出之后只是慢下来,下个月 1 日(世界协调时间)恢复。异常调用、滥用、安全风险或违反使用政策的情况除外。

第三档不需要再申请一把新钥匙。如果你已经在注册表里登记过 Agent,用它的凭证调用就是了 —— 你已经有的东西,我们不会让你再申请第二遍。 看注册表 →

为什么要分这三档

我们整天在讲一件事:会花钱的 Agent 应该能够关联到可承担责任的主体。同样的原则也该用在我们自己身上 —— 一个接口如果完全匿名、出了事没有任何归因能力,我们就很难要求别人做到。

但我们不希望把重身份验证放在第一次调用之前。低风险、低频的试用应该保持开放;随着调用规模和机器权限提高,再逐步要求更完整的身份与归因。所以匿名档永远保留、永远免费,往上每一档都是自愿的,多给什么、我们多知道什么,都写在上面那张表里。

密钥怎么用

放在请求头里,两种写法都认 —— 不同的 SDK(软件开发工具包)习惯不一样,我们不想为这点小事卡住任何人。

带上密钥调用

curl -X POST "https://oceanalt.com/api/decide" \
  -H "authorization: Bearer $OCEANALT_API_KEY" \
  -H "content-type: application/json" \
  -d '{"to":"0x0000000000000000000000000000000000000000","amountUsdc":25}'

每一个返回里都有一段 access,写着你现在按哪一档在用、还剩多少额度、再往上能多拿什么。一个 Agent 不会去读文档,但它一定会读返回。

密钥不认(写错了、吊销了、还没验证邮箱)的时候,我们不会闷声把你降到匿名档 —— 返回里会写明 key_rejected 和原因。悄悄降级会让你以为是自己代码的问题,那是最难查的一类故障。

完整接口文档 →

给密钥上三道锁(可选)

一把密钥默认什么都不限 —— 你已经在用的密钥不会因为这一节有任何变化。要的话,可以给它加上:只许调哪几样、只许从哪些网络地址调、到哪天自动失效。密钥万一泄露,这三道锁决定对方能拿它做多少事。

密钥只用来发这一次请求,不会保存在这个页面里,也不会显示出来。如果你给这把密钥设过 IP 白名单,那么只有从名单里的网络访问这一页才读得到(否则请在名单里的机器上用命令行改)。

你要找的是不是另一种钥匙?

本页这把是【调用密钥】,管的是你每分钟能调多少次、每月免费多少次、能用哪些能力。

如果你要的是【给会自动付款的 AI 定一个花钱上限】—— 每次最多花多少、每天最多花多少、只能付给谁 —— 那是另一把钥匙,在另一页。 去那一页 →

我们的应用数据库不保存密钥原文,只保存它的 sha256 哈希;系统也不提供再次查看原文的功能,丢了只能重新签发一把。密钥本身是高熵随机串。需要说清楚的是:签发那一刻密钥会经由邮件送达,所以邮件投递链路本身会处理到它 —— 我们能保证的是我们这边不留原文。