Skip to main content

API reference

Complete API reference for Agentbot.

Base URL

https://agentbot.raveculture.xyz/api

Authentication

Agentbot supports two authentication methods depending on the endpoint.

Session authentication

Most web API endpoints use cookie-based session authentication via NextAuth. Sign in through the web application to obtain a session cookie.

API keys

You can generate API keys from the dashboard. Include your key in the Authorization header:
curl -X GET https://agentbot.raveculture.xyz/api/agents \
  -H "Authorization: Bearer YOUR_API_KEY"
API keys use the sk_ prefix and are shown only once at creation time. See the keys API for details.

Rate limits

EndpointLimit
/api/v1/gateway100/min
/api/agents100/min
/api/chat60/min
/api/instance30/min
/api/provisionRate-limited per IP
/api/registerRate-limited per IP
/api/auth/forgot-passwordRate-limited per IP
/api/auth/reset-passwordRate-limited per IP

Response format

Success

{
  "success": true,
  "data": {}
}
Some endpoints return domain-specific top-level keys (for example agents, keys, stats) instead of a generic data wrapper. Refer to each endpoint’s documentation for the exact response shape.

Error

{
  "error": "Description of the error"
}

HTTP status codes

CodeMeaning
200Success
201Resource created
400Bad request or validation error
401Unauthorized (missing or invalid authentication)
402Payment required (no active subscription or missing MPP credential)
403Forbidden (insufficient permissions, token gating failure, or bot detection)
404Resource not found
429Too many requests or tier limit reached
500Internal server error
502Backend service unavailable
503Service unavailable

Endpoint reference

EndpointMethodDescription
/api/v1/gatewayPOSTRoute requests to plugins with Stripe or MPP payment
/api/agentsGETList all agents
/api/agents/:idGETGet agent details
/api/agents/:id/configGETGet agent configuration
/api/agents/:id/configPUTUpdate agent configuration
/api/agents/:id/messagesGETGet agent messages
/api/agents/:id/statsGETGet agent stats
/api/agents/:id/verifyGETGet verification status
/api/agents/:id/verifyPOSTVerify an agent
/api/agents/:id/verifyDELETERemove verification
/api/instance/:userIdGETGet instance details
/api/instance/:userId/startPOSTStart an agent
/api/instance/:userId/stopPOSTStop an agent
/api/instance/:userId/restartPOSTRestart an agent
/api/instance/:userId/updatePOSTUpdate agent image
/api/instance/:userId/repairPOSTRepair an agent
/api/instance/:userId/reset-memoryPOSTReset agent memory
/api/instance/:userId/tokenGETGet agent gateway token
/api/instance/:userId/statsGETGet instance stats
/api/agents/provisionPOSTProvision a new agent
/api/agents/provisionGETList provisioned agents
/api/chatGETList message history
/api/chatPOSTSend message to agent
/api/healthGETHealth check
/api/heartbeatGETGet heartbeat settings
/api/heartbeatPOSTUpdate heartbeat settings
/api/heartbeatDELETEReset heartbeat settings
/api/memoryGETGet agent memory
/api/memoryPOSTStore agent memory
/api/metricsGETGet platform-wide metrics
/api/creditsGETGet credit balance
/api/keysGETList API keys
/api/keysPOSTCreate API key
/api/keys/:idGETGet API key details
/api/keys/:idDELETEDelete API key
/api/skillsGETList skills marketplace
/api/skillsPOSTInstall a skill on an agent
/api/skills/:namePOSTUse a skill
/api/skills/booking-settlementGET, POSTBooking escrow and settlement
/api/skills/instant-splitGET, POSTRoyalty split execution
/api/walletGETGet wallet info
/api/walletPOSTWallet actions (create, info)
/api/wallet/addressGETGet CDP wallet address
/api/wallet/createPOSTCreate a CDP wallet
/api/wallet/cdpGETGet CDP wallet status
/api/wallet/cdpPOSTCreate a CDP wallet client
/api/provisionPOSTProvision agent with channel tokens
/api/agentGETAgent interaction (health, sessions, memory, skills, credentials)
/api/agentPOSTAgent interaction (chat, create-session, update-skill, set-credential)
/api/settingsGETGet current user profile
/api/settingsPOST, PATCHUpdate user profile
/api/settings/passwordPOSTChange password
/api/registerPOSTCreate a new account
/api/auth/callback/walletPOSTWallet sign in (SIWE)
/api/auth/forgot-passwordPOSTRequest password reset
/api/auth/reset-passwordPOSTReset password
/api/auth/farcaster/verifyGET, POSTVerify Farcaster identity (GET returns endpoint metadata)
/api/auth/farcaster/refreshGET, POSTRefresh Farcaster token (GET returns endpoint metadata)
/api/auth/token-gating/verifyGET, POSTVerify token gating access
/api/billingGETGet billing info
/api/billingPOSTBilling actions (create-checkout, enable-byok, disable-byok, get-usage, buy-credits)
/api/stripe/checkoutGETRedirect to Stripe checkout (accepts plan query param: solo, collective, label, network)
/api/stripe/creditsGETRedirect to Stripe credit purchase (accepts price query param)
/api/stripe/storage-upgradePOSTUpgrade storage plan
/api/metrics/:userId/historicalGETGet historical time-series metrics (backend only)
/api/metrics/:userId/performanceGETGet current performance metrics (backend only)
/api/metrics/:userId/summaryGETGet music industry metrics summary (backend only)
/api/ai/healthGETAI provider availability (backend only)
/api/ai/modelsGETList available AI models (backend only)
/api/ai/models/:providerGETList models for a provider (backend only)
/api/ai/models/selectPOSTSmart model selection for a task type (backend only)
/api/ai/chatPOSTUniversal chat completion (backend only)
/api/ai/estimate-costPOSTEstimate token cost (backend only)

SDK

Use the Agentbot SDK:
npm install @agentbot/sdk
import { Agentbot } from '@agentbot/sdk';

const client = new Agentbot({
  apiKey: process.env.AGENTBOT_API_KEY
});

const agents = await client.agents.list();