# Port of Rotterdam — 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.

> Track live vessel movements and monitor port performance metrics including container throughput and anchorage statistics for the Port of Rotterdam. Access nautical notices and search detailed port information to stay updated on shipping operations and port conditions.

**Category:** Maps & Geospatial | **Website:** [portofrotterdam.com/](https://portofrotterdam.com/) | **Docs:** [parse.bot/marketplace/a3ff2e11-4e0e-4a45-90a2-f67413b36f53/portofrotterdam-com-api](https://parse.bot/marketplace/a3ff2e11-4e0e-4a45-90a2-f67413b36f53/portofrotterdam-com-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/port-of-rotterdam/`
**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 container throughput statistics

Get container throughput statistics for the Port of Rotterdam including total TEU, import/export split, empty/full ratios, and throughput by service type (deep sea, short sea, no liner). Without filters, returns current year totals.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `quarter` | integer | No | Quarter filter (1-4) |
| `year` | integer | No | Year filter (e.g. 2025) |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/port-of-rotterdam/get-container-throughput-statistics \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"quarter":"<integer>","year":"<integer>"}'
```

### Get port notices

Get official nautical notices (PIN and BAS) from the Port of Rotterdam. Returns current active notices including navigation warnings, bridge disruptions, and capacity arrangements. Each notice includes full text with start date, duration, and description.

**Estimated cost:** Metered

_No parameters required._

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

### Get port performance anchorage

Get anchorage area statistics for the Port of Rotterdam including average anchorage time for deep sea and short sea vessels, vessels-to-anchor counts, and direct-to-berth percentages. Data is returned as time series arrays over monthly periods. Without filters, returns the most recent 12 months.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `date_from` | string | No | Start date filter in YYYY-MM-DD format |
| `date_to` | string | No | End date filter in YYYY-MM-DD format |
| `month` | integer | No | Month filter (1-12) |
| `vessel_type` | string | No | Vessel type filter (e.g. 'Deep Sea'). Passed to upstream API. |
| `year` | integer | No | Year filter (e.g. 2025) |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/port-of-rotterdam/get-port-performance-anchorage \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"date_from":"<string>","date_to":"<string>","month":"<integer>","vessel_type":"<string>","year":"<integer>"}'
```

### Get vessel details

Get detailed information for a specific vessel currently in port movements (Present, Expected, or Departed). Searches by IMO number, UCRN, or exact vessel name (case-insensitive). Returns stale_input if the vessel is not found in current movements. At least one of imo or vessel_id must be provided.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `imo` | string | No | Vessel IMO number (e.g. '9382463'). Must be a vessel currently in port movements. |
| `vessel_id` | string | No | Vessel identifier: IMO number, UCRN, or exact vessel name (case-insensitive). At least one of imo or vessel_id is required. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/port-of-rotterdam/get-vessel-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"imo":"<string>","vessel_id":"<string>"}'
```

### Get vessel movements

Get current (Present), expected, and departed vessel movements at the Port of Rotterdam. Returns a grouped object with three arrays of vessels by their movement status. Supports optional case-insensitive partial name filtering across all three groups. Each vessel record includes IMO, name, berth, operator, flag, tonnage, and timestamps.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | No | Optional vessel name filter (case-insensitive partial match). Filters across Present, Expected, and Departed lists. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/port-of-rotterdam/get-vessel-movements \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"query":"<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.