Wistia · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Data Projects API

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

What the actions change

x-apievangelist-phrasing

Targets 7

$.info
$.paths['/projects'].get
$.paths['/projects'].post
$.paths['/projects/{id}'].get
$.paths['/projects/{id}'].put
$.paths['/projects/{id}'].delete
$.paths['/projects/{id}/copy'].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 Data Projects API
  version: 1.0.0
extends: openapi/wistia-projects-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 6
- target: $.paths['/projects'].get
  update:
    x-apievangelist-phrasing:
      intent: List projects
      effect: read
      questions:
      - What projects are in my Wistia account?
      - Can I sort my project list by name or date?
      instructions:
      - text: List my projects.
      - text: Show my projects sorted by {sort_by}.
        slots:
          sort_by: query.sort_by
      method: generated
      generated: '2026-10-01'
- target: $.paths['/projects'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a project
      effect: write
      questions:
      - How do I create a new project for my videos?
      - Can I make a new project public when I create it?
      instructions:
      - text: Create a project named {name}.
        slots:
          name: requestBody.name
      - text: Create project {name} with {adminEmail} as admin.
        slots:
          name: requestBody.name
          adminEmail: requestBody.adminEmail
      method: generated
      generated: '2026-10-01'
- target: $.paths['/projects/{id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Show a project and its media
      effect: read
      questions:
      - How do I see a project and the media inside it?
      - Is there a limit on how many medias a project lookup returns?
      instructions:
      - text: Show project {id}.
        slots:
          id: path.id
      - text: Get project {id} with its media.
        slots:
          id: path.id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/projects/{id}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a project
      effect: write
      questions:
      - How do I rename a project or change its description?
      - Can I let anonymous viewers upload to a project?
      instructions:
      - text: Rename project {id} to {name}.
        slots:
          id: path.id
          name: requestBody.name
      - text: Set anonymous uploads on project {id} to {anonymousCanUpload}.
        slots:
          id: path.id
          anonymousCanUpload: requestBody.anonymousCanUpload
      method: generated
      generated: '2026-10-01'
- target: $.paths['/projects/{id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a project
      effect: destructive
      questions:
      - How do I delete a project I'm done with?
      - Can I remove a whole project from my account?
      instructions:
      - text: Delete project {id}.
        slots:
          id: path.id
      - text: Remove project {id} from my account.
        slots:
          id: path.id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/projects/{id}/copy'].post
  update:
    x-apievangelist-phrasing:
      intent: Copy a project
      effect: write
      questions:
      - How do I duplicate an existing project?
      - Does copying a project keep its sharing settings?
      instructions:
      - text: Copy project {id}.
        slots:
          id: path.id
      - text: Duplicate project {id} with {adminEmail} as the new owner.
        slots:
          id: path.id
          adminEmail: requestBody.adminEmail
      method: generated
      generated: '2026-10-01'