Galileo Highlights API

Summary

Leverage the LogRocket Session Highlights API to receive a summary of a user’s recent interactions with your application, directly into the destination of your choice. This integration empowers your team to gain an immediate understanding of the customer’s journey to provide personalized assistance and address issues efficiently.

For example:

  • Post summaries of the user's recent behavior into their support ticket, to save time understanding and reproducing their issue
  • Update your outgoing sales or account management workflows to review short summaries of the user's recent experience before contacting them
  • Send summaries of the actions taken before a low NPS score into a Slack channel for added context when reviewing feedback

Here is an example of Highlights being sent to a ticketing system

For an overview of Highlights and where to see them in your application, see here. This feature is available for Pro and Enterprise plans. We offer a complimentary trial period, followed by a range of pricing options.

Using Zendesk? See our easy Zendesk Highlights Integration.

Using Intercom? See our easy Intercom Highlights Integration.

Request Highlights

POST - https://api.logrocket.com/v1/orgs/<your_org_id>/apps/<your_app_id>/highlights/

Authentication

To make Highlights requests, you'll need your API key. You can find your API key in the dashboard under Settings > General Settings. Once you have your API key, you can include this as a header in requests to the LogRocket Highlights API as such:

curl https://api.logrocket.com/v1/orgs/<your_org_id>/apps/<your_app_id>/highlights/ \
  -H 'Authorization: token <your-api-key>' -d <request body>

Example request bodies

Request with userEmail

This will return summaries for the most recent 10 sessions for this user.

{
  "userEmail": "example@gmail.com",
  "webhookURL: "http://example.com?metadata=value"
}

Request including timeRange and userID

This will return summaries for up to 10 sessions in the time period specified.

{
  "timeRange": {
    "startMs": 1715481030000,
    "endMs": 1715567430000
  },
  "userID": "google-oauth2|abc123",
  "webhookURL: "http://example.com?metadata=value"
}

Field

Optional or Required

Description

timeRange

Optional

An object containing startMsand endMstimestamps that define the period for sessions to be included in the highlights result. When a timeRange is provided, up to the most recent 10 sessions that occurred within that timeRange will be highlighted. If timeRange is not provided, up to the most recent 10 sessions within the past 30 days will be included in the highlights result.

timeRange.startMs

Required when a timeRange is provided

Integer epoch timestamp in milliseconds that defines the beginning of the requested timeRange. Must be a smaller value than endMs.

timeRange.endMs

Required when a timeRange is provided

Integer epoch timestamp in milliseconds that defines the end of the requested timeRange. Must be a larger value than startMs.

userID

One of userID or userEmail is required

The id of a user provided in LogRocket.identify() calls.

userEmail

One of userID or userEmail is required

The email of a user provided in LogRocket.identify() calls.

webhookURL

Required

A URL to which highlights results will be posted when ready.

Example Response body

Returns an id for the request.

{
    "id": "0cc12cad4b5b8b93760edf7fb5731ac66fbc8a766f9431df6c1e72b214ed6a65"
}

Result Payload

When highlights are ready, they will be posted to the provided webhookURL in the following format with a status of READY along with a requestID corresponding to the one returned from the original POST request.

Each session that has been highlighted will be included in the result. The result.highlights value is the summary of highlights across all included sessions. Highlights strings are returned with links to relevant portions of the session provided in Markdown format.

Only sessions within your org's retention period will be included in the result.

{
  "result": {
    "highlights": "The user [checks out their cart](https://app.logrocket.com/orgID/appID/s/5-14de95d6-d5b8-1a62-0a3a-4858caf874b0/0?t=1715564734801) and [encounters an error loading settings](https://app.logrocket.com/orgID/appID/s/5-3cde95d6-a5b8-4a62-9b3a-6aa834f8747c/0?t=1715564554783).",
    "sessions": [
      {
        "recordingID": "5-3cde95d6-a5b8-4a62-9b3a-6aa834f8747c",
        "sessionID": 0,
        "highlights": "The user [encounters an error loading settings](https://app.logrocket.com/orgID/appID/s/5-3cde95d6-a5b8-4a62-9b3a-6aa834f8747c/0?t=1715564554783) and [the issue persists](https://app.logrocket.com/orgID/appID/s/5-3cde95d6-a5b8-4a62-9b3a-6aa834f8747c/0?t=1715564734801)."
      },
      {
        "recordingID": "5-14de95d6-d5b8-1a62-0a3a-4858caf874b0",
        "sessionID": 0,
        "highlights": "The user [adds an item to their cart](https://app.logrocket.com/orgID/appID/s/5-14de95d6-d5b8-1a62-0a3a-4858caf874b0/0?t=1715564554783) and [proceeds to checkout](https://app.logrocket.com/orgID/appID/s/5-14de95d6-d5b8-1a62-0a3a-4858caf874b0/0?t=1715564734801)"
      }
    ]
  },
  "status": "READY",
  "appID": "orgID/appID",
  "requestID": "0cc12cad4b5b8b93760edf7fb5731ac66fbc8a766f9431df6c1e72b214ed6a65"
}

Failure result

If the session highlights fail to generate, a payload will be sent to the webhookURL with a FAILED status. In this case, the original POST request can be made again to retry the highlights process.

{
  "result": null,
  "status": "FAILED",
  "appID": "orgID/appID",
  "requestID": "0cc12cad4b5b8b93760edf7fb5731ac66fbc8a766f9431df6c1e72b214ed6a65"
}