Start from a simple rule: whatever you sent has already left your perimeter. What remains is to judge how dangerous that is in each case.
What you must never send
Secrets and keys. Tokens, passwords, private keys, database connection strings. The usual way a leak happens: someone copies a whole config file to ask about one line.
Personal data. Real names, phone numbers, addresses, identity documents, medical records. Companies operating in Russia also face a question under 152-FZ, the personal data law.
Someone else's code under NDA. A contractor usually cannot take a client's code anywhere, and language models are no exception. Read the contract first, then send.
Payment card data. It has its own regulation and its own consequences.
What you can send, with care
Database schema. Rarely a secret by itself, but next to a server address it turns into a map for an attacker.
Logs. They almost always hold more than meets the eye: session tokens, user identifiers, internal hostnames. Clean them before sending.
Stack traces. Chunks of the environment and on-disk paths often end up in them.
How to stop depending on discipline
Under deadline pressure people make mistakes. So you need a process, not a poster on the wall.
Keep secrets out of code. If a file holds the names of environment variables and not the values, there is physically nothing to copy.
Put a scanner in pre-commit. It catches secrets before they reach the repository, and so before they reach a prompt.
Separate environments. Use test data for experiments with the model, not a dump from production.
Anonymize at the input. Is the task about handling personal data? Swap in synthetic values before sending.
What happens to your data on our side
We do not store the content of requests and responses. The database receives only the metadata needed for billing: which model, how many tokens, and what it cost.
Take that literally. Your prompt cannot be recovered from our database, because it is simply not there.
What to do if a secret still got out
The order is the same as for any leak:
- Revoke and reissue the key right away, not at the end of the working day.
- Review the access logs for the period the key was live.
- Work out how it ended up in the prompt, and close that path.
The first step matters more than the rest. Everything else can wait.
In short
Send secrets, personal data and NDA code nowhere. Clean everything else first. A process beats a reminder: secrets out of code, a scanner in pre-commit, test data for experiments.