Elicit API

  • OpenAPI Version: 3.1.0
  • API Version: 0.0.1

The Elicit API provides programmatic access to Elicit's research capabilities, including semantic search over 125 million+ academic papers and automated report generation.

Authentication

All API requests require a Bearer token in the Authorization header:

Authorization: Bearer elk_live_your_key_here

API keys can be created and managed from your Elicit account settings.

Billing

There is no extra charge for API access. Reports created via the API count against your workflow quota, the same as reports created through the web interface. Search requests are rate-limited based on your plan tier — see the Search endpoint for details.

Manage your plan in account settings.

Code Examples

Working examples in curl, Python, and JavaScript, plus integrations (CLI tool, Slack bot, Claude Code skill):

github.com/elicit/api-examples

Error Handling

All errors return a consistent JSON structure with an error object containing a machine-readable code and a human-readable message.

Servers

  • URL: https://elicit.com
    • Description: Elicit

Operations

Search for academic papers

  • Method: POST
  • Path: /api/v1/search
  • Tags: Search

Search Elicit's database of over 125 million academic papers using natural language queries.

Semantic search uses natural language understanding to find relevant papers even when the exact terms don't match.

Rate Limits

Plan Papers per request Requests per day
Basic 100 20
Plus 100 100
Pro 1,000 1,000
Team 1,000 No limit
Enterprise 5,000 No limit

Upgrade your plan in account settings for higher limits.

Example

curl -X POST https://elicit.com/api/v1/search \
  -H "Authorization: Bearer elk_live_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{"query": "effects of sleep deprivation on cognitive performance"}'

Request Body

Content-Type: application/json
  • query (required)

    string — The search query string

  • filters

    object — Filters to narrow search results

    • excludeKeywords

      array — Keywords to exclude from results

      Items:

      string

    • hasPdf

      boolean — Only include papers with available PDFs

    • includeKeywords

      array — Keywords that must appear in the paper

      Items:

      string

    • maxEpochS

      integer — Maximum publication date as Unix epoch seconds

    • maxQuartile

      integer — Maximum journal quartile (1 = top 25%)

    • maxYear

      integer — Maximum publication year

    • minEpochS

      integer — Minimum publication date as Unix epoch seconds

    • minYear

      integer — Minimum publication year

    • pubmedOnly

      boolean — Only include papers from PubMed

    • retracted

      string, possible values: "exclude_retracted", "include_retracted", "only_retracted" — How to handle retracted papers. Defaults to exclude_retracted.

    • typeTags

      array — Filter by study type

      Items:

      string, possible values: "Review", "Meta-Analysis", "Systematic Review", "RCT", "Longitudinal"

  • maxResults

    integer, default: 10 — Maximum number of results to return (1-5000)

Example:

{
  "query": "GLP-1 receptor agonists for weight loss",
  "filters": {
    "minYear": 2020,
    "maxYear": 2025,
    "minEpochS": 1672531200,
    "maxEpochS": 1772505448,
    "maxQuartile": 2,
    "includeKeywords": [
      "semaglutide",
      "liraglutide"
    ],
    "excludeKeywords": [
      "rodent",
      "mouse model"
    ],
    "typeTags": [
      "RCT",
      "Meta-Analysis"
    ],
    "hasPdf": false,
    "pubmedOnly": false,
    "retracted": "exclude_retracted"
  },
  "maxResults": 10
}

Responses

Status: 200 Search results returned successfully.
Content-Type: application/json
  • papers (required)

    array — List of papers matching the query

    Items:
    • abstract (required)

      string | null — Paper abstract

    • authors (required)

      array — List of author names

      Items:

      string

    • citedByCount (required)

      integer | null — Number of citations this paper has received

    • doi (required)

      string | null — Digital Object Identifier

    • elicitId (required)

      string | null — Elicit internal paper identifier

    • pmid (required)

      string | null — PubMed identifier

    • title (required)

      string — Paper title

    • urls (required)

      array — URLs for the paper

      Items:

      string

    • venue (required)

      string | null — Publication venue

    • year (required)

      integer | null — Publication year

