Aurabase Logo
aurabasedocs
API/Functions/Invoquer une edge function

Invoquer une edge function

POST/v1/functions/{project_id}/{name}/invoke

Déclenche un handler déployé. Le corps de la requête n'est PAS transmis tel quel : il décrit la requête à rejouer (method, path, headers, body).

#
Request

En-têtes

apikeyREQUIS
Clé API du projet
Authorization
Bearer <JWT utilisateur>
Content-TypeREQUIS
application/json
x-aurabase-invoke-mode
raw → renvoie la réponse brute de la fonction (statut, content-type et octets réels) au lieu de l'enveloppe { data, meta }
#
Request

Body

methodstringOPTIONNEL
Méthode HTTP vue par le handler. Défaut POST.
pathstringOPTIONNEL
Chemin vu par le handler. Défaut /.
headersobjectOPTIONNEL
En-têtes transmis au handler (paires chaîne → chaîne).
bodyanyOPTIONNEL
Charge utile transmise au handler.
Info
Ces quatre champs décrivent la requête que votre fonction reçoit. Sur le runtime Deno, req.method, new URL(req.url).pathname, req.headers et await req.json() rendent exactement ce que vous avez envoyé — body est le corps applicatif, pas l'enveloppe. GET et HEAD partent sans corps (spec Fetch).
#
Notes

Idempotence

Attention
Idempotency-Key n'est pas lu sur cette route : aucune déduplication n'est faite, deux invocations identiques s'exécutent deux fois. Si vous avez besoin d'idempotence, gérez-la dans le code de la fonction.
#
Notes

Limites d'exécution

Info
Le timeout est réglé par fonction : défaut 30 s, plafond dur 300 s (5 min) — il n'est pas fonction du plan. La mémoire va de 16 à 1024 Mo. Les invocations sont limitées à leur propre profil de débit, et chaque appel consomme le quota functions.invocations du projet.
#
Notes

Exécution asynchrone

Astuce
Pour du travail long, préférez la file de jobs : POST /v1/functions/{project_id}/jobs, suivi de GET …/jobs/{job_id}, avec relance (…/retry) et file de rebut (…/jobs/dlq).
v1.0 · révisé 15 avr. 2026