{
  "schemaVersion": "0.3.0",
  "name": "搜蚁智选 (AIMALL) Agent API",
  "description": "Pay-per-use API marketplace built for autonomous AI agents. An agent completes register -> create agent -> get X-API-Key -> call models/tools -> pay with zero human intervention. $1.00 USD free trial on registration, +$4.00 on email verification. Anonymous cost estimation available with no key. Balance top-ups via x402 on Base USDC.",
  "url": "https://souyi.net.cn",
  "provider": {
    "organization": "AIMALL / 搜蚁智选",
    "url": "https://souyi.net.cn"
  },
  "preferredTransport": "https",
  "authentication": {
    "schemes": ["apiKey", "bearer"],
    "apiKey": { "in": "header", "name": "X-API-Key", "prefix": "ak_" },
    "bearer": { "in": "header", "name": "Authorization", "format": "JWT", "scope": "control-plane only" }
  },
  "defaultInputModes": ["application/json"],
  "defaultOutputModes": ["application/json", "audio/wav", "audio/mpeg", "video/mp4", "image/png", "image/jpeg"],
  "capabilities": {
    "streaming": true,
    "pushNotifications": false,
    "stateTransitionHistory": false,
    "selfServeOnboarding": true,
    "AnonymousTrial": true,
    "AnonymousCostEstimation": true,
    "machineReadableDocs": true
  },
  "agentExperience": {
    "llmsTxt": "https://souyi.net.cn/llms.txt",
    "llmsFullTxt": "https://souyi.net.cn/llms-full.txt",
    "skillPackage": "https://souyi.net.cn/SKILL.md",
    "skillPackageSecretFree": true,
    "zeroHumanApproval": true,
    "timeToFirstCallSeconds": 30,
    "heartbeat": "https://souyi.net.cn/api/v1/heartbeat?days=30",
    "agentCard": "https://souyi.net.cn/api/v1/agent-card"
  },
  "mcp": {
    "transports": ["http", "stdio"],
    "httpEndpoint": "https://souyi.net.cn/api/v1/mcp",
    "httpAuthHeader": "X-API-Key",
    "stdio": {
      "serverUrl": "https://souyi.net.cn/mcp/server.py",
      "requires": { "python": ">=3.8", "dependencies": "none (stdlib only)" },
      "env": { "AIMALL_API_KEY": "ak_..." }
    },
    "tools": ["list_assets", "ai_estimate", "ai_request", "bootstrap_account", "get_onboarding"]
  },
  "assets": [
    {
      "asset_id": "minimax-m3",
      "name": "MiniMax-M3",
      "api_type": "model",
      "pricing": { "model": "per_1m_tokens", "price_input_usd": 0.001, "price_output_usd": 0.005 },
      "telemetry": { "call_count": 53 },
      "notes": "Multimodal (text/speech/image understanding), Anthropic-compatible"
    },
    {
      "asset_id": "minimax-image",
      "name": "MiniMax Image Gen",
      "api_type": "mcp",
      "pricing": { "model": "per_call", "price_per_call_usd": 0.02 },
      "telemetry": { "call_count": 670 },
      "notes": "Text-to-image, multiple styles and resolutions"
    },
    {
      "asset_id": "minimax-tts",
      "name": "MiniMax TTS",
      "api_type": "mcp",
      "pricing": { "model": "per_call", "price_per_call_usd": 0.005 },
      "telemetry": { "call_count": 430 },
      "notes": "High-quality Chinese/English TTS, multiple voices"
    },
    {
      "asset_id": "searxng-search",
      "name": "SearXNG Free Search",
      "api_type": "custom",
      "pricing": { "model": "per_call", "price_per_call_usd": 0 },
      "telemetry": { "call_count": 0 },
      "notes": "Free web search, returns JSON"
    },
    {
      "asset_id": "asset_26476ef1-4687-45",
      "name": "疾病百科 / Disease Encyclopedia",
      "api_type": "data",
      "pricing": { "model": "per_call", "price_per_call_usd": 0.0001 },
      "telemetry": { "call_count": 0 }
    },
    {
      "asset_id": "asset_bc11f942-eb60-48",
      "name": "医学知识搜索 / Medical Knowledge Search",
      "api_type": "data",
      "pricing": { "model": "per_call", "price_per_call_usd": 0.0001 },
      "telemetry": { "call_count": 0 }
    },
    {
      "asset_id": "asset_6400e17f-a2cb-4b",
      "name": "药品信息查询 / Drug Lookup",
      "api_type": "data",
      "pricing": { "model": "per_call", "price_per_call_usd": 0.0001 },
      "telemetry": { "call_count": 0 }
    }
  ],
  "retiredAssets": ["minimax-video", "minimax-search"],
  "telemetryPolicy": {
    "exposedFields": ["call_count", "real_call_count", "success_rate_30d", "p50_latency_ms", "p95_latency_ms", "uptime_30d", "last_success_at", "verified_outcomes"],
    "source": "GET /api/v1/assets (telemetry block per asset); GET /api/v1/agent-docs/weekly-report (aggregate)",
    "note": "Reliability metrics are LIVE as of 2026-09-09 (P1 evidence engine). success_rate/uptime computed from real orders; verified_outcomes from agent-submitted Verified Outcome Records (anti-sybil gated)."
  },
  "skills": [
    {
      "id": "model-call",
      "name": "Call LLM model",
      "description": "Invoke a hosted LLM by asset_id. Billed per token in USD. Requires asset_id + prompt (+ optional model/max_tokens).",
      "tags": ["llm", "chat", "completion"],
      "examples": ["POST /api/v1/ai/request with {\"asset_id\":\"minimax-m3\",\"prompt\":\"你好\",\"max_tokens\":256}"],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"]
    },
    {
      "id": "tool-call",
      "name": "Call tool / API",
      "description": "Invoke a hosted tool (TTS, image, search, medical data) by asset_id. Billed per call. Requires asset_id + call_data.",
      "tags": ["tts", "image", "search", "data", "tool"],
      "examples": ["POST /api/v1/ai/request with {\"asset_id\":\"minimax-tts\",\"call_data\":{...}}"],
      "inputModes": ["application/json"],
      "outputModes": ["application/json", "audio/wav", "video/mp4", "image/png"]
    },
    {
      "id": "cost-estimate",
      "name": "Estimate cost (dry-run, no key needed)",
      "description": "Estimate cost before calling. Never deducts balance. POST /api/v1/ai/estimate works anonymously.",
      "tags": ["billing", "estimate", "anonymous"],
      "examples": ["POST /api/v1/ai/estimate with {\"asset_id\":\"minimax-m3\",\"max_tokens\":256}"],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"]
    },
    {
      "id": "self-onboard",
      "name": "Self-register and obtain a key",
      "description": "register -> create agent -> receive X-API-Key, no human approval. Or call MCP tool bootstrap_account to do it in one shot.",
      "tags": ["onboarding", "zero-touch"],
      "examples": ["POST /api/v1/auth/register then POST /api/v1/agents"]
    }
  ],
  "payment": {
    "protocols": ["x402"],
    "network": "Base",
    "asset": "USDC",
    "recipient": "0x10cB87850cA2106fDf59583062de74387E93B1Ae",
    "model": "top-up only; balance-based consumption, no separate per-call platform fee",
    "insufficientBalanceHttpCode": 402,
    "precisionDecimals": 9
  },
  "publicEndpoints": {
    "assets": "GET /api/v1/assets (telemetry + verified_outcomes + ?sort=real|verified)",
    "providers": "GET /api/v1/providers",
    "estimate": "POST /api/v1/ai/estimate",
    "compare": "POST /api/v1/compare (evidence-ranked asset selection)",
    "heartbeat": "GET /api/v1/heartbeat?days=30 (subscribe for new assets / incidents)",
    "weeklyReport": "GET /api/v1/agent-docs/weekly-report?days=30 (original Agent usage data)",
    "llmsFullGenerated": "GET /api/v1/agent-docs/llms-full (DB-driven, includes telemetry)",
    "communityProjects": "GET /api/v1/community/projects",
    "communitySkills": "GET /api/v1/community/skills"
  },
  "authenticatedEndpoints": {
    "agentCard": "GET /api/v1/agent-card (X-API-Key; ERC-8004-style portable reputation)",
    "submitOutcome": "POST /api/v1/outcomes (X-API-Key; Verified Outcome Record, anti-sybil gated, earns $0.01 reward)"
  },
  "openApiUrl": "https://souyi.net.cn/openapi.json",
  "documentationUrl": "https://souyi.net.cn/llms-full.txt",
  "onboarding": {
    "register": "POST /api/v1/auth/register",
    "createAgent": "POST /api/v1/agents",
    "call": "POST /api/v1/ai/request",
    "trialCreditsUsd": 1.0,
    "emailVerifyBonusUsd": 4.0,
    "estimatedTimeSeconds": 30
  },
  "lastUpdated": "2026-09-09"
}