Example:

{
  "papers": [
    {
      "elicitId": null,
      "title": "",
      "authors": [
        ""
      ],
      "year": null,
      "abstract": null,
      "doi": null,
      "pmid": null,
      "venue": null,
      "citedByCount": null,
      "urls": [
        ""
      ]
    }
  ]
}
Status: 400 Invalid request. The request body failed validation — check that `query` is present and `maxResults` is between 1 and 5000.
Content-Type: application/json
  • error (required)

    object

    • code (required)

      string — Machine-readable error code

    • message (required)

      string — Human-readable error message

Example:

{
  "error": {
    "code": "invalid_request",
    "message": "Invalid search request"
  }
}
Status: 401 Authentication failed. The API key is missing, invalid, revoked, or expired.
Content-Type: application/json
  • error (required)

    object

    • code (required)

      string — Machine-readable error code

    • message (required)

      string — Human-readable error message

Example:

{
  "error": {
    "code": "invalid_request",
    "message": "Invalid search request"
  }
}
Status: 429 Rate limit exceeded for this plan tier. Limits are enforced over a rolling 24-hour window. Check `X-RateLimit-Reset` for when the oldest request in your window expires.
Content-Type: application/json
  • error (required)

    object

    • code (required)

      string — Machine-readable error code

    • message (required)

      string — Human-readable error message

Example:

{
  "error": {
    "code": "invalid_request",
    "message": "Invalid search request"
  }
}
Status: 500 An unexpected error occurred. Retry after a short delay.
Content-Type: application/json
  • error (required)

    object

    • code (required)

      string — Machine-readable error code

    • message (required)

      string — Human-readable error message

Example:

{
  "error": {
    "code": "invalid_request",
    "message": "Invalid search request"
  }
}

Create a new report

  • Method: POST
  • Path: /api/v1/reports
  • Tags: Reports

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 reportId that you use to poll for status via GET /api/v1/reports/:reportId.

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/v1/reports — submit your research question (returns immediately with reportId)
  2. GET /api/v1/reports/:reportId — poll until status is completed or failed
  3. Use the pdfUrl and docxUrl fields on the completed response to download the report

Example

# 1. Create the report
curl -X POST https://elicit.com/api/v1/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 for completion (repeat until status is "completed" or "failed")
curl https://elicit.com/api/v1/reports/{reportId} \
  -H "Authorization: Bearer elk_live_your_key_here"

Request Body

Content-Type: application/json
  • researchQuestion (required)

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

  • maxExtractPapers

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

  • maxSearchPapers

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

Example:

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

Responses

Status: 202 Report creation accepted. The report is now being generated asynchronously. Use the `reportId` to poll for status.
Content-Type: application/json
  • reportId (required)

    string — Unique identifier for the report. Use this to poll for status.

  • status (required)

    string — Initial status is always processing

  • url (required)

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

Example:

{
  "reportId": "5ad08bfb-cbe0-4911-a8c3-309760d33029",
  "status": "processing",
  "url": "https://elicit.com/review/5ad08bfb-cbe0-4911-a8c3-309760d33029"
}
Status: 400 Invalid request. Check that `researchQuestion` is present and within length limits.
Content-Type: application/json
  • error (required)

    object

    • code (required)

      string — Machine-readable error code

    • message (required)

      string — Human-readable error message

Example:

{
  "error": {
    "code": "invalid_request",
    "message": "Invalid search request"
  }
}
Status: 401 Authentication failed. The API key is missing, invalid, revoked, or expired.
Content-Type: application/json
  • error (required)

    object

    • code (required)

      string — Machine-readable error code

    • message (required)

      string — Human-readable error message

Example:

{
  "error": {
    "code": "invalid_request",
    "message": "Invalid search request"
  }
}
Status: 402 Insufficient quota. The user's plan does not have enough remaining workflow quota to create this report.
Content-Type: application/json
  • error (required)

    object

    • code (required)

      string — Machine-readable error code

    • message (required)

      string — Human-readable error message

