Skip to content
Developer guide

Run a council from your code

One HTTPS call runs your work through a multi-model AI debate plus the proprietary Final QA layer, and returns a finished answer — and a presentation-ready HTML deliverable. Built so your own apps and AI agents (Claude, GPT, your engine) can call it like any tool.

Quickstart

  1. 1. Create an API key at /account (it’s shown once — store it).
  2. 2. POST your brief to the endpoint with the key as a Bearer token.
  3. 3. Read back the verdict, the QA audit and the HTML deliverable. Credits bill to your account.
curl https://decidi.ai/api/v1/council \
  -H "Authorization: Bearer dck_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "question": "Review and harden these terms for public use: …",
    "level": "deep",
    "intent": "contract-review",
    "personaIds": ["corporate-lawyer","contracts-reviewer","devils-advocate"]
  }'

Authentication

Send your key as a Bearer token. Keys look like dck_live_…, are tied to one account, and only the hash is stored — keep it server-side. Revoke or rotate any time at /account.

Authorization: Bearer dck_live_3b69…

Endpoint

POST https://decidi.ai/api/v1/council

Prefer a machine-readable contract? The full OpenAPI 3.1 spec is at /openapi.json — import it into an API client, an agent framework, or MCP tooling.

Request body

questionstring · requiredThe brief — the work, decision or document. Paste or describe what you need. ≥5 chars.
level'quick' | 'standard' | 'deep'Model tier. quick=fast/cheap (1 round), standard=pro models (2 rounds), deep=newest/most-capable (3 rounds). Also accepts the raw ids fast/normal/max. Default: standard.
roundsnumber 1–4Debate rounds. Optional — defaults to the level’s depth.
personaIdsstring[]The council members (2–6). Omit for a balanced default council. IDs from the persona catalogue.
intentstringA blueprint that makes the deliverable purpose-built (e.g. ux-audit, code-review, contract-review, brand-kit). See Intents below.
attachmentsarrayUp to 6 items: { name, type, text } for documents, or { name, type, dataUrl } for images.

Response

verdictstringThe final, QA-signed-off answer (markdown).
qastring | nullThe Final QA audit — the flags it found and how each was resolved.
artifact_htmlstring | nullThe deliverable as a self-contained, on-brand HTML document (render in a sandboxed iframe; downloadable).
modelsstring[]The models that debated.
synth_model / qa_modelstringThe moderator and QA models used.
credits_chargednumberCredits billed for this call.
balancenumberThe account’s remaining balance.
usd_costnumberThe raw gateway cost in USD (transparency).

Persona catalogue — every ID you can seat

Pass any of these ids in personaIds (2–6 per council; repeat an id to seat the same mind more than once, each on a different model). Omit personaIds for a balanced default council. All 86 minds you can call:

