---
title: "Join a party"
method: PUT
path: "/parties/{party_id}/guests/{guest_id}"
tags: ["Parties"]
---

# Join a party

`PUT /parties/{party_id}/guests/{guest_id}`

## Request

- Base URL: `https://api.aisle.wedding/v1`
- URL: `https://api.aisle.wedding/v1/parties/{party_id}/guests/{guest_id}`
- Auth: HTTP bearer

Moves an existing guest into this party. A new member inherits the lead RSVP and stage; joining an empty party preserves their reply and makes them lead. Repeating an existing membership preserves the reply and leadership. Repairs both parties. Requires write scope and preview access. No request body.

## Response `200`

The party and its current membership.

- object
  - `data` Party, required
    - `id` string, required
    - `name` string, nullable, required
    - `guest_ids` GuestId[], required
    - `lead_guest_id` string, required
    - `created_at` string, date-time, required: An RFC 3339 UTC timestamp with milliseconds.
    - `updated_at` string, date-time, required: An RFC 3339 UTC timestamp with milliseconds.

## Other responses

- `400`: The request itself could not be read, such as a body that is not a JSON object. A field we refuse is validation_failed instead.
- `401`: The API key is missing, malformed, or no longer valid.
- `402`: The operation requires an active Aisle membership for this wedding.
- `403`: The key is valid but not permitted to do this.
- `404`: No such resource inside the key's wedding.
- `409`: The request collided with the current state of the resource.
- `415`: A request body must be sent as application/json.
- `422`: The request was well-formed but a field was not acceptable. Every field at fault is named in error.details.
- `429`: Too many requests. Retry after the time given in Retry-After.
- `500`: Something went wrong on our side.

---

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