EvoHub DocsEvoHub Docs Sign in

Get the running campaign

Use with AI
View as MarkdownThis page as plain text, for pasting into an AI tool Open in ClaudeAsk Claude questions about this page Open in ChatGPTAsk ChatGPT questions about this page
Connect to Cursor / VS Code / ClaudeSearch and read these docs from your AI tool (MCP server)

MCP server URL

https://docs.evohub.io/mcp

Claude Code

claude mcp add --transport http evohub-docs https://docs.evohub.io/mcp

Claude (claude.ai and Claude Desktop): Settings → Connectors → Add custom connector, and paste the URL above.

Claude Desktop — claude_desktop_config.json

{
  "mcpServers": {
    "evohub-docs": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://docs.evohub.io/mcp"
      ]
    }
  }
}

Cursor — ~/.cursor/mcp.json

{
  "mcpServers": {
    "evohub-docs": {
      "url": "https://docs.evohub.io/mcp"
    }
  }
}

VS Code — .vscode/mcp.json

{
  "servers": {
    "evohub-docs": {
      "type": "http",
      "url": "https://docs.evohub.io/mcp"
    }
  }
}
GET/api/v1/campaigns/active

The credit campaign running now — the sign-up campaign when there is one, otherwise the first-integration campaign — as the banner on the public site shows it. data is null when no campaign is running.

No API key is needed. Answers may be cached for a minute.

Responses

200

The running campaign, or null.

Headers

  • Cache-Control string
    public, max-age=60.

Content type: application/json

Type: object

  • data PublicCampaign | null

    One of:

    • PublicCampaign
      Show PublicCampaign properties
      • id string
      • kind string
        One of: card_signup first_integration
      • products array of string
        The products a first-integration campaign pays for; [] for a sign-up campaign.
      • name string
      • banner_text string
      • banner_link string
      • ehu number
        The credit paid, in EHU.
      • ends_at string (date-time)
    • null

429

Too many requests (RATE_LIMITED). Wait for Retry-After seconds.

Headers

  • Retry-After integer
    Seconds to wait before retrying.

Content type: application/json

Type: Error

  • error object required
    • code string required
      Example: STATEMENT_NOT_FOUND
    • message string required
      Example: No statement for that period.
    • request_id string

500

The campaign could not be loaded (CAMPAIGN_UNAVAILABLE). Retry later.

Content type: application/json

Type: Error

  • error object required
    • code string required
      Example: STATEMENT_NOT_FOUND
    • message string required
      Example: No statement for that period.
    • request_id string

Example request

curl -X GET 'https://evohub.io/api/v1/campaigns/active'