App Logo

Official scripts

Explore our curated collection of scripts

chatgpt.com

Who am I (ChatGPT)

Report which ChatGPT account the browser is signed into: id, name, email, picture, identity provider — or loggedIn:false when the browser is anonymous. Reads the session endpoint the app itself hydrates auth from; never returns the session's access token.

chatgpt.com

OpenAI (ChatGPT) login (Google SSO)

Log into OpenAI / ChatGPT via Google SSO — picks the right account when several are signed in, and does nothing if you're already logged in. If Google interrupts the flow with a password re-confirmation or a 2FA step-up, the script can't complete that step on its own; sign in once manually in the same browser to clear the step-up, then re-run. It may also occasionally fail to complete a fresh login due to the site's own anti-automation checks — if that happens, try again shortly.

chatgpt.com

List ChatGPT invoices

List the billing history of the signed-in ChatGPT account: every invoice with its date, amount, currency, payment status, the plan it paid for, and a link to the receipt. The full history is returned, not only the most recent entries. Amounts come back in the currency's smallest unit, so 1917 means 19.17 EUR. An account that has never been billed returns an empty list. Feed hosted_invoice_url to invoice.stripe.com/download_invoice_pdf to fetch the PDF.

chatgpt.com

Ask ChatGPT

Open a new ChatGPT chat, send one question, and wait for generation to finish (up to 3 min), then return what the model answered and what it read to get there: answers, the web-search queries it issued, and every source behind the reply. Answers come back as a list, not one string. ChatGPT sometimes serves a paired-response variant that answers the same question twice and asks which reply you prefer; that returns two entries and neither is more official than the other. Read the length before reading answers[0]. Text is as rendered, so inline widget labels appear as visible text and mathematical notation linearizes lossily. Sources are split by how the answer used them: the pool a web search returned, whether or not the answer drew on it, versus the sources the answer actually surfaced on screen. That split is the point — it separates a page that was never retrieved from one that was read and passed over. A page that was retrieved and then cited appears in both groups, which is signal rather than duplication. Treat one run as a single draw, not a measurement: the model may search differently, or not search at all, on the next run of the same question. Repeat a question before concluding anything from it. Works logged out, where anonymous rate limits fail fast with a descriptive error and conversationId comes back null.

platform.openai.com

List OpenAI API invoices

List invoices on the OpenAI API platform billing account (platform.openai.com, api usage/credits — NOT the ChatGPT subscription). Returns id, number, total (cents), currency, status, created_ts, hosted_invoice_url, pdf_url. Covers the past 12 months, as the dashboard does.

chat.mistral.ai

Get Le Chat conversation messages

Full message transcript of one Le Chat conversation by id, oldest to newest.

chat.mistral.ai

Ask Le Chat

Open a new Le Chat conversation, send one question, wait for the answer, and return the answer text plus any web-search source domains cited.

gemini.google.com

Get Gemini chat messages

Full message transcript of one Gemini conversation by id, oldest to newest.

web.telegram.org

Telegram — Search messages in a conversation

Search inside one Telegram conversation using the conversation's own search box, and return the matching messages: the chat they are in, the date label shown on the result, and the matched text. Returns an empty list when nothing matches, which is a real answer. Note the result rows carry no message id, so results cannot be fed straight to delete or react — use get_conversation for ids. Searching across all chats is a separate Telegram surface and is not covered here.

web.telegram.org

Telegram — List conversations

List the conversations in the Telegram Web chat list, newest first: each one's name, its peer id (the handle every other Telegram script uses to open it), the last message preview, the time shown on the row, and the unread count. Scrolls to load older conversations up to the requested count. Returns an empty list when the account has no conversations, which is a real answer rather than a failure.

chat.mistral.ai

List Le Chat conversations

List recent Le Chat conversations, newest first.

web.whatsapp.com

WhatsApp — Archive chat

Archive or unarchive a chat (by exact name). Works via search + right-click (archived chats still appear in search). Safe to repeat: it returns success if the chat is already in the desired state.

linkedin.com

Get LinkedIn conversation attendees

List the participants of a classic LinkedIn messaging conversation (NOT Sales Navigator) by thread URL from list_inbox — mainly useful for group chats. Returns each attendee's name, profile URL and member urn, plus whether the thread is a group.

claude.ai

Get Claude chat messages

Full message transcript of one Claude.ai conversation by uuid, oldest→newest. `text` is the readable prose; `tools` lists tool calls the UI renders as cards.

chat.mistral.ai

Delete Le Chat conversation

Delete one Le Chat conversation by id (moves it to trash; Le Chat purges trashed conversations automatically after 30 days).

gemini.google.com

Search Gemini chats

Search your Gemini conversations (the "Search chats" box): server-side full-text over titles and message bodies.

chat.mistral.ai

Search Le Chat conversations

Full-text search across Le Chat conversation messages, returning matching messages with highlighted snippets.

perplexity.ai

Get Perplexity chat messages

Full message transcript of one Perplexity thread, by the chatId returned from list_chats.

claude.ai

Ask Claude

Open a new Claude.ai chat, send one question, and wait for the answer to finish (up to 3 minutes). Returns the answer as the markdown the model emitted, the message and conversation ids, why generation stopped, which model answered, the web_search queries it issued, every source its web_search and web_fetch tools surfaced, and — separately — the sources the answer actually cited. Requires a signed-in session: claude.ai has no anonymous chat. Avoid running many of these at once: claude.ai limits how many chats one account may hold concurrently and refuses the extras, so a refused send comes back quickly carrying Claude's own message and only needs to be retried at a slower pace.

x.com

Get X DM messages

Fetch all messages in a DM conversation, addressed by handle or by conversation_id. Returns conversation_id, the other party's handle, and messages with text, sender, direction, date and time. If X shows the Enter Passcode screen, pass the 4-digit E2E pin.

gemini.google.com

Delete Gemini chat

Permanently delete one Gemini conversation by id, via the conversation's own "Delete" menu.

web.whatsapp.com

WhatsApp — Create poll

Send a poll to a WhatsApp chat by exact name: a question + 2–12 options, with an optional allowMultiple toggle. Attach → Poll → fill the Create poll dialog → Send. Verifies the outgoing poll bubble. Works in 1:1 and group chats.

reddit.com

Get Reddit chat inbox

List the conversations in your Reddit chat inbox (DMs), newest activity first: room id + url, name, chat type, your membership (invite = a chat request you have not accepted), unread count, the other members, and the last message with its direction and real timestamp. Reads the chat client's own synced store, so it returns the whole inbox rather than the rows the virtualised rail happens to render. Threads are a separate surface and are not listed. Runs only via the browser extension, not the hosted cloud browser.

gemini.google.com

List Gemini chats

List your recent Gemini conversations (the sidebar's "Recents" list), newest first.

web.telegram.org

Telegram — Read a conversation's messages

Open one Telegram conversation by its peer id (the id get_inbox returns) and read its messages in chronological order: message id, text, the time shown on the bubble, whether it carries media, and — for channel posts — the exact view and forward counts. Scrolls upward to load older messages up to the requested count. Returns an empty list for a conversation with no messages, which is a real answer rather than a failure.