Gainsight · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Gainsight CS Timeline Activities API

7 actions 7 updates phrasing extends openapi/gainsight-activities-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 7

$.info
$.paths['/timeline/activities'].post
$.paths['/timeline/activities/bulk'].post
$.paths['/timeline/activities/{activityId}'].get
$.paths['/timeline/activities/{activityId}'].put
$.paths['/timeline/activities/{activityId}'].delete
$.paths['/timeline/activities/search'].post

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 CS Timeline Activities API
  version: 1.0.0
extends: openapi/gainsight-activities-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: 6
- target: $.paths['/timeline/activities'].post
  update:
    x-apievangelist-phrasing:
      intent: Log a timeline activity
      effect: write
      questions:
      - How do I log a meeting or call on a company's timeline?
      - Can I record the sentiment and attendees of a customer activity?
      instructions:
      - text: Log a timeline activity '{Subject}' of type {ActivityTypeId} for company {CompanyId} on {ActivityDate}.
        slots:
          Subject: requestBody.Subject
          ActivityTypeId: requestBody.ActivityTypeId
          CompanyId: requestBody.CompanyId
          ActivityDate: requestBody.ActivityDate
      - text: Add a note titled {Subject} to company {CompanyId}'s timeline dated {ActivityDate}, type {ActivityTypeId}, with notes {Notes}.
        slots:
          Subject: requestBody.Subject
          CompanyId: requestBody.CompanyId
          ActivityDate: requestBody.ActivityDate
          ActivityTypeId: requestBody.ActivityTypeId
          Notes: requestBody.Notes
      method: generated
      generated: '2026-09-26'
- target: $.paths['/timeline/activities/bulk'].post
  update:
    x-apievangelist-phrasing:
      intent: Bulk create timeline activities
      effect: write
      questions:
      - Can I load many timeline activities in one request?
      - What is the payload size limit for bulk-creating activities?
      instructions:
      - text: 'Bulk create these timeline activities: {records}.'
        slots:
          records: requestBody.records
      - text: Import the batch of activity records {records} into the timeline at once.
        slots:
          records: requestBody.records
      method: generated
      generated: '2026-09-26'
- target: $.paths['/timeline/activities/{activityId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a timeline activity
      effect: read
      questions:
      - Where can I read the notes and attendees of one logged activity?
      - Can I fetch a single timeline entry by its ID?
      instructions:
      - text: Get timeline activity {activityId}.
        slots:
          activityId: path.activityId
      - text: Show the details of activity {activityId}.
        slots:
          activityId: path.activityId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/timeline/activities/{activityId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a timeline activity
      effect: write
      questions:
      - Can I edit the subject or notes of an activity I already logged?
      - How do I change the date on an existing timeline entry?
      instructions:
      - text: 'Update activity {activityId}: subject {Subject}, type {ActivityTypeId}, company {CompanyId}, date {ActivityDate}.'
        slots:
          activityId: path.activityId
          Subject: requestBody.Subject
          ActivityTypeId: requestBody.ActivityTypeId
          CompanyId: requestBody.CompanyId
          ActivityDate: requestBody.ActivityDate
      - text: Change the sentiment on logged activity {activityId} to {Sentiment}, keeping subject {Subject}, type {ActivityTypeId}, company {CompanyId}, date {ActivityDate}.
        slots:
          activityId: path.activityId
          Sentiment: requestBody.Sentiment
          Subject: requestBody.Subject
          ActivityTypeId: requestBody.ActivityTypeId
          CompanyId: requestBody.CompanyId
          ActivityDate: requestBody.ActivityDate
      method: generated
      generated: '2026-09-26'
- target: $.paths['/timeline/activities/{activityId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a timeline activity
      effect: destructive
      questions:
      - Can I remove an activity that was logged by mistake?
      - How is a timeline entry deleted?
      instructions:
      - text: Delete timeline activity {activityId}.
        slots:
          activityId: path.activityId
      - text: Remove activity {activityId} from the timeline.
        slots:
          activityId: path.activityId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/timeline/activities/search'].post
  update:
    x-apievangelist-phrasing:
      intent: Search timeline activities
      effect: read
      questions:
      - Which activities were logged against a given company last quarter?
      - Can I query timeline activities with filter criteria and paging?
      instructions:
      - text: Search timeline activities where {where}.
        slots:
          where: requestBody.where
      - text: Find up to {limit} timeline activities matching {where}.
        slots:
          limit: requestBody.limit
          where: requestBody.where
      method: generated
      generated: '2026-09-26'