---
title: "Re-subscribe an account to Zernio's webhooks"
method: POST
path: "/v1/accounts/{accountId}/webhook-subscription"
tags: ["Connect"]
---

# Re-subscribe an account to Zernio's webhooks

`POST /v1/accounts/{accountId}/webhook-subscription`

## Request

- Base URL: `https://zernio.com/api`
- URL: `https://zernio.com/api/v1/accounts/{accountId}/webhook-subscription`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/zernio/apis/zernio-api/docs/v1/accounts/:accountId/webhook-subscription/post.ts> (a function with typed inputs; its response is checked against the schema)

Re-sends the full field set to Meta and returns the subscription read back afterwards.
Meta only honours the field set sent at subscribe time, so a Page connected before a field
existed stays without it until this runs. The response reflects what Meta actually granted,
not what was requested.

For an Instagram account connected through Instagram Login, Meta can keep listing a subscription
while delivering nothing, and re-sending the fields over it changes nothing. So this call deletes
the subscription and creates it again, and `recreated` is true when the record id moved.

Events can be missed during the short window in between, so use it when delivery has stopped,
not periodically. An Instagram account connected through Facebook Login returns 409.

## Path parameters

- `accountId` string, required

## Response `200`

The subscription after re-subscribing

- object
  - `resubscribed` boolean
  - `pageId` string
  - `appSubscribed` boolean
  - `leadgen` boolean
  - `subscribedFields` string[]
  - `warning` string, nullable
  - `instagramUserId` string: Instagram accounts only.
  - `subscriptionId` string, nullable: Instagram accounts only. Id of the subscription record after the repair.
  - `previousSubscriptionId` string, nullable: Instagram accounts only. Id of the record before the repair; null when there was none.
  - `recreated` boolean: Instagram accounts only. True when the subscription record id changed.
  - `missingFields` string[]: Instagram accounts only. Webhook fields Zernio expects that Meta did not subscribe.

## Other responses

- `400`: Invalid request
- `404`: Resource not found
- `409`: The Facebook connection has no selected Page, or the Instagram account connected through Facebook Login, is disconnected, or has no access token
- `502`: Meta rejected the subscription, or (Instagram) the account has no webhook subscription right now

## Changes

- **2026-11-10** `d568bb00ed73`: 5 info
  - added the optional property `docsUrl` to the response with the `400` status
  - added the optional property `provider` to the response with the `400` status
  - added the optional property `providerError` to the response with the `400` status
  - added the optional property `requestId` to the response with the `400` status
  - …1 more
- **2026-11-09** `6923506bffaa`: 5 info
  - added the optional property `instagramUserId` to the response with the `200` status
  - added the optional property `missingFields` to the response with the `200` status
  - added the optional property `previousSubscriptionId` to the response with the `200` status
  - added the optional property `recreated` to the response with the `200` status
  - …1 more
- **2026-10-06** `f8c8f34fb41a`: 1 warning
  - added the new `account` enum value to the `details/budgetScope` response property for the response status `400`
- **2026-10-02** `d556591af3f6`: 1 info
  - added the optional property `docUrl` to the response with the `400` status
- **2026-09-30** `16a7b9d5373e`: 1 info
  - removed the `platform` enum value from the `details/budgetScope` response property for the response status `400`

[Operation history](https://skmtc.dev/zernio/apis/zernio-api/changes/v1/accounts/:accountId/webhook-subscription/post.md)

---

[API](https://skmtc.dev/zernio/apis/zernio-api.md) - [All operations](https://skmtc.dev/zernio/apis/zernio-api/llms.txt) - [OpenAPI document](https://skmtc.dev/zernio/apis/zernio-api/revisions/a79c233ebf22?raw)
