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.