API keys
You can call us without signing up — everything that works today keeps working, with no code changes. A key raises your limits, and lets you lock it down: which capabilities it may call, which addresses it is accepted from, and when it stops working.
The three levels
① Anonymous
Every capability: address, endpoint and calldata screening, pre-payment decisions, batch, point-in-time lookups, signed evidence bundles
② Registered
The same capabilities, higher limits (counted per key)
③ KYA (Know Your Agent)
The same capabilities, the highest limits (aggregated per owner, not multiplied per agent)
What happens when you go over: we throttle, we do not cut off. We do not want a normal agent that has already integrated to suddenly stop working just because a free allowance ran out. Past the allowance it simply slows down and resets on the 1st (UTC). Abuse, anomalous automation, security risk and violations of the acceptable-use policy are excepted.
We spend our days arguing one point: an agent that spends money should be linkable to a party that can take responsibility. The same principle should apply to us — it is hard to ask that of others while our own endpoints are fully anonymous with no attribution at all.
But we do not want heavyweight identity verification sitting in front of the first call. Low-risk, low-volume trial should stay open; as call volume and machine privilege rise, more complete identity and attribution are asked for step by step. So the anonymous level stays, permanently and free. Every level above it is opt-in, and the table above states both halves: what you gain, and what we learn.
Using the key
Put it in a header. We accept both spellings, because SDKs differ on this and it is not worth blocking anyone over.
curl -X POST "https://oceanalt.com/api/decide" \
-H "authorization: Bearer $OCEANALT_API_KEY" \
-H "content-type: application/json" \
-d '{"to":"0x0000000000000000000000000000000000000000","amountUsdc":25}'Three optional locks on a key
A key has no limits by default, and nothing about a key you already use changes because of this section. If you want them, you can add: which capabilities it may call, which network addresses it is accepted from, and a date after which it stops working. If a key ever leaks, these three decide how much can be done with it.
The key on this page is an API key. It governs how much you can call us and which capabilities you can use.
If what you want is a spending cap for an AI that pays on its own — how much per payment, how much per day, who it may pay — that is a different key, on a different page. Go there →

