Skip to content
Nupty
Why NuptyPricingFree toolsGuidesLog inStart planning
HU·EN
Log inStart planning
  1. Home
  2. For AI assistants
  3. API reference

API reference

The Nupty API works on one couple’s wedding: the one the API key belongs to. It is generated from the same rules the planner uses, so this list is always complete.

https://my.nupty.app · OpenAPI 3.1 · For AI assistants

Authentication

  • Create a key in Settings → API keys. Send it as Authorization: Bearer nupty_… on every request.
  • A read-only key can only read; a “read and change” key can also send commands.
  • A wrong or revoked key gets 401. Keys never work in a URL.

Endpoints

GET /api/v2/weddingreadThe whole wedding and its revision.
GET /api/v2/wedding/revisionreadOnly the revision: check whether something changed.
POST /api/v2/wedding/commandsread and changeOne command: {"command": {"type": …}}. Answers with the new wedding.

Errors

  • 400 INVALID_COMMAND: the command does not match its fields.
  • 403 API_KEY_SCOPE (a read-only key), PREMIUM_REQUIRED (with a reason), SERVER_ONLY.
  • 409 CONFLICT or INVARIANT: the plan changed meanwhile — read it again and retry.
  • 422 with a code: the planner said no (for example PARTY_SHAPE, TABLE_FULL, ITEM_NOT_FOUND).
  • 429: too many requests for this key — slow down.

Commands

Every change is one of these. Fields not marked optional are required.

DetailsVendorsBudgetTo-dosGuestsSeatingBig DayStudioMenu

Details

setDetails — Set wedding details: names, date (exact / month / unknown), guest range or the exact guest estimate (guestCount; it sets the range), ceremony, style template, time format, whether the Big Day board shows prices (showPrices), currency, total budget target, region. Only the given fields change; currency never converts amounts.

FieldType
patchobject { partner1Name, partner2Name, dateMode, date, month, guestRange, ceremony, templateIndex, timeFormat, showPrices, currency, budgetTarget, guestCount, region }

finishOnboarding — Mark the first-run questions as answered (the planner stops asking them).

Vendors

activateItem — Add a suggested vendor category (e.g. "fireworks", "bar") to the vendor list.

FieldType
itemIdstring ≤ 64

addCustomItem — Add the couple's own vendor type (id chosen by the caller), in a category.

FieldType
idstring ≤ 64
categoryplace | food | ceremony | music | media | look | attire | logistics
namestring ≤ 120

setItemStatus — Set a vendor status: idea, comparing, booked or done.

FieldType
itemIdstring ≤ 64
statusidea | comparing | booked | done

markItemCovered — Mark a vendor as included in the venue package.

FieldType
itemIdstring ≤ 64

markItemNotNeeded — Mark a vendor as not needed.

FieldType
itemIdstring ≤ 64

undoItemBanner — Undo "covered" / "not needed" (back to idea or comparing).

FieldType
itemIdstring ≤ 64

renameItem — Give a vendor item the couple's own name; on a catalogue item an empty name goes back to the catalogue name.

FieldType
itemIdstring ≤ 64
namestring ≤ 120

removeCustomItem — Delete one of the couple's own vendor items (catalogue items can only be marked not needed). Its moments stay, unlinked.

FieldType
itemIdstring ≤ 64

restoreItem — Put a deleted own vendor item back with its options, to-dos, payments and notes, re-linking its moments (undo).

FieldType
itemobject { id, catalogId, category, name, active, status, budget, chosen, coveredByVenue, statusBeforeVenue, custom, options, todos, payments, notes }
indexinteger 0–10000
linksarray of object { versionId, momentId } (≤ 50)
picks optionalobject

addItemNote — Add a dated entry to a vendor's "Agreements & notes" log (date YYYY-MM-DD or empty; multi-line text).

FieldType
itemIdstring ≤ 64
noteIdstring ≤ 64
date"" or date YYYY-MM-DD
textstring ≤ 2000

updateItemNote — Change the date or text of an "Agreements & notes" entry.

FieldType
itemIdstring ≤ 64
noteIdstring ≤ 64
patchobject { date, text }

removeItemNote — Remove an "Agreements & notes" entry.

FieldType
itemIdstring ≤ 64
noteIdstring ≤ 64

restoreItemNote — Put a removed "Agreements & notes" entry back (undo).

FieldType
itemIdstring ≤ 64
noteobject { id, date, text }
indexinteger 0–10000

addOption — Add an option (a concrete vendor / offer) to compare under a vendor item; optional name and fixed amount.

