Documentation

Compare LLM Search Behavior Through One API.

Use the HTTP reference to build an integration, or give the ready-made Agent Skill to your coding assistant and let it handle the workflow.

HTTP API

API Reference

Endpoints, request fields, response shapes, providers, credit costs, and errors.

Quick Start

The production API base is https://llmsleuth.com. Use API keys from your dashboard. Local and preview domains should not be used in documentation or customer integrations.

curl https://llmsleuth.com/api/v1/query \
  -H "Authorization: Bearer asc_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "What is the best lead scraping tool?",
    "runs": [
      { "provider": "openai", "model": "gpt-5.6-sol" },
      { "provider": "anthropic", "model": "claude-sonnet-5" },
      { "provider": "gemini", "model": "gemini-3.5-flash" }
    ]
  }'

Authentication

Send your key as a bearer token. Keys start with asc_. The x-api-key header is also accepted. Provider API keys stay on the LLM Sleuth server.

Authorization: Bearer asc_your_api_key

Run Query

POST/api/v1/query
FieldTypeDescription
querystringThe question or research prompt to run. Keep it at or below 4,000 characters.
runsarrayOne to 16 { provider, model } targets using IDs from GET /api/v1/models.
providersarrayLegacy shorthand that runs each selected provider's current default model.

Send either runs or providers, not both. Invalid or unavailable model IDs return a 400; they are never replaced silently.

List Available Models

GET/api/v1/models

Use this endpoint as the source of truth for selectable model IDs, display names, default models, and credit costs.

curl https://llmsleuth.com/api/v1/models \
  -H "Authorization: Bearer asc_your_api_key"
{
  "object": "list",
  "models": [
    {
      "id": "gpt-5.6-sol",
      "provider": "openai",
      "name": "GPT-5.6 Sol",
      "credit_cost": 2,
      "is_default": true
    }
  ]
}

Providers

IDProviderSearch capture
openaiChatGPT / OpenAICaptures Responses API web search calls and source annotations.
anthropicClaude / AnthropicCaptures web_search tool inputs and citations when returned.
geminiGemini / GoogleCaptures grounding search queries and grounding chunks when returned.
perplexityPerplexity / SonarCaptures Sonar citations and search_results when returned.

Response Shape

The response includes an execution_id. You can open that run later in the dashboard history. Always inspect each results[].ok value because individual providers can fail independently.

{
  "execution_id": "7f79c814-1112-4a94-9bb4-719d5ccf5e98",
  "query": "What is the best lead scraping tool?",
  "runs": [
    { "provider": "openai", "model": "gpt-5.6-sol" },
    { "provider": "anthropic", "model": "claude-sonnet-5" },
    { "provider": "gemini", "model": "gemini-3.5-flash" }
  ],
  "providers": ["openai", "anthropic", "gemini"],
  "credits_used": 4,
  "results": [
    {
      "provider": "openai",
      "label": "ChatGPT / OpenAI",
      "ok": true,
      "model": "gpt-5.6-sol",
      "generatedQueries": ["best lead scraping tools 2026"],
      "sources": [{ "url": "https://example.com/source" }],
      "sourcePreviews": [
        {
          "url": "https://example.com/source",
          "fetchStatus": 200,
          "headings": [{ "level": 1, "text": "Best Lead Tools" }]
        }
      ],
      "answer": "Markdown answer text..."
    }
  ]
}

Errors

FieldTypeDescription
401authMissing or invalid API key.
402creditsNot enough credits for the selected models.
400inputInvalid JSON, missing query, unavailable model, or invalid run selection.
500serverProvider or persistence failure.

Each model declares its credit cost in the model catalog. A request is charged the sum of its selected model costs.