🔌 Documentation API REST

Intégrez le transfert de fichiers UDCShare dans vos applications en quelques lignes de code.

🔒 Plans payants uniquement · Essentials, Pro, Business

Qu'est-ce que l'API UDCShare ?

L'API REST UDCShare vous permet d'intégrer les fonctionnalités de transfert de fichiers directement dans vos propres applications — site web, appli mobile, script d'automatisation, etc.

URL de base :

https://udcshare.com/api/v1

À quoi ça sert concrètement ?

  • Automatisation — uploader des fichiers automatiquement depuis vos scripts Python, Node.js, PHP…
  • Applications mobiles — intégrer l'envoi de fichiers dans votre app Android ou iOS
  • Backup automatique — sauvegarder vos documents vers Google Drive chaque nuit
  • Workflow entreprise — envoyer des rapports ou factures automatiquement à vos clients

Ce que vous pouvez faire

ActionEndpointPlan minimum
Infos de votre compteGET /accountEssentials
Uploader un fichierPOST /uploadEssentials
Lister vos fichiersGET /filesEssentials
Supprimer un fichierDELETE /files/:idEssentials
Statistiques d'usageGET /statsEssentials

Comment s'authentifier ?

Chaque requête doit inclure votre clé API dans l'en-tête HTTP X-API-Key.

X-API-Key: udc_votre_cle_ici

Comment obtenir une clé API ?

  1. Connectez-vous à votre tableau de bord
  2. Cliquez sur Développeur dans le menu gauche
  3. Cliquez sur + Générer une clé
  4. Donnez un nom à votre clé (ex : "Mon Application")
  5. Copiez la clé affichée — elle ne sera plus visible ensuite

⚠️ Gardez votre clé secrète. Ne la publiez jamais dans votre code source public (GitHub). Utilisez des variables d'environnement.

Plans requis

L'API est réservée aux plans payants :

PlanRequêtes/minuteTaille max fichierFichiers/jour
Essentials1005 Go50
Pro30025 Go200
Business1 0001 To1 000

Endpoints disponibles

Cliquez sur un endpoint pour voir les détails.

GET /api/v1/account Informations de votre compte

Récupère les informations de votre compte, votre plan actif et vos limites d'utilisation.

Requête

curl -X GET https://udcshare.com/api/v1/account \
  -H "X-API-Key: udc_votre_cle_ici"

Réponse

{
  "id": "abc123",
  "email": "vous@email.com",
  "full_name": "Votre Nom",
  "plan": "pro",
  "subscription": {
    "expires_at": "2026-07-11T00:00:00Z",
    "days_remaining": 30
  },
  "api_limits": {
    "max_upload": 26843545600,
    "max_files_per_day": 200,
    "api_rate_limit": 300
  }
}
POST /api/v1/upload Uploader un fichier

Envoie un fichier sur votre espace UDCShare et retourne un lien de téléchargement.

Requête

curl -X POST https://udcshare.com/api/v1/upload \
  -H "X-API-Key: udc_votre_cle_ici" \
  -F "file=@mon_document.pdf"

Réponse

{
  "file_id": "xyz789",
  "filename": "mon_document.pdf",
  "filesize": 8692,
  "file_url": "https://udcshare.com/d/xyz789",
  "plan": "pro",
  "remaining_daily_uploads": 199
}
GET /api/v1/files Lister vos fichiers

Retourne la liste de vos 100 derniers fichiers uploadés.

Requête

curl -X GET https://udcshare.com/api/v1/files \
  -H "X-API-Key: udc_votre_cle_ici"

Réponse

{
  "files": [
    {
      "id": "xyz789",
      "filename": "mon_document.pdf",
      "filesize": 8692,
      "mime_type": "application/pdf",
      "created_at": "2026-06-11T10:00:00Z",
      "file_url": "https://udcshare.com/d/xyz789"
    }
  ],
  "total": 1
}
DELETE /api/v1/files/:id Supprimer un fichier

Supprime définitivement un fichier par son identifiant.

Requête

curl -X DELETE https://udcshare.com/api/v1/files/xyz789 \
  -H "X-API-Key: udc_votre_cle_ici"

Réponse

{ "success": true, "message": "Fichier supprimé" }
GET /api/v1/stats Statistiques d'utilisation

Retourne vos statistiques d'utilisation globales.

Requête

curl -X GET https://udcshare.com/api/v1/stats \
  -H "X-API-Key: udc_votre_cle_ici"

Réponse

{
  "total_files": 25,
  "total_storage_bytes": 5368709120,
  "total_storage_gb": 5.0,
  "account_created": "2026-01-01T00:00:00Z"
}

Limites selon votre plan

Les limites sont appliquées automatiquement. Si vous les dépassez, vous recevrez une erreur 429 Trop de requêtes.

Plan Essentials

ParamètreLimite
Requêtes par minute100
Taille max par fichier5 Go
Fichiers par jour50

Plan Pro

ParamètreLimite
Requêtes par minute300
Taille max par fichier25 Go
Fichiers par jour200

Plan Business

ParamètreLimite
Requêtes par minute1 000
Taille max par fichier1 To
Fichiers par jour1 000

Exemples de code

🐍 Python

import requests

API_KEY = "udc_votre_cle_ici"
headers = {"X-API-Key": API_KEY}

# Uploader un fichier
with open("document.pdf", "rb") as f:
    response = requests.post(
        "https://udcshare.com/api/v1/upload",
        headers=headers,
        files={"file": f}
    )
    data = response.json()
    print("Lien :", data["file_url"])

🟢 JavaScript / Node.js

const fs = require("fs");
const FormData = require("form-data");
const fetch = require("node-fetch");

const form = new FormData();
form.append("file", fs.createReadStream("document.pdf"));

const res = await fetch("https://udcshare.com/api/v1/upload", {
  method: "POST",
  headers: { "X-API-Key": "udc_votre_cle_ici", ...form.getHeaders() },
  body: form,
});
const data = await res.json();
console.log("Lien :", data.file_url);

🐘 PHP

$curl = curl_init();
curl_setopt_array($curl, [
    CURLOPT_URL => "https://udcshare.com/api/v1/upload",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => ["X-API-Key: udc_votre_cle_ici"],
    CURLOPT_POSTFIELDS => ["file" => new CURLFile("document.pdf")]
]);
$response = json_decode(curl_exec($curl));
echo "Lien : " . $response->file_url;

📟 Bash / cURL

# Uploader un fichier
curl -X POST https://udcshare.com/api/v1/upload \
  -H "X-API-Key: udc_votre_cle_ici" \
  -F "file=@document.pdf"

# Voir votre compte
curl https://udcshare.com/api/v1/account \
  -H "X-API-Key: udc_votre_cle_ici"

Codes d'erreur

En cas d'erreur, l'API renvoie toujours un JSON avec un champ error expliquant le problème.

{ "error": "Description du problème" }
Code HTTPSignificationQue faire ?
200✅ Succès
400Requête invalideVérifiez vos paramètres
401Clé API manquante ou invalideVérifiez votre clé API
403Abonnement expiré ou plan insuffisantRenouvelez votre abonnement
404Fichier introuvableVérifiez l'ID du fichier
413Fichier trop volumineuxRéduisez la taille ou upgradez votre plan
429Trop de requêtesPatientez ou upgradez votre plan
500Erreur serveurRéessayez ou contactez le support

Besoin d'une clé API ? Upgradez vers un plan payant.

💼 Voir les forfaits →