Lytics · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Lytics Reports API

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

What the actions change

x-apievangelist-phrasing

Targets 9

$.info
$.paths['/report'].get
$.paths['/report'].post
$.paths['/report/{id}'].get
$.paths['/report/{id}'].put
$.paths['/report/{id}'].delete
$.paths['/report/{id}/component'].post
$.paths['/report/{id}/component/{componentid}'].put
$.paths['/report/{id}/component/{componentid}'].delete

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 Lytics Reports API
  version: 1.0.0
extends: openapi/lytics-reports-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-02'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 8
- target: $.paths['/report'].get
  update:
    x-apievangelist-phrasing:
      intent: List reports
      effect: read
      questions:
      - Which dashboard reports have been built on my account?
      - Can I see all saved reports in one list?
      instructions:
      - text: List all my reports.
      - text: Show the reports saved on account {account_id}.
        slots:
          account_id: query.account_id
      method: generated
      generated: '2026-10-02'
- target: $.paths['/report'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a report
      effect: write
      questions:
      - How do I start a new report to hold charts and components?
      - Can I create a report with its components already included?
      instructions:
      - text: Create a report labelled {label}.
        slots:
          label: requestBody.label
      - text: Create report {label} described as {description} with components {components}.
        slots:
          label: requestBody.label
          description: requestBody.description
          components: requestBody.components
      method: generated
      generated: '2026-10-02'
- target: $.paths['/report/{id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one report
      effect: read
      questions:
      - What components make up a particular report?
      - Can I fetch a single report by its id?
      instructions:
      - text: Show report {id}.
        slots:
          id: path.id
      - text: Open report {id} with all its components.
        slots:
          id: path.id
      method: generated
      generated: '2026-10-02'
- target: $.paths['/report/{id}'].put
  update:
    x-apievangelist-phrasing:
      intent: Rename or redescribe a report
      effect: write
      questions:
      - Can I change the title of a report after creating it?
      - Is it possible to update a report's description?
      instructions:
      - text: Rename report {id} to {label}.
        slots:
          id: path.id
          label: requestBody.label
      - text: Update report {id} with label {label} and description {description}.
        slots:
          id: path.id
          label: requestBody.label
          description: requestBody.description
      method: generated
      generated: '2026-10-02'
- target: $.paths['/report/{id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a report
      effect: destructive
      questions:
      - How do I delete a whole report I no longer need?
      - Does deleting a report remove it permanently?
      instructions:
      - text: Delete report {id}.
        slots:
          id: path.id
      - text: Permanently remove the entire report {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-10-02'
- target: $.paths['/report/{id}/component'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a component to a report
      effect: write
      questions:
      - Can I add a new chart component to an existing report?
      - What type, name and config does a new report component need?
      instructions:
      - text: Add a {type} component named {name} to report {id}.
        slots:
          type: requestBody.type
          name: requestBody.name
          id: path.id
      - text: Add component {name} of type {type} with config {config} to report {id}.
        slots:
          name: requestBody.name
          type: requestBody.type
          config: requestBody.config
          id: path.id
      method: generated
      generated: '2026-10-02'
- target: $.paths['/report/{id}/component/{componentid}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a component on a report
      effect: write
      questions:
      - Can I change the config of a chart already on a report?
      - Is it possible to edit one existing report component by its id?
      instructions:
      - text: Update component {componentid} on report {id} to name {name} and type {type}.
        slots:
          componentid: path.componentid
          id: path.id
          name: requestBody.name
          type: requestBody.type
      - text: Change the config of existing component {componentid} in report {id} to {config}, keeping name {name} and type {type}.
        slots:
          componentid: path.componentid
          id: path.id
          config: requestBody.config
          name: requestBody.name
          type: requestBody.type
      method: generated
      generated: '2026-10-02'
- target: $.paths['/report/{id}/component/{componentid}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Remove a component from a report
      effect: destructive
      questions:
      - Can I take one chart off a report without deleting the report?
      - How do I remove a single component from a report?
      instructions:
      - text: Remove component {componentid} from report {id}.
        slots:
          componentid: path.componentid
          id: path.id
      - text: Delete only component {componentid}, keeping report {id}.
        slots:
          componentid: path.componentid
          id: path.id
      method: generated
      generated: '2026-10-02'