Compliance API

Your product writes the copy.
One POST says whether it can legally publish.

Every tool in regulated industries is generating marketing now, and almost none of them check it. This is the layer in between: send the text and the industry, get back what a compliance reviewer would flag, with the fix and the reason. Nine rulebooks, 505 refused phrases, no model call, same answer every time.

One request.

No SDK, no onboarding call, no implementation project. If your product can make an HTTP request it can be compliant by this afternoon.

Request

# the ad your model just wrote
curl -X POST https://hub.danedigital.org/api/v1/check \
  -H "Authorization: Bearer YOUR_KEY" \
  -H "content-type: application/json" \
  -d '{
    "text": "Guaranteed approval and the
             lowest rates in town, no risk!",
    "vertical": "mortgage"
  }'

Response

{
  "verdict": {
    "findings": [
      {
        "claim": "Prohibited for this
                   vertical: \"lowest rate\"",
        "risk":  "Needs Counsel",
        "code":  "phrase.prohibited",
        "fix": {
          "with": "competitive rates",
          "why":  "A superlative has to be
                   substantiated against the
                   whole market."
        }
      }
    ]
  }
}

Two things the docs say twice, so we will too. Findings are nested under verdict — body.findings is undefined on a success. And an empty findings list is not a pass: a non-2xx response or an error key means nothing was checked, and the right thing to do is treat the result as unknown rather than as clear.

What it knows

Nine rulebooks, and it stays quiet on clean copy.

505 distinct refused phrases, 29 negation words so “we can’t guarantee a closing date” is noted and cleared rather than blocked, and a second pass for the identifiers a published piece is supposed to carry — an NMLS number, Equal Housing Lender, a required disclosure. A missing identifier is not a phrase you can search for, which is why most checkers ignore that half entirely.

282 Fair Housing · real-estate 51 Reg Z · mortgage 47 Reg D · investing 36 clinical 36 immigration 28 law 27 wellness 17 tcpa 16 contracting 5 general

Pass the vertical id. An unrecognised value is refused rather than quietly matched to a fallback rulebook, because the wrong rulebook returning “clear” is worse than an error.

It is a rules engine, not a model. No inference call, so the same text returns the same verdict every time, it answers in well under a second, and you can put it in a publish path without worrying about what it costs you per call. That also means it is auditable: every finding traces to a phrase in a rulebook, not to a probability.

See it run on a real flagged ad →

Pricing

Published, because theirs is not.

The two serious vendors in this category quote by the call and charge an implementation fee before you have checked a single line. There is no implementation fee here and no minimum term. Build on the free tier for as long as you like.

Developer

Build on it first

Everything works. The whole engine, all nine rulebooks, no card.

Free100 checks a month

Get a key →

Starter Most products start here

In your publish path

Enough to screen everything a mid-sized platform publishes, with usage you can read back per key.

$299a month · 10,000 checks

Get a key →

Scale

Every user you have

For a CRM, an MLS tool or a marketing platform running every draft its users write through the gate.

$999a month · 100,000 checks

Get a key →
Platform

Your name on it, for everyone you serve

Let’s talk · priced by seat count

  • Unlimited checks, and the per-key daily ceiling lifted to whatever your traffic needs
  • The white-label embed — one script tag and the checker runs on your own domain, your branding, your industry preselected
  • A branded build of the Chrome extension, published as an unlisted listing only your members install
  • Priority on new rulebooks, including ones written for your vertical

Built for listing platforms, brokerage networks, CRMs, trade associations and regulators. A free pre-publication screen for your members means fewer violations anyone has to enforce.

Talk about a platform build

Every key carries a daily ceiling as well as a monthly allowance — 2,000 checks a day by default, to stop a loop in staging spending your month in an hour. It is raised to fit the plan, and you can read your own usage any time at GET /api/v1/usage.

Get a key

Keys are issued by hand. That is deliberate.

Not a self-serve form into a void — you get a key and the person who built the engine, usually the same day. Tell me what you are building and which rulebooks you need and I will send a key and a worked example against your own copy.

No list, no drip. The docs are open either way — read them first.

Before you ask

The parts that matter to whoever reviews this.

Is this legal advice?

No, and nothing it returns should be presented as it. It is a screening tool: it tells you what a compliance reviewer would flag so a human can decide. The liability for what you publish stays with you — that is true of every tool in this category, including the ones that do not say so.

What do you do with the text we send?

It is checked and not retained as content. What is kept is the count, per key, so the usage endpoint can answer — see the privacy policy and what we hold.

How current are the rulebooks?

They are maintained as a set and versioned together. The published counts on this page are generated from the engine itself and checked on every deploy, so a figure here and the answer you get cannot drift apart.

What happens when it is wrong?

Tell me and the rulebook changes, usually the same week. It stays silent on clean copy by design — a checker that flags everything is one nobody leaves switched on — so a false positive is treated as a defect, not as caution.

Can we run it on our own domain?

Yes. The embed is one script tag and the checker renders on your site, your branding, your industry preselected, calling the API from your own page. That is the Platform plan.

What does it not do?

It reads text. It does not watch your social accounts, archive posts for an examiner or monitor what is already published — those are different products and some of them are good. This is the gate before publication, which is the half nobody sells as an API.