Gainsight · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Gainsight PX REST Admin API

8 actions 8 updates phrasing extends openapi/gainsight-admin-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Gainsight's API. It is a proposal applied on top of the contract, not a document Gainsight publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 8

$.info
$.paths['/v1/admin/model/{type}/attributes'].get
$.paths['/v1/admin/monitoring/engagement_collisions'].get
$.paths['/v1/admin/monitoring/engagement_error_details/{engagementId}'].get
$.paths['/v1/admin/monitoring/engagement_errors'].get
$.paths['/v1/admin/monitoring/integrations'].get
$.paths['/v1/admin/subscription'].get
$.paths['/v1/admin/subscription/users/notSeenAfter'].get

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Gainsight PX REST Admin API
  version: 1.0.0
extends: openapi/gainsight-admin-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 7
- target: $.paths['/v1/admin/model/{type}/attributes'].get
  update:
    x-apievangelist-phrasing:
      intent: List attributes of a data model
      effect: read
      questions:
      - What attributes does the user or account model have in PX?
      - Can I see the custom attribute definitions for a model type?
      instructions:
      - text: Get the model attributes for type {type}.
        slots:
          type: path.type
      - text: List every attribute defined on the {type} model.
        slots:
          type: path.type
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/admin/monitoring/engagement_collisions'].get
  update:
    x-apievangelist-phrasing:
      intent: Report engagement collisions
      effect: read
      questions:
      - Which engagements collided with each other in the last month?
      - Is there a limit on how long a date range I can check for engagement collisions?
      instructions:
      - text: Show engagement collisions between {dateRangeStart} and {dateRangeEnd}.
        slots:
          dateRangeStart: query.dateRangeStart
          dateRangeEnd: query.dateRangeEnd
      - text: List collisions for product {propertyKey} in that window.
        slots:
          propertyKey: query.propertyKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/admin/monitoring/engagement_error_details/{engagementId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get error details for an engagement
      effect: read
      questions:
      - Why is one particular engagement failing, broken down by browser?
      - Can I see each individual error an engagement threw?
      instructions:
      - text: Get error details for engagement {engagementId}, grouped by browser.
        slots:
          engagementId: path.engagementId
      - text: Show errors for engagement {engagementId} from {dateRangeStart} to {dateRangeEnd}.
        slots:
          engagementId: path.engagementId
          dateRangeStart: query.dateRangeStart
          dateRangeEnd: query.dateRangeEnd
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/admin/monitoring/engagement_errors'].get
  update:
    x-apievangelist-phrasing:
      intent: Summarize engagements with errors
      effect: read
      questions:
      - Which engagements had errors this week?
      - Can I get one summary row per engagement that has failed?
      instructions:
      - text: Summarize engagement errors from {dateRangeStart} to {dateRangeEnd}.
        slots:
          dateRangeStart: query.dateRangeStart
          dateRangeEnd: query.dateRangeEnd
      - text: List failing engagements for product key {propertyKey}.
        slots:
          propertyKey: query.propertyKey
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/admin/monitoring/integrations'].get
  update:
    x-apievangelist-phrasing:
      intent: Check integration statuses
      effect: read
      questions:
      - Are my PX integrations healthy right now?
      - What is the current status of each configured integration?
      instructions:
      - text: Show the status of every configured integration.
      - text: Check whether any integration is currently failing.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/admin/subscription'].get
  update:
    x-apievangelist-phrasing:
      intent: Get subscription details
      effect: read
      questions:
      - What are the details of my current PX subscription?
      - Where can I see the settings of the subscription my key belongs to?
      instructions:
      - text: Get the detail of my current subscription.
      - text: Show the subscription this API key belongs to.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/admin/subscription/users/notSeenAfter'].get
  update:
    x-apievangelist-phrasing:
      intent: Find users not seen since a date
      effect: read
      questions:
      - Which users haven't been seen in the product since a given date?
      - Can I list inactive subscription users for cleanup?
      instructions:
      - text: List subscription users not seen after {notSeenAfterTimestamp}.
        slots:
          notSeenAfterTimestamp: query.notSeenAfterTimestamp
      - text: Find users inactive since {notSeenAfterTimestamp}, {pageSize} per page.
        slots:
          notSeenAfterTimestamp: query.notSeenAfterTimestamp
          pageSize: query.pageSize
      method: generated
      generated: '2026-09-26'