App Logo

Official scripts

Explore our curated collection of scripts

linkedin.com

Search LinkedIn people

Search LinkedIn people by keywords with optional title, name, company, school, currentCompanyIds/pastCompanyIds (numeric ids from get_company_info), connectionDegrees, connectionOf, geoUrn, and a page number (10 people per page). Returns page, total, hasNextPage and people (name, url, publicId, memberUrn, degree, headline, location, snippet, followers, the mutual-connections line, and the members in common as data: up to two named mutuals with their profile, and mutualCount). Members in common: each 2nd-degree card names up to two of the people who connect you, and mutualCount says how many there are. To list them all, pass the card's memberUrn as connectionOf. Works alone or with any other filter. Empty results: people is [] and total is 0 only when LinkedIn shows its empty state. When LinkedIn shows another page instead of results (the monthly search limit of a free account, a security check), the run fails and names what the page showed. Location: this script takes LinkedIn geo ids only. To search a place, call suggest_locations with the place name first, then pass the geoUrn of the suggestion you want.

x.com

Search X (Twitter) posts

Search X (Twitter) for tweets with every X search operator, from the Top tab (a ranked sample, the default) or the Latest tab (chronological), picked by the tab arg. Returns per tweet a canonical record: id, url, author {id, handle, name}, text, created_at, lang, likes, retweets, replies, quotes, bookmarks, views, is_retweet, is_quote, plus followers (the author's follower count, a search-only enrichment), and the top-level query and count. Top is a ranked sample, not exhaustive.

discord.com

Discord login

Opens the Discord web app on the signed-in session and returns the username and display name it is signed in as. Run this first: the other Discord scripts need a signed-in session. Fails with a signed-out error when the browser is not signed in to Discord, or when Discord is open in another tab of the same account.

reddit.com

Get Reddit thread

Fetch a Reddit thread by its id or URL: the post (title, text, author, score, upvote ratio, comment count, type, link) and its comments in thread order, each with author, text, score, date, permalink and nesting depth. Needs a browser signed in to Reddit. By default it returns the first page of comments Reddit shows when the thread opens; set all_comments to expand every "more replies" and get the whole tree. num_comments counts deleted and removed comments too, so the list can be shorter than that number even when it is complete. sort picks Reddit's own comment order (best, top, new, controversial, old, Q&A).

linkedin.com

Get LinkedIn profile

Get one LinkedIn profile by its public id or profile URL: name, headline, location and its geo id, current company, About text, photo, connection degree, follower count, the stable member id, and the full lists of experience, education, languages, certifications and honors, in the order the profile shows them, with LinkedIn's ids for companies and schools and dates as month and year. Reading a profile does not record a profile view; for that reason the connection count, which only the profile page shows, is null. A role's location is the text the member saved, which can be translated or misspelled. Skills are in linkedin.com/get_profile_skills and contact details in linkedin.com/get_profile_contact_info. A field is null and a list is empty when the profile does not show it. Fails with a clear message when the browser is not signed in to LinkedIn, when the profile does not exist, or when LinkedIn limits the account.

google.com

Search Google

Run a Google search and return one page of organic results (title, url, site, byline, meta, snippet), with Google's link wrappers resolved to the destination url. Results can be personalized to the browser's Google account and location. Narrow queries return the same results in the same order on replay; very broad ones may reorder. For more coverage, fetch several pages or split the query (different site: paths, phrases, or freshness windows), and dedupe by url. An empty list means Google found nothing; when Google shows its anti-bot check, the run fails and says so.

search.brave.com

Brave search

Search the web on Brave, one page of results at a time, one query per run. Returns each result's title, url, snippet and date, plus the query as you sent it (not a rewritten one: see operatorsApplied for whether Brave relaxed it). An empty result list means Brave itself found nothing, and the reason is returned in emptyBecause; if the page cannot be read, the script fails with an error instead of returning an empty list. Search operators (site:, quoted phrases, OR) are supported. site:domain also covers subdomains, and site:domain/path narrows to a path prefix. When too few pages match, Brave drops the operators and runs a looser query; operatorsApplied is then false and the results are not filtered. Paging: each query has a limited pool of results, and past its end Brave repeats earlier pages. Page while hasMore is true, dedupe by url, and use more specific queries rather than more pages to widen coverage. If Brave rate-limits, the script fails with an error; wait 30 to 60 seconds before retrying.

discord.com

List Discord servers

Lists the Discord servers the logged-in account has access to (name + guildId), read from the server sidebar. Requires being logged in.

amazon.com

Get Amazon product reviews

Fetch Amazon customer reviews for a product by ASIN. With a signed-in Amazon session it returns 10 reviews at a time, with sort, star, media, verified-purchase and keyword filters, plus a cursor for the next 10; pass it back with the same filters to continue, until no cursor comes back (Amazon stops after about 10 pages). Without a session it returns the top reviews shown on the product page (one page only, no filters, reviews from other Amazon countries included), says so in the result, and fails with a clear error instead of ignoring a filter or cursor it cannot serve, or when Amazon hides the reviews from the visitor. Returns the product's rating summary and each review's rating, title, text, date, reviewer, country, variation, helpful votes, verified badge, Vine badge, images and videos. With sortBy=recent the pages can shift between calls as new reviews arrive; sortBy=helpful is more stable.

google.com

Search Google Maps places

Search Google Maps for places, optionally near a location, and get the list Maps shows, in its order: name, address, phone, website, main category and all categories, star rating, number of reviews, price range, coordinates and the Google place id. Use the place id with get_place for the opening hours and with get_place_reviews for the reviews. Google Maps lists at most 120 places for one search; complete is true when that list ended, false when cap stopped it first. A precise query that Maps opens as one place returns that one place. Category names follow hl, or the browser's language when hl is empty.

docs.google.com

Sheets: read tab values

Read one tab of a Google Spreadsheet as a 2D array of display values. Returns values (row-major, '' for empty and non-top-left merged cells), nRows, nCols. Values are display strings after formatting (a date may read as "1.5").

chatgpt.com

ChatGPT billing: list your ChatGPT subscription invoices

ChatGPT subscription invoices, not the OpenAI API platform. Lists the billing history of the ChatGPT account currently open in this browser, as its Billing page shows it: only that account's invoices, never those of the user's other accounts. To get another account's invoices, switch ChatGPT to that account, then run this again. A Business, Team or Enterprise workspace open in the browser has no personal Billing page, and the run fails saying so. Each invoice comes with its date, amount, currency, payment status, plan and a link to the invoice; the result also names the active account and lists every account the user belongs to. Amounts are in the currency's smallest unit, so 1917 means 19.17 EUR. The Billing page shows the most recent invoices first and this script cannot page further: when ChatGPT says older invoices exist, complete is false and next_cursor holds the cursor ChatGPT gave, but those older invoices are not returned. When the browser is not signed in to ChatGPT, the run fails with a not-signed-in error. Pass hosted_invoice_url to the Stripe invoice PDF download script to get the PDF.

linkedin.com

Search LinkedIn posts

Search LinkedIn posts by keyword, newest-first or by relevance. Returns each post's permalink (a lnkd.in short link) and activity urn, author name, profile URL and headline, full text, relative age, and reaction/comment/repost counts. Accepts limit (default 10) and sortBy ("relevance" | "date_posted"). Empty results: posts is [] and total is 0 only when LinkedIn shows its empty state. LinkedIn matches a single unknown word loosely and can still return posts; put a phrase in quotes for an exact match. When LinkedIn shows another page instead of results (the monthly search limit of a free account, a security check), the run fails and names what the page showed.

discord.com

Search Discord server messages

Search one Discord server's message history with Discord's own search, as the signed-in account, newest first. Search by words (content), and narrow by authors, channels, mentioned users and content type, each given as ids: get user ids from discord.com/get_member_list and channel ids from discord.com/list_channels. Returns one page of up to 25 matching messages with their author, text, time and link, Discord's total count of matches, and next_offset to read the next page (null on the last one). Fails with a clear error when the browser is not signed in to Discord, when the account is not a member of the server or can see no text channel in it, or when Discord is still indexing the server. Direct messages are not searched.

docs.google.com

Sheets: list tabs

List the tabs of a Google Spreadsheet. Returns sheets (name, gid) and the spreadsheet title. gid feeds sheets_read_tab / sheets_write_cells / the edit?gid= URL.

amazon.com

Search Amazon products

Search Amazon by free-text query, with Amazon's own filters: department, sort order, price range, and the refinements of its left column (Prime, delivery speed, brand, customer reviews, condition, seller and the product's attributes), whose values List Amazon search filters gives. Returns one page of results: query, page, zip, url, has_next_page and items (asin, title, url, price, list_price, rating, review_count, image_url, sponsored, formats). formats lists each edition a result links to (for example Hardcover, Kindle and Audiobook for a book), with its own ASIN, URL and price when shown. has_next_page is false on the last page, on a page past the last one (Amazon stops near page 20) and when nothing matches; then Amazon can still show a few unrelated sponsored products. Organic results are stable per page but sponsored slots rotate between fetches.

