Aller au contenu

Tape un mot pour chercher dans les pages.

↑↓ Choisir↵ OuvrirÉchap Fermer
Ouvrir Portal

Référence des endpoints

Routes GET /webhooks, POST /webhooks….

GET /webhooks

Lister les endpoints de webhooks

Admin de l’espace. Vingt endpoints au plus : la liste tient en une page.

Demande une clé d’API avec la portée portal:read.

Paramètres de requête

ChampTypeObligatoireDescription
limitintegerNonPar défaut : 20. min. 1, max. 100.
cursorstringNon

Réponses

CodeDescriptionCorps
200Succèsobjet
400Requête invalideProblem
401Authentification requiseProblem
403Accès refuséProblem
429Trop de requêtesProblem
500Erreur interneProblem

Champs de la réponse 200

ChampTypeDescription
dataobjet[]
data[].idstringIdentifiant Portal.
data[].objectstring
data[].urlstring
data[].descriptionstring ou null
data[].events“invoice.issued” | “invoice.paid” | “signature.completed” | “request.created” | “action.submitted” | “meeting.scheduled” | “prospect.created” | “project.created”[]
data[].enabledboolean
data[].secret_last4string
next_cursorstring ou nullÀ renvoyer en cursor pour la page suivante.
has_moreboolean

Exemple

curl -X GET "https://app.hgdc.ch/portal/api/v1/webhooks" \
-H "Authorization: Bearer $HGDC_PORTAL_API_KEY"

Réponse 200 :

{
"data": [
{
"id": "exemple",
"object": "exemple",
"url": "exemple",
"description": "exemple",
"events": [
"invoice.issued"
],
"enabled": true,
"secret_last4": "exemple"
}
],
"next_cursor": "exemple",
"has_more": true
}

POST /webhooks

Ajouter un endpoint de webhooks

Admin de l’espace. Les événements sont signés au format Standard Webhooks ; le secret n’est rendu qu’ici, une fois.

Demande une clé d’API avec la portée portal:write.

Corps de la requête

Type de contenu : application/json.

ChampTypeObligatoireDescription
urlstring (uri)OuiAdresse HTTPS publique qui reçoit les événements. 2000 caractères au plus.
descriptionstringNon120 caractères au plus.
events“invoice.issued” | “invoice.paid” | “signature.completed” | “request.created” | “action.submitted” | “meeting.scheduled” | “prospect.created” | “project.created”[]Oui

Réponses

CodeDescriptionCorps
201Succèsobjet
400Requête invalideProblem
401Authentification requiseProblem
403Accès refuséProblem
415Format de requête non pris en chargeProblem
422Paramètres invalidesProblem
429Trop de requêtesProblem
500Erreur interneProblem

Champs de la réponse 201

ChampTypeDescription
idstringIdentifiant Portal.
objectstring
urlstring
descriptionstring ou null
events“invoice.issued” | “invoice.paid” | “signature.completed” | “request.created” | “action.submitted” | “meeting.scheduled” | “prospect.created” | “project.created”[]
enabledboolean
secret_last4string
secretstringSecret de signature (Standard Webhooks), montré une seule fois.

Exemple

curl -X POST "https://app.hgdc.ch/portal/api/v1/webhooks" \
-H "Authorization: Bearer $HGDC_PORTAL_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://exemple.ch","events":["invoice.issued"]}'

Réponse 201 :

{
"id": "exemple",
"object": "exemple",
"url": "exemple",
"description": "exemple",
"events": [
"invoice.issued"
],
"enabled": true,
"secret_last4": "exemple",
"secret": "exemple"
}

DELETE /webhooks/{id}

Supprimer un endpoint de webhooks

Demande une clé d’API avec la portée portal:write.

Paramètres de chemin

ChampTypeObligatoireDescription
idstringOui

Réponses

CodeDescriptionCorps
204Succès
400Requête invalideProblem
401Authentification requiseProblem
403Accès refuséProblem
404Ressource introuvableProblem
429Trop de requêtesProblem
500Erreur interneProblem

Exemple

curl -X DELETE "https://app.hgdc.ch/portal/api/v1/webhooks/<id>" \
-H "Authorization: Bearer $HGDC_PORTAL_API_KEY"