Blog/Technical

AI Music Detection API: Complete Integration Guide

Claire··12 min read

Integrating AI music detection into a distribution pipeline should take hours, not weeks. authio's REST API is designed for exactly this: send an audio file, get a detection result with confidence scoring and platform attribution. This guide covers everything from your first API call to production-scale batch processing.

Prerequisites

  • An authio account with an API key (available from the dashboard)
  • Any HTTP client -- cURL, Python requests, Node.js fetch, or your language of choice
  • Audio files in MP3, WAV, FLAC, M4A, or AIFF format

Your first detection request

The core endpoint is POST /api/v1/analyze. Send an audio file as multipart form data with your API key in the header:

curl -X POST "https://authio.io/api/v1/analyze" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "file=@track.mp3"

The response includes everything you need for automated decision-making:

{
  "success": true,
  "is_ai_generated": true,
  "confidence": 0.9942,
  "classification": "AI_GENERATED",
  "platform_detected": "suno",
  "platform_confidence": 0.97,
  "processing_time": 3.2,
  "models_used": 12
}

Understanding the response

  • confidence: A float between 0.0 and 1.0. Values above 0.85 are high-confidence detections. Values between 0.5 and 0.85 indicate mixed or uncertain content -- consider manual review for these.
  • platform_detected: If AI is detected, this field identifies the likely generation platform (suno, udio, musicgen, elevenlabs, stable_audio, etc.). Null for human content.
  • platform_confidence: Separate from the overall confidence -- this measures how certain the system is about which specific platform generated the content.
  • model_predictions: Individual results from each model in the ensemble. Useful for debugging and understanding why a track was flagged.

Setting up webhooks

For production pipelines, you don't want to poll for results. Configure a webhook URL in your dashboard, and authio will POST the detection result to your endpoint when analysis completes:

{
  "event": "analysis.completed",
  "analysis_id": "ana_abc123",
  "is_ai_generated": true,
  "confidence": 0.9942,
  "platform_detected": "suno",
  "file_name": "submission_track.mp3",
  "timestamp": "2026-03-15T14:30:00Z"
}

Your system receives this webhook and can automatically gate the track -- holding it for manual review if the confidence exceeds your threshold, or allowing it through if it passes detection.

Batch processing for catalogs

For existing catalogs or high-volume ingest, use batch mode:

curl -X POST "https://authio.io/api/v1/analyze/batch" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "files[]=@track1.mp3" \
  -F "files[]=@track2.mp3" \
  -F "webhook_url=https://your-app.com/webhooks/authio"

Batch jobs are processed with priority queuing. Each file in the batch triggers an individual webhook notification.

Rate limits and pricing

PlanTracks/monthRate limitOverage
Starter20010 req/minEUR 0.08/track
Professional2,00060 req/minEUR 0.04/track
Business50,000500 req/minEUR 0.016/track
Enterprise250,0001,000 req/minEUR 0.012/track

Error handling

  • 200: Analysis completed successfully.
  • 400: Invalid request -- unsupported format, file too large, or missing required fields.
  • 401: Invalid or missing API key.
  • 429: Rate limit exceeded. The Retry-After header tells you when to retry.
  • 500: Server error. Retry with exponential backoff.

Frequently asked questions

How fast is the authio AI music detection API?

The API returns detection results in under 5 seconds for most audio files. The 12-model ensemble processes tracks in parallel. Batch processing supports up to 250,000 tracks per month with priority queuing.

What audio formats does the API accept?

MP3, WAV, FLAC, M4A, and AIFF. Sample rates from 44.1kHz to 192kHz, bit depths from 16-bit to 32-bit. Maximum file size is 100MB per request. Files are processed in memory and never stored.

Can I use the API for batch processing of entire catalogs?

Yes. Enterprise plans support up to 250,000 tracks per month with rate limits up to 1,000 requests per minute. Batch jobs use priority queuing and webhook notifications on completion.

Try it yourself

5 free analyses per day, no signup required.

Free AI Music Checker