← Brandomica Lab

API Documentation

Last updated: April 11, 2026

Agent-ready interface

Brandomica exposes the same safety workflow through web UI, REST, and MCP. Use this page as the contract for integrations and automated brand decision flows.

Quickstart

One request to check everything. Replace acme with your brand name:

curl https://www.brandomica.com/api/check-all?name=acme

Returns JSON with domains, social, trademarks, app stores, SaaS, Google, score, safety, linguistic, and phonetic results.

Response shape (abbreviated):

{
  "name": "acme",
  "domains": [{ "domain": "acme.com", "available": false }],
  "social": [{ "platform": "GitHub", "available": false, "url": "..." }],
  "trademarks": [{ "source": "USPTO", "available": false, "count": 42 }],
  "score": { "score": 3, "maxScore": 10, "confidence": "high" },
  "safety": { "safetyScore": 28, "overallRisk": "high", "blockers": [...] },
  "mode": "full"
}

Error shape (all endpoints):

{ "error": "Missing 'name' query parameter" }  // 400
{ "error": "Rate limit exceeded. Try again in a minute." }  // 429
{ "error": "Internal error running brand checks" }  // 500

Brand name format

All endpoints accept a name query parameter. Names must be 1–63 characters, lowercase alphanumeric with optional hyphens, no leading/trailing hyphens.

Regex: ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$

REST endpoints

EndpointDescription
GET /api/check-all?name=All checks + score + safety assessment (supports ?mode=quick)
GET /api/check-domains?name=Domain availability + pricing (6 TLDs)
GET /api/check-social?name=GitHub API + Serper site-index checks for X, TikTok, Instagram, LinkedIn
GET /api/check-trademarks?name=USPTO automated (Turso FTS5) + EUIPO automated (Trademark Search API, sandbox active)
GET /api/check-google?name=Web presence via Google Search
GET /api/check-appstores?name=App Store automated; Google Play returns manual-link fallback
GET /api/check-saas?name=npm, PyPI, crates.io, RubyGems, NuGet, Homebrew, Docker Hub automated; ProductHunt API when configured
GET /api/check-typosquat?name=Typosquat variant detection with .com domain availability
GET /api/filing-readiness?name=Filing readiness summary (verdict, risk, conflicts, confidence)
GET /api/brand-report?name=Full brand safety report for due diligence (JSON)
GET /api/healthComponent health status (19 checks, pass/limited/warn/fail)
POST /api/batch-checkCheck 2-50 names in one call (body: {names, mode?}). Defaults to quick mode, returns results sorted by score
POST /api/compare-brandsCompare 2-5 names side-by-side (body: {names}). Returns per-brand scores + recommendation

Individual endpoints return JSON with a results array. The /api/check-all endpoint returns a flat object with all categories. Base URL: https://www.brandomica.com

X/Twitter, TikTok, Instagram, and LinkedIn are checked via Serper site: index lookups. These return false (taken) or null (manual check) — never true, because absence from Google's index does not confirm availability. Google Play remains manual-link only. ProductHunt is automated only when PRODUCTHUNT_TOKEN is configured. npm uses prefix search (e.g. “acme” finds “acme-cli”).

Tri-state convention

Availability fields use three values:

  • true — available (green)
  • false — taken (red)
  • null — unknown, check manually (amber). Excluded from score.

A null value can mean upstream failure, missing integration config, or a conservative fallback (for example, LinkedIn index inconclusive or Google Play manual-only).

MCP server

Brandomica Lab exposes 12 tools via the Model Context Protocol. Two transport options:

Stdio (local)

npx brandomica-mcp-server

Remote (streamable HTTP)

https://www.brandomica.com/mcp

Tools: brandomica_check_all, brandomica_assess_safety, brandomica_filing_readiness, brandomica_brand_report, brandomica_compare_brands, brandomica_batch_check, brandomica_check_domains, brandomica_check_social, brandomica_check_trademarks, brandomica_check_google, brandomica_check_appstores, brandomica_check_saas

OpenAPI spec

A full OpenAPI 3.1 specification is available for ChatGPT Custom GPT integration and other OpenAPI-compatible tools.

Rate limits

Brandomica Lab runs on shared infrastructure and enforces app-level rate limits per client IP:

  • MCP endpoint (/mcp): 30 requests/minute burst + 50 requests/hour sustained
  • REST endpoints: per-endpoint limits vary (typically 10-30 requests/minute)
  • Brand report (/api/brand-report): 10 requests/minute

Upstream APIs also apply their own limits (e.g. Vercel Domains: 20 availability + 100 price requests/min). Rate-limited responses return HTTP 429 with a JSON error body.

Developer links