Browse documentation
API keys and holder access
The public flow is wallet → TRIDENT holdings → API key. Users do not register tokens or create communities. The /docs/communities URL is retained for existing links; this guide describes the current holder-access product.
Wallet sign-in
Open API keys. Select a compatible EVM wallet on Robinhood Chain, sign the login message and accept the terms. The signature includes the application origin, wallet, network, nonce and expiration. It does not authorize an onchain transaction. Challenges are single-use; sessions are stored in the shared database.
TRIDENT's default threshold is 10,000 tokens. Holdings are checked before key issuance and before inference. The app uses confirmed balances rather than an indexer's displayed holdings. The same rule applies to each eligible wallet, irrespective of holdings above the minimum.
Solana authentication and token reads remain supported by the adapter. A genuine counterpart mint must be explicitly configured as SOLANA_TOKEN_ADDRESS before a Solana wallet can qualify. There is no assumed bridge between unrelated tokens.
Create and revoke keys
Use Create API key, give it a name, and copy the returned secret. A wallet can have up to ten active keys. Keys are random and stored as hashes; the secret is shown once. Revocation takes effect for subsequent requests. Keys share the wallet's limits; generating more keys does not multiply access.
Authenticated browser endpoints:
| Method | Endpoint | Input |
|---|---|---|
| GET | /api/protocol | Public token address and threshold |
| GET | /api/protocol/access | Signed session cookie |
| POST | /api/keys/create | { "name": "My app" } |
| GET | /api/keys | Signed session cookie |
| POST | /api/keys/revoke | { "id": "KEY_ID" } |
| POST | /api/protocol/run | Text model, messages and max_tokens |
No community ID or token address is required to create a key. /api/communities/register is retired.
Use an OpenAI-compatible client
Set the base URL to https://www.tridentprotocol.fun/v1 and the API key to your Trident secret.
curl https://www.tridentprotocol.fun/v1/chat/completions \
-H "Authorization: Bearer YOUR_TRIDENT_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: unique-request-id" \
-d '{"model":"openai/gpt-6-astra","messages":[{"role":"user","content":"Hello"}],"max_tokens":256}'
GET /v1/models lists compatible models. GET /v1/access checks holdings. GET /v1/requests/REQUEST_ID retrieves accounting status for your request. Request records do not grant access to another wallet's records.
The supported body contains model, text messages, max_tokens, optional temperature and optional stream. Roles are system, user and assistant. Tools, images, audio and embeddings are not exposed by this text gateway. Output is limited to 4,096 tokens and the model's advertised limit, whichever is lower.
Limits and errors
401 means a missing/invalid key or session. 403 includes insufficient holdings. 409 covers repeated request identifiers. 429 indicates rate or daily spending limits. 402/503 may indicate exhausted or unavailable shared credits. Unknown upstream cost is held for review; retrying with another key does not resolve the earlier reservation.
Published model prices describe treasury expenditure, not a direct charge to the holder. Shared credits and provider availability are finite.