FieldType
itemIdstring ≤ 64
optionIdstring ≤ 64
name optionalstring ≤ 200
amount optionalinteger 0–10000000000

updateOption — Change an option: name, price model (fixed / per person / both), amounts, contact, web, notes.

FieldType
itemIdstring ≤ 64
optionIdstring ≤ 64
patchobject { name, model, amount, pp, ppChild, contact, web, notes }

setOptionField — Set a comparison field of an option (e.g. capacity, style).

FieldType
itemIdstring ≤ 64
optionIdstring ≤ 64
keystring ≤ 40
valuestring ≤ 300

toggleOptionInclude — Venue options: toggle what the venue package includes (catering, stay, decor, music, rentals).

FieldType
itemIdstring ≤ 64
optionIdstring ≤ 64
keycatering | stay | decor | music | rentals

rateOption — Rate an option 1–5 for one partner (the same stars again clears it).

FieldType
itemIdstring ≤ 64
optionIdstring ≤ 64
partner0 or 1
starsinteger 1–5

toggleChosen — Choose / un-choose an option (multi-choice items keep several).

FieldType
itemIdstring ≤ 64
optionIdstring ≤ 64

setChosen — Choose exactly this option (null = none).

FieldType
itemIdstring ≤ 64
optionIdstring ≤ 64 or null

removeOption — Remove an option.

FieldType
itemIdstring ≤ 64
optionIdstring ≤ 64

restoreOption — Put a removed option back (undo).

FieldType
itemIdstring ≤ 64
optionobject { id, name, model, amount, pp, ppChild, ratings, contact, web, notes, fields, includes }
indexinteger 0–10000
chosenboolean
pickedInarray of string ≤ 64 (≤ 20)

Budget

setItemBudget — Set the budget of one vendor item (0 = none).

FieldType
itemIdstring ≤ 64
budgetinteger 0–10000000000

addPayment — Add a payment to a vendor item.

FieldType
itemIdstring ≤ 64
paymentIdstring ≤ 64

updatePayment — Change a payment: label, amount, due date, paid.

FieldType
itemIdstring ≤ 64
paymentIdstring ≤ 64
patchobject { label, amount, due, paid }

removePayment — Remove a payment.

FieldType
itemIdstring ≤ 64
paymentIdstring ≤ 64

restorePayment — Put a removed payment back (undo).

FieldType
itemIdstring ≤ 64
paymentobject { id, label, amount, due, paid }
indexinteger 0–10000

To-dos

addTodo — Add a to-do, either general (with a section) or on a vendor item, with optional multi-line notes.

FieldType
todoIdstring ≤ 64
titlestring ≤ 300
due"" or date YYYY-MM-DD
targetobject { section } or object { itemId }
notes optionalstring ≤ 2000

updateTodo — Change a to-do: title, due date, section, notes (empty = none).

FieldType
todoIdstring ≤ 64
itemIdstring ≤ 64 or null
patchobject { title, due, section, notes }

pinTodo — Pin one of the couple's own to-dos to the top of the list (pinned: false unpins).

FieldType
todoIdstring ≤ 64
itemIdstring ≤ 64 or null
pinnedboolean

movePinnedTodo — Move a pinned to-do up (-1) or down (1) among the pinned ones.

FieldType
todoIdstring ≤ 64
itemIdstring ≤ 64 or null
dir-1 or 1

toggleTodo — Tick / untick a to-do.

FieldType
todoIdstring ≤ 64
itemIdstring ≤ 64 or null

removeTodo — Remove a to-do.

FieldType
todoIdstring ≤ 64
itemIdstring ≤ 64 or null

dismissSuggestion — Hide a suggested to-do.

FieldType
keystring ≤ 200

restoreSuggestion — Show a hidden suggestion again.

FieldType
keystring ≤ 200

Guests

addParty — Add one invitation (a party: single, plus-one, couple or family) with its people. The caller chooses the ids; the server picks the RSVP token (send any 16–64 characters as `rsvpToken`; they are replaced). Read the link with GET /api/v2/guests/{partyId}/link.

FieldType
partyIdstring ≤ 64
rsvpTokenstring ≤ 64
partyobject { type, people, side, group, priority, email, phone, lang, invitedTo, hotel, bus, notes }

addParties — Add up to 500 invitations at once (bulk import). The server picks every RSVP token, as for addParty.

FieldType
partiesarray of object { partyId, rsvpToken, party } (≤ 500)

updateParty — Replace an invitation’s details and people (replies and seats are kept).

