What your assistant can do with lesgooo.fun

14 tools, grouped by what you’d ask. Your assistant picks the right one — this page is for when you want to know what happens behind the scenes.

How it fits together

A plan is one link shared with a group. Everything below happens inside a plan. Your assistant first joins as you (join_plan or create_plan) and gets a participant token; every change is then made as you, and only for you. Reading (get_plan, get_checklist, get_expenses) needs just the link.

Plans and dates

  • create_plan — Start a new plan. Creates a plan and returns its shareable links (one for each tab: when, where, rsvp, checklist, splitwise). If you pass your_name, you are added as the first participant and get a participant_token.
    Inputs: title; your_name (optional). Example: “Create a plan called ‘Cabin weekend’ for me.”
  • get_plan — Read a plan. Returns the title, event details, everyone in the plan with their free days and RSVP, the five best dates, and the places being voted on (with place_id). It also returns server_time; pass it back later as since to get a short list of what changed (who joined, who updated their days or RSVP, new places).
    Inputs: plan (link or 4-character id); since (optional). Example: “When does it work for everyone?” / “What changed since yesterday?”
  • join_plan — Join a plan. Adds the person you help to a plan — or, if someone with the same name is already there, lets you act as them (like picking your name in the app). Returns participant_id and participant_token, which every change below needs.
    Inputs: plan; name. Example: “Join this plan as Pavel: https://lesgooo.fun/ab12/when”
  • set_availability — Set free days. Sets the days the person is free (YYYY-MM-DD, from today up to two years ahead). mode replace (default) sets exactly these days; add and remove change them.
    Inputs: plan; participant_id; participant_token; dates; mode (optional). Example: “Mark me free every weekend in October.”

RSVP

  • set_rsvp — Answer the RSVP. Answers yes or no for the person (or clear removes the answer). For a repeating event the answer is for one occurrence: the next one, or the date you pass as occurrence_date.
    Inputs: plan; participant_id; participant_token; status; occurrence_date (repeating events). Example: “Tell them I’m coming on Friday.”

Places

  • add_place — Suggest a place. Adds a place the group can vote on: a name and optionally an address and a Google Maps link. Duplicates are merged. Places added this way have no photos or ratings until someone opens them in the app.
    Inputs: plan; participant_id; participant_token; name; address (optional); google_maps_url (optional). Example: “Suggest Riverside Park for the BBQ.”
  • vote_place — Vote on a place. Up-votes, down-votes or clears the person’s vote on a place (place_id from get_plan).
    Inputs: plan; participant_id; participant_token; place_id; vote (up / down / clear). Example: “Vote for the lake, against the pub.”

Checklist

  • get_checklist — Read the checklist. Returns the open and done items of the plan’s shared checklist, each with item_id.
    Inputs: plan. Example: “What still needs to be done?”
  • add_checklist_item — Add a to-do. Adds an item to the shared checklist.
    Inputs: plan; participant_id; participant_token; text. Example: “Add ‘bring the grill’ to the list.”
  • check_item — Tick an item off. Marks an item done, or open again (done: false).
    Inputs: plan; participant_id; participant_token; item_id; done. Example: “I bought the ice — tick it off.”

Event details

  • update_event — Change the event. Changes what everyone sees on the RSVP page: title, start and end date and time (local time; no start_time = all-day), place (plain text) and description. It affects the whole group, so assistants should only use it after the group agreed.
    Inputs: plan; participant_id; participant_token; any of title, start_date, start_time, end_date, end_time, location, description. Example: “We agreed on Saturday 18:00 at Riverside Park — update the event.”

Shared costs

  • get_expenses — Read shared costs. Returns the expenses, each person’s balance and the suggested payments to settle up, in the plan’s currency.
    Inputs: plan. Example: “Who owes whom after the trip?”
  • add_expense — Add an expense. Records an expense split equally. By default the person you help paid and it is shared by everyone; paid_by_participant_id and split_among change that. Amounts have at most 2 decimals.
    Inputs: plan; participant_id; participant_token; description; amount; paid_by_participant_id (optional); split_among (optional). Example: “I paid 1,200 CZK for groceries, split between all of us.”
  • record_payment — Record a payment. Records that the person paid someone back. Without an amount it uses what they owe that person according to get_expenses.
    Inputs: plan; participant_id; participant_token; to_participant_id; amount (optional). Example: “I sent Anna my share — mark it paid.”

What assistants cannot do

  • Change another person’s days, votes or RSVP — only the person they joined as.
  • Delete a plan, remove people, or delete places, items and expenses (do that in the app).
  • Search Google Places, photos or ratings.
  • Send notifications — your assistant sees changes when it reads the plan (use since).

Frequently asked questions

What is a participant token?

A code your assistant gets when it joins a plan as you. It proves that changes come from you, so an assistant can never edit someone else’s answers by mistake.

How does my assistant see what changed?

get_plan returns server_time. Passing it back later as since returns a short list: who joined, who updated their free days or RSVP, and new places.

Are there limits?

Yes, fair-use limits per client and per month keep the service free. Normal use never gets close.

Prefer to plan yourself?

The app works the same without an assistant — one link, no signup.

Start planning
NO REGISTRATION / NO APP / 100% FREE