Research · Deployment · API

Research that helps people and the planet.

Business-plan Research & Deployment API with domain corpus citations, structured outputs, streaming, async jobs, webhooks, usage limits, and published assistant endpoints.

Full API guideOpenAPI JSONTry it liveBusiness plan

Example requestv1 live
POST /v1/research
Authorization: Bearer ds_…
Idempotency-Key: req_123
{
  "domain": "HEALTH_RESEARCH",
  "task": "summarize evidence",
  "query": "…",
  "accessibility": true,
  "human_review": true
}

Research areas

One accessible platform for discovery, learning, and impact.

Each domain retrieves DropShapes corpus excerpts, returns citations, and can be published as a hosted deployment endpoint.

♡

Mental health

Support calm, non-judgmental tools for education, reflection, care navigation, and research workflows with appropriate human oversight.

✚

Cancer and disease discovery

Help organize literature, compare findings, identify research gaps, and explain complex evidence in more understandable formats.

⚕

Health research

Assist with evidence review, patient-friendly communication, accessibility checks, and structured research support.

⌘

Coding and development

Help developers plan, test, document, and deploy accessible applications, APIs, and digital research tools.

▣

Education and learning

Turn difficult material into clearer lessons, study supports, visual structures, and adaptive learning experiences.

✦

Space exploration

Support mission planning, scientific communication, data interpretation, STEM learning, and ideas for future exploration.

◎

Neurodivergent accessibility

Create tools that reduce clutter, support different processing styles, improve readability, and help people work with less friction.

♧

Environmental research

Help organize climate, conservation, pollution, biodiversity, and sustainability information for research and public understanding.

Responsible health use: DropShapes research tools support education, research, communication, and workflow assistance. They are not a replacement for qualified medical care, diagnosis, treatment, or emergency services.

Developer guide

Research & Deployment API reference.

Everything you need to authenticate, call research endpoints, poll jobs, publish deployments, and handle errors. Machine-readable contract: https://api.dropshapes.com/v1/openapi.json.

