Create a Pinterest app in the developer portal, generate an access token with the ads:write scope via OAuth 2.0, and identify the Pinterest Tag ID from your Ads account
Collect conversion event data server-side at checkout: event_name (checkout), event_time (Unix timestamp), order_quantity, order_id, value, currency, and user_data fields (em, ph, client_ip_address, client_user_agent)
Hash user_data PII fields (email and phone) with SHA-256 following Pinterest's normalization specification (lowercase, trimmed)
POST the event to the Pinterest Conversions API endpoint at /v5/ad_accounts/{ad_account_id}/events, including the tag_id, event_name, action_source (web or offline), and user_data in the request body
Include a dedup_key field in the event payload that matches the event_id fired by the Pinterest Tag on the same page visit, to deduplicate between browser and server-side signals
Check the events_created and num_events_received fields in the API response to confirm events were ingested; review the Events Manager diagnostics for match quality scores
Known gotchas
Pinterest Conversions API deduplication only works within a 1-hour window; browser Pixel events and server-side CAPI events for the same checkout must be sent within that window and share the same dedup_key
Pinterest's user matching quality depends heavily on including both email and IP address/user agent; sending only one identifier significantly reduces match rates and attribution accuracy
The Pinterest CAPI endpoint is versioned as part of the v5 API; future API version updates may require payload schema changes, so monitor the Pinterest API changelog to avoid silent ingestion failures after version deprecations
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp