Aller au contenu

Téléverser par URL

URL de base https://api.accessful.de/api/v1/upload-service. Chaque requête nécessite l’en-tête X-API-Key — voir Authentification.

Donnez-nous des URL et nous récupérons les PDF nous-mêmes. Les téléchargements s’exécutent de manière asynchrone.

POST /pdf/upload-by-url-list
Content-Type: application/json
{
"files": [
{ "url": "https://example.com/report.pdf", "filename": "report.pdf" }
],
"callbackUrl": "https://votre-app.example.com/hooks/accessful",
"hmacSignature": "votre-webhook-secret"
}
  • filename doit correspondre à ^[A-Za-z0-9_-]+\.pdf$ et comporter au maximum 255 caractères.
  • hmacSignature (le secret du webhook) doit correspondre à ^[A-Za-z0-9_-]{1,64}$.

202 Accepted

{
"accepted": [
{ "uri": "https://example.com/report.pdf", "jobId": "7c2f1e4a-…", "filename": "report.pdf" }
],
"failures": {},
"callbackResult": null
}

Chaque jobId se comporte comme un caseId — interrogez et téléchargez avec lui.

Seules les URL HTTPS publiques sont autorisées. Redirections et adresses résolues sont contrôlées ; les réseaux privés, loopback et link-local sont refusés. La limite est de 50 Mio et 120 secondes par téléchargement. Le contenu doit être un PDF valide. Les limites multipart sont distinctes.

L’en-tête UUID facultatif Idempotency-Key permet de répéter une acceptation durable. Le même utilisateur Accessful, identifiant et corps de requête renvoient les mêmes IDs, même après rotation de clé API. Des entrées différentes avec le même identifiant donnent 409. La correspondance est conservée au moins 24 heures et tant que les tâches restent actives. Les clients existants peuvent omettre l’en-tête. Conservez l’ID avant l’envoi ; un timeout ne prouve pas un refus.

Le propriétaire peut immédiatement consulter une tâche acceptée en queued. Les erreurs de téléchargement ou de validation donnent failed. Un doublon donne failed, error.code: DUPLICATE_FILE et un existingCaseId appartenant au même utilisateur ; il n’est pas ignoré silencieusement.

Les URL sources ne doivent contenir ni identifiants intégrés ni fragments. Une syntaxe URL invalide ou un Idempotency-Key mal formé renvoie 400 avant l’acceptation. Conservez la même URL et les mêmes entrées lors des reprises avec la même clé ; renouveler une URL source signée modifie la requête.