> ## Documentation Index
> Fetch the complete documentation index at: https://docs.consensus.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Extract numbers and formulas from full-text papers

> Pull numbers, formulas, and parameters out of papers with their measurement conditions attached.

## What you get

Rows you can compute on: one row per extracted value, each carrying the conditions it was measured under and the excerpt it came from. Not a summary of papers — a dataset built from them.

This is what teams reach for when abstracts are not enough: an aerodynamics group extracting mathematical formulas from full texts, a materials team collecting performance figures across test conditions, a clinical team pulling effect sizes for a meta-analysis.

## Who it's for

Engineering and physical-science R\&D, and any research team assembling a quantitative dataset from published work.

<Note>
  Full-text excerpts (`include_full_text_chunks`) require a paid plan or an Enterprise API key, and currently cover open-access papers. Everything else on this page — search, filtering, metadata — works on any plan.
</Note>

## How it works

<Steps>
  <Step title="Fix the schema before extracting">
    Decide every column up front: the value, its units, the conditions it was measured under, the method, the sample or specimen, and the source. A schema settled mid-run produces a table you cannot pivot.
  </Step>

  <Step title="Phrase the query as the thing being extracted">
    Excerpts are selected for relevance to your `query`. Searching the paper's topic returns introduction paragraphs; searching the measurement returns the results section. This single choice does more for extraction quality than anything else.
  </Step>

  <Step title="Set the domain, or drown">
    Without `domain`, technical terms pull in unrelated biomedical hits. `domain=mat,eng,phys,chem` is the difference between a usable and an unusable result set.
  </Step>

  <Step title="Keep every value with its conditions and its excerpt">
    A number without its test conditions is not comparable to another number. A number without its excerpt is not auditable. Both travel with the row.
  </Step>

  <Step title="Distinguish not-reported from not-extracted">
    Use different values for the two. Conflating them silently biases every downstream count.
  </Step>
</Steps>

## The API call

```bash theme={null}
curl -G "https://api.consensus.app/v1/search" \
  -H "x-api-key: $CONSENSUS_API_KEY" \
  --data-urlencode "query=turbulent boundary layer separation drag coefficient measured values" \
  --data-urlencode "domain=eng,phys,mat" \
  --data-urlencode "include_full_text_chunks=true" \
  --data-urlencode "page_size=100"
```

Each result's `full_text_chunks` holds query-relevant excerpts. Pair with metadata already on the result — `doi`, `title`, `publish_year`, `journal_name`, `url` — so each extracted row carries its provenance.

## The extraction prompt

```text theme={null}
You are a data extraction specialist building a structured dataset from papers.

Schema — every row must have all of these, or an explicit marker for why not:
  value | units | quantity measured | measurement conditions | method or
  apparatus | specimen or sample | source DOI | source excerpt

Rules:
1. Extract only values that appear in the excerpt you were given. Never infer,
   convert, or interpolate a value that is not written there.
2. Every value keeps the conditions it was measured under. If the excerpt gives
   a number without its conditions, record it as CONDITIONS NOT REPORTED — do
   not assume standard conditions.
3. Preserve the original units. Add a converted column if needed, but never
   overwrite the original.
4. Use NOT REPORTED when the paper does not give a field, and NOT EXTRACTED
   when the excerpt was insufficient. These are different and must not be merged.
5. Copy the source excerpt verbatim into its column. Every row must be
   checkable against it without reopening the paper.
6. For formulas, reproduce the expression exactly and define every symbol as
   the paper defines it. If a symbol is defined elsewhere in the paper and not
   in your excerpt, mark it undefined rather than guessing.

Output the rows as CSV. Follow it with a list of papers you could not extract
from and why.
```

## What to check before you trust it

* **Spot-check five rows against their excerpts.** The excerpt column exists precisely so this takes two minutes rather than an afternoon.
* **Watch for silent unit assumptions.** Values converted without an original-units column are the most common corruption in extracted datasets.
* **Check the CONDITIONS NOT REPORTED rate.** If it is near zero, conditions are being assumed rather than read.
* **Coverage is not uniform.** Full-text excerpts currently cover open-access papers, so a closed-access subfield will be under-represented. Check whether your topic skews that way before treating the dataset as complete.

## Related

<CardGroup cols={2}>
  <Card title="Substantiate a product claim with published evidence" icon="clipboard-check" href="/use-cases/claim-substantiation">
    Turn extracted evidence into a defensible claim file.
  </Card>

  <Card title="Create a biomarker evidence report" icon="chart-line" href="/use-cases/biomarker-report">
    The same extraction discipline inside a clinical evidence review.
  </Card>

  <Card title="Best practices" icon="shapes" href="/use-cases/best-practices">
    Excerpt-first extraction and the rest of the primitives.
  </Card>

  <Card title="All use cases" icon="grid-2" href="/use-cases">
    Browse the gallery by persona.
  </Card>
</CardGroup>
