API: watermark detection with your API key
API: watermark detection with your API key
POST /v1/audio/watermark/detect now answers, for any credentialed workspace, whether a clip carries the watermark Speechify seals into the audio it generates. This check was previously operator-only; it is now on the API and in the console. Upload the clip as audio (multipart/form-data, at most 25MB) and get back WatermarkDetectionResponse — { watermarked, confidence }, with confidence a score in [0, 1]. Nothing about the upload is stored, and no voice is read or written.
Read the answer in one direction only. watermarked: true is positive evidence the audio came from Speechify synthesis. watermarked: false is the absence of that evidence, not proof of a negative: only models redeployed since the watermark shipped mark their output, the detector needs at least three seconds of clear speech, and re-encoding or changing the speed of a clip degrades the mark. Confidence scores are comparable only between checks against the same detector version.
Detection is capped at 20 requests per hour per workspace — a forensic question, not a data-plane call.
422 watermark_audio_unusable— the clip could not be read (an undecodable container, or too little audio to judge). Deliberately not a negative verdict: “we could not tell” and “this is not ours” are different answers.502 watermark_detection_unavailable— the detector could not answer. Nothing about the request is wrong; retry the same bytes.
The credential-free sibling POST /v1/audio/watermark/verify — a bare boolean with no confidence score — follows the next day (see 2026-08-29); use detect with an API key when you want the score.