# Norwegian Cruise Line — 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.

> Browse Norwegian Cruise Line's fleet of ships, search available cruises by destination and sail dates, and view detailed itineraries with ports of call for any sailing. Plan your cruise vacation by comparing ship names, departure dates, and complete port schedules all in one place.

**Category:** Travel | **Website:** [ncl.com/](https://ncl.com/) | **Docs:** [parse.bot/marketplace/c8d4ccd8-d68e-4183-984c-82b03327ba2e/ncl-com-api](https://parse.bot/marketplace/c8d4ccd8-d68e-4183-984c-82b03327ba2e/ncl-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/norwegian-cruise-line/`
**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 itinerary details

Get full details for a specific itinerary, including ship info, ports of call, pricing, and all available sail dates. Combines the search API result with sailing date lookups to provide a comprehensive itinerary view.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `itinerary_code` | string | Yes | The itinerary code to look up (e.g. "GETAWAY4MIANPINASMIA"). Available from search_cruises results as itineraries[*].code. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/norwegian-cruise-line/get-itinerary-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"itinerary_code":"<string>"}'
```

### Get itinerary sailings

Get all available sailing dates (departure and arrival) for a specific cruise itinerary code. Returns deduplicated sailings with package IDs and stateroom type info. Each sailing includes start/end dates, a package identifier, stateroom category title, and booking status.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `guests` | integer | No | Number of guests for pricing availability. |
| `itinerary_code` | string | Yes | The itinerary code to look up (e.g. "GETAWAY4MIANPINASMIA"). Available from search_cruises results as itineraries[*].code. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/norwegian-cruise-line/get-itinerary-sailings \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"guests":"<integer>","itinerary_code":"<string>"}'
```

### List destinations

List all cruise destinations offered by NCL. Returns destination codes, names, associated port codes, and available cruise counts. Useful for discovering valid destination filter codes for search_cruises.

**Estimated cost:** Metered

_No parameters required._

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

### List ships

List all Norwegian Cruise Line ships currently in the fleet. Returns ship codes, names, and available cruise counts. Each ship entry includes availability status and the number of cruises currently offered on that vessel.

**Estimated cost:** Metered

_No parameters required._

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

### Search cruises

Search for cruise itineraries with optional filters and pagination. Returns matching itineraries with pricing, ports of call, ship info, and all available filter options. Without filters returns all available cruises sorted by featured weight. Supports filtering by ship codes and destination codes (obtainable from list_ships and list_destinations).

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `destinations` | string | No | Comma-separated destination codes to filter by (e.g. "ALASKA,CARIBBEAN"). Codes available from list_destinations endpoint. |
| `limit` | integer | No | Maximum number of itineraries to return per page. |
| `offset` | integer | No | Number of itineraries to skip for pagination. |
| `ships` | string | No | Comma-separated ship codes to filter by (e.g. "GETAWAY,PRIMA"). Codes available from list_ships endpoint. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/norwegian-cruise-line/search-cruises \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"destinations":"<string>","limit":"<integer>","offset":"<integer>","ships":"<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.