Skip to content
Integrations

Publish anywhere. Report everywhere.

Articles go straight to WordPress, Webflow, Shopify, Wix (beta) or any signed webhook. Alerts land in Slack and email, data flows through a REST API, and reports and exports go wherever your team works.

[01]CMS publishing

Straight to your site, on schedule.

Connect your CMS once. Approved articles publish with their title, meta description, featured image and structured data, and every attempt lands in the publish log.

  • DirectWordPressApplication password · posts with featured image; SEO meta via Rank Math or Yoast
  • DirectWebflowSite API token · CMS collection items, mapped to your fields
  • DirectShopifyCustom-app Admin API token · blog articles with SEO title and description
  • DirectWixbetaSite API key · Wix Blog posts with cover image and SEO tags
  • DirectWebhookSigned JSON POST to an endpoint you control
  • ExportMarkdown & HTMLCopy or download any article, with front matter or full meta

Starter: 1 per site · Growth & Agency: all. Credentials are encrypted with AES-256-GCM, used only by our servers and never shown again after you save them. About auto-publishing

Publishing · northwind.example· Example
  • WWordPressConnected · default
  • WebhookConnected
  • wfWebflowNot connected
  • SShopifyNot connected

Publish log

  • Best CRM for small sales teams/blog/best-crm-small-sales-teamsPublished
  • How to build a sales pipeline in a day/blog/build-a-sales-pipelinePublished
  • Northwind vs FieldlineWordPressScheduled · Thu 09:00
  • CRM pricing, explainedWaiting for reviewHeld · quality 64
Export · Markdown· Example
---
title: "Best CRM for small sales teams"
description: "How to choose a CRM your reps will actually use…"
slug: best-crm-small-sales-teams
image: ./best-crm-small-sales-teams.webp
---

## What a five-person team needs from a CRM

Most small teams don’t need more fields. They need follow-ups that happen on time…
Copy MarkdownCopy HTMLDownload

Example data · fictional brands

[02]Directory

Everything we connect to.

Built in, documented and available today. Each card shows the first plan that includes it.

[03]Slack & email

Know the moment the answer changes.

Alerts fire only when a change is bigger than the noise — so the channel stays useful.

Slack, in one paste.

Add a Slack incoming-webhook URL in Settings → Integrations. Warning and critical alerts post there with a link straight to the brand’s dashboard; informational ones stay in the app and in webhooks.

  • Visibility drops beyond the margin of error
  • Competitors overtaking you, lost or gained prompts
  • New sites that cite competitors but not you
  • Runs that failed or came back incomplete

Available on every paid plan; owners and admins manage it. How alerts work

Example data · fictional brands

Example data · fictional brands

Email that earns its place.

Alert emails reach everyone on your team who wants them — each person controls their own notifications — and a weekly digest summarises every brand in the workspace each Monday.

  • Per-person notification preferences
  • Monday digest across all brands
  • Unsubscribe links on alert, digest and report emails
  • Client logins never receive alert emails
[04]Webhooks

Signed events, delivered.

Add HTTPS endpoints, pick the events you care about and verify every delivery with an HMAC signature. Available on Growth and up.

Events

  • run.completed

    A tracking run finished — with the new score, margin and mention rate

  • alert.created

    A visibility alert fired: drop, gain, competitor overtake, lost prompts, new gap domains, run problems

  • recommendations.created

    This week’s recommendations are ready

Headers on every delivery

Mentioned-Event
run.completed
Mentioned-Delivery
5f0c2a1e-…
Mentioned-Signature
t=1762420500,v1=9b1f…e3

Built to be relied on

  • Respond 2xx within 10 seconds; anything else is retried with exponential backoff
  • Every event has a unique id — de-duplicate retries on it
  • Endpoints pause automatically after 20 consecutive failures
  • “Send test event” checks your handler before you go live
POST · run.completed
{
  "id": "5f0c2a1e-8d3b-4c7a-9e21-6b0f4d2c9a71",
  "type": "run.completed",
  "created": "2026-11-06T09:15:00.000Z",
  "data": {
    "project_id": "c1a7…",
    "run_id": "9e44…",
    "trigger": "schedule",
    "status": "completed",
    "results": 200,
    "visibility_score": 58.4,
    "score_margin": 5.1,
    "mention_rate": 0.66
  }
}
verify.js · Node.js
import crypto from "node:crypto";

// Mentioned-Signature: t=<unix seconds>,v1=<hex HMAC>
// HMAC-SHA256(secret, t + "." + rawBody)
export function verify(secret, rawBody, header) {
  const parts = Object.fromEntries(
    header.split(",").map((kv) => kv.split("=", 2)),
  );
  const t = Number(parts.t);
  if (!Number.isFinite(t) || !parts.v1) return false;
  // Replay protection: reject anything older than 5 minutes.
  if (Math.abs(Date.now() / 1000 - t) > 300) return false;
  const expected = crypto
    .createHmac("sha256", secret)
    .update(t + "." + rawBody)
    .digest("hex");
  const a = Buffer.from(expected);
  const b = Buffer.from(parts.v1);
  return a.length === b.length && crypto.timingSafeEqual(a, b);
}
[05]REST API

