POST /models/{model_slug}/ocr

POST multipart/form-data : champ fichier obligatoire nommé exactement image (pas file). model_slug dans le chemin : alpha-digit-max ou alpha-digit-medium. Optionnel : pdf_password (chaîne) pour un PDF protégé. Tout autre nom de champ interdit ; pas de champ model dans le formulaire → HTTP 422 si non conforme. Ne pas fixer Content-Type manuellement : multipart/form-data et boundary générés par le client.

POST /models/{model_slug}/ocr

Request Body

Les paramètres suivants peuvent être inclus dans le corps de la requête :

Paramètres

image
file
Required

Fichier image ou PDF à analyser (multipart/form-data, nom exact : image).

pdf_password
string

Optionnel. Mot de passe pour un PDF protégé.

Successful Response

Les champs suivants sont retournés dans une réponse réussie :

Champs de réponse

model_slug
string
Required

Slug du modèle utilisé pour l'inférence.

text
string
Required

Texte extrait de l'image.

inference_seconds
number
Required

Durée d'inférence en secondes.

global_confidence
number null

Score de confiance global (0–1), ou null si non applicable.

words
array<object>
Required

Liste des mots détectés avec leur score de confiance individuel.

image_filename
string null

Nom du fichier fourni, ou null.

Examples

Exemples de code pour utiliser cet endpoint :

curl
curl -X POST "https://api-endpoints.alphaedge-ai.com/models/alpha-digit-max/ocr" \
  -H "X-API-Key: TA_CLE" \
  -F "image=@/chemin/image.png"
python
import requests
url = "https://api-endpoints.alphaedge-ai.com/models/alpha-digit-max/ocr"
headers = {"X-API-Key": "TA_CLE"}
with open("/chemin/image.png", "rb") as f:
    files = {"image": ("image.png", f, "image/png")}
    r = requests.post(url, headers=headers, files=files, timeout=300)
print(r.status_code)
print(r.json())
typescript
import fs from "node:fs";
const form = new FormData();
form.append("image", new Blob([fs.readFileSync("/chemin/image.png")]), "image.png");
const res = await fetch("https://api-endpoints.alphaedge-ai.com/models/alpha-digit-max/ocr", {
  method: "POST",
  headers: { "X-API-Key": "TA_CLE" },
  body: form
});
console.log(res.status, await res.json());

Response

Exemple de réponse de l'API :

json
{
  "model_slug": "alpha-digit-max",
  "text": "26 rue Honore de Balzac",
  "inference_seconds": 0.055,
  "global_confidence": 0.82,
  "words": [
    {
      "w": "26",
      "confidence": 1
    },
    {
      "w": "rue",
      "confidence": 0.97
    },
    {
      "w": "Honore",
      "confidence": 0.47
    },
    {
      "w": "de",
      "confidence": 0.99
    },
    {
      "w": "Balzac",
      "confidence": 0.99
    }
  ],
  "image_filename": "test_manuscrit7.png"
}