REST API · v1

The Velocity REST API

A stable HTTP interface to Velocity’s trend and market intelligence. Authenticate with a vel_* Bearer key, call two endpoints, and get scored signals as clean JSON — CORS-enabled, quota-metered, ready for any backend or agent.

Getting started

Base URL & authentication

Base URL

https://velocity.andiamo.tech

All public endpoints live under /api/v1/. Responses are JSON and include CORS headers.

Authentication

Authorization: Bearer vel_…

Mint keys in the Agent Hub. Shown once, stored as a SHA-256 hash. The REST API requires a Starter plan or above.

example-requests.shbash
# Active security trends with a velocity score >= 50
curl -H "Authorization: Bearer vel_your_api_key" \
  "https://velocity.andiamo.tech/api/v1/trends?category=security&minScore=50&limit=10"

# Lightweight pulse snapshot for crypto
curl -H "Authorization: Bearer vel_your_api_key" \
  "https://velocity.andiamo.tech/api/v1/pulse?category=crypto"
Endpoints

Two endpoints, scored signals

Both require a vel_* key, are CORS-enabled, and count against your daily quota.

GET/api/v1/trends

Active trends sorted by velocity score, with recent data points and sources.

Query parameters

ParamTypeDefaultDescription
categorystringallFilter by category, e.g. security, crypto, market.
limitnumber20Max results (1–100).
minScorenumber0Minimum velocity score (0–100 internal scale).
GET/api/v1/pulse

Lightweight snapshot — the latest data point per tracked item. Ideal for dashboards.

Query parameters

ParamTypeDefaultDescription
categorystringallFilter by category.
statusstringactiveItem status filter.
limitnumber50Max results.
GET /api/v1/trends — 200 responsejson
{
  "data": [
    {
      "id": "crypto-bitcoin",
      "title": "BTC Price",
      "description": "Bitcoin cryptocurrency price tracking",
      "category": "crypto",
      "subcategory": null,
      "velocityScore": 78,
      "velocityState": "rising",
      "sourceCount": 5,
      "dataPoints": [
        { "timestamp": "2026-06-10T18:00:00.000Z", "score": 78, "granularity": "five_min" }
      ],
      "sources": [
        { "id": "…", "title": "BTC: $68,421 (+2.3%)", "url": "https://…", "publishedAt": "…" }
      ],
      "firstSeen": "2026-05-15T…",
      "lastUpdated": "2026-06-10T…"
    }
  ],
  "meta": {
    "total": 20,
    "limit": 20,
    "category": "all",
    "minScore": 0,
    "timestamp": "2026-06-10T18:00:00.000Z"
  }
}
Rate limits

Per-tier daily quotas

The owning user’s current subscription tier sets the quota — upgrades take effect without rotating keys.

PlanREST quotaNotes
FreeNo REST access (403). View trends in-app + use most MCP tools.
Starter24 / dayMinimum tier for the REST API.
Pro500 / dayAnalyst / agent-builder tier.
Unlimited5,000 / dayReal-time data feed territory.
Startup10,000 / dayPer seat; team plan.
EnterpriseUnlimitedTeam plan.

Every response carries X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset (a Unix epoch-seconds reset time). When the daily quota is exhausted, the API returns 429 with a Retry-After header. Quotas reset at the start of each UTC day.

Errors

Error codes

Errors return a JSON body with an error key and a human-readable message.

StatuserrorMeaning
400bad_requestValidation error in query params.
401unauthorizedMissing or invalid vel_* key.
403tier_too_low_for_api_accessFree-tier key — REST API requires Starter or above.
429quota_exceededDaily quota exhausted. Includes Retry-After.
500internal_errorServer error — safe to retry with backoff.
Beyond REST

Prefer an agent-native interface?

If an AI agent is the consumer, the MCP server exposes 14 read-only tools over JSON-RPC — search, intel briefs, momentum checks, CVE lookups, threat-actor attribution, and tech-stack alert subscriptions — using the same vel_* keys. See the AI agents use case for concrete playbooks, or the docs hub for the full picture.

FAQ

REST API questions

  • How do I authenticate to the REST API?

    Pass a vel_* key in the Authorization header as a Bearer token: Authorization: Bearer vel_your_api_key. Mint keys from the Agent Hub at /agents. Keys are stored only as a SHA-256 hash and every request is authorized as the issuing user.
  • Which plan do I need to call the API?

    The REST API requires a Starter plan or above. A Free-tier key receives a 403 (tier_too_low_for_api_access) with an upgrade nudge. Daily call quotas scale with tier: 24/day on Starter, 500/day on Pro, 5,000/day on Unlimited, and unlimited on Enterprise.
  • What rate-limit headers does the API return?

    Every response includes X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset (a Unix epoch-seconds reset time). When the daily quota is exhausted the API returns 429 with a Retry-After header indicating when to retry.
  • Is CORS supported for browser-based calls?

    Yes. The /api/v1/* endpoints return CORS headers and handle preflight OPTIONS requests, so you can call them from a browser app — though for production you should keep keys on a server, never in client code.
  • Should I use the REST API or the MCP server?

    Use the REST API for backends, scripts, and polling pipelines that prefer plain HTTP. Use the MCP server when an AI agent (Claude, ChatGPT, Codex, OpenClaw) should call tools directly. Both use the same vel_* keys. See the MCP docs at /mcp.

Start querying Velocity

Create an account, upgrade to Starter or above, and mint a key to make your first call.