App Logo

Official scripts

Explore our curated collection of scripts

thetrainline.com

Suggest Trainline stations and cities

Look up stations and cities on Trainline by name, as its From and To fields suggest them while you type, in Trainline's own order. Returns each place's name, type (station or city), country code and Trainline code, which thetrainline.com/search_journeys takes as origin and destination. Trainline's matching is loose: a name it does not know can still bring up an unrelated place, so check the names before you search. A text Trainline has no suggestion for returns an empty list.

thetrainline.com

Search Trainline train journeys (+ all stops)

Search train journeys on Trainline between two stations or cities, given as Trainline codes from thetrainline.com/suggest_locations, on a date or a number of days after today (for searches that run on a schedule), from a time of day. Returns the journeys Trainline lists from about that time (about 10), across carriers such as SNCF and Deutsche Bahn: departure and arrival times, ISO duration, changes and legs (stations, train, train number, carrier), and the prices as Trainline sells them. A journey is sold as one ticket or as several, and each ticket lists its offers: price, currency, flexibility, seller, and each fare's name, exchange and refund conditions and class on each train. For later trains, search again from a later time. With includeStops=true, each leg also gets every calling point of its train with scheduled times, platform and live status; Trainline has these only for near-term trains, so a leg far ahead gets null. A route Trainline sells no tickets on returns an empty list.

strava.com

Get a Strava segment and its leaderboard

Returns a Strava segment's name, sport, location, distance, grade and elevation, its effort and athlete totals, the KOM, QOM and Local Legend holders, and one page (25 rows) of its leaderboard. The leaderboard can be everyone, your own efforts, people you follow, one age group or one weight class, filtered by gender and by today, this week, this month or this year; has_more says whether another page exists. Club leaderboards are not offered. Distances are in meters, times in seconds, speeds in meters per second. Fails when the segment does not exist or is private.

linkedin.com

Get LinkedIn profile skills

Get the full list of skills a LinkedIn profile lists, in the order the profile shows them, from the profile's own skills page. Pass the public profile id or a full profile URL. Each skill comes with the supporting lines shown beneath it — the jobs, schools and certifications it is tied to, plus any endorsement or skill-assessment note — and, where the profile offers them, a link to the skill's endorsers list and a link to its detail page. Both links are per-skill rather than per-profile: most skills carry neither, a skill with endorsements usually carries the endorsers one, and only a skill with more detail than fits inline carries the detail one, so expect null on many entries. Profiles that list no skills come back as an empty list rather than an error. Requires being logged in to LinkedIn. Complements the profile experience and education scripts.

sncf-connect.com

SNCF Connect unofficial API: search train journeys and fares

An unofficial SNCF Connect API for train search: SNCF Connect has no public API for journeys and fares, and this returns them as JSON, programmatically. Search trains between two places on a date or a number of days after today (for searches that run on a schedule), from a time of day, Paris time. Give each place as sncf-connect.com/suggest_places returns it, or by its name: a name is used only when SNCF has exactly one city (else one place) with that exact label, and otherwise fails with the candidates. Returns SNCF's status for the search and each journey it lists from about that time (a page of about 5 to 10): times, duration, operator, best price, and all of its fare offers (class, fare name, price, flexibility label, and the exchange and refund conditions as SNCF writes them). A train not yet on sale has no offers. For later trains, search again from a later time. No journeys, with a status other than RESULTS, means no tickets are on sale for that date. International routes are on sale for a shorter time ahead than domestic ones.

chatgpt.com

List ChatGPT models

List the models ChatGPT offers the signed-in account and the lanes its model picker is built from, plus the account's default model. Each model carries its slug, title and description; each lane carries its id, name, default model, the models it holds and the plan it requires. On a free account the picker itself is not shown and only the free lanes come back, which is what the site offers there. A signed-out browser fails with a signed-out error asking to sign in to chatgpt.com.

remoteok.com

Search RemoteOK jobs

Search all live RemoteOK job postings with the same fuzzy full-text match as the site's search box, or omit the query for the most recent postings. Returns up to 50 jobs per page with title, company, tags, location, date and salary; page with offset. Salary is null when the employer gave none.

linkedin.com

Sales Navigator: get lead

Fetch a full LinkedIn Sales Navigator lead profile by its lead id (from search_people). Requires a Sales Navigator seat; contactInfo is empty unless the lead is unlocked for the seat. Returns fullName, headline, summary, degree, location, classic LinkedIn profile URL, full position history (title, company, companyUrn, description, dates), saved-list status, and contact info when unlocked.

welcomekit.co

Download candidate resume

Download a candidate's CV (resume PDF) from the ATS to a local file on the agent machine. Returns path, filename, size, contentType, and hasResume, which is false (with path/filename null) when the candidate attached no CV. Run it for one candidate at a time: parallel runs can attach a file to the wrong candidate.

sncf-connect.com

Suggest SNCF Connect places

Look up places on SNCF Connect by name, as its Departure and Arrival fields suggest them while you type, in SNCF's own order: cities and stations, then city stops, points of interest and addresses. Returns each place's id, label, type, description (often its region or country) and the group SNCF lists it in. Pass a place unchanged to sncf-connect.com/search_journeys as origin or destination. A text SNCF has no suggestion for returns an empty list.

