StackResolve logoStackResolve

compare_companies

Structured side-by-side of several companies.

compare_companies returns a structured comparison of several companies across the fields you pick. Each company is resolved through get_company, so the values are cached facts with provenance, not a fresh essay.

#Call it

curl https://api.stackresolve.dev/v1/compare-companies \
  -H "x-api-key: $STACKRESOLVE_API_KEY" \
  -H "content-type: application/json" \
  -d '{"domains": ["resend.com", "sendgrid.com"]}'
Note
compare_companies is a REST and CLI primitive. It is not one of the hosted MCP tools.

#Parameters

domainsstring[]required

Two or more company domains to line up.

fieldsstring[]

Which fields to compare. Omit for the default set: description, products, categories, funding, technology.

#Response

Response (trimmed)
{
  "fields": ["description", "products", "categories", "funding", "technology"],
  "rows": [
    {
      "domain": "resend.com",
      "name": "Resend",
      "values": {
        "description": "Email platform for developers to deliver transactional and marketing emails at scale.",
        "products": ["Email API", "Transactional emails", "Webhooks"],
        "categories": ["Email service", "Developer tools", "API"],
        "funding": null,
        "technology": ["Node.js", "Python", "REST API", "MCP (Model Context Protocol)"]
      }
    },
    {
      "domain": "sendgrid.com",
      "name": "Sendgrid",
      "values": {
        "description": "Email delivery platform offering API and marketing campaign solutions, now part of Twilio.",
        "products": ["SendGrid Email API", "SMTP service", "Marketing Campaigns"],
        "categories": ["email", "email API", "email marketing"],
        "funding": null,
        "technology": ["Email API", "SMTP", "AI assistant"]
      }
    }
  ]
}

#Response fields

fieldsstring[]
The fields compared, in column order.
rowsarray

One row per company: { domain, name, values }, where values holds the chosen fields. A null value means the fact is unknown for that company.

Note
Metered as one workflow_execution event. Resolving each company can refresh stale fields, which warms the cache for later get_company calls.