devils-advocateContrarian challenger
The Devil's Advocate
Attacks the most attractive idea on the table to see if it holds.
optimistPossibility advocate
The Optimist
Finds the version of the idea that actually works.
pragmatistGet-it-done realist
The Pragmatist
Cuts theory down to what can ship this quarter.
first-principlesReasoning from the ground up
The First-Principles Thinker
Strips the problem to physics and rebuilds from scratch.
risk-officerDownside and exposure
The Risk Officer
Maps what can go wrong and how badly it hurts.
synthesiserIntegrator and decider
The Synthesiser
Finds the signal across the debate and forms the call.
data-skepticEvidence interrogator
The Data Skeptic
Asks where the numbers came from and what they hide.
steelmanStrongest-opposing-view builder
The Steelman
Argues the best version of the side nobody is defending.
end-user-advocateVoice of the person using it
The End-User Advocate
Keeps the debate honest about the real human on the other end.
pre-mortemAssume-it-failed investigator
The Pre-Mortem Analyst
Starts from "this flopped" and works back to why.
ux-researcherUser-behaviour investigator
The UX Researcher
Grounds every claim in how people actually behave.
visual-designerUI craft and hierarchy
The Visual Designer
Judges hierarchy, spacing, type and polish with a sharp eye.
product-strategistWhat to build and why
The Product Strategist
Connects every feature to a thesis about who wins.
growth-leadPLG and activation
The Growth Lead
Obsesses over activation, loops and the path to the aha.
accessibility-advocateInclusive-design conscience
The Accessibility Advocate
Makes sure it works for everyone, not just the median user.
software-architectSystems and structure
The Software Architect
Designs for change, not just for the demo.
security-engineerRed-teamer and threat-modeller
The Security Engineer
Thinks like the attacker before the attacker does.
ml-engineerData and machine learning
The ML Engineer
Asks whether the data and the model can actually deliver.
sre-reliabilitySRE and operations
The Reliability Engineer
Plans for the 3am page, not the happy path.
performance-engineerSpeed and efficiency
The Performance Engineer
Measures first, then makes it fast where it matters.
cfoFinance and capital
The CFO
Translates every decision into cash, margin and runway.
ceoThe accountable decision-maker
The CEO
Owns the call — weighs the whole business and decides.
cooExecution and the operating machine
The COO
Turns the decision into who does what, by when — and whether it can be delivered.
ctoTechnical strategy and feasibility
The CTO
Judges whether the technology can deliver it — and survive scale.
mbaThe integrated business case
The MBA
Ties strategy, market and the numbers into one business case.
strategy-consultantFrameworks and structured thinking
The Strategy Consultant
Structures the mess into a decision you can defend.
operations-leadProcess and execution at scale
The Operations Lead
Turns a plan into a process that survives Monday morning.
pricing-strategistMonetisation and packaging
The Pricing Strategist
Aligns price with value, willingness to pay and the model.
ma-dealmakerM&A and partnerships
The Dealmaker
Sees the deal, the leverage and the walk-away line.
brand-strategistMeaning and distinctiveness
The Brand Strategist
Builds the meaning that makes a product worth choosing.
performance-marketerPaid acquisition and ROAS
The Performance Marketer
Lives and dies by CAC, ROAS and the payback window.
content-seoOrganic discovery and authority
The Content & SEO Strategist
Builds compounding organic reach around real intent.
pr-commsNarrative and reputation
The PR & Comms Lead
Shapes the story before the story shapes you.
positioning-expertCategory and context (à la April Dunford)
The Positioning Expert
Frames what you are so the right buyer instantly gets it.
corporate-lawyerStructure, liability, governance
The Corporate Lawyer
Spots the liability hiding inside the exciting plan.
privacy-counselPOPIA / GDPR and data rights
The Privacy Counsel
Guards the data you collect and the trust you spend.
compliance-officerRegulatory and policy
The Compliance Officer
Keeps the plan inside the rules that actually apply.
ip-attorneyPatents, trademarks, copyright
The IP Attorney
Protects what you own and avoids what you would infringe.
contracts-reviewerTerms, clauses and red flags
The Contracts Reviewer
Reads the clause everyone else skims past.
people-leadHR, culture and org health
The People Lead
Asks what this does to the humans who have to deliver it.
executive-coachLeadership and self-awareness
The Executive Coach
Turns the spotlight back on the decision-maker.
sales-leaderPipeline and closing
The Sales Leader
Knows what it takes to actually get a yes.
customer-successRetention and adoption
The Customer Success Lead
Speaks for the customer after they have already bought.
negotiation-expertInfluence and agreement
The Negotiation Expert
Finds the deal both sides can live with — and your line.
copywriterWords that earn attention
The Copywriter
Makes every word work and cuts the ones that do not.
naming-expertNames and brand voice
The Naming Expert
Finds the name that is memorable, ownable and says the right thing.
storytellerNarrative and emotional arc
The Storyteller
Shapes facts into a story people remember and repeat.
creative-directorBig idea and taste
The Creative Director
Holds the bar for the one idea worth remembering.
real-estate-advisorProperty and investment
The Real-Estate Advisor
Reads a property as numbers, location and downside.
medical-literacyPlain-language health information
The Health-Literacy Explainer
Explains health topics clearly — informational, not diagnostic.
educatorCurriculum and learning design
The Educator
Designs for how people actually learn and remember.
financial-plannerPersonal finance and goals
The Financial-Planning Coach
Aligns money decisions with goals, risk and time.
sustainability-analystESG and long-term impact
The Sustainability Analyst
Weighs the impact and the long bill nobody is pricing in.
behavioural-economistHow people really decide
The Behavioural Economist
Predicts the irrational thing people will actually do.
contrarianConsensus-breaker
The Contrarian
Believes the crowd is usually wrong at the extremes.
futuristSecond-order and long-horizon
The Futurist
Plays the tape forward to where the trend actually leads.
minimalistSubtraction advocate
The Minimalist
Improves the plan by removing, not adding.
vc-partnerVC partner mindset
The Sceptical Investor
Asks why this is a venture, not just a nice business.
brutally-honest-friendNo-bullshit truth-teller
The Brutally Honest Friend
Says the thing everyone is thinking but nobody will say.
philosopherMeaning, ethics and first questions
The Philosopher
Asks whether you are even solving the right problem.
deep-researcherExhaustive source-finder
The Deep Researcher
Hunts down the primary sources and checks whether the evidence is actually real.
actuaryProbability & long-tail risk
The Actuary
Prices the risk the optimists forgot — including the rare, ruinous tail.
quant-analystModels, backtests & overfitting
The Quant Analyst
Distrusts the model until it survives out-of-sample — hunts data leakage and overfit.
statisticianInference, bias & causal claims
The Statistician
Separates a real effect from noise — and correlation from cause.
economistIncentives & second-order effects
The Economist
Follows the incentives and the second-order effects everyone ignored.
forensic-accountantRed flags & numbers that lie
The Forensic Accountant
Finds the inconsistency in the numbers — hidden liabilities, cashflow that does not add up.
prompt-architectTurns a thin brief into a real one
The Prompt Architect
Catches when the brief itself is too thin to get a great answer — and sharpens it.
qa-auditorDeliverable defects & readiness
The QA Auditor
Reads the emerging answer like a defect report — contradictions, gaps, missed asks.
systems-thinkerFeedback loops & unintended consequences
The Systems Thinker
Maps the loops and dependencies — where the fix creates the next problem.
enterprise-buyerThe procurement & approval gauntlet
The Enterprise Buyer
Sits on the buyer’s side — procurement, security review, the budget-holder’s quiet doubts.
conversion-strategistPersuasion, CTAs & objection handling
The Conversion Strategist
Reads the page as a visitor deciding in five seconds — and closes the gaps that lose them.
retention-strategistActivation, habit & churn
The Retention Strategist
Cares less about the signup than the second week — where the habit forms or dies.
onboarding-specialistFirst-run & time-to-value
The Onboarding Specialist
Obsesses over the first five minutes — the aha moment, the empty state, the drop-off.
customer-psychologistTrust, anxiety & emotional friction
The Customer Psychologist
Names the unspoken emotion — the hesitation, the trust gap, the buyer’s quiet anxiety.
technical-seoSearch, answer engines & schema
The Technical SEO & AEO Strategist
Makes the work findable — by Google’s crawler and by the AI answer engines now quoting sources.
crisis-commsWhat critics & journalists will attack
The Crisis Comms Advisor
Reads your work the way a hostile journalist, competitor or angry user would — before they do.
compliance-litigatorThe worst-case legal attack
The Compliance Litigator
Argues the case against you — the claim, the regulator, the exposure you didn’t see coming.
editor-in-chiefThe ruthless red pen
The Editor-in-Chief
Cuts everything that doesn’t earn its place — until it’s clear, sharp and publishable.
legend-trumpPopulist persuasion lens
Donald Trump
A communication lens: blunt, memorable framing, media instinct and negotiation theatre — with its risks named.
legend-obamaCoalition-building persuasion lens
Barack Obama
A communication lens: calm, structured rhetoric that builds coalitions and credibility — with its risks named.
legend-jobsProduct visionary
Steve Jobs
Ruthless taste — say no to a thousand things.
legend-hawkingTheoretical physicist
Stephen Hawking
Reason it from first principles.
legend-hemingwayNovelist
Ernest Hemingway
Cut every word that doesn’t earn its place.
legend-buffettInvestor
Warren Buffett
Value, margin of safety, circle of competence.
legend-suntzuStrategist
Sun Tzu
Win before the battle is fought.
legend-ogilvyAdman
David Ogilvy
The consumer isn’t a moron — sell, or else.