linkedin.com

Sales Navigator: get account

Fetch a LinkedIn Sales Navigator company account by its numeric Sales Navigator id (from search_accounts, or a companyUrn on search_people). Needs a Sales Navigator seat; headcount history and median tenure are null when no insights panel is present. Returns name, description, industry, type, specialties, website, year founded, headquarters and location, revenue range, employee count and growth, headcount history, median tenure, and spotlight employees (name plus leadId to pivot to get_lead).

ycombinator.com

Get YC company profile

Get one YC company's full public profile (ycombinator.com/companies/<slug>): pitch, batch/status, founders, socials, open jobs, news, launches, photos, founder Q&A.

riders.uber.com

Download Uber trip invoice PDF

Download one Uber trip's invoice PDF (trip page > Download Invoice) by tripId (uuid from riders.uber.com/list_trips). Returns the file's filename and the path where the browser saved it (or a url to it on a managed browser), so you can read or move the PDF directly. Trips without an invoice (e.g. canceled €0.00 rides) have no Download Invoice affordance and fail loudly.

linkedin.com

Sales Navigator: search accounts

Search LinkedIn Sales Navigator company accounts by keywords, headquarters location (regionId, a LinkedIn geo id from linkedin.com/suggest_locations — place names are not accepted), and headcount, paginated 25 per page via a 0-based start offset. Returns total, count, start, and accounts (accountId, companyName, industry, employee count and range, description, list/saved status, spotlight badges, salesAccountUrl). Requires a Sales Navigator seat.

linkedin.com

List LinkedIn job search filters

List the filters LinkedIn's jobs search offers for a search, with the options each one shows and LinkedIn's ids for them: places inside the area, companies, industries, job functions, titles, benefits, commitments, salary buckets, experience levels, job types, workplace types, distance, date posted and the yes/no filters. Each filter names the linkedin.com/search_jobs arg that takes its ids. The options are the short list LinkedIn shows in its filter panel for this search, not every possible value, and they change with the keywords and place.

linkedin.com

Sales Navigator: search people

Search LinkedIn Sales Navigator leads with the advanced filters (title, geography, seniority, function, company headcount, tenure, relationship, keywords, and more), paginated 25 per page via a 0-based start offset. At least one filter or keyword is required — start on its own is pagination, not a search. Returns total, count, start, and leads (leadId, fullName, memberUrn, degree, geoRegion, current title/company/industry, tenure, summary, spotlights, salesLeadUrl). Requires a Sales Navigator seat.

maxjeune-tgvinoui.sncf

Search remaining MAX JEUNE seats per train on SNCF Max Planner

Searches the SNCF MAX JEUNE / MAX ACTIF Max Planner between two stations and returns, for each of the next 30 days starting today (the site's full booking window), every train with MAX seats still available and how many seats remain. A day the site has no data for yet, or failed to answer, is returned with that reason and no trains. A station name that matches several stations fails and lists them.

linkedin.com

Send LinkedIn message

Send a message on LinkedIn (classic messaging, not Sales Navigator) — reply in an existing conversation by thread URL, start a conversation with a connection by name, or message by profile URL. Optionally attach a file (image or document) alongside the text. Returns whether it sent, who it went to, and confirmation the message/attachment landed. Limited to 1st-degree or open-profile connections; InMail (paid) is a separate flow not handled here.

vinted.com

Create a Vinted listing

Create a for-sale listing on Vinted from a photo, title, description, category, condition, price and package size (plus an ISBN for books). Works on whichever Vinted country site the browser is signed in to. Defaults to a dry run that fills the whole form and publishes nothing; saveAsDraft keeps the listing private, otherwise it is published. Confirms the result by reopening the saved item. Categories that also ask for brand or size, such as clothing, are refused for now rather than listed incomplete.

lightstream.com

Get LightStream loan rates for a purpose, amount and term

Run LightStream's rates and terms calculator for a loan purpose, amount, term in months and payment method (AutoPay or invoice), without an application or credit check. Returns the APR range and the estimated monthly payment range for that combination, the amount and term bounds LightStream accepts for the purpose, the rate date, and the full published grid of APR ranges by amount band and term band. Car financing is covered by the new_auto, used_auto_dealer, used_auto_private, lease_buyout and auto_refinance purposes. The exact rate inside the range depends on the applicant's credit profile, and invoicing runs half a point above AutoPay. Out-of-range requests fail with the allowed range.

invoice.stripe.com

Download Stripe invoice/receipt PDF

Download a Stripe-hosted invoice or payment receipt PDF from its hosted_invoice_url. Returns the file's real name and the path where the browser saved it (or a url to it on a managed browser), so you can read or move the PDF directly. Vendor-agnostic and login-free: the hosted_invoice_url is a public tokenized link, so it works for any Stripe-billed service (Claude, ChatGPT, X, Notion, Slack, Lovable, ...). An expired or dead URL fails cleanly.

doctolib.fr

Search Doctolib practitioners

Search Doctolib practitioners by specialty and location. Returns total, page, and providers with full_name, specialty, address, sector, payment_means, languages, telehealth, online_booking, matched_visit_motive, and profile_path. There are 20 providers per page and the order is server-ranked; profile_path (including ?pid=practice-N) is the join key for get_practitioner and list_slots.