# Royal Society Publishing — Wrapped API

> **You are on:** `https://api.beta.paywithlocus.com/api` | [llms.txt](https://beta.paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Search and browse scientific articles, journals, and issues from the Royal Society Publishing platform, including filtering by subject, year, and latest publications. Access detailed information about specific articles, journals, and current issues to stay updated on peer-reviewed research.

**Category:** Education | **Website:** [royalsocietypublishing.org/](https://royalsocietypublishing.org/) | **Docs:** [parse.bot/marketplace/949d587d-aee5-4f43-a41c-15214ffb3bd8/royalsocietypublishing-org-api](https://parse.bot/marketplace/949d587d-aee5-4f43-a41c-15214ffb3bd8/royalsocietypublishing-org-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.beta.paywithlocus.com/api/wrapped/credits/royal-society-publishing/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Browse by subject

Browse articles by subject category ID. Returns paginated article results filtered by the given subject.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number for pagination. |
| `subject_id` | string | Yes | Subject category ID (e.g. 24 for behaviour, 104 for ecology). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/royal-society-publishing/browse-by-subject \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>","subject_id":"<string>"}'
```

### Get article details

Get full details for an article by DOI or URL. Returns title, authors, abstract, keywords, publication date, journal name, DOI, and metrics. At least one of doi or url must be provided.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `doi` | string | No | Article DOI (e.g. 10.1098/rsbl.2026.0087). |
| `url` | string | No | Full article URL on royalsocietypublishing.org. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/royal-society-publishing/get-article-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"doi":"<string>","url":"<string>"}'
```

### Get current issue

Get the current issue for a journal, including volume number, issue number, publication date, and a list of articles with their titles, authors, DOIs, and URLs.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `journal_code` | string | Yes | Journal short code. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/royal-society-publishing/get-current-issue \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"journal_code":"<string>"}'
```

### Get issue

Get a specific issue of a journal by volume and issue number. Returns the issue metadata and list of articles.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `issue` | string | Yes | Issue number. |
| `journal_code` | string | Yes | Journal short code. |
| `volume` | string | Yes | Volume number. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/royal-society-publishing/get-issue \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"issue":"<string>","journal_code":"<string>","volume":"<string>"}'
```

### Get journal info

Get metadata for a specific journal including description, ISSN, eISSN, and impact factor. Fields may be empty strings when the information is not available on the journal page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `journal_code` | string | Yes | Journal short code. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/royal-society-publishing/get-journal-info \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"journal_code":"<string>"}'
```

### Get latest articles

Get the latest published articles sorted by publication date descending, optionally filtered by journal.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `journal_code` | string | No | Optional journal short code to filter results. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/royal-society-publishing/get-latest-articles \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"journal_code":"<string>"}'
```

### List issues by year

List all issues published in a given year for a journal. Returns volume number, issue number, URL, and date for each issue.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `journal_code` | string | Yes | Journal short code. |
| `year` | string | Yes | Four-digit year (e.g. 2024). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/royal-society-publishing/list-issues-by-year \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"journal_code":"<string>","year":"<string>"}'
```

### List journals

Get the complete list of Royal Society journals with their short codes, names, and URLs. Returns all 11 journals in a single response.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/royal-society-publishing/list-journals \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Search articles

Full-text search across all Royal Society journals. Returns paginated results with title, authors, DOI, URL, and abstract excerpt.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number for pagination. |
| `query` | string | No | Search query string. Use * for all articles. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/royal-society-publishing/search-articles \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>","query":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://beta.paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://beta.paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://beta.paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://beta.paywithlocus.com/agent/index.md): every Locus agent page.