FieldType
partyIdstring ≤ 64
partyobject { type, people, side, group, priority, email, phone, lang, invitedTo, hotel, bus, notes }

removeParties — Remove invitations (and free their seats).

FieldType
partyIdsarray of string ≤ 64 (≤ 2000)

setReply — Record an RSVP answer by hand: waiting, yes (with who is coming) or no, plus diets (free text and fixed `dietTags`), room and bus (null = not answered). Shown as "Manually entered".

FieldType
partyIdstring ≤ 64
replywaiting | yes | no
attendingPersonIds optionalarray of string ≤ 64 (≤ 30)
diets optionalobject
dietTags optionalobject
names optionalobject
hotel optionalboolean or null
bus optionalboolean or null

setInvited — Mark invitations as invited without e-mail (paper, WhatsApp): not-sent ones become "waiting for a reply" and use no free send. `invited: false` puts still-waiting ones back to "not invited yet".

FieldType
partyIdsarray of string ≤ 64 (≤ 2000)
invitedboolean

newRsvpLink — Give an invitation a new personal RSVP link; the old link stops working. The server picks the new token (send any 16–64 characters; they are replaced).

FieldType
partyIdstring ≤ 64
rsvpTokenstring ≤ 64

revertToGuestAnswer — Put back the guest’s own last answer from the RSVP page over changes made by hand (NOTHING_TO_REVERT when the guest never answered online).

FieldType
partyIdstring ≤ 64

updateRsvpSettings — RSVP form settings: ask dietary / accommodation / bus, PIN, message templates.

FieldType
patchobject { askDietary, askAccommodation, askBus, pin, emailTemplate, textTemplate }

setBusPickupPlace — Where the guest bus picks up.

FieldType
placestring ≤ 200

Seating

seatParty — Seat everyone of an invitation who has no seat yet at one table, from `seatIndex` on (all or nothing: NOT_ENOUGH_SEATS).

FieldType
tableIdstring ≤ 64
partyIdstring ≤ 64
seatIndex optionalinteger

addTable — Add a table (round, 8 seats; it appears on the floor plan).

FieldType
tableIdstring ≤ 64

updateTable — Change a table: name, shape, capacity (2–24).

FieldType
tableIdstring ≤ 64
patchobject { name, shape, capacity }

removeTable — Remove a table.

FieldType
tableIdstring ≤ 64

seat — Seat one person of an invitation on a given seat.

FieldType
tableIdstring ≤ 64
seatIndexinteger
partyIdstring ≤ 64

unseat — Free one seat.

FieldType
tableIdstring ≤ 64
seatIndexinteger

seatFirstFree — Seat one person of an invitation on the first free seat of a table.

FieldType
tableIdstring ≤ 64
partyIdstring ≤ 64

unseatOne — Free one seat of an invitation at a table.

FieldType
tableIdstring ≤ 64
partyIdstring ≤ 64

applySeatingPreset — Lay out a whole empty seat planner at once: "round" (round head table + rounds), "banquet" (long head table + long rows of 20–24) or "mixed" (long head table + rounds), sized for `guests` (default: the guest estimate or the yes count, whichever is larger), on the floor plan with the head table at the front. Table ids are `{presetId}-1`… and `{presetId}-h` (head). Refused once tables exist (TABLES_EXIST) or when the stored room is too small (ROOM_TOO_SMALL).

FieldType
presetIdstring ≤ 48
presetround | banquet | mixed
sizeinteger 4–24
guests optionalinteger 1–1000
lang optionalEN | HU

addTablesLike — Add tables with the same shape and capacity as an existing one, numbered after the last "Table n".

FieldType
tableIdstring ≤ 64
tableIdsarray of string ≤ 64 (≤ 100)
lang optionalEN | HU

removeTables — Remove several tables at once (frees their seats). `restoreRoom` puts the room size back (undo of applySeatingPreset; null = the automatic room).

FieldType
tableIdsarray of string ≤ 64 (≤ 300)
restoreRoom optionalobject { width, length } or null

moveTable — Place a table on the floor plan (centre, metres from the top-left corner).

FieldType
tableIdstring ≤ 64
xnumber 0–100
ynumber 0–100

rotateTable — Rotate a table on the floor plan (degrees).

FieldType
tableIdstring ≤ 64
rotationinteger 0–359

setFloorSize — Set the room size (metres).

FieldType
widthnumber 5–100
lengthnumber 5–100

addFloorElement — Add a dance floor, stage, bar, buffet… to the floor plan.

