Documentation
Everything you need to know about Clockdo OTS — how it works, API reference, and verification guide.
Overview
Clockdo OTS is a content timestamping service built on the OpenTimestamps standard. It generates blockchain-anchored timestamp proofs for any data — files, hashes, or content manifests.
- Privacy-first: Files are hashed in your browser. Only the SHA-256 fingerprint is sent to the server.
- Independently verifiable: Proofs can be verified with any OpenTimestamps-compatible tool, even if this service goes offline.
- Standards-based: Uses the OTS binary format, compatible with the
otsCLI, Python/JS/Java libraries, and opentimestamps.org.
Workflow
- Hash your data — Compute SHA-256 of your file or content. The Stamp page does this automatically in the browser.
- Submit to API — Send the SHA-256 hash to
POST /api/v1/public/stamps. The server creates an OTS proof. - Download .ots file — The proof file is returned immediately. Save it alongside your original data.
- Verify later — Use the Verify page,
ots verifyCLI, or opentimestamps.org to confirm the timestamp.
File → SHA-256 (browser) → POST /api/v1/public/stamps → .ots download
↓
Later: .ots + original file → ots verify → ✓ Anchored
Stamp API (Public)
Request body (JSON):
{
"export_hash": "sha256:a1b2c3d4...64hexchars",
"event_type": "publish",
"canonicalization_version": "file-sha256",
"filename": "document.pdf"
}
Fields:
export_hash— Required. Format:sha256:<64 hex chars>event_type— Required. One of:publish,update,draft,batchcanonicalization_version— Required. Usefile-sha256for direct file hashing.filename— Optional. Original filename for reference.
Response (201 Created):
{
"proof_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"status": "stamped",
"manifest_hash": "sha256:...",
"downloads": {
"ots_url": "/api/v1/public/ots/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.ots"
}
}
Error responses:
429— Rate limit exceeded. CheckRetry-Afterheader.400— Invalid request (missing fields).
Proof Status API
Response (200 OK):
{
"proof_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"status": "stamped",
"manifest_hash": "sha256:...",
"downloads": {
"ots_url": "/api/v1/public/ots/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.ots"
},
"message": "Proof is stamped and ready to download.",
"poll_after_ms": 0
}
Statuses:
stamped— Proof is ready. Download the .ots file.queued— Still processing. Usepoll_after_msto retry.
Download Files
WordPress Plugin
The Clockdo Proof-of-Publish WordPress plugin automates the stamping process for your posts and pages.
- Automatically generates SHA-256 fingerprints of published content.
- Submits proofs to the Clockdo OTS API on publish/update.
- Stores .ots files in your WordPress media library.
- Provides a public verification page per post.
For more details, visit the Pro plan page or the Plugin product page.
Independent Verification
OTS proofs are independently verifiable. You do not need Clockdo to confirm a timestamp.
Option 1: Web-based
- Use the Verify page on this site.
- Or drag your file + .ots into opentimestamps.org.
Option 2: CLI
# Install
pip3 install opentimestamps-client
# Stamp a file
ots stamp myfile.pdf
# Verify a proof
ots verify myfile.pdf.ots
Option 3: Libraries
- JavaScript — Browser & Node.js
- Python
- Java
FAQ
Does this prove ownership?
No. A timestamp proves that data existed at a certain time. Ownership depends on broader context and jurisdiction.
What if the service goes offline?
Your .ots proof files remain valid. They can be verified using any OpenTimestamps-compatible tool against the Bitcoin blockchain.
Is my file uploaded?
No. Only the SHA-256 hash is sent. Files are processed entirely in your browser.
Rate limits?
Public API: 20 creation requests per 4-hour window per IP address. WordPress plugin sites have separate quotas.
Contact
contact@clockdo.com