Your data, in your warehouse.

Pull scores into dashboards and BI, or manage prompts from your own tools. Available on Growth and up.

Endpoints · mentioned-flame.vercel.app/api/v1

  • GET/projectsBrands in your workspace
  • GET/projects/{id}One brand with its latest metrics
  • GET/projects/{id}/metricsDaily metrics per engine and overall
  • GET/projects/{id}/resultsAnalysed answers, keyset-paginated
  • GET/projects/{id}/promptsPrompts and the plan’s per-brand limit
  • POST/projects/{id}/promptsAdd up to 100 prompts per request
  • GET/projects/{id}/recommendationsWeekly recommendations, newest first
  • Bearer keys

    Keys start with mk_live_, are shown once and can be revoked instantly by owners and admins.

  • 600 requests / hour

    Per key, with X-RateLimit headers and Retry-After on 429.

  • One error envelope

    Every error is { error: { code, message } } with a stable code.

  • Keyset pagination

    Results return next_cursor until there’s nothing left.

Request · daily metrics
BASE=https://mentioned-flame.vercel.app/api/v1

curl -G "$BASE/projects/PROJECT_ID/metrics" \
  -d from=2026-10-01 -d provider=all \
  -H "Authorization: Bearer mk_live_…"
200 OK · application/json
{
  "from": "2026-10-01",
  "to": "2026-11-06",
  "data": [
    {
      "day": "2026-11-06",
      "provider": "all",
      "visibility_score": 58.4,
      "score_margin": 5.1,
      "mention_rate": 0.66,
      "mentions": 264,
      "answers": 400,
      "avg_position": 2.3,
      "avg_sentiment": 0.42,
      "share_of_voice": { … }
    }
  ]
}
[06]Reports & share links

Reporting for people without a login.

Download a PDF for any brand, schedule it to inboxes on Growth and up, or send a live read-only link. On the Agency plan, all three carry your agency’s branding.

Example data · fictional brands

[07]CSV & JSON

Data in, data out.

No lock-in: bring your prompts from a spreadsheet, take your results anywhere.

prompts.csv
prompt,intent,tags
best crm for small teams,best_for,core;smb
northwind vs fieldline,versus,rivals
alternatives to kestrel,alternatives,rivals
how to automate follow-ups,how_to,tofu

CSV import

Columns prompt, intent and tags (semicolon-separated). A file without a header is read as one prompt per line; duplicates are skipped.

northwind.example-prompts.csv
prompt,intent,tags,active,priority,last_checked_at,ChatGPT mentioned,…
best crm for small teams,best_for,core;smb,yes,yes,2026-11-06T09:12:41Z,yes,…
northwind vs fieldline,versus,rivals,yes,no,2026-11-06T09:12:44Z,yes,…

CSV export

Every prompt with its intent, tags, status and last check — plus whether each engine mentioned you, your position and your mention rate.

JSON export

From account settings, download every workspace you’re a team member of — brands, prompts, runs, answers, daily metrics, recommendations and alerts — as one JSON file.

mentioned-export-2026-11-06.json
{
  "exported_at": "2026-11-06T10:02:11.000Z",
  "user": { "id": "…", "email": "you@…" },
  "workspaces": [{
    "organization": { "name": "Acme Growth", … },
    "members": […], "projects": […],
    "prompts": […], "runs": […], "results": […],
    "daily_metrics": […], "recommendations": […],
    "alerts": […]
  }]
}
[08]Website

See the visits AI sends you.

Copy your brand’s snippet from its AI traffic tab and add it to every page. Mentioned counts arrivals from AI assistants next to your visibility trend.

Add before </body>
<script
  async
  src="https://mentioned-flame.vercel.app/t.js"
  data-key="YOUR_TRACKING_KEY"
></script>

Recognised assistants

  • ChatGPT
  • Perplexity
  • Claude
  • Gemini
  • Copilot
  • DeepSeek
  • Grok
  • Meta AI
  • Cookieless — stores nothing in the browser
  • Sends a beacon only for visits from a known AI assistant (referrer or utm_source)
  • Reports the assistant and the landing path — never query strings or personal data
  • IP addresses are hashed for rate limiting and never stored
[09]Billing

Billing that stays out of the way.

Checkout and the customer portal are powered by Stripe, so finance gets proper invoices and nobody emails card numbers.

  • Checkout & trial

    Every plan starts with a 3-day trial (card required); pay monthly or yearly (two months free).

  • Invoices & payment methods

    Download invoices and update cards in Stripe’s customer portal. Failed payments trigger a reminder email.

  • Change or cancel anytime

    Switch plans or cancel in the portal; add prompt packs from billing settings. No calls, no contracts.

Free AI audit

Start with the free audit.

See where your brand appears in AI answers today. Connect Slack, webhooks and the API when you start your trial.

Your website

Free · 5 buyer questions · 2 AI engines · no signup to see your score

  1. 01Where you appear across AI answers
  2. 02Who AI recommends instead of you
  3. 03Every answer, with the sources cited

Free · results in about a minute · or start a 3-day trial