API v2 · For developers

API v2 to seal hashes from your systems

Register SHA-256 hashes for logs, files or digital evidence and get a verifiable proof without sending the original content.

Give this to your agent

Read https://sellat.app/skill.md and set up Sellat for me.

Your agent reads the Sellat skill, installs it in your client and asks you for the key. Files never leave your machine: only their SHA-256 fingerprint travels.

API v2 REST + JSON
SHA-256 Hashing
Polygon PoS Blockchain
eIDAS Qualified seal
With an account

An API key

You create the key in your account and send it as a Bearer token. The proofs are yours, free within the daily allowance.

Create a key →
No account

Pay per call with x402

An agent with its own wallet pays for each proof in USDC on Base. Call without a key and the 402 answer carries the exact price. Paying is the sign-up.

How an agent pays →

An agent without a wallet? Ask the person you work for for a key. Do not create or fund a wallet yourself.

Privacy

Privacy by Design

Sellat registers the file fingerprint, not its content. In API v2, the original file is never sent to Sellat or published on blockchain.

Polygon

Verifiable external reference

The fingerprint is recorded on a public blockchain, so the proof does not depend on Sellat's database alone.

Dashboard

Keys and usage in your account

Create and revoke keys from your dashboard, and follow each proof and its status.

Team

Direct Tech Support

Talk to the engineers who built the code, not a bot.

01

Prepare your Hash

Generate a SHA-256 locally, for example: openssl dgst -sha256 file.zip.

02

Send to the API

Send the hash, a label and optional metadata to Sellat.

03

Batch and anchor

The proof joins a Merkle batch anchored on Polygon and attested on Bitcoin too. On the free account, batches close and are anchored every 4 hours, at fixed UTC times. Ask for it and the qualified (eIDAS) seal is issued in the same call, without waiting for the batch.

04

Verifiable proof

Get the id, the state, a downloadable proof.json, the certificate and the evidence package. All of it verifies without relying on Sellat.

An integration built for technical teams

API v2 does everything the web does: it registers a hash you already computed, anchors it on Polygon and Bitcoin, issues the qualified (eIDAS) seal when you ask for it and, optionally, keeps the original in custody. Your system keeps the file; Sellat records only the fingerprint. To verify later, recompute the SHA-256.

*Polygon Gas included* Read the full API reference →

Request

POST /api/v2/proofs
Authorization: Bearer sellat_...
Content-Type: application/json

{
  "hash": "a8f5f167f44f4964e6c998dee827110c...",
  "name": "contract.pdf",
  "qualified": true,
  "metadata": { "ref": "case-2026-0142" }
}

Response

{
  "id": "6f2c9b1e-0d1a-4b9f-8e7c-2a4d5b6c7d8e",
  "created": true,
  "state": "queued",
  "anchoring": { "policy": "scheduled", "batch_closes_after": "2026-09-15T12:00:00.000Z" },
  "anchors": [],
  "bitcoin": null,
  "qualified": {
    "state": "issued",
    "authority": "FNMT-RCM",
    "time": "2026-09-15T10:12:05Z",
    "tsr_url": ".../qualified.tsr"
  },
  "urls": {
    "proof_json": ".../api/v2/proof/6f2c9b1e....json",
    "certificate": "https://sellat.app/certificate/...",
    "evidence_zip": ".../evidence.zip"
  }
}

We use OpenTimestamps. This is what we add.

Sellat uses OpenTimestamps for its Bitcoin attestation. If that is all you need and you can wait a few hours, use it directly: it is free and open.

WhatOpenTimestampsSellat
Bitcoin anchor Yes Yes
Polygon anchor, before Bitcoin No Yes
PDF certificate No Yes
Evidence package (ZIP) No Yes
eIDAS qualified timestamp No Optional
Pay per call for agents (x402) Not needed: it is free Yes
Custody of the original file No Optional
Verifiable without the service Yes Yes

Frequently asked questions

Frequently asked questions

How do usage limits work?

Each account, the free one included, can create 1,000 API proofs a day, across all its keys; proofs made on the web do not count. At the limit, the API answers 429 with Retry-After until 00:00 UTC. On the free account, proofs are anchored together every 4 hours, at 00, 04, 08, 12, 16 and 20 h UTC. If you need more volume, write to us.

What happens if Sellat disappears?

The fingerprint anchored on the public blockchain does not depend on Sellat's database. Every proof has a downloadable proof.json in the public sellat-proof/2 format and an open-source verifier (sellat-verify): even if Sellat stopped operating, anyone could check it with the file, that proof.json and a public explorer.

Is it legally valid outside Europe?

Sellat creates technical proof of existence and integrity. Its legal value depends on the country, procedure and evidentiary context, so local legal advice is recommended. It does not replace a contract, a notary or an official registry.

Create your key and register your first proof

Your free account includes 1,000 API proofs a day and a welcome qualified seal, so you can try the whole flow, qualified seal included.

Create an API key Sellat for systems →