# PMG Notes — 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.

> Access detailed grading population data for banknotes across different countries, series, and denominations, plus stay updated with the latest news from PMGnotes.com. Search and retrieve comprehensive census information to track banknote rarity, grades, and collecting trends.

**Category:** Finance & Markets | **Website:** [pmgnotes.com/](https://pmgnotes.com/) | **Docs:** [parse.bot/marketplace/c2803963-a9d8-4ec6-80dc-3898bbe11c47/pmgnotes-com-api](https://parse.bot/marketplace/c2803963-a9d8-4ec6-80dc-3898bbe11c47/pmgnotes-com-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/pmg-notes/`
**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

### Get news articles

Retrieve a paginated list of PMG news articles. Returns 10 articles per page with title, teaser, post date, and article URL. Articles date back to 2002.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number for pagination. Page size is fixed at 10. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/pmg-notes/get-news-articles \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>"}'
```

### Get population report categories

Retrieve the list of categories (regions or eras) for a given country ID. Typically returns a single category per country. The returned PMGResourceCategoryID is used to fetch subcategories.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `country_id` | integer | Yes | Country ID obtained from get_population_report_countries (CCGResourceCountryID field). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/pmg-notes/get-population-report-categories \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"country_id":"<integer>"}'
```

### Get population report countries

Retrieve the top-level list of all countries and regions available in the PMG Population Report. Returns over 200 entries with note census counts and identifiers for drilling into categories. Each country carries a CCGResourceCountryID used to fetch its categories and subcategories.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/pmg-notes/get-population-report-countries \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Get population report notes

Retrieve the census/population notes data for a specific subcategory. Returns detailed grade distribution for all notes in the subcategory, with up to 75 items per page. Each item includes complete grading counts across all PMG grade levels.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `issuer` | string | No | Optional issuer filter string. Must match exact internal issuer values used by the site. |
| `page` | integer | No | Page number for pagination. Page size is fixed at 75. |
| `subcategory_id` | integer | Yes | Subcategory ID from get_population_report_subcategories (PMGResourceSubcategoryID field). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/pmg-notes/get-population-report-notes \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"issuer":"<string>","page":"<integer>","subcategory_id":"<integer>"}'
```

### Get population report subcategories

Retrieve the list of denominations or subcategories for a given country and category. Returns all denominations with their total graded counts. The returned PMGResourceSubcategoryID is used to fetch detailed notes.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_id` | integer | Yes | Category ID from get_population_report_categories (PMGResourceCategoryID field). |
| `country_id` | integer | Yes | Country ID from get_population_report_countries (CCGResourceCountryID field). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/pmg-notes/get-population-report-subcategories \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"category_id":"<integer>","country_id":"<integer>"}'
```

### Search population report

Search the PMG Population Report for specific notes using keywords. Returns matching notes with their category, subcategory, and URL path for the population report detail view.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `country_id` | integer | Yes | Country ID to scope the search, from get_population_report_countries (CCGResourceCountryID field). |
| `query` | string | Yes | Search keywords such as denomination name, year, or catalog number. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/pmg-notes/search-population-report \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"country_id":"<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.