Skip to content

Demande et réponse

On this page

Les demandes sont JSON ou multipart/form-data; les réponses sont JSON. Chaque réponse porte un en-tête X-Curriculo-Request-Id . Citez-le quand vous contactez l'assistance afin que nous puissions trouver l'appel exact.

Les chemins

  • Les opérations synchrones se terminent par une tranche arrière: /parse/, /evaluate/, /jobs/, /translate/, /detect-language/, /summary/, /transcribe/, /prompt/.
  • Les pistes de tâches de fond sont documentées sans un: /{op}/async et /{op}/tasks/{task_id}.
  • Les chemins de dépistage sont documentés sans un: /screening-interview et /screening-interview/{screening_id}.

Types de contenu

L'opérationAcceptions
/parse/, /evaluate/, /prompt/, /transcribe/multipart/form-data
/detect-language/, /jobs/, /screening-interviewapplication/json
/translate/application/json pour le texte, ou multipart/form-data pour envoyer des documents PDF ou DOCX
/summary/application/json pour les transcriptions, ou multipart/form-data pour envoyer des enregistrements ou des documents de transcription
/{op}/asyncapplication/json avec une liste de liens, ou multipart/form-data avec des téléchargements (un champ de lien peut être répété ou envoyé un par ligne)

Limites de taille des demandes

LimiteLa valeurS'applique à
Organisme de demande12 MBTous les appels, à l'exception de /summary/. Les demandes plus importantes sont rejetées avant l'authentification avec 413 .
Un seul document10 MBfiles, file, resume_pdfs, resume_pdf, job_file, et les documents envoyés à /translate/
Documents à la demande10/parse/, /evaluate/, /translate/ (fichiers), /summary/ (entrevues ou fichiers media )
Les textes à la demande200/translate/, /detect-language/
Les personnages50,000/translate/ (total sur textset par document), /detect-language/ (par texte)
Le texte de la transcription200 000 caractères/summary/ transcript_text
Document de transcription50 MB/summary/ Transcription de PDF ou de DOCX
Enregistrement, synchrone100 MB/summary/ media
Enregistrement, synchrone12 MB/transcribe/ media
Télécharger à une tâche de fond12 MB par dossier/{op}/async plusieurs parties
Liens par tâche de fond25file_urls, resume_urls
Enregistrement par lien1 GB et 2 heures/summary/async, /transcribe/async media_url

Au-dessus de tout plafond, le API renvoie le 413. Divisez la charge de travail ou envoyez de longues enregistrements par lien vers la voie d'asynchronisation .

Un appel synchrone est également limité par le délai de 300 secondes de demande. Un grand enregistrement qui prend plus de temps à traiter renvoie 504, donc préférez /summary/async pour de longues entrevues.

Formes de réponse

Chaque opération qui prend une liste suit une règle: envoyer un élément, obtenir l'objet de cet élément; envoyer plusieurs, obtenir un résultat par élément, dans l'ordre d'entrée.

Plusieurs éléments renvoient une entrée par entrée:

{
  "results": [
    { "index": 0, "status": "ok",    "data": { … } },
    { "index": 1, "status": "error", "error": { "status": 400, "detail": "…" } },
    { "index": 2, "status": "ok",    "data": { … } }
  ]
}

Le statut de HTTP reste 200 lorsque le lot lui-même a été accepté, alors lisez status par article. Un CV illisible ne vous coûte jamais les neuf autres. Voir Batchage.

Utilisation et dépenses

Les réponses ne contiennent pas de données sur les coûts. Les appels, les erreurs, la latence et la charge estimée se trouvent dans Console → Usage, filtrable par clé. Voir Prix et facturation.

L'hygiène des entrées

  • Les clés dupliquées dans un corps JSON (/translate/,/summary/,/detect-language/) sont rejetées avec 400 nommant la clé.
  • Les fichiers PDF protégés par mot de passe sont rejetés avec 400. Retirez le mot de passe et renvoyez-le.
  • Les noms de champs sont sensibles aux cas.

Rédaction des versions

Il n'y a pas d'en-tête de version API. La surface est versionnée par chemin, et les modifications additives (nouveaux champs optionnels, nouvelles opérations) se font sans casser les appels existants. Écrivez aux clients qui ignorent des champs de réponse inconnus.

Updated