Reports

Create a new report

Changed on

Start an asynchronous report generation job. Elicit will search for relevant papers, screen them for relevance, extract structured data, and produce a full research report.

Reports are long-running operations (typically 5–15 minutes). The response includes a sessionId and a links.self URL that you poll for status.

The report is also visible at the url returned in the response, where you can watch it progress in real time.

Workflow

  1. POST /api/v2/sessions/reports — submit your research question (returns immediately with sessionId)
  2. GET links.self (/api/v2/sessions/reports/:sessionId) — poll while status is processing. If it becomes pausedForInsufficientQuota, resolve the usage limit and POST to links.resume before continuing.
  3. When complete, use the available pdfUrl and docxUrl fields to download the report, and txtUrl, bibUrl, and risUrl for its reference list (APA text, BibTeX, and RIS). Check exportsStatus for reference-list availability; these URLs are not guaranteed to be present immediately.

Example

# 1. Create the report
curl -X POST https://elicit.com/api/v2/sessions/reports \
  -H "Authorization: Bearer elk_live_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{"researchQuestion": "What are the effects of GLP-1 receptor agonists on cardiovascular outcomes?"}'

# 2. Poll while status is "processing"; resolve quota pauses before resuming
curl https://elicit.com/api/v2/sessions/reports/{sessionId} \
  -H "Authorization: Bearer elk_live_your_key_here"
post/sessions/reports

Request

  • Base URL
    https://elicit.com/api/v2
  • URL
    https://elicit.com/api/v2/sessions/reports
  • Auth
    HTTP bearer

Request body

researchQuestionstring required

The research question to investigate. Elicit will search for relevant papers, screen them, and extract data to produce a structured report.

titlestring

Optional title for the report. If provided, Elicit will use this as the report title instead of generating one automatically from the research question.

maxSearchPapersinteger

Maximum number of papers to retrieve during the search phase. More papers means a more comprehensive but slower report. Defaults to 50.

maxExtractPapersinteger

Maximum number of papers to include in the final extraction table. Papers are screened for relevance before extraction. Defaults to 10.

isPublicboolean

Whether the report should be publicly accessible via its URL without authentication. Defaults to false.

Example request

{
  "researchQuestion": "What are the effects of GLP-1 receptor agonists on cardiovascular outcomes?",
  "title": "GLP-1 Receptor Agonists and Cardiovascular Outcomes",
  "maxSearchPapers": 50,
  "maxExtractPapers": 10
}

Response

Report creation accepted. The report is now being generated asynchronously. Poll links.self for status.

type'report' required
sessionIdstring uuid required

The session ID (UUID) returned by the create endpoints and GET /sessions

status'processing' required

Initial status is always processing

urlstring required

URL to view the report in the Elicit web interface as it progresses

isPublicboolean required

Whether the report is publicly accessible via its URL without authentication

Example response

{
  "sessionId": "5ad08bfb-cbe0-4911-a8c3-309760d33029",
  "url": "https://elicit.com/review/5ad08bfb-cbe0-4911-a8c3-309760d33029",
  "links": {
    "self": "https://elicit.com/api/v2/sessions/reports/5ad08bfb-cbe0-4911-a8c3-309760d33029",
    "resume": "https://elicit.com/api/v2/sessions/5ad08bfb-cbe0-4911-a8c3-309760d33029/resume"
  }
}

Changes

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      the response property const value insufficient_quota was added for the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status