Overview
ProbeTruth is an advanced AI-driven platform designed to detect deepfakes and combat digital identity fraud. Our flagship solution, ProbeTruth, leverages NeuroSymbolic AI and multimodal techniques to ensure transparency and accuracy in verifying digital content.
Key Features
- •Comprehensive Detection Capabilities: Identifies basic, partial, shallow and complex deepfakes across various media formats.
- •Explainable Reporting: Generates detailed, transparent, and defensible reports that are easily understood.
- •Security-First Architecture: Built with robust security measures to guard against manipulation and ensure data integrity.
- •User-Centric Design: Offers intuitive interfaces and workflows tailored for legal professionals, organizations and individuals.
- •Collaborative Integration: Works seamlessly with governments, businesses and research institutions to set global standards in digital content verification.
Use Cases
Legal and Forensic Analysis
Assisting legal professionals in verifying the authenticity of digital evidence.
Media and Journalism
Helping journalists and media outlets detect and prevent the spread of manipulated content.
Corporate Security
Enabling businesses to protect against digital identity fraud and misinformation.
Public Sector Applications
Supporting government agencies in safeguarding public information and communications.
Accessing ProbeTruth
To learn more about our services or to schedule a demo, visit our About Us page or contact us at demo@probetruth.ai.
Getting Started
Welcome to ProbeTruth — your trusted solution for detecting deepfakes and protecting digital identity.
This guide walks you through the basic steps to start using the ProbeTruth platform, whether you're a legal investigator, journalist or individual user seeking truth in digital content.
Who Can Use ProbeTruth?
ProbeTruth is designed for:
- General users needing one-time verification of media.
- Legal professionals and investigators handling digital evidence.
- Organizations looking for automated, scalable deepfake detection via dashboards or APIs.
Step-by-Step Guide
1. Create an Account
Choose one of the following:
- Paid Subscription: Unlock full access with a personalized dashboard and file history.
- One-Time Use: Use our limited, quick-access upload service — no account needed.
💡 Note: API access requires a subscription. Once you have a subscription, you can create API keys directly from your dashboard.
2. Upload Your Media
- Log in to your dashboard or use the public upload page.
- Select your media file(s) for inspection — video, audio or image formats are supported.
3. Wait for Analysis
- Our AI pipeline processes your media using multiple deepfake detection models.
- Most results are returned within a few minutes.
- Progress and status updates are visible in the dashboard (for subscribers).
4. Download Your Report
- Once complete, a detailed forensic report is generated.
- Reports include authenticity verdicts, visual evidence, metadata and model decisions.
- Download or share securely via your dashboard.
API Access (For Developers and B2B Clients)
Subscribers can create API keys directly from their dashboard to use our RESTful API for automating uploads and receiving results. API documentation is available in the API section below.
Getting Started: After subscribing, navigate to your dashboard and click on the API Keys section to create your first API key. You can create multiple keys for different environments and configure IP/domain restrictions for enhanced security.
Business & Subscription Options
ProbeTruth offers tailored solutions for businesses:
- B2B SaaS Access: Scalable platform access with usage-based billing.
- White Labeling: Customize our platform under your brand with full API and dashboard integration.
Contact demo@probetruth.ai to discuss your business needs.
Next Steps
- Explore the API Reference section below
- Learn about our Detection Models section below
- Review our Security Practices section below
Need help? Contact us anytime at support@probetruth.ai
Media Inspection
Once a media file is successfully uploaded using the POST api/v1.0/media/upload endpoint, you can initiate deepfake analysis through the "New Scan" action in the ProbeTruth interface.
This process automatically triggers backend analysis using multiple AI models, depending on the type of uploaded media (video, audio, or image). No additional API call or input parameters are required at this step.
Workflow
- Upload Media
Upload a video, audio or image file using theapi/v1.0/media/uploadendpoint. - Media Inspection
After upload, click the "New Scan" button in the ProbeTruth dashboard. This triggers backend analysis. - Model Processing
Based on the type of media:- Visual models are run for images / videos.
- Audio models for audio clips.
- Audiovisual models for eligible media types.
- Live Feedback
- During analysis, progress status is shown.
- Once complete, the frontend displays predictions and confidence scores.
Backend Behavior
- The system automatically selects the appropriate models based on the uploaded media type.
- No additional input parameters are required.
- The analysis status is updated in real time.
Example Response (GUI Display)
| Model | Confidence | Verdict |
|---|---|---|
| VisualNet V2 | 93.2% | Deepfake |
| AudioAnalyzer X | 98.7% | Authentic |
| Fusion AI | 95.1% | Deepfake |
Final Decision: Deepfake Detected
Next Step: Generate Report
Once the inspection is complete, users can click on the "View Report" button to receive a downloadable PDF forensic report containing:
- Metadata
- Model decisions
- Confidence scores
- Visual evidence (if available)
Generate Report
After completing the media inspection, you can generate a comprehensive PDF report summarizing the results of the deepfake detection process. This report can be downloaded and printed for legal, forensic or internal documentation purposes.
How It Works
Once the media has been analyzed and predictions are available, clicking the "View Report" button will:
- Compile all analysis results.
- Structure the content into a formal forensic report.
- Provide a downloadable PDF or JSON file with optional print support.
Report Contents
The generated report includes the following sections:
1. General Information
- Media ID
- Upload timestamp
- Media type (video, audio, image)
- File name and format
- User or API key identifier (if applicable)
2. Metadata Extraction
- Resolution / duration / size
- File properties and encoding format
- Hash or unique media signature
3. Model Analysis Summary
- List of models used for analysis
- Individual predictions with confidence scores
- Verdicts (e.g., Authentic / Deepfake)
4. Explanation & Evidence
- Key frame thumbnails (for video / image)
- Audio waveform or spectrogram (for audio)
- Highlighted anomalies (if supported)
5. Final Verdict
- Overall decision (e.g., Deepfake Detected)
- Confidence level
- Timestamp of decision
The report is digitally signed and watermarked with the ProbeTruth seal to ensure authenticity.
Download & Print
- The generated report is available in PDF or JSON format.
- Users can download or print directly from the browser.
- Reports can also be accessed later via the media history panel (if enabled).
Detection Models
ProbeTruth leverages a suite of advanced AI models to detect deepfakes across visual, audio and audiovisual domains. Each model targets specific forgery cues using state-of-the-art machine learning techniques.
Audiovisual Model
DARL (v1.0)
- Type: Audiovisual
- Focus: Speech-Lips Synchronization
- Description: DARL analyzes the temporal alignment between speech audio and corresponding lip movements in video. It flags inconsistencies that are indicative of synthetic tampering or lip-sync manipulation.
Visual Models
DBaG-Net (v1.0)
- Type: Visual
- Focus: Facial Geometry
- Description: DBaG-Net detects abnormalities in facial proportions, landmarks and geometric consistency that are often introduced by deepfake generation processes.
Atten-ViT (v1.0)
- Type: Visual
- Focus: Spatial Artifacts
- Description: Based on Vision Transformers, Atten-ViT captures subtle pixel-level and regional inconsistencies, such as unnatural textures or blending errors in forged images or video frames.
Audio Models
Audio-RRL (v1.0)
- Type: Aural
- Focus: Spectro-temporal Artifacts
- Description: Audio-RRL identifies temporal inconsistencies and unnatural frequency patterns in audio, which may result from voice synthesis or manipulation techniques.
PSA-Net (v1.0)
- Type: Aural
- Focus: Spectral Artifacts
- Description: PSA-Net focuses on spectral analysis to detect discrepancies in voice patterns and harmonics, useful in identifying audio deepfakes.
Spot-Net (v1.0)
- Type: Aural
- Focus: Temporal Artifacts
- Description: Spot-Net examines voice continuity and timing to detect breaks, delays or unnatural speech patterns introduced by tampering or generation models.
Model Selection
The appropriate model(s) are automatically selected based on the uploaded media type:
- Video → Audiovisual + Visual + Audio Models
- Image → Visual Models only
- Audio → Audio Models only
Each model contributes its prediction and confidence score to the final decision.
API Reference
Welcome to the ProbeTruth API Reference. This comprehensive guide provides detailed documentation for integrating deepfake detection capabilities into your applications. Our REST API makes integration straightforward.
Base URL
All API endpoints are prefixed with the following base URL:
Quick Start Workflow
Here's a complete example of the typical analysis workflow:
- Upload Media: POST /media/upload → Returns
referenceId - Start Analysis: POST /deepfake/start with
referenceId→ Returns status "queued" - Poll Status: GET /deepfake/<referenceId>/status → Check until status is "done"
- Download Report: Use
reportUrlfrom status response to download the PDF report
Complete Python Example:
import requests
import hashlib
import time
API_TOKEN = "<your_api_token_here>"
BASE_URL = "https://app.probetruth.ai/api/v1.0"
def analyze_media(file_path):
"""Complete workflow: Upload → Analyze → Poll → Download Report"""
# Step 1: Calculate file hash
sha256_hash = hashlib.sha256()
with open(file_path, "rb") as f:
for byte_block in iter(lambda: f.read(4096), b""):
sha256_hash.update(byte_block)
file_hash = sha256_hash.hexdigest()
# Step 2: Upload media
print("📤 Uploading media...")
with open(file_path, 'rb') as f:
upload_response = requests.post(
f"{BASE_URL}/media/upload",
headers={"Authorization": f"Bearer {API_TOKEN}"},
files={'file': f},
data={'fileHash': file_hash}
)
if upload_response.status_code != 200:
print(f"❌ Upload failed: {upload_response.text}")
return
reference_id = upload_response.json()['data']['referenceId']
print(f"✅ Uploaded successfully! Reference ID: {reference_id}")
# Step 3: Start analysis
print("🔍 Starting analysis...")
start_response = requests.post(
f"{BASE_URL}/deepfake/start",
headers={
"Authorization": f"Bearer {API_TOKEN}",
"Content-Type": "application/json"
},
json={"referenceId": reference_id}
)
if start_response.status_code != 200:
print(f"❌ Start failed: {start_response.text}")
return
print("✅ Analysis started!")
# Step 4: Poll for status
print("⏳ Waiting for analysis to complete...")
while True:
status_response = requests.get(
f"{BASE_URL}/deepfake/{reference_id}/status",
headers={"Authorization": f"Bearer {API_TOKEN}"}
)
if status_response.status_code != 200:
print(f"❌ Status check failed: {status_response.text}")
return
status_data = status_response.json()['data']
status = status_data['status']
print(f" Status: {status}")
if status == 'done':
print("✅ Analysis complete!")
report_url = status_data['reportUrl']
report_hash = status_data.get('reportFileHash')
# Step 5: Download report
print("📥 Downloading report...")
report_response = requests.get(f"{report_url}?apiToken={API_TOKEN}")
if report_response.status_code == 200:
with open('deepfake_report.pdf', 'wb') as f:
f.write(report_response.content)
# Verify report integrity
actual_hash = hashlib.sha256(report_response.content).hexdigest()
if actual_hash == report_hash:
print("✅ Report downloaded and verified!")
else:
print("⚠️ Report downloaded but hash mismatch!")
else:
print(f"❌ Report download failed: {report_response.text}")
break
elif status in ['failed', 'stopped']:
print(f"❌ Analysis {status}: {status_data.get('reason', 'No reason provided')}")
break
time.sleep(5) # Poll every 5 seconds
# Usage
analyze_media("/path/to/your/video.mp4")API Endpoints Summary
Overview of all available endpoints:
| Method | Endpoint | Description |
|---|---|---|
POST | /media/upload | Upload media file for analysis |
POST | /deepfake/start | Start deepfake analysis |
GET | /deepfake/:id/status | Check single task status |
GET | /deepfake/status | Check bulk task status |
POST | /deepfake/stop | Stop running analysis |
GET | /reports/:filename | Generate report (PDF) |
Response Format
All API responses follow a consistent structure:
{
"statusCode": 0, // 0 = success, negative number like -9999 = error
"data": { ... } // Response payload
}Error responses include a descriptive message field explaining what went wrong.
Authentication
All requests to the ProbeTruth API must be authenticated using secure, token-based authentication. This ensures robust, scalable access control to our deepfake detection services.
Overview of Authentication Flow
- Clients authenticate with server and obtain a api token.
- Clients include this token in the
Authorizationheader when calling any protected API endpoint. - API Gateway validates the token before forwarding the request to the backend.
Getting Access
To gain access to the ProbeTruth API:
- Sign up for a subscription account on ProbeTruth.
- Navigate to your dashboard and access the API Keys section.
- Create a new API key by providing a name and optionally configuring IP and domain restrictions.
- Copy your API key immediately after creation - you won't be able to see the full token again.
Note: You can create multiple API keys for different environments (e.g., production, staging) and manage them from your dashboard. Each key can have custom IP and domain restrictions for enhanced security.
Token-Based Authentication
Once authenticated, your client will receive a api token. These tokens are valid till you revoke them.
Include this token in the Authorization header of all API requests:
The token is automatically validated by our API Gateway before any request is forwarded to the inference engine.
Example (Python + Token)
import requests
API_TOKEN = 'your_api_token_here'
API_URL = 'https://app.probetruth.ai/api/v1.0/deepfake/68ee18fbbf286d24fd9bdbdc/status'
headers = {
'Authorization': f'Bearer {API_TOKEN}'
}
response = requests.get(API_URL, headers=headers)
if response.ok:
print("Success:", response.json())
else:
print("Error:", response.status_code, response.text)Security Best Practices
- Never expose your token in frontend JavaScript or public repositories.
- Rotate credentials periodically.
- Use third-party tools like SecurityScorecard to regularly assess the security posture of your application.
Upload Media
The POST api/v1.0/media/upload endpoint allows you to upload video, audio or image files for deepfake forensic inspection. This is the first step in the ProbeTruth detection pipeline.
You can upload videos, audio or images for forensic evaluation.
Endpoint
Authentication
This endpoint requires a valid API key. Include it in the Authorization header. Tokens are valid until you revoke them:
Supported Media Types
- Video
.mp4.mkv.avi.mov.wmv.flv.webm - Audio
.mp3.wav.aac.flac - Image
.jpg.png.bmp.tiff
Headers
| Key | Value |
|---|---|
| Authorization | Bearer <your_api_key_here> |
| Content-Type | multipart/form-data |
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| file | file | Yes | The media file to be analyzed |
| fileHash | string | Yes | SHA-256 hash of the file content matching the uploaded file for validation |
Code Example
cURL
curl -X POST https://app.probetruth.ai/api/v1.0/media/upload \ -H "Authorization: Bearer <your_api_token_here>" \ -F "file=@/path/to/your/video.mp4" \ -F "fileHash=<sha256_hash_of_the_file>"
Success Response
{
"statusCode": 0,
"data": {
"referenceId": "692a9390e18c3d5e423c5cb8"
}
}Error Responses
All endpoints return these common error responses:
400 Bad Request
{
"statusCode": -9999,
"message": "Unsupported file extension. Allowed extensions: .mp4, .mkv, .avi, .mov, .wmv, .flv, .webm, .mp3, .wav, .aac, .flac, .jpg, .jpeg, .png, .bmp, .tiff"
}403 Forbidden
{
"statusCode": -9999,
"message": "User not found"
}400 Bad Request
{
"statusCode": -9999,
"message": "File size exceeds the limit for image"
}Next Step
Once uploaded, use the returned referenceId to perform media inspection:
Developer Notes
- Large media file may fail to upload depending on server-side configuration.
- Accepted media types are validated on the backend. If you're unsure, validate the file type before uploading.
- After uploading, you will receive a referenceId used in subsequent API calls (inspect, status, get report, etc.).
Media Inspection
Once a media file is successfully uploaded via the Upload Media Endpoint, you can initiate a forensic deepfake analysis using the Media Inspection endpoint.
We only store the hash of the file and the forensic report. The media file is deleted after certain number of days after inspection as configured on the server.
Once a media file is successfully uploaded using the Upload Media Endpoints, you can initiate deepfake analysis by calling the dedicated inspection endpoint for the specific media type and providing the referenceId in the request body.
There are separate endpoints to trigger the inspection process for the uploaded media.
1. Initiate Media Inspection
The POST api/v1.0/deepfake/start endpoint triggers the deepfake analysis pipeline for a previously uploaded media.
Endpoint
Authentication
This endpoint requires a valid API key. Include it in the Authorization header. Tokens are valid until you revoke them:
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
referenceId | string | Yes | The unique ID of the uploaded media file. |
Content-Type: application/json
Code Example
cURL
curl -X POST https://app.probetruth.ai/api/v1.0/deepfake/start \
-H "Authorization: Bearer <your_api_token_here>" \
-H "Content-Type: application/json" \
-d '{"referenceId": "68ee18fbbf286d24fd9bdbdc"}'Success Response (Inspection Initiated)
{
"statusCode": 0,
"data": {
"status": "queued"
}
}Missing referenceId
{
"statusCode": -9999,
"message": "referenceId should not be empty"
}Invalid referenceId
{
"statusCode": -9999,
"message": "Media not found"
}Unauthorized Token
{
"statusCode": -9999,
"message": "Invalid API token"
}2. Check Inspection Status
Use these endpoints to monitor the progress of your deepfake analysis tasks. Three status check options are available depending on your use case.
2.1 Single Task Status
Check the status of a specific analysis task by its reference ID.
Authentication:
Example Request:
curl -X GET "https://app.probetruth.ai/api/v1.0/deepfake/692a8a6aec7dd33fcf9feb52/status" \ -H "Authorization: Bearer <your_api_token_here>"
Success Response
{
"statusCode": 0,
"data": {
"referenceId": "692a8a6aec7dd33fcf9feb52",
"status": "done",
"reportUrl": "https://app.probetruth.ai/api/v1.0/reports/39f39266-6deb-48e4-924d-21d12d76fc06.pdf",
"reportFileHash": "50f0737dbebc69861353a6000c94ddd56029938c9c117df7abc4a1645d8abab0",
"result": "Analysis completed successfully",
"reason": null,
"mimeType": "image/png",
"originalName": "avatar.png",
"createdAt": "2025-11-29T05:53:46.782Z",
"updatedAt": "2025-11-29T05:59:15.561Z"
}
}2.2 Bulk Status Check
Check the status of multiple tasks simultaneously by providing comma-separated reference IDs.
Query Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| referenceIds | string | Yes | Comma-separated list of reference IDs |
Example Request:
curl -X GET "https://app.probetruth.ai/api/v1.0/deepfake/status?referenceIds=692a8a6aec7dd33fcf9feb52,692a9390e18c3d5e423c5cb8" \ -H "Authorization: Bearer <your_api_token_here>"
Success Response (Array)
{
"statusCode": 0,
"data": [
{
"referenceId": "692a8a6aec7dd33fcf9feb52",
"status": "done",
"reportUrl": "https://app.probetruth.ai/api/v1.0/reports/39f39266-6deb-48e4-924d-21d12d76fc06.pdf",
"reportFileHash": "50f0737dbebc69861353a6000c94ddd56029938c9c117df7abc4a1645d8abab0",
"result": "Analysis completed successfully",
"reason": null,
"mimeType": "image/png",
"originalName": "avatar.png",
"createdAt": "2025-11-29T05:53:46.782Z",
"updatedAt": "2025-11-29T05:59:15.561Z"
},
{
"referenceId": "692a9390e18c3d5e423c5cb8",
"status": "processing",
"reportUrl": null,
"reportFileHash": null,
"result": null,
"reason": null,
"mimeType": "video/mp4",
"originalName": "sample_video.mp4",
"createdAt": "2025-11-29T06:12:30.123Z",
"updatedAt": "2025-11-29T06:12:35.456Z"
}
]
}3. Stop Running Task
Cancel a queued or processing analysis task. Useful for stopping long-running analyses or correcting mistakes.
Authentication:
Request Body:
| Field | Type | Required | Description |
|---|---|---|---|
| referenceId | string | Yes | Reference ID of the task to stop |
Example Request:
curl -X POST "https://app.probetruth.ai/api/v1.0/deepfake/stop" \
-H "Authorization: Bearer <your_api_token_here>" \
-H "Content-Type: application/json" \
-d '{"referenceId": "692a9390e18c3d5e423c5cb8"}'Success Response
{
"statusCode": 0,
"data": {
"status": "stopped"
}
}4. Get User Statistics
Retrieve aggregate statistics for your account, including total scans, completed analyses, and status breakdown.
Authentication Note:
This endpoint requires your email in the Authorization header (API tokens are not supported for this endpoint).
Example Request:
curl -X GET "https://app.probetruth.ai/api/v1.0/deepfake/stats" \ -H "Authorization: Bearer your_email@example.com"
Success Response
{
"statusCode": 0,
"data": {
"totalScans": 125,
"completedScans": 118,
"queuedScans": 2,
"processingScans": 1,
"failedScans": 3,
"stoppedScans": 1
}
}Security & Best Practices
- API tokens are valid until you revoke them via the dashboard or API
- Media files are automatically deleted after a configured retention period (server-side)
- Only SHA-256 file hashes and analysis reports are permanently stored
- Use
reportFileHashto verify report integrity - Poll status endpoints at reasonable intervals (recommended: every 5-10 seconds)
- Use the bulk status endpoint for checking multiple tasks efficiently
Generate Report
After media inspection is complete (status is done), a detailed forensic report is available for download. The report includes classification results (real/fake), confidence scores, technical analysis details and visual evidence.
Endpoint
The reportUrl is returned in the status API response when the analysis is complete. This URL already contains the filename. To access the report, add your API token as a query parameter.
Authentication
Include your API token as a query parameter apiToken (alternative to Authorization header for browser downloads):
Code Example
cURL - Download Report
curl -X GET "https://app.probetruth.ai/api/v1.0/reports/f3a1754b-3329-4851-8ec8-10df78beac2a.pdf?apiToken=<your_api_token_here>" \ -H "Accept: application/pdf" \ -o report.pdf
Response
Success (200 OK)
Returns a binary stream of the report file (typically PDF). The response includes:
Content-Type: application/pdfContent-Length: File size in bytesContent-Disposition: inline; filename="..."
%PDF-1.7 1 0 obj ...binary PDF data... %%EOF
Error Responses
| HTTP Status Code | Response Body (JSON) | Description |
|---|---|---|
400 Bad Request | {"statusCode":-9999,"message":"Either email or apiToken query parameter is required"} | Authentication failed. Ensure a valid API token is provided. |
403 Forbidden | {"statusCode":-9999,"message":"File not found or access denied"} | The specified file_name does not exist or this file does not belong to the user. |
500 Internal Server Error | { "error": "Internal Server Error", "message": "Failed to generate report." } | An unexpected error occurred on the server while generating the report. |
Developer Notes
- All uploaded files are deleted after a configured retention period; only SHA256 hashes and reports are stored
- Use
reportFileHashto verify report integrity after download - Reports contain classification results (real/fake), confidence scores and detailed analysis
Common Error Codes
| Status Code | Error Message | Solution |
|---|---|---|
| 400 | Authorization header is required | Include Authorization: Bearer <token> header |
| 400 | File hash mismatch | Recalculate SHA-256 hash of file content |
| 400 | Unsupported file extension | Use supported formats: .mp4, .png, .jpg, .mp3, etc. |
| 400 | File size exceeds the limit | Compress or reduce file size before upload |
| 401 | Invalid API token | Generate a new API token from dashboard |
| 403 | User not found | Verify API token belongs to registered user |
| 403 | File not found or access denied | Ensure file exists and belongs to your account |
| 404 | Media not found | Verify the referenceId is correct |
| 409 | Task already in progress | Wait for current analysis to complete or stop it first |
| 500 | Internal server error | Retry request or contact support if issue persists |
Best Practices for API Integration
- Validate files locally: Check file type and size before uploading to save bandwidth
- Calculate hash accurately: Use SHA-256 on the exact bytes being uploaded
- Implement exponential backoff: When polling status, increase interval on repeated checks
- Handle all status codes: Implement proper error handling for each HTTP status code
- Store referenceIds: Keep track of referenceIds for future status checks
- Verify report integrity: Always validate
reportFileHashafter download - Use bulk endpoints: Check multiple tasks at once with the bulk status endpoint
- Secure your tokens: Never expose API tokens in client-side code or public repositories
Security & Privacy
At ProbeTruth, safeguarding your data and privacy is at the core of our platform. We are committed to providing a secure, trustworthy environment for detecting deepfakes and protecting digital identity.
Data Handling
- End-to-End Encryption: All media uploads and API requests are encrypted using HTTPS (TLS 1.2+).
- Temporary Storage: Uploaded media files are stored only for the duration required to complete analysis.
- Automatic Deletion: Media files are automatically deleted after inspection and report generation, unless retention is explicitly enabled by the user.
Model Isolation
- Each AI detection model runs in a sandboxed environment to prevent cross-contamination and ensure privacy.
- No raw media data is shared with external systems or third-party services.
Audit & Compliance
- ProbeTruth maintains internal audit logs for critical API events and model decisions.
- We adhere to data protection standards aligned with GDPR and CCPA requirements.
API Security
- API Keys: All endpoints require authentication via secure API.
- Rate Limiting: To prevent abuse, API usage is rate-limited and monitored.
- Token Expiry: Temporary access tokens (when used) expire automatically to reduce risk.
- IP Whitelisting: API is accessible from whitelisted IPs. Ensure your IP is registered with ProbeTruth.
Integrity Protection
- Hash Verification: Media file integrity is checked using SHA-256 hash comparison during upload.
- Tamper Detection: We monitor anomalies in model execution that may indicate malicious inputs.
Questions?
For inquiries related to security or privacy compliance, contact our security team at:
Frequently Asked Questions (FAQ)
This page will be updated soon with answers to the most common questions about using the ProbeTruth API and platform.
Stay tuned!
Contact Us
We'd love to hear from you! Whether you're interested in our services, have questions about our platform or want to collaborate — feel free to get in touch.
General Inquiries
For general questions, partnership opportunities or media inquiries, reach out to:
Email: contact@probetruth.ai
Research Collaborations
If you're from academia or a research institution and are interested in working together on deepfake detection, AI security or related topics:
Email: research@probetruth.ai
Business & Enterprise Solutions
For enterprise support, custom integrations or bulk analysis options, please contact:
Email: business@probetruth.ai
Office Location
ProbTruth Inc.
Tower Plaza
555 E William St, Ann Arbor, MI 48104
Support Hours
Monday to Friday: 9:00 AM – 5:00 PM (EST)
Saturday & Sunday: Closed
Thank you for reaching out to us. We'll respond to your message as soon as possible!