Lots groupés
Jusqu'à 500 lots, répartis en parallèle sur les comptes du Registre, ou épinglés à un seul compte.
POST /v1/batches (portée batches:write) accepte un tableau JSON ou un CSV en entrée. La limite est de 500 lots par requête. L'en-tête Idempotency-Key est obligatoire et conservé 24 heures. Le CSV de résultat, une rangée par ligne d'index, est une autre route : GET /v1/jobs/{id}/results. Voir Tâches et résultats.
Corps
JSON :
{
"lots": ["1234567", "7654321"],
"documents": ["index"]
}CSV (text/csv), colonne lot ou matricule :
lot
1234567
7654321documents accepte index et actes, comme une consultation unitaire. S'il est omis, aucun document n'est commandé au Registre. Sur une clé réelle, un index est facturé 0,99 $ par lot, excluant frais du registre, et consulte toujours le Registre (1,50 $). Les autres prix sont dans Coûts.
Plusieurs comptes
Sans account_id, le lot groupé est réparti sur les comptes du Registre actifs de l’organisation. Chaque lot encore en attente va au compte qui a le plus de place sous son plafond du jour. Chaque compte garde ses 540 index et sa réserve de 180. La réponse porte account_id: null. Le détail par compte est dans GET /v1/jobs/{id}.
Avec account_id, tous les lots du groupe restent sur ce compte. La file est la même que pour une consultation unitaire : les appels à la demande passent avant les surveillances, et la réserve de 180 index de ce compte leur est gardée.
Un lot de 500 compte pour une seule requête au regard des 60 requêtes par minute de la clé d’API. Le partage, le rythme du planificateur et les plafonds sont dans Limites de débit.
curl -X POST https://api.fonciq.ca/v1/batches \
-H "Authorization: Bearer fq_test_…" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: 8c2a1d4e-1b6f-4a90-9e3c-2f5d7a8b9c01" \
-d '{"lots":["1234567","7654321"],"documents":["index"],"account_id":"rfa_exemple"}'Un account_id inconnu reçoit 404 et le code account_not_found.
Lire les lignes d'un index GET
Portée jobs:read. Lecture directe des lignes conservées pour cet index. Même objet qu'une tâche terminée : parse, unparsed_retained et entries. JSON par défaut. format=csv ou Accept: text/csv renvoie le CSV. format l'emporte. Toute autre valeur reçoit 400 et le code invalid_request. 404 lorsque le document n'est pas un index produit pour l'organisation. Le PDF de cet index reste la source, même si entries est vide. parse.confidence et la confiance de chaque ligne valent unscored. needs_review est nul sur une ligne structurée. unparsed_retained vaut false et unparsed est omis. Aucune ligne n'est inventée. Un tirage sans PDF n'a pas de lignes.
Soumettre un lot groupé POST
Portée batches:write. En-tête Idempotency-Key obligatoire, conservé 24 heures. Au plus 500 lots par requête. Corps JSON { "lots": ["…"] } ou CSV text/csv avec une colonne lot ou matricule. Un index débite 99 cents par lot sur une clé réelle. Ce débit ne figure pas dans GET /v1/billing. Sans account_id, le lot groupé est réparti en parallèle sur les comptes du Registre actifs de l'organisation. Avec account_id, chaque lot est épinglé à ce compte. Chaque compte conserve son plafond de 540 index par jour. Les consultations demandées passent par la même file qu'une requête unitaire. Les frais du Registre, 150 cents, s'appliquent lorsque le Registre est consulté. L'index consulte toujours le Registre. Le Registre facture le titulaire du compte qui a exécuté la consultation.