TL;DR: Register → Verify email → Create API key → Add funds → Make API calls.
Choose Your Path
Complete setup directly with cURL commands.
Login to AudioPod AI app to get your API key.
Step 1: Create Your Account
curl -X POST "https://api.audiopod.ai/api/v1/auth/initiate-registration" \
-H "Content-Type: application/json" \
-d '{
"email": "[email protected] ",
"password": "YourSecurePassword123",
"full_name": "Your Name"
}'
✅ Check your email for a 6-digit verification code.
Step 2: Verify Your Email
curl -X POST "https://api.audiopod.ai/api/v1/auth/verify-registration" \
-H "Content-Type: application/json" \
-d '{
"email": "[email protected] ",
"verification_code": "123456"
}'
Response includes your JWT token: {
"access_token" : "eyJhbGciOiJIUzI1NiIs..." ,
"token_type" : "bearer"
}
Save the access_token — you need it for Step 3!
Enter the 6-digit code from your email on the verification page.
Step 3: Create Your API Key
# Use the access_token from Step 2
curl -X POST "https://api.audiopod.ai/api/v1/auth/api-keys" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "my-first-key", "scopes": ["*"]}'
Response: {
"api_key" : "ap_xxxxxxxxxxxxxxxxxxxxxxxx"
}
Save this key immediately! It’s only shown once.
Go to API Keys
Click Create New API Key
Copy and save your key
Step 4: Set Up Your Environment
# Add to your shell profile (~/.bashrc, ~/.zshrc)
export AUDIOPOD_API_KEY = "ap_your_api_key_here"
Or create a .env file:
AUDIOPOD_API_KEY = ap_your_api_key_here
Step 5: Add Funds to Your Wallet
# Get a Stripe payment link
curl -X POST "https://api.audiopod.ai/api/v1/api-wallet/topup/checkout" \
-H "X-API-Key: $AUDIOPOD_API_KEY " \
-H "Content-Type: application/json" \
-d '{"amount_cents": 500}'
Open the returned url in your browser to complete payment.
Go to API Keys
Click Add Funds in the Wallet Balance section
Choose amount (min $1) and complete Stripe checkout
Step 6: Make Your First API Call! 🎉
from audiopod import AudioPod
client = AudioPod() # Uses AUDIOPOD_API_KEY env var
# Separate a song into stems
result = client.stems.separate(
url = "https://youtube.com/watch?v=dQw4w9WgXcQ" ,
mode = "six"
)
print ( "🎵 Stems ready!" )
for stem, url in result[ "download_urls" ].items():
print ( f " { stem } : { url[: 50 ] } ..." )
import AudioPod from 'audiopod' ;
const client = new AudioPod ();
const result = await client . stems . separate ({
url: 'https://youtube.com/watch?v=dQw4w9WgXcQ' ,
mode: 'six'
});
console . log ( '🎵 Stems ready!' );
Object . entries ( result . download_urls ). forEach (([ stem , url ]) => {
console . log ( ` ${ stem } : ${ url . substring ( 0 , 50 ) } ...` );
});
# Separate audio into 6 stems
curl -X POST "https://api.audiopod.ai/api/v1/stem-extraction/api/extract" \
-H "X-API-Key: $AUDIOPOD_API_KEY " \
-F "url=https://youtube.com/watch?v=dQw4w9WgXcQ" \
-F "mode=six"
# Check job status (replace JOB_ID)
curl -X GET "https://api.audiopod.ai/api/v1/stem-extraction/status/JOB_ID" \
-H "X-API-Key: $AUDIOPOD_API_KEY "
Pricing
Pay only for what you use. No subscriptions required for API access.
Service Rate $10 Gets You Stem Separation $0.10/min 100 min Transcription $0.01/min 1000 min Voice Cloning/TTS $0.04/min 250 min Music Generation $0.02/min 500 min Noise Reduction $0.02/min 500 min Speaker Separation $0.20/min 50 min
Full Pricing View complete pricing for all services
Try More Features
Transcription
Music Generation
Voice Cloning
Noise Reduction
# Convert speech to text
result = client.transcription.create(
url = "https://youtube.com/watch?v=VIDEO_ID"
)
print (result[ "transcript" ])
# Generate music from text
song = client.music.generate(
prompt = "upbeat electronic dance music"
)
print (song[ "output_url" ])
# Clone a voice from audio
voice = client.voice.clone(
file = "./sample.wav" ,
name = "My Voice"
)
# Generate speech with cloned voice
audio = client.tts.generate(
text = "Hello world!" ,
voice_id = voice[ "id" ]
)
# Remove background noise
clean = client.denoiser.denoise(
file = "./noisy_audio.wav"
)
print (clean[ "output_url" ])
Manage Your Account (via CLI)
Once you have an API key, manage everything via cURL:
# Check wallet balance
curl -s "https://api.audiopod.ai/api/v1/api-wallet/balance" \
-H "X-API-Key: $AUDIOPOD_API_KEY " | jq .
# List your API keys
curl -s "https://api.audiopod.ai/api/v1/auth/api-keys" \
-H "X-API-Key: $AUDIOPOD_API_KEY " | jq .
# Create another API key
curl -X POST "https://api.audiopod.ai/api/v1/auth/api-keys" \
-H "X-API-Key: $AUDIOPOD_API_KEY " \
-H "Content-Type: application/json" \
-d '{"name": "production-key", "scopes": ["*"]}'
# View usage history
curl -s "https://api.audiopod.ai/api/v1/api-wallet/usage" \
-H "X-API-Key: $AUDIOPOD_API_KEY " | jq .
Common Issues
Your API key is invalid or missing. Fix: Check the X-API-Key header is set correctly:echo $AUDIOPOD_API_KEY # Should print your key
Your wallet is empty. Fix: Add funds via CLI or dashboard:curl -X POST "https://api.audiopod.ai/api/v1/api-wallet/topup/checkout" \
-H "X-API-Key: $AUDIOPOD_API_KEY " \
-d '{"amount_cents": 500}'
Audio processing jobs can take time depending on file length. Fix: Poll the status endpoint:curl "https://api.audiopod.ai/api/v1/stem-extraction/status/JOB_ID" \
-H "X-API-Key: $AUDIOPOD_API_KEY "
Next Steps