file: ./content/docs/index.mdx
meta: {
"title": "Home",
"description": "Welcome to the Morpheus API Gateway Documentation."
}
import { Tab, Tabs } from 'fumadocs-ui/components/tabs';
import { Card } from 'fumadocs-ui/components/card';
import { Callout } from 'fumadocs-ui/components/callout';
# Introduction
This gateway serves as a bridge, connecting standard Web2 clients and applications to the decentralized Morpheus Lumerin AI Marketplace.
It simplifies interaction with the underlying blockchain infrastructure, providing familiar RESTful API endpoints for key operations.
## Key Features
Securely manage user accounts and API keys for accessing the gateway's features. Includes endpoints for:
* User Registration & Login (JWT-based)
* API Key Creation & Deletion
* Secure Storage & Management of Blockchain Private Keys (optional)
Interact with AI models available on the Morpheus network.
* List available AI Models
* Get detailed bid information for models
* Use the OpenAI-compatible `/chat/completions` endpoint for inference
Manage interaction sessions with AI providers on the Lumerin Protocol.
* Approve MOR token spending for sessions
* Create sessions based on specific Bids or Models
* Close active sessions
* Monitor session health
* Configure automation settings for session handling
For programmatic access or use with Language Models, the raw documentation content is available at the [`/llms.txt`](/llms.txt) endpoint.
## Getting Started
1. **Register & Login:** Use the [`/auth/register`](/docs/auth/register_user_api_v1_auth_register_post) and [`/auth/login`](/docs/auth/login_api_v1_auth_login_post) endpoints to create an account and obtain a JWT access token.
2. **Create API Key:** Generate an API key using [`/auth/keys`](/docs/auth/create_api_key_api_v1_auth_keys_post) while authenticated with your JWT.
3. **Interact:** Use your API key (as a Bearer token) to access other endpoints like [`/chat/completions`](/docs/chat/create_chat_completion_api_v1_chat_completions_post) or [`/models`](/docs/models/list_models_api_v1_models__get).
4. **(For Inference):** Before using [`/chat/completions`](/docs/chat/create_chat_completion_api_v1_chat_completions_post), you'll typically need to:
* Approve MOR spending ([`/session/approve`](/docs/session/approve_spending_api_v1_session_approve_post)).
* Create a session with a provider ([`/session/bidsession`](/docs/session/create_bid_session_api_v1_session_bidsession_post) or [`/session/modelsession`](/docs/session/create_model_session_api_v1_session_modelsession_post)).
Explore the **API** section in the sidebar for detailed information on each endpoint.
***
file: ./content/docs/unknown.mdx
meta: {
"title": "Root",
"description": "Root endpoint returning basic API information.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Root endpoint returning basic API information."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/create_api_key_api_v1_auth_keys_post.mdx
meta: {
"title": "Create Api Key",
"description": "Create a new API key for the current user.\n\nRequires JWT Bearer authentication with the token received from the login endpoint.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/auth/keys",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Create a new API key for the current user.\n\nRequires JWT Bearer authentication with the token received from the login endpoint."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/delete_api_key_api_v1_auth_keys__key_id__delete.mdx
meta: {
"title": "Delete Api Key",
"description": "Deactivate an API key.\n\nRequires JWT Bearer authentication with the token received from the login endpoint.",
"full": true,
"_openapi": {
"method": "DELETE",
"route": "/api/v1/auth/keys/{key_id}",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Deactivate an API key.\n\nRequires JWT Bearer authentication with the token received from the login endpoint."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/delete_private_key_api_v1_auth_private_key_delete.mdx
meta: {
"title": "Delete Private Key",
"description": "Delete a user's private key.",
"full": true,
"_openapi": {
"method": "DELETE",
"route": "/api/v1/auth/private-key",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Delete a user's private key."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/get_api_keys_api_v1_auth_keys_get.mdx
meta: {
"title": "Get Api Keys",
"description": "Get all API keys for the current user.\n\nRequires JWT Bearer authentication with the token received from the login endpoint.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/api/v1/auth/keys",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Get all API keys for the current user.\n\nRequires JWT Bearer authentication with the token received from the login endpoint."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/get_private_key_status_api_v1_auth_private_key_get.mdx
meta: {
"title": "Get Private Key Status",
"description": "Check if a user has a private key registered.\nDoes not return the actual key, only status information.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/api/v1/auth/private-key",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Check if a user has a private key registered.\nDoes not return the actual key, only status information."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/login_api_v1_auth_login_post.mdx
meta: {
"title": "Login",
"description": "Log in a user and return JWT tokens.\n\nSimply provide your email and password directly in the request body:\n\n```json\n{\n \"email\": \"user@example.com\",\n \"password\": \"yourpassword\"\n}\n```\n\nThe response will contain an access_token that should be used in the Authorization header\nfor protected endpoints, with the format: `Bearer {access_token}`",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/auth/login",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Log in a user and return JWT tokens.\n\nSimply provide your email and password directly in the request body:\n\n```json\n{\n \"email\": \"user@example.com\",\n \"password\": \"yourpassword\"\n}\n```\n\nThe response will contain an access_token that should be used in the Authorization header\nfor protected endpoints, with the format: `Bearer {access_token}`"
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/refresh_token_api_v1_auth_refresh_post.mdx
meta: {
"title": "Refresh Token",
"description": "Get a new access token using a refresh token.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/auth/refresh",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Get a new access token using a refresh token."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/register_user_api_v1_auth_register_post.mdx
meta: {
"title": "Register User",
"description": "Register a new user.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/auth/register",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Register a new user."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/store_private_key_api_v1_auth_private_key_post.mdx
meta: {
"title": "Store Private Key",
"description": "Store an encrypted blockchain private key for the authenticated user.\nReplaces any existing key.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/auth/private-key",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Store an encrypted blockchain private key for the authenticated user.\nReplaces any existing key."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/automation/get_automation_settings_api_v1_automation_settings_get.mdx
meta: {
"title": "Get Automation Settings",
"description": "Get automation settings for the authenticated user.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/api/v1/automation/settings",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Get automation settings for the authenticated user."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/automation/update_automation_settings_api_v1_automation_settings_put.mdx
meta: {
"title": "Update Automation Settings",
"description": "Update automation settings for the authenticated user.",
"full": true,
"_openapi": {
"method": "PUT",
"route": "/api/v1/automation/settings",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Update automation settings for the authenticated user."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/chat/create_chat_completion_api_v1_chat_completions_post.mdx
meta: {
"title": "Create Chat Completion",
"description": "Create a chat completion with automatic session creation if enabled.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/chat/completions",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Create a chat completion with automatic session creation if enabled."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/models/get_rated_bids_api_v1_models_ratedbids_get.mdx
meta: {
"title": "Get Rated Bids",
"description": "Get rated bids for a specific model.\n\nConnects to the proxy-router's /blockchain/models/{id}/bids/rated endpoint.\nNote: Use the blockchain model ID (hex) not the name.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/api/v1/models/ratedbids",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Get rated bids for a specific model.\n\nConnects to the proxy-router's /blockchain/models/{id}/bids/rated endpoint.\nNote: Use the blockchain model ID (hex) not the name."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/models/list_models_api_v1_models__get.mdx
meta: {
"title": "List Models",
"description": "Get a list of available models.\n\nResponse is in OpenAI API format with selected fields from the blockchain data.\nOnly returns non-deleted models.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/api/v1/models/",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Get a list of available models.\n\nResponse is in OpenAI API format with selected fields from the blockchain data.\nOnly returns non-deleted models."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/session/approve_spending_api_v1_session_approve_post.mdx
meta: {
"title": "Approve Spending",
"description": "Approve the contract to spend MOR tokens on your behalf.\n\nConnects to the proxy-router's /blockchain/approve endpoint.\nFor creating sessions, approve enough tokens by calculating: bid_price * session_duration.\nUses the DIAMOND_CONTRACT_ADDRESS environment variable as the spender contract address.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/session/approve",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Approve the contract to spend MOR tokens on your behalf.\n\nConnects to the proxy-router's /blockchain/approve endpoint.\nFor creating sessions, approve enough tokens by calculating: bid_price * session_duration.\nUses the DIAMOND_CONTRACT_ADDRESS environment variable as the spender contract address."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/session/close_session_api_v1_session_closesession_post.mdx
meta: {
"title": "Close Session",
"description": "Close the session associated with the current API key.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/session/closesession",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Close the session associated with the current API key."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/session/create_bid_session_api_v1_session_bidsession_post.mdx
meta: {
"title": "Create Bid Session",
"description": "Create a session with a provider using a bid ID and associate it with the API key.\n\nThis endpoint creates a session and automatically associates it with the API key used for authentication.\nEach API key can have at most one active session at a time.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/session/bidsession",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Create a session with a provider using a bid ID and associate it with the API key.\n\nThis endpoint creates a session and automatically associates it with the API key used for authentication.\nEach API key can have at most one active session at a time."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/session/create_model_session_api_v1_session_modelsession_post.mdx
meta: {
"title": "Create Model Session",
"description": "Create a session with a provider using a model ID and associate it with the API key.\n\nThis endpoint creates a session and automatically associates it with the API key used for authentication.\nEach API key can have at most one active session at a time.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/session/modelsession",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Create a session with a provider using a model ID and associate it with the API key.\n\nThis endpoint creates a session and automatically associates it with the API key used for authentication.\nEach API key can have at most one active session at a time."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/session/ping_session_api_v1_session_pingsession_post.mdx
meta: {
"title": "Ping Session",
"description": "Ping the session by attempting a simple chat completion.\nIf the chat completion fails, the session is considered dead and will be closed.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/session/pingsession",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Ping the session by attempting a simple chat completion.\nIf the chat completion fails, the session is considered dead and will be closed."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/unknown/health.mdx
meta: {
"title": "Health Check",
"description": "Health check endpoint to verify API and database status.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/health",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Health check endpoint to verify API and database status."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/unknown/health_check_health_get.mdx
meta: {
"title": "Health Check",
"description": "Health check endpoint to verify API and database status.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/health",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Health check endpoint to verify API and database status."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/unknown/root__get.mdx
meta: {
"title": "Root",
"description": "Root endpoint returning basic API information.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Root endpoint returning basic API information."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/models/api/v1/models.mdx
meta: {
"title": "List Models",
"description": "Get a list of active models.\n\nResponse is in OpenAI API format with selected fields from the blockchain data.\nOnly returns active models with available providers.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/api/v1/models",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Get a list of active models.\n\nResponse is in OpenAI API format with selected fields from the blockchain data.\nOnly returns active models with available providers."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/api/v1/auth/login.mdx
meta: {
"title": "Login",
"description": "Log in a user and return JWT tokens.\n\nSimply provide your email and password directly in the request body:\n\n```json\n{\n \"email\": \"user@example.com\",\n \"password\": \"yourpassword\"\n}\n```\n\nThe response will contain an access_token that should be used in the Authorization header\nfor protected endpoints, with the format: `Bearer {access_token}`",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/auth/login",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Log in a user and return JWT tokens.\n\nSimply provide your email and password directly in the request body:\n\n```json\n{\n \"email\": \"user@example.com\",\n \"password\": \"yourpassword\"\n}\n```\n\nThe response will contain an access_token that should be used in the Authorization header\nfor protected endpoints, with the format: `Bearer {access_token}`"
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/api/v1/auth/refresh.mdx
meta: {
"title": "Refresh Token",
"description": "Get a new access token using a refresh token.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/auth/refresh",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Get a new access token using a refresh token."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/chat/api/v1/chat/completions.mdx
meta: {
"title": "Create Chat Completion",
"description": "Create a chat completion with automatic session creation if enabled.\n\nSet Accept header to 'text/event-stream' for streaming responses, especially for tool calls.\nSet Accept header to 'application/json' for non-streaming responses.\n\nNote: Tool calling requires streaming mode and 'text/event-stream' Accept header.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/chat/completions",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Create a chat completion with automatic session creation if enabled.\n\nSet Accept header to 'text/event-stream' for streaming responses, especially for tool calls.\nSet Accept header to 'application/json' for non-streaming responses.\n\nNote: Tool calling requires streaming mode and 'text/event-stream' Accept header."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/models/api/v1/models/allmodels.mdx
meta: {
"title": "List All Models",
"description": "Get a list of all available models.\n\nResponse is in OpenAI API format with selected fields from the blockchain data.\nOnly returns non-deleted models.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/api/v1/models/allmodels",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Get a list of all available models.\n\nResponse is in OpenAI API format with selected fields from the blockchain data.\nOnly returns non-deleted models."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/models/api/v1/models/ratedbids.mdx
meta: {
"title": "Get Rated Bids",
"description": "Get rated bids for a specific model.\n\nConnects to the proxy-router's /blockchain/models/{id}/bids/rated endpoint.\nNote: Use the blockchain model ID (hex) not the name.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/api/v1/models/ratedbids",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Get rated bids for a specific model.\n\nConnects to the proxy-router's /blockchain/models/{id}/bids/rated endpoint.\nNote: Use the blockchain model ID (hex) not the name."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/session/api/v1/session/approve.mdx
meta: {
"title": "Approve Spending",
"description": "Approve the contract to spend MOR tokens on your behalf.\n\nConnects to the proxy-router's /blockchain/approve endpoint.\nFor creating sessions, approve enough tokens by calculating: bid_price * session_duration.\nUses the DIAMOND_CONTRACT_ADDRESS environment variable as the spender contract address.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/session/approve",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Approve the contract to spend MOR tokens on your behalf.\n\nConnects to the proxy-router's /blockchain/approve endpoint.\nFor creating sessions, approve enough tokens by calculating: bid_price * session_duration.\nUses the DIAMOND_CONTRACT_ADDRESS environment variable as the spender contract address."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/session/api/v1/session/bidsession.mdx
meta: {
"title": "Create Bid Session",
"description": "Create a session with a provider using a bid ID and associate it with the API key.\n\nThis endpoint creates a session and automatically associates it with the API key used for authentication.\nEach API key can have at most one active session at a time.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/session/bidsession",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Create a session with a provider using a bid ID and associate it with the API key.\n\nThis endpoint creates a session and automatically associates it with the API key used for authentication.\nEach API key can have at most one active session at a time."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/session/api/v1/session/closesession.mdx
meta: {
"title": "Close Session",
"description": "Close the session associated with the current API key.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/session/closesession",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Close the session associated with the current API key."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/session/api/v1/session/modelsession.mdx
meta: {
"title": "Create Model Session",
"description": "Create a session with a provider using a model ID and associate it with the API key.\n\nThis endpoint creates a session and automatically associates it with the API key used for authentication.\nEach API key can have at most one active session at a time.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/session/modelsession",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Create a session with a provider using a model ID and associate it with the API key.\n\nThis endpoint creates a session and automatically associates it with the API key used for authentication.\nEach API key can have at most one active session at a time."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/session/api/v1/session/pingsession.mdx
meta: {
"title": "Ping Session",
"description": "Ping the session by attempting a simple chat completion.\nIf the chat completion fails, the session is considered dead and will be closed.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/session/pingsession",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Ping the session by attempting a simple chat completion.\nIf the chat completion fails, the session is considered dead and will be closed."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/api/v1/auth/delegation/active.mdx
meta: {
"title": "Get Active User Delegation",
"description": "Retrieves the user's currently active delegation, if any.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/api/v1/auth/delegation/active",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Retrieves the user's currently active delegation, if any."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/api/v1/auth/delegation/delegation_id.mdx
meta: {
"title": "Delete Delegation",
"description": "Deletes a specific delegation for the user.\nAlternatively, could just mark it inactive.",
"full": true,
"_openapi": {
"method": "DELETE",
"route": "/api/v1/auth/delegation/{delegation_id}",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Deletes a specific delegation for the user.\nAlternatively, could just mark it inactive."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/api/v1/auth/delegation/get.mdx
meta: {
"title": "Get User Delegations",
"description": "Retrieves the user's stored delegations.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/api/v1/auth/delegation",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Retrieves the user's stored delegations."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/api/v1/auth/delegation/post.mdx
meta: {
"title": "Store Delegation",
"description": "Allows an authenticated user to store a signed delegation.\nThe frontend should construct and sign the delegation using the Gator SDK.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/auth/delegation",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Allows an authenticated user to store a signed delegation.\nThe frontend should construct and sign the delegation using the Gator SDK."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/api/v1/auth/keys/get.mdx
meta: {
"title": "Get Api Keys",
"description": "Get all API keys for the current user.\n\nRequires JWT Bearer authentication with the token received from the login endpoint.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/api/v1/auth/keys",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Get all API keys for the current user.\n\nRequires JWT Bearer authentication with the token received from the login endpoint."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/api/v1/auth/keys/key_id.mdx
meta: {
"title": "Delete Api Key",
"description": "Deactivate an API key.\n\nRequires JWT Bearer authentication with the token received from the login endpoint.",
"full": true,
"_openapi": {
"method": "DELETE",
"route": "/api/v1/auth/keys/{key_id}",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Deactivate an API key.\n\nRequires JWT Bearer authentication with the token received from the login endpoint."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/api/v1/auth/keys/post.mdx
meta: {
"title": "Create Api Key",
"description": "Create a new API key for the current user.\n\nRequires JWT Bearer authentication with the token received from the login endpoint.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/auth/keys",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Create a new API key for the current user.\n\nRequires JWT Bearer authentication with the token received from the login endpoint."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/api/v1/auth/private-key/delete.mdx
meta: {
"title": "Delete Private Key",
"description": "Delete a user's private key.",
"full": true,
"_openapi": {
"method": "DELETE",
"route": "/api/v1/auth/private-key",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Delete a user's private key."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/api/v1/auth/private-key/get.mdx
meta: {
"title": "Get Private Key Status",
"description": "Check if a user has a private key registered.\nDoes not return the actual key, only status information.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/api/v1/auth/private-key",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Check if a user has a private key registered.\nDoes not return the actual key, only status information."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/api/v1/auth/private-key/post.mdx
meta: {
"title": "Store Private Key",
"description": "Store an encrypted blockchain private key for the authenticated user.\nReplaces any existing key.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/auth/private-key",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Store an encrypted blockchain private key for the authenticated user.\nReplaces any existing key."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/api/v1/auth/register/delete.mdx
meta: {
"title": "Delete User Account",
"description": "Delete the current user's account and all associated data.\n\nThis action is irreversible and will:\n1. Delete all sessions\n2. Delete all API keys\n3. Delete private key data (via cascade)\n4. Delete automation settings (via cascade)\n5. Delete delegation data (via cascade)\n6. Delete the user account\n\nRequires JWT Bearer authentication.",
"full": true,
"_openapi": {
"method": "DELETE",
"route": "/api/v1/auth/register",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Delete the current user's account and all associated data.\n\nThis action is irreversible and will:\n1. Delete all sessions\n2. Delete all API keys\n3. Delete private key data (via cascade)\n4. Delete automation settings (via cascade)\n5. Delete delegation data (via cascade)\n6. Delete the user account\n\nRequires JWT Bearer authentication."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/auth/api/v1/auth/register/post.mdx
meta: {
"title": "Register User",
"description": "Register a new user.",
"full": true,
"_openapi": {
"method": "POST",
"route": "/api/v1/auth/register",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Register a new user."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/automation/api/v1/automation/settings/get.mdx
meta: {
"title": "Get Automation Settings",
"description": "Get automation settings for the authenticated user.",
"full": true,
"_openapi": {
"method": "GET",
"route": "/api/v1/automation/settings",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Get automation settings for the authenticated user."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
file: ./content/docs/automation/api/v1/automation/settings/put.mdx
meta: {
"title": "Update Automation Settings",
"description": "Update automation settings for the authenticated user.",
"full": true,
"_openapi": {
"method": "PUT",
"route": "/api/v1/automation/settings",
"toc": [],
"structuredData": {
"headings": [],
"contents": [
{
"content": "Update automation settings for the authenticated user."
}
]
}
}
}
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}