Skip to content
PennyPost Docs

Segment

Send your Segment events to PennyPost with one destination.

If your app sends to Segment, add PennyPost as a destination. Nothing goes in your code.

Set it up

  1. On Activation, open Other ways to connect and choose Segment.
  2. PennyPost shows a URL and a token. Copy the token now: it's shown once.
  3. In Segment, go to Connections, then Destinations, then Add destination, and pick Webhooks (Actions).
  4. Add a mapping:
    • Trigger: identify, page, and track for your results event.
    • Send mapping URL: the URL PennyPost showed, like https://usepennypost.com/api/v1/ingest/segment/<your connection>.
    • Header: Authorization: Bearer ppi_... with the token.
    • Keep the default data and leave batching off.
  5. Save and enable the destination.

What PennyPost uses

  • identify for the person's email (traits.email) and name. PennyPost remembers which userId goes with which email, so later calls from the same user count.
  • page for the path. The query string is never kept.
  • track only when the event is results_ready or the name you saved as your Results track event (like Render Finished).

Calls from users PennyPost has no email for yet are skipped. Events older than 7 days are rejected.

Limits

  • One event per request, or up to 500 if you turn batching on, and at most 1 MB per request.
  • 60,000 events an hour and 1,000 new people an hour per connection.

Token

Lost the token? Click New token. The old one keeps working for 24 hours so your destination doesn't break while you swap it. PennyPost stores only a hash of it.

Disconnect stops PennyPost accepting the destination's events and deletes the user IDs it kept.