Example:

{
  "error": {
    "code": "invalid_request",
    "message": "Invalid search request"
  }
}
Status: 500 An unexpected error occurred. Retry after a short delay.
Content-Type: application/json
  • error (required)

    object

    • code (required)

      string — Machine-readable error code

    • message (required)

      string — Human-readable error message

Example:

{
  "error": {
    "code": "invalid_request",
    "message": "Invalid search request"
  }
}

List reports

  • Method: GET
  • Path: /api/v1/reports
  • Tags: Reports

List all reports for the authenticated user, ordered by creation date (newest first).

Results are paginated using cursor-based pagination. Use the nextCursor value from the response to fetch the next page.

Example

# First page
curl https://elicit.com/api/v1/reports?limit=10 \
  -H "Authorization: Bearer elk_live_your_key_here"

# Next page
curl "https://elicit.com/api/v1/reports?limit=10&cursor=2025-06-15T14:30:00.000Z" \
  -H "Authorization: Bearer elk_live_your_key_here"

# Filter to API-created reports only
curl https://elicit.com/api/v1/reports?source=api \
  -H "Authorization: Bearer elk_live_your_key_here"

Responses

Status: 200 List of reports.
Content-Type: application/json
  • nextCursor (required)

    string | null — Cursor for the next page of results. Null if there are no more results.

  • reports (required)

    array — List of reports

    Items:
    • createdAt (required)

      string — ISO 8601 timestamp of when the report was created

    • reportId (required)

      string — Unique identifier for the report

    • source (required)

      string, possible values: "api", "user" — How the report was created

    • status (required)

      string, possible values: "processing", "completed", "failed", "unknown" — Current status of the report

    • title (required)

      string — Report title (the research question)

    • url (required)

      string — URL to view the report in the Elicit web interface

Example:

{
  "reports": [
    {
      "reportId": "5ad08bfb-cbe0-4911-a8c3-309760d33029",
      "status": "processing",
      "title": "What are the effects of GLP-1 receptor agonists on cardiovascular outcomes?",
      "url": "https://elicit.com/review/5ad08bfb-cbe0-4911-a8c3-309760d33029",
      "source": "api",
      "createdAt": "2025-06-15T14:30:00.000Z"
    }
  ],
  "nextCursor": "2025-06-15T14:30:00.000Z"
}
Status: 401 Authentication failed.
Content-Type: application/json
  • error (required)

    object

    • code (required)

      string — Machine-readable error code

    • message (required)

      string — Human-readable error message

Example:

{
  "error": {
    "code": "invalid_request",
    "message": "Invalid search request"
  }
}

Get report status and results

  • Method: GET
  • Path: /api/v1/reports/{reportId}
  • Tags: Reports

Poll the status of a report created via POST /api/v1/reports.

Status transitions

  • processing — Elicit is actively searching, screening, and extracting data. You can watch progress in real time at the url.
  • completed — The report is finished. The result field contains the report content.
  • failed — Something went wrong. The error field contains details.
  • unknown — Status is not tracked for this report (legacy or user-created reports).

Polling recommendation

Poll every 30–60 seconds. Reports typically complete in 5–15 minutes depending on the number of papers.

Including the full report body

By default, the reportBody and abstract fields are omitted to keep polling responses lightweight. To include them, add ?include=reportBody to the request.

Example

# Poll for status
curl https://elicit.com/api/v1/reports/{reportId} \
  -H "Authorization: Bearer elk_live_your_key_here"

# Fetch with full report body
curl "https://elicit.com/api/v1/reports/{reportId}?include=reportBody" \
  -H "Authorization: Bearer elk_live_your_key_here"

Responses

