Planhat

HockeyStack's Planhat integration pulls your customer success data from Planhat and connects it with the rest of your customer data. This includes Companies, Contacts (Endusers), Licenses, Opportunities, Projects, Tasks, Tickets, NPS Responses, Conversations, Assets, Churn records, Issues, and more.

Connecting to Planhat

The Planhat connection is established by providing a Planhat API Access Token from Atlas > Ingest in your HockeyStack dashboard. To generate an API Access Token in Planhat:

  1. Go to Settings in your Planhat account.

  2. Navigate to Private Apps and create a new Private App.

  3. Copy the generated API Access Token; it will only be shown once, so store it securely.

  4. Paste the token into HockeyStack when prompted during connection setup.

The token is a static Bearer token that authenticates all requests HockeyStack makes to the Planhat API. You can revoke access at any time by disabling or deleting the Private App in Planhat.

How It Works

When you integrate Planhat, HockeyStack pulls certain actions and properties from it. Each action comes with action properties that give more information about it. HockeyStack pulls the following objects from Planhat:

Planhat Object
HockeyStack Action Name
Description

Company

Company Updated

Your customer accounts in Planhat

Enduser (Contact)

Contact Updated

Individual contacts at customer companies

License

License Updated

Subscription and licensing records

Opportunity

Deal Updated

Expansion and renewal pipeline items

Project

Project Updated

Customer success projects and milestones

Task

Task Updated

CS team tasks associated with accounts

Ticket

Ticket Updated

Support tickets linked to companies or contacts

NPS

NPS Response

Net Promoter Score survey responses

Conversation

Conversation Updated

Logged conversations with customers

Asset

Asset Updated

Custom assets associated with companies

Churn

Churn Updated

Churn records for lost customers

Issue

Issue Updated

Issues tracked against customer accounts

User

Owner Updated

Planhat team members (CSMs, account owners)

For objects like Company and Enduser, HockeyStack also pulls all of their properties, which are added to that object's profile in HockeyStack and can be used for segmentation. Custom fields defined in Planhat are also pulled and prefixed with planhat__ followed by the field name.

Technical Details

Each request fetches up to 100 records at a time using offset/limit pagination and processes results sequentially. During the initial historical data load, HockeyStack pulls up to 4 years of data per object. After that, only recently modified records are pulled on each subsequent run.

Because the Planhat API does not support server-side date filtering, HockeyStack performs client-side incremental sync: all records are fetched in pages, and records older than the last pulled date are skipped. For Companies and Endusers, HockeyStack requests records sorted by lastTouch in descending order so pagination can stop early once records are old enough, reducing unnecessary API calls.

All Planhat properties are stored in HockeyStack with the planhat__ prefix (e.g., planhat__mrr, planhat__health, planhat__phase). Custom fields are additionally suffixed with __custom (e.g., planhat__my_custom_field__custom).

Caveats

  • HockeyStack pulls data from Planhat on a daily basis after the initial historical load.

  • The Planhat API does not support native date-range filtering, so HockeyStack must fetch all records and filter client-side. This means sync time scales with your overall data volume in Planhat.

  • If a Planhat object type is not accessible due to insufficient API permissions on the connected Private App, that object type is skipped with a warning and the rest of the sync continues normally.

Planhat Integration FAQs

  1. What credentials are needed to connect Planhat to HockeyStack? An API Access Token generated from a Private App in Planhat's Settings is required. This token authenticates all API calls HockeyStack makes to read your Planhat data.

  2. Does HockeyStack push data back to Planhat? No. HockeyStack only reads data from Planhat. No data is written back to your Planhat account.

  3. What permissions does the Planhat Private App need? The Private App should have read access to all the object types you want HockeyStack to pull: Companies, Endusers, Licenses, Opportunities, Projects, Tasks, Tickets, NPS, Conversations, Assets, Churn, Issues, and Users. Object types that the token cannot access are automatically skipped.

  4. How much historical data does HockeyStack load from Planhat? The initial historical load covers up to 4 years of data.

Last updated