Connect PostHog to Customer Spine
Product events and identified users, so a profile shows what someone actually did in the app — not just what they paid.
Where the data goes
Every teamspace gets one endpoint for all sources — the signature header each vendor sends tells us which integration delivered the event. You are given the real one when you sign in — the last segment is your teamspace id.
https://ingest.customerspine.com/ingest/<your-teamspace-id>Method POST · Header X-PostHog-Signature
How it authenticates
PostHog sends fixed headers and cannot compute a per-request signature, so it authenticates with a secret token we generate. Copy it when it is shown; it is not retrievable afterwards.
Steps
- 1Open destinations in PostHogIn your PostHog project, go to Data pipelines and add a new outgoing destination of type HTTP Webhook.
- 2Point it at your URLSet the method to POST and the URL to the address above. Leave the payload as the default event body — we read PostHog's own event shape and do not need a custom template.
- 3Add the authentication headerAdd a custom header named X-PostHog-Signature with the generated secret as its value. Requests without it are rejected.
- 4Filter if you want toSending every event is fine. If you would rather not, $identify and $create_alias are the ones that link an anonymous visitor to a real person, so keep those.
Worth knowing
PostHog is the one source that can tell us two identities are the same person. $merge_dangerously is irreversible at PostHog's end, so we apply it unconditionally — if PostHog has merged two people, we cannot un-merge them either.