Developers

Real experts' minds, from your code.

7 JSON endpoints over HTTPS. One API key, the same credits as on the web, and the expert's name on every answer. This page is built from the same spec your tools import, so it matches the API.

Prefer MCP? Claude, Cursor and any MCP client connect in one click on Connect.

01

Start in a minute

  1. 1
    See who can answer. No key, no account.curl https://sabli.app/api/v1/minds
  2. 2
    Create a key on Connect (it starts with mk_, shown once; keep it on a server, never in a web page) and ask a mind.curl https://sabli.app/api/v1/minds/daniel-sousa/consult \ -H "Authorization: Bearer mk_..." \ -H "Content-Type: application/json" \ -d '{"question":"Our product listing pages take about 4.5s to hit LCP on mid-range Android phones, and the hero image plus…"}'
  3. 3
    Show the answer with its attribution.
    {
      "answer": "In short: Confirm with real user data that the hero image is the LCP[^1] element on those phones, then make it load early, small and uncached-free. …",
      "run_id": "run_7f3a...",
      "attribution": {
        "twin": "daniel-sousa@1.0.0",
        "creator": "Daniel Sousa",
        "runId": "run_7f3a...",
        "workflow": "consult",
        "channel": "rest",
        "license": "platform-exclusive, commercial",
        "disclosure": "Generated by an AI mind licensed from Daniel Sousa, not by Daniel personally."
      },
      "url": "https://sabli.app/minds/daniel-sousa"
    }

02

Endpoints

Base address https://sabli.app/api/v1. Send Authorization: Bearer <key> on every call except the two marked “no key”.

  • GET/mindsno key

    List the minds

    Every mind that can answer, real experts first, with topics and workflows.

    Get back

    The minds

  • GET/minds/{mind}no key

    About a mind

    One mind in detail: the expert, credentials, methods, topics, workflows and license terms.

    Send

    {mind}in the path
    The mind's id, from GET /minds.

    Get back

    The mind as Mind. Errors 404.

  • POST/match

    Find the right mind

    From a problem in the person's own words, the 1–3 minds that fit best, each with one line on why. No credit used.

    Send

    problemstringrequired
    Up to 6,000 characters.

    Get back

    The best-fitting minds. Errors 400, 401, 429.

  • POST/minds/{mind}/consult

    Ask a mind

    Ask a question and get the answer that expert would give, in their method and judgment.

    Send

    {mind}in the path
    The mind's id, from GET /minds.
    questionstringrequired
    The question, in the person's own words. Up to 6,000 characters.
    contextstring
    The person's situation: company, goals, constraints, numbers. Read for the answer, never stored.. Up to 4,000 characters.

    Get back

    The answer with its attribution as Answer. Errors 400, 401, 402, 404, 429, 503.

  • POST/minds/{mind}/workflows/{workflow}

    Run a workflow

    Run one of the mind's named workflows (a structured deliverable, e.g. a PRD or a pricing review) on a brief.

    Send

    {mind}in the path
    The mind's id, from GET /minds.
    {workflow}in the path
    A workflow id of that mind, from GET /minds.
    briefstringrequired
    Situation, goals and constraints. Up to 6,000 characters.

    Get back

    The answer with its attribution as Answer. Errors 400, 401, 402, 404, 429, 503.

  • POST/minds/{mind}/critique

    Get a critique

    Have the mind review a piece of work against the expert's rules of thumb. Up to 4,000 characters on any plan; longer documents (up to about 25 pages) on paid plans, priced by size.

    Send

    {mind}in the path
    The mind's id, from GET /minds.
    artifactstringrequired
    The work to review, as text. Up to 160,000 characters.
    rubricstring
    Optional: what to focus on. Up to 1,000 characters.

    Get back

    The answer with its attribution as Answer. Errors 400, 401, 402, 404, 429, 503.

  • POST/runs/{run}/feedback

    Rate an answer

    How an answer landed: up (helpful), off (missed the point) or report (offensive or harmful). No credit used; only the reaction is kept.

    Send

    {run}in the path
    The run_id of an answer.
    reaction"up" | "off" | "report"required

    Get back

    Noted. Errors 400, 401, 404.

03

What comes back

Answer

answerstringrequired
Markdown (##, ###, >, -).
run_idstringrequired
attributionAttributionrequired
urlurlrequired
The mind's page on Sabli.

Attribution

twinstringrequired
mind@version.
creatorstringrequired
runIdstringrequired
workflowstring
channelstring
licensestringrequired
disclosurestringrequired

MindSummary

idstringrequired
versionstringrequired
mind@version, as the attribution shows it.
namestringrequired
expertstringrequired
rolestringrequired
taglinestring
samplebooleanrequired
An example mind: a placeholder expert, not a real person.
verifiedboolean
topicsstring[]
workflowsWorkflow[]required
critiqueobjectrequired
What a critique costs.
photourl | nullrequired
The expert's photo.
urlurlrequired

Mind

The public profile: the expert, credentials, methods, topics, workflows and license terms

idstringrequired
mindstringrequired
namestringrequired
rolestring
taglinestring
biostring
sampleboolean
credentialsstring[]
methodsobject[]
topicsstring[]
workflowsWorkflow[]required
licenseobject
The license terms.
creditsstring
What an answer costs.
disclosurestring
urlurlrequired

Workflow

idstringrequired
namestringrequired
coststringrequired

04

Errors

Every error is JSON with a code and a message: {"error": {"code", "message"}}.

400
Invalid request (invalid_request)
401
Missing or unknown API key (unauthorized)
402
Out of credits: get a Day pass or Plus (out_of_credits)
404
No such mind, workflow or run (not_found)
429
Today's answer limit is reached (daily_limit)
503
Answers are unavailable right now (unavailable)

05

Credits and rules

  • Credits. 3 free credits with a new account. An answer is 1 credit. A full deliverable (PRD, launch plan, architecture review and similar) is 3. Signature minds cost 3×: 3 credits an answer, 9 for a full deliverable. Plus a daily answer limit per account (429). Plans.
  • Attribution. Show every answer with its attribution block: the expert's name, the mind's version and the line saying it's their AI mind, not them personally.
  • Use. Use answers in your work under the expert's terms. Don't copy, resell or train on them. Licensing.
  • Privacy. We receive only what you send to a mind. It stays in your run history until you delete it, is never sold and never trains models. Experts never see questions, only counts. Privacy.

Zapier, Make, n8n or a custom GPT: import the spec and every call above is an action. How to set it up. Questions: hello@sabli.app.