# arXiv API

> arXiv returns research preprints, abstracts, and paper details through a workflow and API.

Search papers finds preprints by topic or title words, with optional author, subject, submission dates, and sorting. Get paper returns details from a paper title, arXiv link, or number. List new papers returns newly announced papers for a required subject, with optional cross-lists.

- Page: https://fous.com/workflows/arxiv
- Handle: `@arxiv`
- Category: [Science](https://fous.com/workflows/category/science)
- Source website: https://arxiv.org
- Last verified: Sep 30, 2026
- Fous is not affiliated with arXiv.

## Methods

### Get paper

Operation `get_paper`, version 1. 1 credit per call.

Get a paper’s title, authors, abstract, subjects, submission dates and publication details from its title, arXiv link or number. Title searches require a matching title; journal reference and related DOI may be unavailable.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `paper` | string | yes | `"Attention Is All You Need"` | Paper title, arXiv link or number, for example Attention Is All You Need, https://arxiv.org/abs/1706.03762, or 1706.03762. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "paper"
  ],
  "properties": {
    "paper": {
      "type": "string",
      "description": "Paper title, arXiv link or number, for example Attention Is All You Need, https://arxiv.org/abs/1706.03762, or 1706.03762.",
      "examples": [
        "Attention Is All You Need",
        "https://arxiv.org/abs/0704.0001",
        "1810.04805"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "paper": "Attention Is All You Need"
    },
    {
      "paper": "https://arxiv.org/abs/0704.0001"
    },
    {
      "paper": "1810.04805"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `doi` | string or null | `"10.1103/PhysRevD.76.013009"` |  |
| `title` | string | `"Attention Is All You Need"` |  |
| `authors` | array |  |  |
| `abstract` | string |  |  |
| `pdf_link` | string | `"https://arxiv.org/pdf/1706.03762"` |  |
| `subjects` | array |  |  |
| `versions` | array |  |  |
| `versions[].date` | string | `"2017-06-12"` |  |
| `versions[].version` | string | `"v1"` |  |
| `arxiv_number` | string | `"1706.03762"` |  |
| `author_comments` | string or null | `"15 pages, 5 figures"` |  |
| `journal_reference` | string or null | `"Phys.Rev.D76:013009,2007"` |  |
| `abstract_page_link` | string | `"https://arxiv.org/abs/1706.03762"` |  |
| `first_submitted_date` | string | `"2017-06-12"` |  |

**Example input**

```json
{
  "paper": "Attention Is All You Need"
}
```

**Example output**

```json
{
  "doi": null,
  "title": "Attention Is All You Need",
  "authors": [
    "Ashish Vaswani",
    "Noam Shazeer",
    "Niki Parmar"
  ],
  "abstract": "The dominant sequence transduction models are based on complex recurrent or convolutional neural networks in an encoder-decoder configuration. The best performing models also connect the encoder and d…",
  "pdf_link": "https://arxiv.org/pdf/1706.03762",
  "subjects": [
    "Computation and Language",
    "Machine Learning"
  ],
  "versions": [
    {
      "date": "2017-06-12",
      "version": "v1"
    },
    {
      "date": "2017-06-19",
      "version": "v2"
    },
    {
      "date": "2017-06-20",
      "version": "v3"
    }
  ],
  "arxiv_number": "1706.03762",
  "author_comments": "15 pages, 5 figures",
  "journal_reference": null,
  "abstract_page_link": "https://arxiv.org/abs/1706.03762",
  "first_submitted_date": "2017-06-12"
}
```

### List new papers

Operation `list_new_papers`, version 1. 1 credit per call.

List the latest newly announced papers in an arXiv subject, in announcement order, with optional cross-lists. The announcement date is the date shown by arXiv, which may differ from today's calendar date; replacements are excluded.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `subject` | string | yes | `"quantum physics"` | Subject name in plain words, for example computer vision or quantum physics. |
| `max_results` | integer | no | `85` | Maximum number of papers to return, for example 25. |
| `include_cross_lists` | boolean | no | `true` | Include papers cross-listed from other subjects, for example true. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "subject"
  ],
  "properties": {
    "subject": {
      "type": "string",
      "minLength": 1,
      "description": "Subject name in plain words, for example computer vision or quantum physics.",
      "examples": [
        "quantum physics",
        "computer vision",
        "general literature"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 25,
      "maximum": 200,
      "minimum": 1,
      "description": "Maximum number of papers to return, for example 25.",
      "x-fous-developer": true,
      "examples": [
        85,
        200
      ]
    },
    "include_cross_lists": {
      "type": "boolean",
      "default": false,
      "description": "Include papers cross-listed from other subjects, for example true.",
      "examples": [
        true
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "subject": "quantum physics",
      "max_results": 85,
      "include_cross_lists": true
    },
    {
      "subject": "computer vision"
    },
    {
      "subject": "general literature"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `papers` | array |  |  |
| `papers[].title` | string |  |  |
| `papers[].authors` | string |  | Author names in their printed order, separated by commas. |
| `papers[].abstract` | string |  |  |
| `papers[].pdf_link` | string |  |  |
| `papers[].abstract_page_link` | string |  |  |
| `subject` | string | `"General Literature"` |  |
| `announcement_date` | string | `"2026-09-28"` |  |

**Example input**

```json
{
  "subject": "general literature"
}
```

**Example output**

```json
{
  "papers": [],
  "subject": "General Literature",
  "announcement_date": "2026-09-28"
}
```

### Search papers

Operation `search_papers`, version 1. 1 credit per call.

Find arXiv research preprints by topic or title words, with optional author, subject, submission dates, and sorting. Returns up to 100 papers with abstracts, subjects, dates, and links. Subjects must match an arXiv subject name.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `sort` | string | no | `"newest"` | Sort by relevance or newest first, for example "newest". |
| `query` | string | yes | `"diffusion models"` | Topic or title words to find, for example "diffusion models". |
| `author` | string | no | `"Jonathan Ho"` | Author name to narrow results, for example "Jonathan Ho". |
| `subject` | string | no | `"machine learning"` | arXiv subject in plain words, for example "machine learning". |
| `end_date` | string | no | `"2023-12-31"` | First submission date on or before this day, for example "2023-12-31". |
| `start_date` | string | no | `"2019-01-01"` | First submission date on or after this day, for example "2020-01-01". |
| `max_results` | integer | no | `3` | Maximum number of papers to return, for example 20. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "query"
  ],
  "properties": {
    "sort": {
      "enum": [
        "relevance",
        "newest"
      ],
      "type": "string",
      "default": "relevance",
      "description": "Sort by relevance or newest first, for example \"newest\".",
      "examples": [
        "newest"
      ]
    },
    "query": {
      "type": "string",
      "minLength": 1,
      "description": "Topic or title words to find, for example \"diffusion models\".",
      "examples": [
        "diffusion models",
        "zzzxxyy_nonexistent_paper_topic_39852871"
      ]
    },
    "author": {
      "type": "string",
      "description": "Author name to narrow results, for example \"Jonathan Ho\".",
      "examples": [
        "Jonathan Ho"
      ]
    },
    "subject": {
      "type": "string",
      "description": "arXiv subject in plain words, for example \"machine learning\".",
      "examples": [
        "machine learning"
      ]
    },
    "end_date": {
      "type": "string",
      "format": "date",
      "description": "First submission date on or before this day, for example \"2023-12-31\".",
      "examples": [
        "2023-12-31"
      ]
    },
    "start_date": {
      "type": "string",
      "format": "date",
      "description": "First submission date on or after this day, for example \"2020-01-01\".",
      "examples": [
        "2019-01-01"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 20,
      "maximum": 100,
      "minimum": 1,
      "description": "Maximum number of papers to return, for example 20.",
      "x-fous-developer": true,
      "examples": [
        3,
        2
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "sort": "newest",
      "query": "diffusion models",
      "author": "Jonathan Ho",
      "subject": "machine learning",
      "end_date": "2023-12-31",
      "start_date": "2019-01-01",
      "max_results": 3
    },
    {
      "query": "diffusion models"
    },
    {
      "query": "zzzxxyy_nonexistent_paper_topic_39852871",
      "max_results": 2
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `papers` | array |  | Matching preprints. |
| `papers[].title` | string | `"On Distillation of Guided Diffusion Models"` | Paper title. |
| `papers[].authors` | array |  | Author names. |
| `papers[].abstract` | string |  | Paper abstract in plain text. |
| `papers[].pdf_link` | string or null | `"https://arxiv.org/pdf/2210.03142v3"` | Link to the paper PDF. |
| `papers[].subjects` | array |  | Subject names and arXiv category codes. |
| `papers[].arxiv_number` | string | `"2210.03142"` | arXiv paper number. |
| `papers[].last_updated_date` | string | `"2023-04-12"` | Date last updated. |
| `papers[].abstract_page_link` | string | `"https://arxiv.org/abs/2210.03142v3"` | Link to the paper abstract page. |
| `papers[].first_submitted_date` | string | `"2022-10-06"` | Date first submitted. |

**Example input**

```json
{
  "sort": "newest",
  "query": "diffusion models",
  "author": "Jonathan Ho",
  "subject": "machine learning",
  "end_date": "2023-12-31",
  "start_date": "2019-01-01",
  "max_results": 3
}
```

**Example output**

```json
{
  "papers": [
    {
      "title": "On Distillation of Guided Diffusion Models",
      "authors": [
        "Chenlin Meng",
        "Robin Rombach"
      ],
      "abstract": "Classifier-free guided diffusion models have recently been shown to be highly effective at high-resolution image generation, and they have been widely used in large-scale diffusion frameworks includin…",
      "pdf_link": "https://arxiv.org/pdf/2210.03142v3",
      "subjects": [
        "Computer Vision and Pattern Recognition (cs.CV)",
        "Artificial Intelligence (cs.AI)"
      ],
      "arxiv_number": "2210.03142",
      "last_updated_date": "2023-04-12",
      "abstract_page_link": "https://arxiv.org/abs/2210.03142v3",
      "first_submitted_date": "2022-10-06"
    },
    {
      "title": "Novel View Synthesis with Diffusion Models",
      "authors": [
        "Daniel Watson",
        "William Chan"
      ],
      "abstract": "We present 3DiM, a diffusion model for 3D novel view synthesis, which is able to translate a single input view into consistent and sharp completions across many views. The core component of 3DiM is a …",
      "pdf_link": "https://arxiv.org/pdf/2210.04628v1",
      "subjects": [
        "Computer Vision and Pattern Recognition (cs.CV)",
        "Graphics (cs.GR)"
      ],
      "arxiv_number": "2210.04628",
      "last_updated_date": "2022-10-06",
      "abstract_page_link": "https://arxiv.org/abs/2210.04628v1",
      "first_submitted_date": "2022-10-06"
    }
  ]
}
```

## Quick start

Call the API with a Fous API key (`FOUS_API_KEY`). To create one, turn on Developer mode in Fous Studio, then open Keys & connections → API keys (https://app.fous.com/keys).

```bash
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
: "${FOUS_API_KEY:?Set FOUS_API_KEY before running this example}"

curl 'https://api.fous.com/v1/query' \
  --fail-with-body --silent --show-error --max-time 120 \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "api": "@arxiv",
  "visibility": "public",
  "operation": "get_paper",
  "version": 1,
  "input": {
    "paper": "Attention Is All You Need"
  },
  "response": {
    "format": "json"
  }
}'
```

```python
# Save as fous.py and run with python3 fous.py. No packages needed.
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
import json
import os
import urllib.error
import urllib.request

api_key = os.environ.get("FOUS_API_KEY")
if not api_key:
    raise RuntimeError("Set FOUS_API_KEY before running this example")

body = json.loads("{\n  \"api\": \"@arxiv\",\n  \"visibility\": \"public\",\n  \"operation\": \"get_paper\",\n  \"version\": 1,\n  \"input\": {\n    \"paper\": \"Attention Is All You Need\"\n  },\n  \"response\": {\n    \"format\": \"json\"\n  }\n}")
request = urllib.request.Request(
    "https://api.fous.com/v1/query",
    data=json.dumps(body).encode("utf-8"),
    headers={
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    },
    method="POST",
)
try:
    with urllib.request.urlopen(request, timeout=120) as response:
        result = json.load(response)
except urllib.error.HTTPError as error:
    raise RuntimeError(f"HTTP {error.code}: {error.read().decode('utf-8', errors='replace')}") from error
if result.get("success") is False:
    raise RuntimeError(result.get("error", {}).get("message", "Request failed"))
print(json.dumps(result["data"]["output"], indent=2))
```

```typescript
// Save as fous.mts and run with npx tsx fous.mts.
// First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
const apiKey = process.env.FOUS_API_KEY;
if (!apiKey) throw new Error("Set FOUS_API_KEY before running this example");

const response = await fetch("https://api.fous.com/v1/query", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  signal: AbortSignal.timeout(120_000),
  body: JSON.stringify({
  "api": "@arxiv",
  "visibility": "public",
  "operation": "get_paper",
  "version": 1,
  "input": {
    "paper": "Attention Is All You Need"
  },
  "response": {
    "format": "json"
  }
}),
});
type ApiResult = { success: boolean; data?: { output: unknown }; error?: { message: string } };
const result: ApiResult = await response.json();
if (!response.ok || result.success === false) {
  throw new Error(result.error?.message ?? `HTTP ${response.status}`);
}
if (!result.data) throw new Error("Missing API response data");
console.log(result.data.output);
```

Or describe the data in plain language: send `{"api":"@arxiv","prompt":"Describe the data you need, with every detail"}` to the same URL. Fous fills in the input, runs the method that fits and returns only the fields you asked for; `data.route.calls[].request` is the exact call it made. Routing is free; the run costs the same.

## Use cases

- Find preprints by topic, author, or submission date
- Review abstracts and subjects for matching papers
- Retrieve paper details using a title, link, or number
- Track newly announced papers in a subject
- Collect paper links for research reading lists

## FAQ

### Is Fous affiliated with arXiv?

No. Fous is not affiliated with arXiv. This workflow reads the public arxiv.org website and returns its data.

### How much does it cost?

Each run costs 1 credit. With pay-as-you-go, a credit costs 1¢; monthly plans cost less per credit.

### Do I need a arXiv account?

No. You only need a Fous account.

### How current is the data?

Fous gets the data from arxiv.org when you run it; repeating the same request within a day may return the saved result. Fous checks this workflow automatically; it last passed a check on Sep 30, 2026.

### How can I find papers on a topic?

Search papers finds preprints by topic or title words, with optional author, subject, submission dates, and sorting.

### How can I look up a specific paper?

Get paper returns paper details using its title, arXiv link, or number.

### What papers were newly announced in a subject?

List new papers returns newly announced papers for a required subject, with optional cross-lists.

## Related

- [bioRxiv API](https://fous.com/workflows/biorxiv.md): Biology and medicine preprints from bioRxiv and medRxiv.
- [Semantic Scholar API](https://fous.com/workflows/semantic-scholar.md): Semantic Scholar returns paper and citation search, paper abstracts, summaries, authors and influence, plus author metrics and up to 10 top-cited papers; dates, summaries, PDFs and affiliation matches may be unavailable.
- [OpenAlex API](https://fous.com/workflows/openalex.md): OpenAlex is an open catalog of scholarly research and connections, offering ranked papers and institution research summaries with annual output, leading topics, and coauthors.
- [Google Scholar API](https://fous.com/workflows/google-scholar.md): Google Scholar provides papers, citing papers, ready-made citations and researcher profiles with metrics and up to 20 top-cited papers; public access may be temporarily limited.
- [PubMed API](https://fous.com/workflows/pubmed.md): PubMed searches medical and life-science articles by topic and retrieves one article’s abstract and publication details; abstracts and free full-text links may be unavailable.
- [Unpaywall API](https://fous.com/workflows/unpaywall.md): Find free-to-read scholarly papers and their legal copies.
- [AP News API](https://fous.com/workflows/ap-news.md): AP News provides reporting, up to 50 public-page headlines, searchable articles visible in its search, and full text when accessible.
- [The Verge API](https://fous.com/workflows/the-verge.md): The Verge provides technology, science, entertainment, and policy headlines and searchable articles, including public stories and older archives, with search limited to the first 100 matches.
- [All Science workflows](https://fous.com/workflows/category/science)
