A safer way to reach your source

Tips, contact details, and draft materials — share them without leaving anything in cloud history or your source's phone backups.

Start free trial

Where sources get exposed

Investigative work rarely fails at the interview. It fails in the handoff.

Messaging app backups

Signal, Telegram, iMessage — most sync to cloud backups by default. Everything said is recoverable with the right warrant.

Email metadata

Even encrypted email leaks sender, recipient, subject, and timing — enough to identify a source.

Newsroom file servers

Shared drives have access logs. Once a document is saved, dozens of people in IT can see who touched it.

Device seizure

A phone or laptop in the wrong hands reveals months of communication history in minutes.

A clean handoff

Ephemeral by default. Nothing to seize, subpoena, or back up.

01

Encrypt

Your source writes in the browser. Encryption happens before anything leaves their device.

02

Share

A self-destructing link. No account, no phone number, no identifier.

03

Vanish

Read, then deleted forever. No server-side copy, no log of contents.

Designed for confidential work

No account required

Your source never signs up, never gives a phone number, never leaves an identifier on our side.

Swiss jurisdiction

The company behind scrt.link operates under Swiss jurisdiction, one of the strongest legal frameworks for press freedom and privacy.

No server-side logging

We never see the contents of your secrets. Deleted after first read — we can't hand over what we don't have.

Password protection

Layer an additional password on top of the link for out-of-band delivery.

Secret Requests

Publish a tip page. Sources submit information to you without revealing their identity.

File support

Images, PDFs, audio — up to your plan's file size. Encrypted client-side before upload.

Effortless Integration

Seamlessly connect your tools, data and workflows in minutes.

Connect to the API

The provided client module enables a simple and convenient way to interact with the API.

<!-- Include in your app -->
<script type="module">
	import { scrtLink } from 'https://scrt.link/api/v1/client-module';

	// Instantiate client with API key.
	const client = scrtLink('<your-api-key>');

	client.createSecret('Some confidential information…').then(console.log);
</script>

API Response (JSON)

In the background the client module interacts with the Rest API. No further setup needed.

// Client module response:
{
	"secretLink": "https://scrt.link/s#gOOei~kEkcYAAX-YJQnGooSXdSJg8MXkzk~2",
	"receiptId": "D0waygL3",
	"expiresIn": 86400000,
	"expiresAt": "2025-04-24T16:15:52.172Z",
	"viewLimit": 1
}
View API documentation

FAQ

Frequently asked questions.

More questions and answers

Protect your source from first contact

Try scrt.link — then publish a tip page under your byline.