# NAV — 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 and browse job listings from Norway's official job board with detailed filtering by location, sector, education level, and other criteria. Get comprehensive job details and explore available opportunities across the Norwegian labor market.

**Category:** Jobs | **Website:** [nav.no/](https://nav.no/) | **Docs:** [parse.bot/marketplace/d2fed4cd-5120-4ab2-be55-4a30f674c8ed/nav-no-api](https://parse.bot/marketplace/d2fed4cd-5120-4ab2-be55-4a30f674c8ed/nav-no-api)

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

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/credits/nav/`
**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 facets

Retrieve all available filter values (facets/aggregations) from the job search API. Returns counts for each filter category such as counties, sectors, engagement types, remote options, education levels, and more. Useful for discovering valid filter values before calling search_jobs.

**Estimated cost:** Metered

_No parameters required._

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

### Get job detail

Retrieve full details for a specific job listing by its UUID. Returns structured metadata from the search index, the full job description text extracted from the listing page, structured page detail fields, and similar job recommendations. The UUID is obtainable from search_jobs results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `uuid` | string | Yes | Job listing UUID (e.g. '34849d7e-f9df-4f80-89c2-9095628bf513'). Obtainable from search_jobs results[*].uuid. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/nav/get-job-detail \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"uuid":"<string>"}'
```

### Search jobs

Full-text search over Norwegian job listings with filters for location, sector, engagement type, extent, and remote work. Returns paginated results ordered by relevance or publication date. Offset-based pagination via 'from' parameter; each result carries a UUID usable with get_job_detail for the full listing text.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `counties` | string | No | Filter by county (e.g. 'OSLO', 'VESTLAND', 'AKERSHUS'). |
| `engagementType` | string | No | Filter by engagement type. |
| `extent` | string | No | Filter by work extent. |
| `from` | integer | No | Pagination offset (number of results to skip). |
| `municipals` | string | No | Filter by municipality (e.g. 'OSLO', 'BERGEN', 'TRONDHEIM'). |
| `published` | string | No | Filter by publication recency (e.g. 'now-3d' for last 3 days, 'now-7d' for last 7 days). |
| `q` | string | No | Search query term (e.g. 'engineer', 'sykepleier'). Omitting returns all listings. |
| `remote` | string | No | Filter by remote work options (e.g. 'Hybridkontor', 'Hjemmekontor ikke mulig', 'Ikke oppgitt'). |
| `sector` | string | No | Filter by sector. |
| `size` | integer | No | Number of results per page (max 100). |
| `sort` | string | No | Sort order for results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/nav/search-jobs \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"counties":"<string>","engagementType":"<string>","extent":"<string>","from":"<integer>","municipals":"<string>","published":"<string>","q":"<string>","remote":"<string>","sector":"<string>","size":"<integer>","sort":"<string>"}'
```

## Next steps

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