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 ots CLI, Python/JS/Java libraries, and opentimestamps.org.

Workflow

  1. Hash your data — Compute SHA-256 of your file or content. The Stamp page does this automatically in the browser.
  2. Submit to API — Send the SHA-256 hash to POST /api/v1/public/stamps. The server creates an OTS proof.
  3. Download .ots file — The proof file is returned immediately. Save it alongside your original data.
  4. Verify later — Use the Verify page, ots verify CLI, 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)

POST /api/v1/public/stamps
Create a timestamp proof. No authentication required. Rate limited: 3 requests / 72 hours per IP.

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, batch
  • canonicalization_version — Required. Use file-sha256 for 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. Check Retry-After header.
  • 400 — Invalid request (missing fields).

Proof Status API

GET /api/v1/proofs/{proof_id}
Check the status of a timestamped proof. Public — no auth required.

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. Use poll_after_ms to retry.

Download Files

GET /api/v1/public/ots/{proof_id}.ots
Download the OTS proof file.
GET /api/v1/public/manifest/{proof_id}.json
Download the manifest file (if available).

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

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

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: 3 stamps per 72 hours per IP address. WordPress plugin sites have separate quotas.

Contact
contact@clockdo.com

Clockdo OTS
Privacy Terms