8.2 KiB
title : « Créer un webhook » description: 'Apprenez à créer un webhook dans NocoDB.' balises : ['Webhook', 'Créer'] mots-clés : ['Webhook NocoDB', 'créer un webhook']
Créer un webhook
Accéder à la page du webhook
- Cliquez sur le tableau pour lequel le webhook doit être configuré dans la barre latérale gauche
- Ouvrir
Details
barre d’onglets, - Cliquer sur
Webhooks
languette - Cliquez sur
Add New Webhook
Configuration du webhook
- Nom du webhook
- Sélectionnez l'événement pour lequel le webhook doit être déclenché
| Déclencheur | Détails | |---------|----------------------------- ---------| | Après l'insertion | Après l'insertion d'un seul enregistrement | | Après la mise à jour | Après la mise à jour d'un seul enregistrement | | Après suppression | Après la suppression d'un seul enregistrement | | Après l'insertion en masse | Une fois les enregistrements groupés insérés | | Après la mise à jour groupée | Une fois les enregistrements groupés mis à jour | | Après la suppression groupée | Une fois les enregistrements groupés supprimés |
- Méthode et URL : configurez le point de terminaison sur lequel le webhook doit être déclenché. Les méthodes prises en charge sont GET, POST, DELETE, PUT, HEAD, PATCH
- En-têtes et paramètres : configurer les en-têtes et les paramètres de la demande (facultatif)
- Condition : seuls les enregistrements répondant aux critères configurés déclencheront le webhook (facultatif)
- Testez le webhook (avec un exemple de charge utile) pour vérifier si les paramètres sont configurés correctement (facultatif)
- Enregistrez le webhook
Webhook avec conditions
En cas de webhook avec conditions, seuls les enregistrements répondant aux critères configurés déclencheront le webhook. Par exemple, déclenchez le webhook uniquement lorsque Status
est Complete
. Vous pouvez également configurer plusieurs conditions à l'aide des opérateurs AND
ou OR
. Par exemple, déclenchez le webhook uniquement lorsque Status
est Complete
et Priority
est High
.
Le Webhook sera déclenché uniquement lorsque la condition configurée n'est pas remplie avant la mise à jour de l'enregistrement. Par exemple, si vous avez configuré un webhook avec la conditionStatus``is``Complete
etPriority``is``High
et vous mettez à jour l'enregistrement avecStatus``Complete
etPriority``Low
àHigh
, le webhook sera déclenché. Cependant, si vous mettez à jour d'autres champs de l'enregistrement avecStatus``Complete
etPriority``High
, webhook won't be triggered.
En résumé, le webhook ne sera déclenché que lorsqueCondition(old-record) = false
etCondition(new-record) = true
.
Exemple de réponse de webhook
{
"type": "records.after.insert",
"id": "9dac1c54-b3be-49a1-a676-af388145fa8c",
"data": {
"table_id": "md_xzru7dcqrecc60",
"table_name": "Film",
"view_id": "vw_736wrpoas7tr0c",
"view_name": "Film",
"records": [
{
"FilmId": 1011,
"Title": "FOO",
"Language": {
"LanguageId": 1,
"Name": "English"
},
}
]
}
}
{
"type": "records.after.update",
"id": "6a6ebfe4-b0b5-434e-b5d6-5212adbf82fa",
"data": {
"table_id": "md_xzru7dcqrecc60",
"table_name": "Film",
"view_id": "vw_736wrpoas7tr0c",
"view_name": "Film",
"previous_records": [
{
"FilmId": 1,
"Title": "ACADEMY DINOSAUR",
"Description": "A Epic Drama of a Feminist in The Canadian Rockies",
"Actor List": [
{
"ActorId": 10,
"FirstName": "CHRISTIAN"
}
],
}
],
"records": [
{
"FilmId": 1,
"Title": "ACADEMY DINOSAUR (Edited)",
"Actor List": [
{
"ActorId": 10,
"FirstName": "CHRISTIAN"
}
],
}
]
}
}
{
"type": "records.after.delete",
"id": "e593079f-70e5-4965-8944-5ff7aeed005c",
"data": {
"table_id": "md_xzru7dcqrecc60",
"table_name": "Film",
"view_id": "vw_736wrpoas7tr0c",
"view_name": "Film",
"records": [
{
"FilmId": 1010,
"Title": "ALL-EDITED",
"Language": {
"LanguageId": 1,
"Name": "English"
},
}
]
}
}
{
"type": "records.after.bulkInsert",
"id": "f8397b06-a399-4a3a-b6b0-6d1c0c2f7578",
"data": {
"table_id": "md_xzru7dcqrecc60",
"table_name": "Film",
"view_id": "vw_3fq2e9q8drkblw",
"view_name": "GridView",
"records_inserted": 2
}
}
{
"type": "records.after.bulkUpdate",
"id": "e983cea5-8e38-438e-96a0-048751f6830b",
"data": {
"table_id": "md_xzru7dcqrecc60",
"table_name": "Film",
"view_id": "vw_3fq2e9q8drkblw",
"view_name": "Sheet-1",
"previous_records": [
[
{
"FilmId": 1005,
"Title": "Q",
"Language": {
"LanguageId": 1,
"Name": "English"
},
},
{
"FilmId": 1004,
"Title": "P",
"Language": {
"LanguageId": 1,
"Name": "English"
}
}
]
],
"records": [
[
{
"FilmId": 1005,
"Title": "Q-EDITED",
"Language": {
"LanguageId": 1,
"Name": "English"
}
},
{
"FilmId": 1004,
"Title": "P-EDITED",
"Language": {
"LanguageId": 1,
"Name": "English"
},
}
]
]
}
}
{
"type": "records.after.bulkDelete",
"id": "e7f1f4e5-7052-4ca2-9355-241ceb836f43",
"data": {
"table_id": "md_xzru7dcqrecc60",
"table_name": "Film",
"view_id": "vw_3fq2e9q8drkblw",
"view_name": "Sheet-1",
"records": [
[
{
"FilmId": 1022,
"Title": "x",
"Language": {
"LanguageId": 1,
"Name": "English"
},
},
{
"FilmId": 1023,
"Title": "x",
"Language": {
"LanguageId": 1,
"Name": "English"
},
}
]
]
}
}
Variables d'environnement
Dans la version auto-hébergée, vous pouvez configurer les variables d'environnement suivantes pour personnaliser le comportement du webhook.
- NC_ALLOW_LOCAL_HOOKS : permet d'activer les webhooks dont l'URL cible est hébergée localement. Par défaut : faux
En savoir plus sur les variables d'environnementici