No webhook payload


I've set up webhooks on my app, and have installed my app by completing an OAuth flow. The scope granted was the contacts scope, as I've understood that that englobes all 3 webhook types (contacts, deals, and companies). As a result, I've been receiving requests from hubspot on my webhook url yet somehow the requests have no payload whatsoever and so contain no information about what the triggering event actually was. Here is an example of the kind of requests my gateway is seeing :

"request": {
  "version": 1.1,
  "is_internal": false,
  "length": "595",
  "headers": {
    "x-forwarded-for": "",
    "content-type": "application/json",
    "content-length": "284",
    "accept-encoding": "snappy,gzip,deflate",
    "host": "",
    "x-hubspot-timeout-millis": "1000",
    "x-forwarded-proto": "https",
    "x-amzn-trace-id": "Root=XXXX",
    "x-forwarded-port": "443",
    "x-hubspot-caller": "nutty-mud - integrations platform webhooks kafka (prod_iad02)",
    "x-hubspot-signature": "XXXX",
    "user-agent": "HubSpot Connect 2.0 ( - WebhooksKafka-webhookattemptexecutionworker"

When I look at my webhook subscriptions, my Total Events count and my Total Errors count is the same, meaning that somehow they're all failing :

On the other hand, when I go to Webhook Logging under my Monitoring tab, all events seem to be marked as functional :

What's odd is that I can see the payload in the Webhook Logging tab, but the requests I'm seeing coming through my gateway have only a header as you can see above. What am I missing here ?