Webhooks response

SOLVE
Highlighted
Occasional Contributor

Hi,

 

I am building the endpoint where the webhook subscriptions will be talking to but from the documentation it is not clear for me what response should I give.

 

In the docs https://developers.hubspot.com/docs/methods/webhooks/webhooks-overview it says:

 

We will retry in the following cases:

  • Connection Failed - If we cannot open an http connection to the provided webhook URL
  • Timeout - If your service takes longer than 2 second to send back a response to a batch of notifications
  • Error codes - If your service responds with an HTTP status code that is not one of: 400, 401, 403, 404, 405

 

I understand that normally we would need to respond with a 204 (Success, No content) if everything went ok and any other code if something went wrong. I also understand that what the docs are saying is that if you return anything else that is not a 4XX or a 2XX code, it will retry again to send the notifications.

 

Am I right?

Reply
0 Upvotes
1 Accepted solution

Accepted Solutions
Highlighted
HubSpot Moderator

Hey @drbitbrain ,

 

Yes, you're exactly correct. You should respond with a 2XX status code for any successful requests. Other useful responses might be:

  • 429 - If you respond with a 429, HubSpot will retry the request, respecting the `Retry-After` header.
  • 5XX - If you respond with any 5XX error, we'll retry according to our default retry logic outlined in the webhooks doc.
  • 400/401/403/404/405 - If you respond with any of these, HubSpot will not retry the webhook, so you should only respond with one of these codes if you do not want the notification.
Reply
0 Upvotes
2 Replies 2
Highlighted
HubSpot Moderator

Hey @drbitbrain ,

 

Yes, you're exactly correct. You should respond with a 2XX status code for any successful requests. Other useful responses might be:

  • 429 - If you respond with a 429, HubSpot will retry the request, respecting the `Retry-After` header.
  • 5XX - If you respond with any 5XX error, we'll retry according to our default retry logic outlined in the webhooks doc.
  • 400/401/403/404/405 - If you respond with any of these, HubSpot will not retry the webhook, so you should only respond with one of these codes if you do not want the notification.
Reply
0 Upvotes
Highlighted
New Contributor

Sadly this response is more accurate and more clear than the official documentation.

Reply
0 Upvotes