linkedin.com

Get LinkedIn post reactors

Get who reacted to a LinkedIn post from its URL: returns the post's total reaction count and the list of reactors (name, profile URL, headline, connection degree, and person vs company), in the order LinkedIn shows them. Use `limit` to cap how many reactors come back. The specific reaction type each person gave (like/celebrate/…) isn't available, and a `reactors` list shorter than `total` means your `limit` was reached.

discord.com

List Discord channels

Lists a Discord server's channels and categories from its sidebar (name, channelId, category, channel URL). Takes a guildId. Requires being logged in.

meteoblue.com

Get meteoblue 14-day weather forecast

14-day weather forecast from meteoblue for one place, given its meteoblue location url (from meteoblue.com/search_locations): per day, the date, weekday, sky condition, min/max temperature in °C and meteoblue's predictability. A url meteoblue does not serve fails with that.

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.

x.com

Get a tweet and its replies on X (Twitter)

Get a tweet on X (Twitter) by URL, with the conversation around it: `tweet` (the post itself) and `replies` (every other post of its conversation on the page: the thread above it when it is a reply, and the replies below; use in_reply_to to rebuild the thread). Each post has id, url, author, text, created_at, lang, counts, in_reply_to and quoted_tweet. With count, it loads more replies until it has count or X reaches the end. complete is true only when X reached the end and left no folded replies (Show replies, hidden or probable-spam sections), which this script does not open. A deleted or unavailable tweet is an error. Requires being signed in to X.

