Skip to main content
POST
Detection scores candidate content against every stored fingerprint, using both the hidden watermark and the causal structure of the text. It catches reuse even when every word has been changed.
DeepStamp is the product name; the API paths still say fingerprint. Endpoints are /api/v1/fingerprint/embed and /api/v1/fingerprint/detect, and responses return fingerprint_id. There is no /api/v1/deepstamp/* endpoint.

POST /api/v1/fingerprint/detect

Request Body

Provide exactly one of content, url, or fingerprint_id. Content and URL queries are extracted on the fly and are never stored.
string
Raw text to scan, typically the article you want to check. Maximum 50,000 characters.
string
URL of the document to scan.
string
An already-embedded fingerprint id (fp_*) to re-score against the registry. This reuses the stored snapshot instead of re-extracting, which makes it the cheapest option for scheduled monitoring.
number
default:"5"
Number of matches to return. Range: 1–50.
number
default:"0.3"
Minimum combined score for a candidate to be reported. Candidates with no shared signal at all are always excluded, whatever this value is. match_found is true only when at least one match clears both gates.
number
default:"1000"
Upper bound on how many stored fingerprints are scanned, newest first. Range: 1–5000.
object
Custom scoring weights. entity, time, and causal must sum to 1.0. When omitted, content-type defaults apply: news 0.5 / 0.2 / 0.3, legal 0.3 / 0.1 / 0.6, report 0.4 / 0.3 / 0.3, internal 0.5 / 0.2 / 0.3.
object
Restrict which stored fingerprints are considered.

Response

boolean
True when at least one candidate cleared min_score.
number
The top match’s combined score, or 0 when nothing matched.
string
The query’s fingerprint id. For content and url queries this is minted during on-the-fly extraction and is not persisted.
array
Top-K candidates, ranked by combined score descending.
object
Embedding is covered in DeepStamp Embed.