Status: 200 Report status and results (if completed).
Content-Type: application/json
  • reportId (required)

    string — Unique identifier for the report

  • status (required)

    string, possible values: "processing", "completed", "failed", "unknown" — Current status of the report. Transitions: processing → completed/failed. Poll until completed or failed.

  • url (required)

    string — URL to view the report in the Elicit web interface

  • docxUrl

    string | null — Pre-signed URL to download the report as DOCX. Only present when status is completed and assets have been generated. Expires after 7 days — re-fetch the report for a fresh URL.

  • error

    object — Error details, only present when status is failed

    • code (required)

      string — Machine-readable error code

    • message (required)

      string — Human-readable error message

  • pdfUrl

    string | null — Pre-signed URL to download the report as PDF. Only present when status is completed and assets have been generated. Expires after 7 days — re-fetch the report for a fresh URL.

  • result

    object — Report output, only present when status is completed

    • summary (required)

      string — AI-generated executive summary of the findings

    • title (required)

      string — Auto-generated title for the report

    • abstract

      string | null — Report abstract in markdown format. Only included when ?include=reportBody is specified.

    • reportBody

      string | null — Full report content in markdown format. Only included when ?include=reportBody is specified.

Example:

{
  "reportId": "5ad08bfb-cbe0-4911-a8c3-309760d33029",
  "status": "processing",
  "url": "https://elicit.com/review/5ad08bfb-cbe0-4911-a8c3-309760d33029",
  "result": {
    "title": "GLP-1 Receptor Agonists and Cardiovascular Outcomes: A Systematic Review",
    "summary": "This review analyzed 42 studies examining the cardiovascular effects of GLP-1 receptor agonists. The evidence suggests significant reductions in major adverse cardiovascular events (MACE), with semaglutide showing the strongest effect (HR 0.74, 95% CI 0.58-0.95)...",
    "reportBody": "# Introduction\n\nGLP-1 receptor agonists have emerged as...",
    "abstract": "This systematic review examines the cardiovascular effects of..."
  },
  "error": {
    "code": "",
    "message": ""
  },
  "pdfUrl": "https://s3.amazonaws.com/...",
  "docxUrl": "https://s3.amazonaws.com/..."
}
Status: 401 Authentication failed. The API key is missing, invalid, revoked, or expired.
Content-Type: application/json
  • error (required)

    object

    • code (required)

      string — Machine-readable error code

    • message (required)

      string — Human-readable error message

Example:

{
  "error": {
    "code": "invalid_request",
    "message": "Invalid search request"
  }
}
Status: 404 Report not found. Either the report ID is invalid or the report belongs to a different user.
Content-Type: application/json
  • error (required)

    object

    • code (required)

      string — Machine-readable error code

    • message (required)

      string — Human-readable error message

Example:

{
  "error": {
    "code": "invalid_request",
    "message": "Invalid search request"
  }
}

Schemas

SearchFilters

  • Type:object
  • excludeKeywords

    array — Keywords to exclude from results

    Items:

    string

  • hasPdf

    boolean — Only include papers with available PDFs

  • includeKeywords

    array — Keywords that must appear in the paper

    Items:

    string

  • maxEpochS

    integer — Maximum publication date as Unix epoch seconds

  • maxQuartile

    integer — Maximum journal quartile (1 = top 25%)

  • maxYear

    integer — Maximum publication year

  • minEpochS

    integer — Minimum publication date as Unix epoch seconds

  • minYear

    integer — Minimum publication year

  • pubmedOnly

    boolean — Only include papers from PubMed

  • retracted

    string, possible values: "exclude_retracted", "include_retracted", "only_retracted" — How to handle retracted papers. Defaults to exclude_retracted.

  • typeTags

    array — Filter by study type

    Items:

    string, possible values: "Review", "Meta-Analysis", "Systematic Review", "RCT", "Longitudinal"

Example:

