---
title: "V1 Get Papers Fulltext Batch"
method: POST
path: "/v1/papers/fulltext"
tags: ["v1"]
---

# V1 Get Papers Fulltext Batch

`POST /v1/papers/fulltext`

## Request

- Base URL: `https://api.scholarfeed.org` (the document declares no server; this is the origin it was published from)
- URL: `https://api.scholarfeed.org/v1/papers/fulltext`
- Auth: HTTP bearer

Extract section-typed full text for up to 8 papers in one call.

Reading several papers is the normal shape of a research task, and doing it
one request at a time against a per-minute limit is what pushed agents toward
fetching one paper and guessing about the rest.

`sections` is REQUIRED when more than one paper is requested. Eight papers of
`all` is ~108KB, which is the exact outcome this endpoint exists to prevent;
a 422 teaches that in one round trip instead of silently burning the caller's
context window.

Per-paper failures are ENTRIES, never a non-200 — one unextractable paper
must not cost the caller the seven that worked. Each entry carries `ok`, and
failures carry `error` in: invalid_id, not_extractable, extraction_failed,
timeout.

Costs ONE quota unit regardless of batch size, so batching is cheaper than
looping and callers have a reason to actually use it.

Rate limit: 6/minute per API key.

## Request body

- FulltextBatchRequest: Request body for batch full-text extraction.
  - `arxiv_ids` string[], required: arXiv IDs to extract (max 8).
  - `sections` string[], nullable: Sections to return for every paper: any of abstract, introduction, related_work, method, results, conclusion, or 'all'. Comma-separated or a list. REQUIRED when requesting more than one paper.

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/scholarfeed/apis/scholar-feed-api.md) · [All operations](https://skmtc.dev/scholarfeed/apis/scholar-feed-api/llms.txt) · [OpenAPI document](https://skmtc.dev/scholarfeed/apis/scholar-feed-api/revisions/fc3200d27505?raw)
