{"ok":true,"site":{"host":"beenthere.page","url":"https://www.beenthere.page/","type":"live","desc":"BeenThere is a minimal, visual space to keep your travel memories alive. Turn your trips into visual stories with photos, prompts, and maps. A travel journal you'll actually revisit","tools":[{"name":"list-trips","kind":"answer","impl":"imperative","description":"List all trips for the authenticated user. Returns an array of trips.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-trip","kind":"answer","impl":"imperative","description":"Get a single trip by ID. Returns the trip.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"tripId":{"type":"string","description":"The unique identifier of the trip."}},"required":["tripId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-trip-by-slug","kind":"answer","impl":"imperative","description":"Get a public trip by username and slug","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"username":{"type":"string","description":"Username."},"slug":{"type":"string","description":"Slug."}},"required":["username","slug"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-trip-stamp-eligibility","kind":"answer","impl":"imperative","description":"Get the stamp eligibility breakdown for a single trip. Returns the trip stamp eligibility.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"tripId":{"type":"string","description":"The unique identifier of the trip."}},"required":["tripId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-trip-blocks","kind":"answer","impl":"imperative","description":"Get trip blocks. Returns an array of trip blocks.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"tripId":{"type":"string","description":"ID of the trip"}},"required":["tripId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-current-user","kind":"answer","impl":"imperative","description":"Get my profile.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-current-user-stamps","kind":"answer","impl":"imperative","description":"Get my unlocked stamps. Returns an array of current user stamps.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-current-user-subdomain","kind":"answer","impl":"imperative","description":"Get my subdomain. Returns the current user subdomain.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"check-subdomain","kind":"answer","impl":"imperative","description":"Check subdomain availability. Returns the subdomain.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"subdomain":{"type":"string","minLength":3,"maxLength":30,"description":"Subdomain. Between 3 and 30 characters."}},"required":["subdomain"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-subdomain","kind":"answer","impl":"imperative","description":"Get public profile by subdomain. Returns the subdomain.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"subdomain":{"type":"string","description":"Subdomain."}},"required":["subdomain"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-subdomain-stamps","kind":"answer","impl":"imperative","description":"Get user stamps by subdomain. Returns an array of subdomain stamps.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"subdomain":{"type":"string","description":"Subdomain to fetch stamps for"}},"required":["subdomain"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-subdomain-trips","kind":"answer","impl":"imperative","description":"Get user public trips by subdomain. Returns an array of subdomain trips.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"subdomain":{"type":"string","description":"Subdomain to fetch trips for"}},"required":["subdomain"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-user","kind":"answer","impl":"imperative","description":"Get public profile. Returns the user.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"username":{"type":"string","description":"Username."}},"required":["username"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-user-stamps","kind":"answer","impl":"imperative","description":"Get user stamps by username. Returns an array of user stamps.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"username":{"type":"string","description":"Username to fetch stamps for"}},"required":["username"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-user-trips","kind":"answer","impl":"imperative","description":"Get user public trips. Returns an array of user trips.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"username":{"type":"string","description":"Username to fetch trips for"}},"required":["username"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-featured-trips","kind":"answer","impl":"imperative","description":"Get the signed-in user's trips that currently appear in published destination canvases. Returns an array of current user featured trips.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"check-username","kind":"answer","impl":"imperative","description":"Check username availability. Returns the username.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"username":{"type":"string","description":"Username."}},"required":["username"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"validate-email","kind":"act","impl":"imperative","description":"Validate an email address. Returns the email.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"email":{"type":"string","format":"email","description":"Email address to validate An email address."}},"required":["email"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-autocomplete","kind":"answer","impl":"imperative","description":"Search places. Returns an array of autocomplete.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"input":{"type":"string","minLength":1,"description":"Text to search for (e.g. 'Paris')"}},"required":["input"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-reverse-geocode","kind":"answer","impl":"imperative","description":"Reverse geocode. Returns an array of reverse geocode.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"lat":{"type":"number","description":"Lat."},"lng":{"type":"number","description":"Lng."}},"required":["lat","lng"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-details","kind":"answer","impl":"imperative","description":"Place details. Returns the details.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"place_id":{"type":"string","minLength":1,"description":"Google Place ID to resolve"}},"required":["place_id"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-media","kind":"answer","impl":"imperative","description":"List media for a trip. Returns the media.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"tripId":{"type":"string","description":"The unique identifier of the trip."}},"required":["tripId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-uptime","kind":"answer","impl":"imperative","description":"Get uptime status. Returns the uptime.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-feedback","kind":"answer","impl":"imperative","description":"Get user feedbacks. Returns an array of feedback.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"The URL of the feedback."},"sessionId":{"type":"string","description":"The unique identifier of the session."}},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-stamps","kind":"answer","impl":"imperative","description":"List all available stamps in the normalized library. Returns an array of stamps.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-destinations","kind":"answer","impl":"imperative","description":"List explore destinations. Returns an array of destinations.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"includeDrafts":{"type":"boolean","description":"Include drafts."}},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-destination","kind":"answer","impl":"imperative","description":"Get destination by slug (public) or UUID (curator). Returns an array of destination.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"idOrSlug":{"type":"string","description":"Id or slug."}},"required":["idOrSlug"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-destination-stats","kind":"answer","impl":"imperative","description":"Get stats for destination. Returns the destination stats.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"slug":{"type":"string","description":"Slug."}},"required":["slug"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-destination-candidates","kind":"answer","impl":"imperative","description":"Search eligible trips for curation in this destination. Returns an array of destination candidates.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"search":{"type":"string","description":"Search."},"minBlocks":{"type":"number","description":"Min blocks."},"destinationId":{"type":"string","description":"The unique identifier of the destination."}},"required":["destinationId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-destination-blocks","kind":"answer","impl":"imperative","description":"Get all canvas blocks for a destination. Returns an array of destination blocks.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"destinationId":{"type":"string","description":"The unique identifier of the destination."}},"required":["destinationId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-bucket-list","kind":"answer","impl":"imperative","description":"Get signed-in user's bucket list (destinations + saved trips). Returns an array of bucket list.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"add-bucket-list-destination","kind":"act","impl":"imperative","description":"Add a destination to the Bucket List. Returns the bucket list destination.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"slug":{"type":"string","description":"Slug."}},"required":["slug"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-pricing","kind":"answer","impl":"imperative","description":"Get PPP-based pricing for your country. Returns the pricing.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"list-all-pricing","kind":"answer","impl":"imperative","description":"Get PPP-based pricing for all countries. Returns an array of all pricing.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]},{"name":"get-billing","kind":"answer","impl":"imperative","description":"Get Pro billing status. Returns the billing.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/explore","/stories","/?signin=true"]}],"category":"Media & Personal","favicon":"/favicons/beenthere.page.png","apiSurface":"spec","toolCount":35}}