Examples

JavaScript / TypeScript

const res = await fetch("https://decidi.ai/api/v1/council", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.DECIDI_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    question: "Audit my checkout flow before launch.",
    level: "deep",
    intent: "ux-audit",
  }),
});
const { verdict, qa, artifact_html, credits_charged } = await res.json();

Python

import os, requests

r = requests.post(
    "https://decidi.ai/api/v1/council",
    headers={"Authorization": f"Bearer {os.environ['DECIDI_API_KEY']}"},
    json={
        "question": "Stress-test my investment thesis: …",
        "level": "deep",
        "intent": "investment-thesis",
    },
    timeout=300,
)
data = r.json()
print(data["verdict"])              # the QA-signed verdict
open("deliverable.html","w").write(data["artifact_html"] or "")

From an AI agent (Claude, GPT, your engine)

Wire Decidi in as a tool your agent can call when a task is high-stakes and deserves more than one model. Give the tool this schema and let the agent fill question and an intent:

{
  "name": "decidi_council",
  "description": "Run a high-stakes task through a multi-model AI council + QA. Use for audits, reviews, contracts, investment theses, and any decision where being wrong is expensive.",
  "input_schema": {
    "type": "object",
    "properties": {
      "question": { "type": "string", "description": "The brief / work to run" },
      "level":    { "type": "string", "enum": ["quick","standard","deep"] },
      "intent":   { "type": "string", "description": "ux-audit | code-review | contract-review | decision | …" }
    },
    "required": ["question"]
  }
}

