Gainsight · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Gainsight CS CTA CTAs API

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

$.info
$.paths['/ctas'].post
$.paths['/ctas/{ctaId}'].get
$.paths['/ctas/{ctaId}'].put
$.paths['/ctas/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 CTA CTAs API
  version: 1.0.0
extends: openapi/gainsight-ctas-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: 4
- target: $.paths['/ctas'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a call to action
      effect: write
      questions:
      - How do I open a new CTA in Cockpit for an at-risk customer?
      - Can I attach a playbook and due date when creating a CTA?
      instructions:
      - text: Create a CTA for company {CompanyId} with type {TypeId}, reason {ReasonId}, priority {PriorityId}, status {StatusId}.
        slots:
          CompanyId: requestBody.CompanyId
          TypeId: requestBody.TypeId
          ReasonId: requestBody.ReasonId
          PriorityId: requestBody.PriorityId
          StatusId: requestBody.StatusId
      - text: Open CTA {Name} on company {CompanyId} due {DueDate} using playbook {PlaybookId} (type {TypeId}, reason {ReasonId}, priority {PriorityId}, status {StatusId}).
        slots:
          Name: requestBody.Name
          CompanyId: requestBody.CompanyId
          DueDate: requestBody.DueDate
          PlaybookId: requestBody.PlaybookId
          TypeId: requestBody.TypeId
          ReasonId: requestBody.ReasonId
          PriorityId: requestBody.PriorityId
          StatusId: requestBody.StatusId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ctas/{ctaId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a call to action
      effect: read
      questions:
      - What is the status and owner of a specific CTA?
      - Can I fetch one CTA by its ID?
      instructions:
      - text: Get CTA {ctaId}.
        slots:
          ctaId: path.ctaId
      - text: Show the details of call to action {ctaId}.
        slots:
          ctaId: path.ctaId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ctas/{ctaId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a call to action
      effect: write
      questions:
      - How do I close or reprioritize an existing CTA?
      - Can I reassign a CTA to a different owner?
      instructions:
      - text: Update CTA {ctaId} to status {StatusId} (company {CompanyId}, type {TypeId}, reason {ReasonId}, priority {PriorityId}).
        slots:
          ctaId: path.ctaId
          StatusId: requestBody.StatusId
          CompanyId: requestBody.CompanyId
          TypeId: requestBody.TypeId
          ReasonId: requestBody.ReasonId
          PriorityId: requestBody.PriorityId
      - text: Reassign CTA {ctaId} to owner {OwnerId}, keeping company {CompanyId}, type {TypeId}, reason {ReasonId}, priority {PriorityId}, status {StatusId}.
        slots:
          ctaId: path.ctaId
          OwnerId: requestBody.OwnerId
          CompanyId: requestBody.CompanyId
          TypeId: requestBody.TypeId
          ReasonId: requestBody.ReasonId
          PriorityId: requestBody.PriorityId
          StatusId: requestBody.StatusId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/ctas/search'].post
  update:
    x-apievangelist-phrasing:
      intent: Search calls to action
      effect: read
      questions:
      - Which open CTAs are overdue across my accounts?
      - Can I filter CTAs by company or owner?
      instructions:
      - text: Search CTAs where {where}.
        slots:
          where: requestBody.where
      - text: Find up to {limit} calls to action matching {where}.
        slots:
          limit: requestBody.limit
          where: requestBody.where
      method: generated
      generated: '2026-09-26'