What the verification does
It writes one idempotent, identity-free
signal_verification event to the authorized Signal ledger. It does not contact Meta, enter attribution or enforcement, or create spend.Before you begin
You need:- An active collection hostname.
- Either the Signal tracker secret for REST authentication or an MCP connection with
signals.verify.
Verify with the REST API
Send an authenticated request with no body:202:
200 with duplicate: true and does not create another ledger event.
Verify with MCP
If you already have an authorized PlainRouter MCP connection, ask the client to call:event_id and duplicate fields as the REST endpoint.
The connection needs the signals.verify permission. Read-tier workspace tokens include this permission. See Connect an AI agent or Workspace tokens.
Confirm activation
PlainRouter polls setup progress automatically. Once the verification event is present and the collection hostname remains active, the setup screen completes. You can then:- Install the optional Signals pixel for consent-aware browser measurement.
- Submit server conversion events.
- Connect Meta for eligible destination delivery.
Troubleshoot
The API returns 401
The Signal tracker secret is missing, invalid, or belongs to another environment. Confirm the bearer header and replace a stopped credential.
MCP reports insufficient permission
Reconnect withsignals.verify, or issue a new workspace token with the Read tier or higher.