{
  "minYear": 2020,
  "maxYear": 2025,
  "minEpochS": 1672531200,
  "maxEpochS": 1772505448,
  "maxQuartile": 2,
  "includeKeywords": [
    "semaglutide",
    "liraglutide"
  ],
  "excludeKeywords": [
    "rodent",
    "mouse model"
  ],
  "typeTags": [
    "RCT",
    "Meta-Analysis"
  ],
  "hasPdf": false,
  "pubmedOnly": false,
  "retracted": "exclude_retracted"
}

SearchResponse

  • Type:object
  • papers (required)

    array — List of papers matching the query

    Items:
    • abstract (required)

      string | null — Paper abstract

    • authors (required)

      array — List of author names

      Items:

      string

    • citedByCount (required)

      integer | null — Number of citations this paper has received

    • doi (required)

      string | null — Digital Object Identifier

    • elicitId (required)

      string | null — Elicit internal paper identifier

    • pmid (required)

      string | null — PubMed identifier

    • title (required)

      string — Paper title

    • urls (required)

      array — URLs for the paper

      Items:

      string

    • venue (required)

      string | null — Publication venue

    • year (required)

      integer | null — Publication year

Example:

{
  "papers": [
    {
      "elicitId": null,
      "title": "",
      "authors": [
        ""
      ],
      "year": null,
      "abstract": null,
      "doi": null,
      "pmid": null,
      "venue": null,
      "citedByCount": null,
      "urls": [
        ""
      ]
    }
  ]
}

Paper

  • Type:object
  • abstract (required)

    string | null — Paper abstract

  • authors (required)

    array — List of author names

    Items:

    string

  • citedByCount (required)

    integer | null — Number of citations this paper has received

  • doi (required)

    string | null — Digital Object Identifier

  • elicitId (required)

    string | null — Elicit internal paper identifier

  • pmid (required)

    string | null — PubMed identifier

  • title (required)

    string — Paper title

  • urls (required)

    array — URLs for the paper

    Items:

    string

  • venue (required)

    string | null — Publication venue

  • year (required)

    integer | null — Publication year

Example:

{
  "elicitId": null,
  "title": "",
  "authors": [
    ""
  ],
  "year": null,
  "abstract": null,
  "doi": null,
  "pmid": null,
  "venue": null,
  "citedByCount": null,
  "urls": [
    ""
  ]
}

ErrorResponse

  • Type:object
  • error (required)

    object

    • code (required)

      string — Machine-readable error code

    • message (required)

      string — Human-readable error message

Example:

{
  "error": {
    "code": "invalid_request",
    "message": "Invalid search request"
  }
}

CreateReportResponse

  • Type:object
  • reportId (required)

    string — Unique identifier for the report. Use this to poll for status.

  • status (required)

    string — Initial status is always processing

  • url (required)

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

Example:

{
  "reportId": "5ad08bfb-cbe0-4911-a8c3-309760d33029",
  "status": "processing",
  "url": "https://elicit.com/review/5ad08bfb-cbe0-4911-a8c3-309760d33029"
}

ListReportsResponse

  • Type:object
  • nextCursor (required)

    string | null — Cursor for the next page of results. Null if there are no more results.

  • reports (required)

    array — List of reports

    Items:
    • createdAt (required)

      string — ISO 8601 timestamp of when the report was created

    • reportId (required)

      string — Unique identifier for the report

    • source (required)

      string, possible values: "api", "user" — How the report was created

    • status (required)

      string, possible values: "processing", "completed", "failed", "unknown" — Current status of the report

    • title (required)

      string — Report title (the research question)

    • url (required)

      string — URL to view the report in the Elicit web interface

Example:

{
  "reports": [
    {
      "reportId": "5ad08bfb-cbe0-4911-a8c3-309760d33029",
      "status": "processing",
      "title": "What are the effects of GLP-1 receptor agonists on cardiovascular outcomes?",
      "url": "https://elicit.com/review/5ad08bfb-cbe0-4911-a8c3-309760d33029",
      "source": "api",
      "createdAt": "2025-06-15T14:30:00.000Z"
    }
  ],
  "nextCursor": "2025-06-15T14:30:00.000Z"
}

