# Geneanet — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://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 for individuals and explore detailed genealogical profiles on Geneanet.org, discover surname origins and meanings, and locate cemetery records. Unlock your family history by accessing comprehensive ancestral data and demographic information all in one place.

**Category:** Government & Public Data | **Website:** [geneanet.org/](https://geneanet.org/) | **Docs:** [parse.bot/marketplace/070de893-de74-47e9-a41a-ae00009678af/geneanet-org-api](https://parse.bot/marketplace/070de893-de74-47e9-a41a-ae00009678af/geneanet-org-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-geneanet-org-api-070de893/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_individual_profile

Retrieve detailed genealogical information for one individual including life events (birth, death, occupation) and family relationships (parents, spouses, children, siblings). Requires a profile_url obtained from search_individuals results. A separate fetch per individual.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `profile_url` | string | Yes | Full Geneanet profile URL (from search_individuals results[*].profile_url). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-geneanet-org-api-070de893/get_individual_profile \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"profile_url":"<string>"}'
```

### get_last_name_origin

Get the geographic distribution of a surname across historical records. Returns an array of place-based occurrence counts sorted by frequency. Optionally includes an etymology description when available on the site. A single request per surname; no pagination.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `lastname` | string | Yes | The surname to look up. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-geneanet-org-api-070de893/get_last_name_origin \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"lastname":"<string>"}'
```

### search_cemeteries

Search for grave or monument records in the Geneanet cemetery collection. Returns the same result shape as search_individuals but scoped to the cemeteries collection. Each result carries a profile_url for drill-down.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `lastname` | string | Yes | Last name to search for in cemetery records. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-geneanet-org-api-070de893/search_cemeteries \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"lastname":"<string>"}'
```

### search_individuals

Full-text search for individuals across Geneanet collections by surname. Supports optional filtering by first name, year, place, and collection type. Returns paginated results; each item carries a profile_url for drill-down via get_individual_profile. Pagination is page-based with configurable page size.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `collection` | string | No | Collection to search within. |
| `firstname` | string | No | First name to filter results. |
| `lastname` | string | Yes | Last name to search for. |
| `page` | integer | No | Page number for pagination. |
| `place` | string | No | Location to filter results. |
| `size` | integer | No | Number of results per page. |
| `year` | string | No | Year of birth, marriage, or death to filter by (4-digit year). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-geneanet-org-api-070de893/search_individuals \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"collection":"<string>","firstname":"<string>","lastname":"<string>","page":"<integer>","place":"<string>","size":"<integer>","year":"<string>"}'
```
