---
title: "Update Guest Tickets"
method: POST
path: "/v1/events/guests/update-tickets"
tags: ["Events"]
---

# Update Guest Tickets

`POST /v1/events/guests/update-tickets`

Add or remove tickets from an existing guest. This is an administrative operation: added tickets are complimentary, removed tickets are invalidated, and no payment or refund is processed. You can’t change tickets for guests with pending payment holds. Administrative ticket changes can exceed event or ticket-type capacity.

## Request body

- object
  - `event_id` string, required — Event ID, this usually starts with evt-
  - `guest_id` string, required — Guest identifier — the guest ID (gst-), a ticket key, a guest key (g-), or the user's email.
  - `ticket_ids_to_remove` string[] — Existing ticket IDs to invalidate. Removing tickets does not issue a refund, and at least one valid ticket must remain on the guest.
  - `tickets_to_add` object[] — Complimentary tickets to grant. Each entry creates a new $0 administrative ticket, even when the ticket type is normally paid.
    - `event_ticket_type_id` string, required — Ticket type ID, this usually starts with ttype-
  - `send_email` boolean, nullable — Optional. Whether Luma may email the guest about the ticket change. Defaults to true and still respects their notification preferences. This only controls email — the guest still gets an in-app notification, and push follows their preferences.

## Response `200`

Successful response.

- object — Empty response

---

[API](https://skmtc.net/luma/apis/luma-api.md) · [All operations](https://skmtc.net/luma/apis/luma-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/luma/luma-api/revisions/12835be09062/schema)