ReportListItem

  • Type:object
  • createdAt (required)

    string — ISO 8601 timestamp of when the report was created

  • reportId (required)

    string — Unique identifier for the report

  • source (required)

    string, possible values: "api", "user" — How the report was created

  • status (required)

    string, possible values: "processing", "completed", "failed", "unknown" — Current status of the report

  • title (required)

    string — Report title (the research question)

  • url (required)

    string — URL to view the report in the Elicit web interface

Example:

{
  "reportId": "5ad08bfb-cbe0-4911-a8c3-309760d33029",
  "status": "processing",
  "title": "What are the effects of GLP-1 receptor agonists on cardiovascular outcomes?",
  "url": "https://elicit.com/review/5ad08bfb-cbe0-4911-a8c3-309760d33029",
  "source": "api",
  "createdAt": "2025-06-15T14:30:00.000Z"
}

GetReportResponse

  • Type:object
  • reportId (required)

    string — Unique identifier for the report

  • status (required)

    string, possible values: "processing", "completed", "failed", "unknown" — Current status of the report. Transitions: processing → completed/failed. Poll until completed or failed.

  • url (required)

    string — URL to view the report in the Elicit web interface

  • docxUrl

    string | null — Pre-signed URL to download the report as DOCX. Only present when status is completed and assets have been generated. Expires after 7 days — re-fetch the report for a fresh URL.

  • error

    object — Error details, only present when status is failed

    • code (required)

      string — Machine-readable error code

    • message (required)

      string — Human-readable error message

  • pdfUrl

    string | null — Pre-signed URL to download the report as PDF. Only present when status is completed and assets have been generated. Expires after 7 days — re-fetch the report for a fresh URL.

  • result

    object — Report output, only present when status is completed

    • summary (required)

      string — AI-generated executive summary of the findings

    • title (required)

      string — Auto-generated title for the report

    • abstract

      string | null — Report abstract in markdown format. Only included when ?include=reportBody is specified.

    • reportBody

      string | null — Full report content in markdown format. Only included when ?include=reportBody is specified.

Example:

{
  "reportId": "5ad08bfb-cbe0-4911-a8c3-309760d33029",
  "status": "processing",
  "url": "https://elicit.com/review/5ad08bfb-cbe0-4911-a8c3-309760d33029",
  "result": {
    "title": "GLP-1 Receptor Agonists and Cardiovascular Outcomes: A Systematic Review",
    "summary": "This review analyzed 42 studies examining the cardiovascular effects of GLP-1 receptor agonists. The evidence suggests significant reductions in major adverse cardiovascular events (MACE), with semaglutide showing the strongest effect (HR 0.74, 95% CI 0.58-0.95)...",
    "reportBody": "# Introduction\n\nGLP-1 receptor agonists have emerged as...",
    "abstract": "This systematic review examines the cardiovascular effects of..."
  },
  "error": {
    "code": "",
    "message": ""
  },
  "pdfUrl": "https://s3.amazonaws.com/...",
  "docxUrl": "https://s3.amazonaws.com/..."
}

ReportResult

  • Type:object
  • summary (required)

    string — AI-generated executive summary of the findings

  • title (required)

    string — Auto-generated title for the report

  • abstract

    string | null — Report abstract in markdown format. Only included when ?include=reportBody is specified.

  • reportBody

    string | null — Full report content in markdown format. Only included when ?include=reportBody is specified.

Example:

{
  "title": "GLP-1 Receptor Agonists and Cardiovascular Outcomes: A Systematic Review",
  "summary": "This review analyzed 42 studies examining the cardiovascular effects of GLP-1 receptor agonists. The evidence suggests significant reductions in major adverse cardiovascular events (MACE), with semaglutide showing the strongest effect (HR 0.74, 95% CI 0.58-0.95)...",
  "reportBody": "# Introduction\n\nGLP-1 receptor agonists have emerged as...",
  "abstract": "This systematic review examines the cardiovascular effects of..."
}