---
title: "Add an accommodation option to a destination."
method: POST
path: "/v1/trips/{id}/variants/{variantId}/destinations/{destinationKey}/options/accommodation"
tags: ["Public API v1"]
---

# Add an accommodation option to a destination.

`POST /v1/trips/{id}/variants/{variantId}/destinations/{destinationKey}/options/accommodation`

## Request

- Base URL: `https://api.mynextadventure.cloud` (the document declares no server; this is the origin it was published from)
- URL: `https://api.mynextadventure.cloud/v1/trips/{id}/variants/{variantId}/destinations/{destinationKey}/options/accommodation`
- Auth: API key in header `X-API-Key`

## Path parameters

- `id` string, required
- `variantId` string, required
- `destinationKey` string, required

## Request body

- CreateAccommodationOptionV1Dto
  - `name` string, required: Display name of the accommodation exactly as a human would call it (e.g. "Villa Ave"). Never embed price, town, dates, status or commentary here — those belong in totalCost, location, checkIn/checkOut and notes.
  - `type` 'hotel' | 'hostel' | 'apartment' | 'house' | 'camping' | 'other', required: Type of accommodation.
  - `totalCost` number, required: Total cost for the stay.
  - `currency` string, required: Currency code (e.g. "USD").
  - `location` CreateOptionLocationV1Dto, required
    - `googlePlaceId` string
    - `locationiqPlaceId` string
    - `name` string
    - `address` string
    - `latitude` number
    - `longitude` number
  - `checkIn` string, date-time: Check-in date.
  - `checkOut` string, date-time: Check-out date.
  - `checkInTime` string: Check-in time of day (e.g. "15:00").
  - `checkOutTime` string: Check-out time of day (e.g. "11:00").
  - `freeCancellationUntil` string, date-time: Free cancellation deadline.
  - `roomDetails` RoomDetailsV1Dto, required
    - `numberOfRooms` number
    - `sizeInM2` number
  - `notes` string: Free-form commentary: provenance, caveats, "user has stayed here before", trade-offs. Anything without a dedicated field goes here, not in name.
  - `sourceUrl` string
  - `imageUrl` string: URL of a photo of the accommodation. Hotlinked, not copied.
  - `description` string: Short description of the accommodation.
  - `url` string: Link to the listing or the property website.
  - `features` string[]: Facilities this accommodation offers.
  - `externalRating` ExternalRatingV1Dto
    - `score` number, required: Rating score as published by the source (e.g. 8.8).
    - `scale` number, required: Maximum of the rating scale (e.g. 10 for Booking.com, 5 for Google). Required whenever score is set.
    - `count` number: Number of reviews behind the score.
    - `source` string: Where the rating came from (e.g. "booking.com").

## Response `201`

Option created.

- CreateOptionResultV1Dto
  - `key` string, required: Server-assigned key for the newly-created option.

---

[API](https://skmtc.dev/mynextadventure/apis/mynextadventure-public-api.md) · [All operations](https://skmtc.dev/mynextadventure/apis/mynextadventure-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/mynextadventure/apis/mynextadventure-public-api/revisions/a246114e73a0?raw)
