MODERATION DECISIONS · API

Your rules.
One verdict.
Under a second.

Send a chat message and the rules you want applied. A purpose-built decision model returns allow, flag or block, with the winning rule as the reason, before the conversation moves on.

< 1 s round trip · 1,000 decisions a month free

POST /v1/decidechannel: private · 4 rules< 1 s ROUND TRIP
MSGhey come meet me after the show, i’m close by
Meetup request meetup → block0.91
Contact info contact → block0.12
Off-platform move offplatform → flag0.22
Harassment harassment → block0.04
│ threshold 0.50
VERDICTblockmeetup · confidence 0.91
{
  "verdict": "block",
  "confidence": 0.91,
  "reason": {
    "key": "meetup",
    "name": "Meetup request"
  }
}
Replayed decisions. This page makes no live calls.
ROUND TRIPUnder 1 second
VERDICTSallow · flag · block
PER CALL16 rules · 2,000 chars
STOREDNothing, by default

BUILT FOR THE HOT PATH

A verdict before the next message lands.

Sigilline runs a purpose-built decision model, not a general chat model. It doesn't write a reply for you to parse. It scores your rules and answers, in under a second, round trip.

SAME MESSAGE, SAME RULESROUND TRIP →
Sigillinedecision model
BLOCK · meetup · 0.91
< 1 s
General chat modelprompt, generate, parse
still writing…

No text generation

The model scores your rules. It never writes a paragraph you have to wait for.

No prompt to tune

Your rules are the input. A name, a description and an action are enough.

Nothing to parse

Every response has the same shape: verdict, reason, confidence and a score per rule.

HOW A DECISION IS MADE

Scores are the model's. The verdict is arithmetic.

The model scores every rule. Sigilline applies your thresholds and actions the same way every time, so a verdict can always be explained.

01 ─── SEND

One message, your rules

The message, its channel, the sender's role and up to 16 rules. Each rule has a key, a name, a description and an action.

02 ─── SCORE

Every rule gets a score

A moderation model scores each rule in scope from 0 to 1. Every score comes back in the response.

03 ─── DECIDE

The strictest action wins

Among rules over their threshold, block beats flag beats allow. A higher score breaks a tie, then rule order. No match means allow.

THE API

One call, one decision.

The reason is your own rule's name and description. Nothing to parse, nothing written in our words.

Read the full reference →
REQUEST
{
  "task": "moderation",
  "channel": "private",
  "sender_role": "viewer",
  "message": "hey come meet me after",
  "rules": [{
    "key": "meetup",
    "name": "Meetup request",
    "description": "Asking to meet in person.",
    "action": "block"
  }]
}
RESPONSE200
{
  "id": "dec_01HZX",
  "verdict": "block",
  "confidence": 0.91,
  "reason": {
    "key": "meetup",
    "name": "Meetup request",
    "description": "Asking to meet in person."
  }
}

Built to sit in the hot path of live chat.

YOUR TAXONOMY

Sigilline ships no fixed categories. You write the rules for meetups, contact info or off-platform moves.

NOTHING KEPT

Messages are not stored. History stays off until you choose a retention period.

ISOLATED

Every key, rule and usage row belongs to one organization from the first schema onward.

STABLE CONTRACT

Models change behind the API. Your request and response stay the same.

PRICING

Pay for decisions. Nothing else.

One successful call is one decision, however many rules it carries. Test keys never count.

FREE

1,000decisions a month

$0

  • Saved rulebook
  • Live and test keys
Start free

5K

5,000decisions a month

$5 / mo

  • Everything in Free
  • Opt-in request history
Choose 5k

100K

100,000decisions a month

$100 / mo

  • Everything in Free
  • Opt-in request history
Choose 100k

Enterprise

Moderating millions of messages?

Volume pricing past 100,000 decisions a month, security and privacy reviews, and help tuning your rules for your platform. Tell us what you need.

Talk to usA person reads every request.

Past the allowance, the next call is refused. Unused decisions do not roll over.

Put a verdict on every message.

Sign in with your email. Your first key takes a minute.