FieldType
elementIdstring ≤ 64
kinddancefloor | stage | bar | buffet | cake | photobooth | entrance | dj | gifts | custom
label optionalstring ≤ 40
x optionalnumber 0–100
y optionalnumber 0–100
w optionalnumber 0.3–50
h optionalnumber 0.3–50
rotation optionalinteger 0–359

updateFloorElement — Move, resize, rotate or rename a floor plan element.

FieldType
elementIdstring ≤ 64
patchobject { label, x, y, w, h, rotation }

removeFloorElement — Remove a floor plan element.

FieldType
elementIdstring ≤ 64

Big Day

createVersion — Copy a day version into a new alternative day (Premium).

FieldType
versionIdstring ≤ 64
namestring ≤ 80
sourceVersionIdstring ≤ 64

renameVersion — Rename a day version.

FieldType
versionIdstring ≤ 64
namestring ≤ 80

removeVersion — Remove an alternative day version.

FieldType
versionIdstring ≤ 64

restoreVersion — Put a removed version back (undo; Premium).

FieldType
versionobject { id, name, isPlan, moments, picks }
indexinteger 0–10000

makePlan — Make an alternative day the plan.

FieldType
versionIdstring ≤ 64

useOptionInPlan — Use an option of a vendor in the plan.

FieldType
itemIdstring ≤ 64
optionIdstring ≤ 64

useMomentInPlan — Copy a moment from an alternative day into the plan.

FieldType
versionIdstring ≤ 64
momentIdstring ≤ 64
newMomentIdstring ≤ 64

addMoment — Add a moment (time, name, lane, icon) to a day version; the plan is the version with isPlan = true.

FieldType
versionIdstring ≤ 64
momentobject { id, time, name, lane, icon, link }

updateMoment — Change a moment: name, time, lane, icon, duration; oldPick null dismisses the "in your old plan this moment used…" note a migrated plan may carry.

FieldType
versionIdstring ≤ 64
momentIdstring ≤ 64
patchobject { name, time, lane, icon, durationMin, oldPick }

moveMoment — Move a moment to a lane and a time slot.

FieldType
versionIdstring ≤ 64
momentIdstring ≤ 64
lanestage | back
slotinteger 0–2160

linkMoment — Link a moment to a vendor item (null unlinks).

FieldType
versionIdstring ≤ 64
momentIdstring ≤ 64
itemIdstring ≤ 64 or null

createItemForMoment — Create a vendor item for a moment and link it.

FieldType
versionIdstring ≤ 64
momentIdstring ≤ 64
itemIdstring ≤ 64
namestring ≤ 120
categoryplace | food | ceremony | music | media | look | attire | logistics

setMomentOption — Alternative days: pick which option a linked vendor uses.

FieldType
versionIdstring ≤ 64
momentIdstring ≤ 64
optionIdstring ≤ 64 or null
followPlan optionalboolean

addOptionForMoment — Add an option to the vendor linked to a moment.

FieldType
versionIdstring ≤ 64
momentIdstring ≤ 64
optionIdstring ≤ 64
namestring ≤ 200
amountinteger 0–10000000000

setMomentItemStatus — Set the status of the vendor linked to a moment.

FieldType
versionIdstring ≤ 64
momentIdstring ≤ 64
statusidea | comparing | booked | done

duplicateMoment — Duplicate a moment.

FieldType
versionIdstring ≤ 64
momentIdstring ≤ 64
newMomentIdstring ≤ 64

removeMoment — Remove a moment.

FieldType
versionIdstring ≤ 64
momentIdstring ≤ 64

addItemToDay — Put a vendor item on the plan as a moment.

FieldType
itemIdstring ≤ 64
momentIdstring ≤ 64

Studio

setTemplate — Choose the design template (0 blush, 1 midnight, 2 industrial, 3 garden, 4 golden hour).

FieldType
templateIndexinteger 0–4