1. Access & authentication

  • Plan: Business (or admin). Plus/Free cannot mint keys.
  • Create a key: Workspace → Settings → Research API keys, or use Create key in the try form below (while logged in). The full ds_… secret is shown only once at creation (with a Copy button). After that Settings only shows the prefix — revoke and create a new key if you lose it.
  • Send the key on every /v1/* call as Authorization: Bearer ds_… or Api-Key ds_….
  • JWT session endpoints (/research/history, /research/usage, /research/deployments) use your logged-in account token from Settings — not the API key.

2. Quotas & limits

  • Business: 2,000 research requests / calendar month and 60 requests / minute.
  • Each successful sync, stream, async completion, or deployment run counts as one research request and writes a usage event.
  • Over quota or rate limit → 429 with error.type quota_exceeded or rate_limit.
  • Check remaining usage in Settings or GET /research/usage (JWT).

3. Core endpoints

MethodPathAuthPurpose
POST/v1/researchAPI keyCreate a research run (sync or async)
POST/v1/research/streamAPI keyStream output as SSE (event: delta / done / error)
GET/v1/research/:idAPI keyRetrieve a prior result (poll async jobs)
GET/v1/openapi.jsonnoneOpenAPI 3 document
GET/POST/DELETE/v1/deployments…API keyList, create, revoke deployments
POST/v1/deployments/:slug/runpublish token*Run a published assistant
GET/POST/DELETE/v1/webhooks…API keyManage research.completed webhooks
GET/research/history?page&limitJWTPaginated account research history (items, total)
GET/research/usageJWTMonthly usage meter

* Public deployments may omit the token; private ones require X-DropShapes-Token or ?token=.

4. Request body (POST /v1/research)

FieldTypeNotes
domainenumRequired. One of the eight research domains above.
taskstringRequired. Short instruction (e.g. summarize evidence).
querystringOptional but recommended. The material or question to work on.
accessibilitybooleanDefault true. Prefer plain, low-clutter language.
human_reviewbooleanDefault true. Ask the model to list items needing a qualified human.
providerOPENAI | CLAUDE | DROPSHAPESOptional. Defaults to the first configured teacher, or DropShapes student.
structuredbooleanDefault true. Prefer JSON → markdown summary + structured object.
asyncbooleanDefault false. If true, returns 202 QUEUED and finishes in the background.

Optional header Idempotency-Key: repeat the same key for the same account to replay the stored result instead of billing another run.

5. Response shape

{
  "id": "clx…",
  "object": "research.result",
  "status": "SUCCEEDED",          // QUEUED | RUNNING | SUCCEEDED | FAILED
  "domain": "HEALTH_RESEARCH",
  "task": "summarize evidence",
  "query": "…",
  "accessibility": true,
  "human_review": true,
  "provider": "OPENAI",
  "model": "gpt-4o-mini",
  "output": "## Summary\n…",      // markdown (from structured when enabled)
  "structured": {                 // when structured=true
    "summary": "…",
    "findings": ["…"],
    "gaps": ["…"],
    "recommendations": ["…"],
    "needs_human_review": ["…"],
    "accessibility_notes": ["…"]
  },
  "citations": [
    { "id": "…", "title": "…", "source": "…", "url": null, "snippet": "…", "score": 0.82 }
  ],
  "usage": { "tokens": 1200, "latency_ms": 3400 },
  "notice": "…safety / education disclaimer…",
  "created_at": "2026-09-09T…",
  "completed_at": "2026-09-09T…"
}

Citations come from the DropShapes domain corpus (RAG), not live web search. Treat them as workflow aids and verify important claims against primary sources.

6. Sync, stream, and async

  • Sync — POST /v1/research without async. Wait for the full JSON result.
  • Stream — POST /v1/research/stream. SSE events: status, delta (JSON with a text field), done (final result object), or error.
  • Async — body field async: true → HTTP 202 with status: QUEUED. Poll GET /v1/research/:id until SUCCEEDED or FAILED, or listen for the webhook.

7. Errors

{
  "error": {
    "type": "plan_required",       // or rate_limit | quota_exceeded | not_found | …
    "code": "research_plan_required",
    "message": "Human-readable explanation"
  }
}

Common statuses: 401 invalid key, 403 plan required, 404 unknown id, 429 quota/rate limit.

8. Webhooks

  • Register with POST /v1/webhooks using JSON fields url (required) and optional secret.
  • On completion DropShapes POSTs research.completed with headers X-DropShapes-Event and X-DropShapes-Signature: sha256=<hmac> (HMAC-SHA256 of the raw body using your secret).
  • Payload includes event, created_at, and data (the research.result object).

9. Deployments

  • Publish from Account settings → Deployments, or via POST /v1/deployments / POST /research/deployments with name, domain, optional slug, task_hint, instructions, public.
  • Run: POST /v1/deployments/:slug/run with JSON query and optional task. Counts against the owner’s research quota.
  • Response includes publishToken and an embed snippet for demos.

10. Quick start (curl)

# Sync research
curl -s https://api.dropshapes.com/v1/research \
  -H "Authorization: Bearer ds_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: demo-001" \
  -d '{
    "domain": "HEALTH_RESEARCH",
    "task": "summarize evidence",
    "query": "Explain trial results in plain language",
    "accessibility": true,
    "human_review": true
  }'

# Retrieve / poll
curl -s https://api.dropshapes.com/v1/research/RESULT_ID \
  -H "Authorization: Bearer ds_YOUR_KEY"

# Stream (SSE)
curl -N https://api.dropshapes.com/v1/research/stream \
  -H "Authorization: Bearer ds_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"domain":"CODING","task":"document errors","query":"REST API 4xx/5xx guidance"}'

# Run a deployment
curl -s https://api.dropshapes.com/v1/deployments/health-brief/run \
  -H "Content-Type: application/json" \
  -H "X-DropShapes-Token: dpt_YOUR_TOKEN" \
  -d '{"query":"What should a patient-friendly summary include?"}'

Try the API

Send a live research request.

Uses your API key against the live backend. Prefer Sync for a first call; switch to Stream or Async to exercise those paths.

Deployment

Publish a hosted research assistant.

Creates POST /v1/deployments/:slug/run with an embed snippet and publish token. Manage publishing in Account settings; use this page for the API guide. See the Deployments guide for auth headers and request fields. Requires Business (or admin).

Publish from Account settings

Create, review, and revoke hosted assistants under Deployments. Business plan or admin required.

Build accessible research tools with DropShapes.

Business plan includes API keys, 2,000 research requests/month, deployments, and webhooks. Contact us for partnerships.

Contact the API team

contact@dropshapes.com · (855) 970-8003