reddit.com

Search Reddit

Search posts across all of Reddit, with Reddit's own sort and time window. Returns count and threads (id, url, title, author, subreddit, score, num_comments, created, nsfw, preview_text) in the order Reddit lists them. `limit` is a maximum: fewer matching posts return what exists, and no match returns count 0. Reddit matches loosely, so under the `top` sort a heavily upvoted post only loosely related to the query can come before closer matches; use the default `relevance` sort when on-topic results matter.

docs.google.com

Sheets: write cells

Write a 2D block of values into one tab of a Google Spreadsheet, top-left at startCell, like the Sheets API: null leaves a cell as it is, "" clears it, anything else replaces it as if typed (dropdown rules and formatting stay; clearing a dropdown cell removes its dropdown). Returns range, rows, cols, saved once every edit is saved. A value the sheet refuses (data validation, outside the grid) stops the run with the sheet's own message. Values are parsed per the spreadsheet locale ("1.5" in a FR sheet becomes 1 May; prefix ' to force text); leading = enters a formula; needs edit rights.

news.ycombinator.com

Top Hacker News stories

Read stories from the Hacker News front page, one page at a time: rank, title, url, points, comments_count and a link to the discussion. Each page holds about 30 stories; pass page 2 for ranks 31-60 and so on, and n to take only the first n of that page. A page past the end returns an empty list. A story nobody has commented on yet reports 0 comments; YC job posts carry neither a score nor a discussion, so their points and comments_count are null. If Hacker News is throttling requests from your address, the script says so instead of returning a partial list.

linkedin.com

Get LinkedIn company info

Get a LinkedIn company's full profile from its URL or bare slug. employeeCount is LinkedIn members associated with the page, not declared size, and can wildly exceed employeeCountRange; use employeeCountRange for self-declared size. websiteUrl is verbatim and can be a linkedin.com self-link. Returns companyId, universalName, name, tagline, description, websiteUrl, industries, specialities, employeeCount, employeeCountRange, followerCount, foundedYear, phone, headquarters, locations, and logoUrl.