Endpoints
Five endpoints are available under the/v1 prefix:
All five endpoints share the same auth, image-input model, and error format described below.
Authentication
Every request must include your organization API key in thex-api-key header. See Authentication for full details and rate limit information.
Image inputs
Every server-to-server endpoint accepts images in one of two ways. You can mix them within a single call (for example,/v1/face/compare can take one image as a fileKey and the other as raw multipart bytes).
Option 1 β multipart/form-data
Send the raw image bytes as a form field. Use this when the image lives on your server and you donβt need to keep it around after the call.
cURL
image/jpeg, image/png, image/gif, image/bmp, image/tiff, image/webp. Max size: 15 MB per image. The content type is detected from the fileβs magic bytes, not the Content-Type header β mislabelled files are still accepted as long as the bytes match a supported format.
Option 2 β application/json with a presigned fileKey, base64, or base64url string
If your image is already in deepidv-managed storage (for example, uploaded during an earlier session or via the upload endpoint), reference it by its fileKey. You can also send the image inline as a base64 or base64url-encoded string. In all three cases the value is a bare string:
cURL β S3 key
cURL β base64
fileKey is the recommended pattern for high-throughput pipelines since it avoids re-uploading bytes on each call.
Response shape
Successful responses are JSON, with a service-specific payload per endpoint (see each endpointβs reference page).Error shape
All errors return a consistent JSON shape:Compound verification
POST /v1/identity/verify is a compound endpoint that runs /v1/document/scan, /v1/face/detect, and /v1/face/compare in parallel and returns a single aggregated response with an overallConfidence score. Use it when you want one round-trip for a full ID + selfie verification instead of orchestrating the three calls yourself.