setAccent — Set the couple’s own accent colour (#rrggbb) for the website and printables; null = the template’s.

FieldType
accentstring or null

newSiteLink — Give the wedding website a new public link; the old link stops working. The server picks the new slug.

FieldType
slugstring

setSiteSection — Show / hide a section of the wedding website.

FieldType
keycover | welcome | countdown | day | location | travel | stay | dress | story | gallery | rsvp
onboolean

moveSiteSection — Move a website section up or down.

FieldType
keycover | welcome | countdown | day | location | travel | stay | dress | story | gallery | rsvp
dir-1 or 1

setSitePublished — Publish / unpublish the wedding website (publishing needs Premium).

FieldType
publishedboolean

updateSite — Change website texts: guest language, welcome, story, dress code, venue name and address, getting there (travelText), where to stay (stayText), RSVP deadline and RSVP note, vendor names on the day timeline (showVendors), search-engine visibility (indexable).

FieldType
patchobject { guestLanguage, welcomeText, storyText, dressCode, venueDisplayName, venueAddress, rsvpDeadline, travelText, stayText, rsvpNote, showVendors, indexable }

updatePhoto — Rename a photo.

FieldType
photoIdstring ≤ 64
labelstring ≤ 200

removePhoto — Remove a photo.

FieldType
photoIdstring ≤ 64

setDesignStatus — Set a design’s status: not started, draft, done.

FieldType
keysite | savethedate | invitations | seating | menu | namecards | tablenumbers | welcome | order | thankyou
statusnotStarted | draft | done

setDesignText — Override a text block of a design (null = follow the planner again).

FieldType
keysite | savethedate | invitations | seating | menu | namecards | tablenumbers | welcome | order | thankyou
blockstring ≤ 40
textstring ≤ 5000 or null

setDesignPhotos — Set the photos of a design slot, in order.

FieldType
keysite | savethedate | invitations | seating | menu | namecards | tablenumbers | welcome | order | thankyou
slotstring ≤ 40
photoIdsarray of string ≤ 64 (≤ 100)

setDesignStyle — Design style: show photo, alignment, paper size, include guests who haven't replied (seating chart, name cards; on unless false), print cards for people without a name (name cards), landscape orientation (every printable with a paper choice), a QR code to the published website (save-the-date, invitation).

FieldType
keysite | savethedate | invitations | seating | menu | namecards | tablenumbers | welcome | order | thankyou
patchobject { showPhoto, align, paper, includeUnreplied, printUnnamed, orientation, showQr }

Menu

addMenuSection — Add a section to the table menu (Starters, Main course…).

FieldType
sectionIdstring ≤ 64
titlestring ≤ 80
index optionalinteger 0–1000

renameMenuSection — Rename a menu section.

FieldType
sectionIdstring ≤ 64
titlestring ≤ 80

moveMenuSection — Move a menu section up or down.

FieldType
sectionIdstring ≤ 64
dir-1 or 1

removeMenuSection — Remove a menu section.

FieldType
sectionIdstring ≤ 64

restoreMenuSection — Put a removed menu section back (undo).

FieldType
sectionobject { id, title, items }
indexinteger 0–1000

addMenuItem — Add a dish or drink to a menu section.

FieldType
sectionIdstring ≤ 64
itemIdstring ≤ 64
namestring ≤ 200
note optionalstring ≤ 300

updateMenuItem — Change a dish: name, note.

FieldType
sectionIdstring ≤ 64
itemIdstring ≤ 64
patchobject { name, note }

moveMenuItem — Move a dish up or down.

FieldType
sectionIdstring ≤ 64
itemIdstring ≤ 64
dir-1 or 1

removeMenuItem — Remove a dish.

FieldType
sectionIdstring ≤ 64
itemIdstring ≤ 64

restoreMenuItem — Put a removed dish back (undo).

FieldType
sectionIdstring ≤ 64
itemobject { id, name, note }
indexinteger 0–1000

What Nupty can do

The planner the couple gets, in seven areas. Each page lists every feature, marked Free or Premium, with a link to try it in the demo.

  • Big Day timeline: The day moment by moment, the Stage your guests see and the Backstage your crew needs.
  • Vendors & venue: Every quote in one place, compared side by side, from the first idea to booked.
  • Guests & RSVP: The guest list, invitations and replies, per person.
  • Seating & floor plan: Tables, seats and a floor plan to scale, in step with the replies.
  • Budget & payments: A budget that follows your choices, and every payment until it is paid.
  • Design Studio: Your wedding website and every printable, in one style, filled in from your plan.
  • Account, sign-in & AI assistants: Signing in, Home and your to-dos, languages, and AI assistants that help with your plan.

The full feature list →

Nupty

This is your day. Let's bring it to life together.

No ads · No vendor spam · Your data stays in the EU

The planner

  • All features
  • Pricing

Free tools

  • Wedding budget calculator
  • Wedding date countdown
  • For AI assistants

Checklists

  • 12-month wedding checklist
  • 6-month wedding checklist
  • 3-month wedding checklist

Legal

  • Terms
  • Privacy
  • Cookies
  • Refunds
  • Imprint

Languages

  • Magyar
  • English

Wedding planning notes, once a month

We'll send a confirmation email first. Unsubscribe anytime.

© 2026 Nupty