Integration

Gainsight PX integration

Gainsight PX is a product experience platform. Read, create, update and delete the users and accounts it tracks, record custom events, read historical events (page views, sessions, identify, feature and segment matches, engagement views, form submits, emails, leads) and survey responses, list and inspect engagements, features, segments, knowledge center bots and articles, start or pause engagements and bots, move engagements between environments, manage external segments and their members, and read monitoring data (engagement errors, collisions, integration statuses). The XLIFF localization import and export routes (zip files and multipart uploads) and the v1 user preference routes (superseded by v2) are not included. Authentication is a PX REST API key (Administration > REST API, with Read, Write or Production Launch permission) sent in the X-APTRINSIC-API-KEY header; the connection also asks for the API subdomain of your data center: api (US, api.aptrinsic.com), api-eu (EU) or api-us2 (US2).

Ask it in chat

Say what should happen.
The workflow builds itself.

When this happens, do that in Gainsight PX.Built from the 59 Gainsight PX tools below, on the connection you add once.

What you can do with Gainsight PX

Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.

Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.

User, 8 operations

  • create_userCreate userPOSTCreates a user. identifyId (your id for the user) and propertyKeys are required; custom attributes go in customAttributes keyed by apiName.
  • delete_userDelete userDELETEDeletes (hides) a user. Recreating the id within 7 days revives it with its event history unless hardDelete=true, which makes the deletion final.
  • get_userGet userGETReturns one user by identifyId (case sensitive): profile, type, account, location, visits, last seen date, custom attributes and per-product user agent data.
  • get_user_denylistGet user denylistGETReturns whether a user is on the denylist (PX ignores all of a denied user's events).
  • list_usersList usersGETLists users with filters (lastName==Doe;firstName==John, location.cityName==Portland, customAttributes.x==1), sorting and scroll paging (pageSize default 25, max 1000).
  • set_user_denylistSet user denylistPUTSets or clears a user's denylist flag. With denied=true PX ignores all of the user's events.
  • update_userUpdate userPUTUpdates a user. The vendor schema requires propertyKeys on update: read it with get_user and send it back with the fields you change.
  • update_user_by_body_idUpdate user by body idPUTSame as update_user, but the user is identified by the identifyId body field: use it when the id has characters that cannot go in a URL path. propertyKeys is required.

Engagement, 7 operations

  • delete_engagementDelete engagementDELETEDeletes an engagement.
  • get_engagementGet engagementGETReturns one engagement by id: name, type, state, environments, product keys and translation status.
  • list_engagementsList engagementsGETLists engagements (dialogs, guides, emails, surveys...) page by page, optionally only some contentTypes or one creator; isLastPage says when to stop.
  • list_engagements_extendedList engagements extendedGETSame as list_engagements, plus for each engagement the custom events its audience rule uses, directly or through a feature match.
  • set_engagement_environmentSet engagement environmentPUTMoves an engagement to one environment: Production, Stage, QA or Integration (case insensitive). Moving to Production needs a key with Production Launch permission.
  • set_engagement_environmentsSet engagement environmentsPUTSets the list of environments an engagement runs in (Production, Stage, QA, Integration, case insensitive); set_engagement_environment sets a single one.
  • set_engagement_stateSet engagement statePUTStarts (START) or pauses (PAUSE) an engagement on the environments in envs; when starting with envs left out, it starts on PRODUCTION.

Account, 6 operations

  • create_accountCreate accountPOSTCreates an account. id, name and propertyKeys are required; custom attributes go in customAttributes keyed by apiName. Answers 400 for a possible duplicate.
  • delete_accountDelete accountDELETEDeletes an account AND, in cascade, every user associated with it.
  • get_accountGet accountGETReturns one account by id (case sensitive): name, firmographics, location, plan, health score, custom attributes, number of users and dates.
  • list_accountsList accountsGETLists accounts with filters (for example name~Acme*), sorting and scroll paging (pageSize default 25, max 1000; pass the returned scrollId for the next page).
  • update_accountUpdate accountPUTUpdates an account. The vendor schema requires id, name and propertyKeys on update too: read them with get_account and send them back with the fields you change.
  • update_account_by_body_idUpdate account by body idPUTSame as update_account, but the account id is read from the body id field: use it when the id has characters that cannot go in a URL path. id, name and propertyKeys are required.

Feature, 6 operations

  • backfill_featureBackfill featurePOSTRequests that PX begin a backfill operation for the feature with the given id.
  • get_featureGet featureGETReturns one feature or module by id: name, type, parent, product key, status and labels.
  • get_feature_adoptionGet feature adoptionGETReturns adoption numbers of one feature over a date range of at most 7 days (epoch ms); dateRangeEnd defaults to now.
  • list_featuresList featuresGETLists the features and modules of the product tree page by page, optionally for one product (propertyKey); isLastPage says when to stop.
  • list_features_extendedList features extendedGETSame as list_features, but each feature also carries mappedElements (the elements mapped to it).
  • update_featureUpdate featurePUTRenames a feature or moves it in the tree (parentFeatureId, ROOT for the top). Labels cannot be edited. id, name, type and propertyKey are required: read them with get_feature first.

User preference, 4 operations

  • get_user_preferencesGet user preferencesGETReturns a user's preferences (guided tours, onboarding bot, product updates, surveys, usage and email analytics tracking); a preference never set is null.
  • get_user_preferences_by_body_idGet user preferences by body idPOSTSame as get_user_preferences, but the user is given in the body (identifyId): use it when the id has characters that cannot go in a URL path. Changes nothing.
  • update_user_preferencesUpdate user preferencesPUTUpdates a user's preferences. Send only the preferences to change; the others keep their value, and null changes nothing.
  • update_user_preferences_by_body_idUpdate user preferences by body idPUTSame as update_user_preferences, for a user given in the body (identifyId): use it when the id has characters that cannot go in a URL path.

External segment, 3 operations

  • create_external_segmentCreate external segmentPOSTCreates an external segment (id, externalId, name, description); set its members with update_external_segment_membership. With failIfExists=true an existing one is an error.
  • update_external_segmentUpdate external segmentPUTUpdates an external segment's metadata: id, externalId, name and description.
  • update_external_segment_membershipUpdate external segment membershipPOSTAdds users to and removes users from external segments in one call; add and remove are both required (send an empty list for none).

Article, 2 operations

  • get_articleGet articleGETReturns one knowledge center article by id: name, author, languages, knowledge center bots it belongs to and dates.
  • list_articlesList articlesGETLists knowledge center articles with their basic metadata, page by page (pageSize 1 to 500, pageNumber zero-based); isLastPage says when to stop.

Custom, 2 operations

  • create_custom_eventCreate custom eventPOSTRecords a custom event for a user: eventName, identifyId, propertyKey and userType are required; attributes carries the event's own fields.
  • list_custom_eventsList custom eventsGETLists custom events, filterable on identifyId, eventName or date and sortable on accountId or date; dateRangeStart/End bound the window (max 190 days, default the last day).

Engagement error, 2 operations

  • get_engagement_error_detailsGet engagement error detailsGETReturns the error details of one engagement in a date range (epoch ms), grouped by error or, with groupByBrowser=true, by browser type.
  • list_engagement_errorsList engagement errorsGETLists engagements that had errors in a date range (at most 180 days, epoch ms), one summary row per engagement, with paging and scrollId.

Kcbot, 2 operations

  • get_kc_botGet kc botGETReturns one knowledge center bot by id: name, description, environments, languages and creator.
  • list_kc_botsList kc botsGETLists knowledge center bots with their basic metadata, page by page (pageSize 1 to 500); isLastPage says when to stop.

Segment, 2 operations

  • get_segmentGet segmentGETReturns one segment by id: its id and name.
  • list_segmentsList segmentsGETLists segments page by page (pageNumber zero-based); isLastPage says when to stop.

Email, 1 operation

  • list_email_eventsList email eventsGETLists email events with filters, sorting and scroll paging (pageSize default 25, pass scrollId for the next page); history is limited to 190 days.

Engagement collision, 1 operation

  • list_engagement_collisionsList engagement collisionsGETLists engagement collision events in a date range (at most 180 days, epoch ms), one row per collision, with page paging and scrollId.

Engagement view, 1 operation

  • list_engagement_view_eventsList engagement view eventsGETLists engagement view events with filters, sorting and scroll paging (pageSize default 25, pass scrollId for the next page); history is limited to 190 days.

Feature match, 1 operation

  • list_feature_match_eventsList feature match eventsGETLists feature match events with filters, sorting and scroll paging (pageSize default 25, pass scrollId for the next page); history is limited to 190 days.

Form submit, 1 operation

  • list_form_submit_eventsList form submit eventsGETLists form submit events with filters, sorting and scroll paging (pageSize default 25, pass scrollId for the next page); history is limited to 190 days.

Identify, 1 operation

  • list_identify_eventsList identify eventsGETLists identify events with filters, sorting and scroll paging (pageSize default 25, pass scrollId for the next page); history is limited to 190 days.

Integration status, 1 operation

  • list_integration_statusesList integration statusesGETReturns the current status of each integration configured in the PX subscription, one row per integration.

Kc bot, 1 operation

  • set_kc_bot_stateSet kc bot statePUTStarts (START) or pauses (PAUSE) a knowledge center bot on the environments in envs; when starting with envs left out, it starts on PRODUCTION.

Lead, 1 operation

  • list_lead_eventsList lead eventsGETLists lead events with filters, sorting and scroll paging (pageSize default 25, pass scrollId for the next page); history is limited to 190 days.

Model attribute, 1 operation

  • list_model_attributesList model attributesGETLists the attributes (standard and custom, with apiName and type) of the user or account model; the apiName is the key to use in customAttributes and filters.

Page view, 1 operation

  • list_page_view_eventsList page view eventsGETLists page view events with filters, sorting and scroll paging (pageSize default 25, pass scrollId for the next page); history is limited to 190 days.

Segment match, 1 operation

  • list_segment_match_eventsList segment match eventsGETLists segment match events with filters, sorting and scroll paging (pageSize default 25, pass scrollId for the next page); history is limited to 190 days.

Session, 1 operation

  • list_session_eventsList session eventsGETLists session initialized events with filters, sorting and scroll paging (pageSize default 25, pass scrollId for the next page); history is limited to 190 days.

Subscription, 1 operation

  • get_subscriptionGet subscriptionGETReturns the PX subscription the API key belongs to: name, website, time zone, description and its products.

Survey response, 1 operation

  • list_survey_responsesList survey responsesGETLists survey responses with filters, sorting and scroll paging (pageSize default 25, pass scrollId for the next page); history is limited to 190 days.

Use Gainsight PX from Claude Code, Cursor or Codex

Connect Gainsight PX in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Gainsight PX operations become tools the client can call, next to every other integration you connected.

Claude Code
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"
Codex (~/.codex/config.toml)
[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"

[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"
Cursor, Claude Desktop and other JSON configs
{
  "mcpServers": {
    "livecontext": {
      "type": "http",
      "url": "https://livecontext.ai/mcp",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}

Set up the MCP server step by step

How to connect Gainsight PX

  1. Create your workspace

    Sign up free. Nothing to install.

  2. Connect Gainsight PX once

    Add your Gainsight PX connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.

  3. Describe the job in chat

    The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.

Gainsight PX integration FAQ

What can you do with the Gainsight PX integration?

LiveContext exposes 59 operations on Gainsight PX, covering user, engagement, account and feature.

Popular integrations

Browse the whole catalog