Documentation de l'API

Pour connaître les tarifs de l'API, cliquez ici

L'API Soundc.com est hébergée sur soundc.com .


Authentification

Pour accéder à l'API Soundc.com, vous devez inclure votre clé API unique. Vous pouvez l'obtenir en vous inscrivant avec votre adresse e-mail. Veuillez préserver la confidentialité de votre clé API.

L'authentification avec l'API est gérée via des en-têtes HTTP. Toutes les requêtes nécessitent un en-tête d'autorisation contenant votre clé API au format « key: YOUR_API_KEY , où YOUR_API_KEY est la clé disponible sur votre page de compte.

Pour des raisons de sécurité, toutes les demandes doivent être envoyées via une connexion HTTPS cryptée pour protéger vos données pendant la transmission.


Download Endpoint

Extract media from any supported URL with a single synchronous request. No polling required.

POST https://api.soundc.com/api/download

ParameterTypeDescription
urlstringThe URL to extract media from (JSON body)

Headers: Authorization: YOUR_API_KEY, Content-Type: application/json

import requests

headers = {
    "Authorization": "API_KEY",
    "Content-Type": "application/json"
}
r = requests.post(
    url="https://api.soundc.com/api/download",
    headers=headers,
    json={"url": "URL"}
)

if r.status_code == 200:
    data = r.json()
    for item in data.get("items", []):
        print(f"Type: {item['type']}, URL: {item['url']}")
else:
    print(f"Error: {r.status_code} - {r.text}")
const axios = require('axios');

async function download() {
    try {
        const response = await axios.post(
            'https://api.soundc.com/api/download',
            { url: "URL" },
            { headers: { "Authorization": "API_KEY", "Content-Type": "application/json" } }
        );

        for (const item of response.data.items) {
            console.log(`Type: ${item.type}, URL: ${item.url}`);
        }
    } catch (error) {
        console.error(`Error: ${error.response?.status} - ${error.response?.data}`);
    }
}

download();
<?php

$ch = curl_init("https://api.soundc.com/api/download");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: API_KEY",
    "Content-Type: application/json"
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(["url" => "URL"]));

$response = curl_exec($ch);
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

if ($statusCode === 200) {
    $data = json_decode($response, true);
    foreach ($data['items'] as $item) {
        echo "Type: {$item['type']}, URL: {$item['url']}\n";
    }
} else {
    echo "Error: $statusCode - $response\n";
}

?>
curl -X POST "https://api.soundc.com/api/download" \
  -H "Authorization: API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "URL"}'
Response
{
    "success": true,
    "items": [
        {
            "url": "https://...",
            "type": "video",
            "thumbnail": "https://...",
            "mime_type": "video/mp4",
            "site": "tiktok",
            "title": "Video title"
        }
    ]
}

Conversion Endpoints

Convert media to different formats. Returns a binary file stream.

EndpointOutput FormatContent-Type
POST /api/convert/mp3MP3 audioaudio/mpeg
POST /api/convert/mp4MP4 videovideo/mp4
POST /api/convert/wavWAV audioaudio/wav
POST /api/convert/gifGIF imageimage/gif

All conversion endpoints are at https://api.soundc.com.

Request body (JSON):

ParameterTypeRequiredDescription
urlstringYesThe media URL to convert
options.start_timenumberNoStart time in seconds
options.end_timenumberNoEnd time in seconds
options.audio_qualitystringNoAudio bitrate (e.g. "128", "192", "320")
options.video_qualitystringNoVideo quality (e.g. "720", "1080")
options.h264booleanNoForce H.264 codec for MP4
options.subtitlesbooleanNoEmbed subtitles if available
Example: Convert to MP3
import requests

headers = {
    "Authorization": "API_KEY",
    "Content-Type": "application/json"
}

r = requests.post(
    url="https://api.soundc.com/api/convert/mp3",
    headers=headers,
    json={
        "url": "URL",
        "options": {
            "audio_quality": "192",
            "start_time": 10,
            "end_time": 45
        }
    },
    stream=True
)

if r.status_code == 200:
    with open("output.mp3", "wb") as f:
        for chunk in r.iter_content(chunk_size=8192):
            f.write(chunk)
    print("Downloaded output.mp3")
else:
    print(f"Error: {r.status_code} - {r.text}")
curl -X POST "https://api.soundc.com/api/convert/mp3" \
  -H "Authorization: API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "URL", "options": {"audio_quality": "192"}}' \
  --output output.mp3

Error Handling

All errors return a JSON response with an error field:

// 400 Bad Request
{"error": "Missing URL"}

// 401 Unauthorized
{"error": "Invalid API token"}

// 402 Payment Required
{"error": "Insufficient credits"}

API politique de confidentialité Conditions d'utilisation Contactez-nous Suivez-nous sur BlueSky

2026 Soundc LLC | Réalisé par nadermx