Then POST exactly as above with your account key. The agent gets a verdict it can act on, plus the QA flags so it knows what was uncertain — a built-in second opinion that isn’t its own model.

Use it from Claude Code, Cursor, or any AI agent

Decidi is a plain REST endpoint, so any AI agent that can make an HTTP request — Claude Code, Cursor, Cline, Windsurf, the OpenAI or Gemini CLIs, or your own engine — can consult the council as a tool. Give the agent the key and one instruction: before any big or irreversible decision, get a second opinion that isn’t its own model.

1 · Give the agent the key

export DECIDI_API_KEY=dck_live_…

2 · Add this to its rules (CLAUDE.md, .cursorrules, or system prompt)

Before any high-stakes or irreversible decision — a schema or data migration,
a pricing or architecture change, a security-sensitive design, deleting data,
a public launch, or anything where being wrong is expensive — STOP and get a
second opinion from the Decidi council before you act.

POST the decision, with full context, to https://decidi.ai/api/v1/council using
DECIDI_API_KEY as a Bearer token. Read the "verdict" and the QA flags, then factor
them in before proceeding. Do not treat your own first answer as final on
decisions that matter.

3 · The call it makes

curl https://decidi.ai/api/v1/council \
  -H "Authorization: Bearer $DECIDI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "question": "Should we migrate the public API from REST to GraphQL? Context: …",
    "level": "deep",
    "personaIds": ["software-architect","devils-advocate","pragmatist","security-engineer"]
  }'

The response is one QA-audited verdict plus the credits charged — a second opinion from several independent frontier models, not the agent’s own. It bills your account’s credits.

Intents (purpose-built deliverables)

Set intent and the council produces a comprehensive, purpose-built deliverable — regardless of how brief your input is.

intentwhat you get
ux-audit / ui-auditA prioritised findings report (P0–P3 with fixes)
code-review / security-reviewSeverity-ranked code or threat findings
launch-readinessA GO / NO-GO verdict with blockers
decisionA decision memo — recommendation + next steps
plan / pr-planA phased, actionable plan
comparison / pricing-strategyA scored comparison matrix
investment-thesis / financial-analysisA bull/base/bear analysis
contract-review / compliance-reviewPlain-English red-flags ranked by cost
brand-kit / namingA brand kit — swatches, type, name shortlist
writing-critiqueLine-level critique that preserves your voice
stress-test / researchAdversarial pressure-test / evidence synthesis

Errors

statuserrormeaning
401missing_api_key / invalid_api_keyNo Bearer key, or the key is wrong/revoked.
402insufficient_creditsNot enough credits — top up at /credits. Includes { need, have }.
429rate_limitedOver 60 calls/hour for this account.
400missing_question / bad_jsonThe brief is too short, or the body isn’t valid JSON.

Rate limits & billing