---
title: "Add an item to a trip"
method: POST
path: "/v1/trips/{publicId}/items"
tags: ["trips"]
---

# Add an item to a trip

`POST /v1/trips/{publicId}/items`

## Request

- Base URL: `https://api.getmyhotels.com`
- URL: `https://api.getmyhotels.com/v1/trips/{publicId}/items`
- Auth: HTTP bearer

Runs `itinerary.addItem`. The owner and `editor` collaborators may add; anyone else gets 403. `day` is 1-based and `sortOrder` orders items within a day. Returns the new item's numeric `{ id }`, which `DELETE /v1/trips/{publicId}/items/{itemId}` takes.

## Path parameters

- `publicId` string, required

## Request body

- object
  - `day` integer, required
  - `sortOrder` integer
  - `type` 'hotel' | 'flight' | 'experience' | 'transfer' | 'activity' | 'meal' | 'note', required
  - `title` string, required
  - `description` string
  - `referenceId` string
  - `bookingId` integer
  - `startTime` string
  - `endTime` string
  - `location` string
  - `address` string
  - `latitude` number
  - `longitude` number
  - `notes` string
  - `estimatedCost` number
  - `currency` string
  - `imageUrl` string, uri

## Response `200`

Success

- unknown

## Other responses

- `400`: Request validation failed or the router rejected the input
- `401`: Missing or invalid bearer session token
- `403`: The caller may not edit this trip
- `404`: Resource not found
- `426`: Reported X-GMH-App-Version is below the supported minimum — the app must update
- `500`: Unexpected server error (opaque; details stay in logs)

---

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