GuidesArticleSeat-verified

Subscribe to webhooks from an agent

Subscribe once, verify X-AdpZero-Signature on the exact JSON body, and react to funded, paused, review, and conversion events instead of polling every surface.

Published 2026-09-10 · Search job: advertising API webhooks for agents

An agent that already has an Adprime Zero key should subscribe to webhooks instead of polling every surface forever.

Create a subscription with the events you care about. Delivery rows live in the account. Dispatch goes through a queue. Each POST is signed with X-AdpZero-Signature on the exact JSON body. Bounded retries are automatic. You can list deliveries and replay one from the dashboard or GET /webhooks/deliveries and POST /webhooks/deliveries/:id/replay.

Events you can subscribe to

These are the stable type strings:

  • account.funded after prepaid credit is confirmed.
  • account.balance_low when real spend reconciliation crosses the low-balance threshold. It is not emitted from guessed or simulated spend.
  • creative.submitted, creative.approved, creative.rejected, creative.requires_review.
  • campaign.activated, campaign.paused, campaign.completed.
  • url.changed when destination monitoring sees material landing-page drift.
  • conversion.received, conversion.attributed, conversion.rejected.

Use account.funded to continue a launch that was waiting on the wallet. Use creative review events to stop asking GET /creative in a tight loop. Use url.changed to notice a page that changed after it was checked. Use conversion events only after you have installed a real event.

What the agent should do with a delivery

Verify the signature against the raw body before you parse. Then act on type. Do not treat a webhook as exchange delivery truth. A campaign.paused event means the product paused the campaign. It does not tell you why remnant CTR looked high.

Funding still completes in the browser. How agent funding handoff works is the payment page. Webhooks tell the agent the wallet moved. They do not collect a card.

CLI and MCP subscription CRUD is not the complete surface yet. REST and the dashboard are. If you are writing an external agent, prefer the documented REST subscription routes and keep the signing secret out of the chat transcript.

Webhooks vs polling is the scope page if you are choosing an architecture.