Progress Software · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for MOVEit Transfer REST Files API

13 actions 13 updates phrasing extends openapi/progress-software-files-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Progress Software's API. It is a proposal applied on top of the contract, not a document Progress Software publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 13

$.info
$.paths['/api/v1/files/{Id}'].get
$.paths['/api/v1/files/{Id}'].delete
$.paths['/api/v1/files/{Id}'].patch
$.paths['/api/v1/files/{Id}/download'].get
$.paths['/api/v1/files/{Id}/newstates'].get
$.paths['/api/v1/files/{Id}/newstates'].post
$.paths['/api/v1/files'].get
$.paths['/api/v1/files/detailed'].get
$.paths['/api/v1/files/{Id}/copy'].post
$.paths['/api/v1/files/{Id}/move'].post
$.paths['/api/v1/files/{Id}/attachments'].post
$.paths['/api/v1/files/{Id}/newstates/{userId}'].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 MOVEit Transfer REST Files API
  version: 1.0.0
extends: openapi/progress-software-files-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: 12
- target: $.paths['/api/v1/files/{Id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a file's details
      effect: read
      questions:
      - How do I see the details of a file stored on the transfer server?
      - What metadata comes back for a single file by ID?
      instructions:
      - text: Show the details of file {Id}.
        slots:
          Id: path.Id
      - text: Get the metadata for stored file {Id}.
        slots:
          Id: path.Id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/files/{Id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a file
      effect: destructive
      questions:
      - How do I delete a file from a folder on the transfer server?
      - Can I remove a file permanently by its ID?
      instructions:
      - text: Delete file {Id}.
        slots:
          Id: path.Id
      - text: Remove the stored file {Id} from its folder.
        slots:
          Id: path.Id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/files/{Id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Rename a file or change its new flag
      effect: write
      questions:
      - How do I rename a file that's already uploaded?
      - Can I mark a file as no longer new for myself?
      instructions:
      - text: Rename file {Id} to {name}.
        slots:
          Id: path.Id
          name: requestBody.name
      - text: Set the new flag on file {Id} to {isNew}.
        slots:
          Id: path.Id
          isNew: requestBody.isNew
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/files/{Id}/download'].get
  update:
    x-apievangelist-phrasing:
      intent: Download a file
      effect: read
      questions:
      - How do I download the contents of a file from the transfer server?
      - Can I fetch a file's bytes directly by its ID?
      instructions:
      - text: Download file {Id}.
        slots:
          Id: path.Id
      - text: Fetch the contents of file {Id} to my machine.
        slots:
          Id: path.Id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/files/{Id}/newstates'].get
  update:
    x-apievangelist-phrasing:
      intent: See which users still see a file as new
      effect: read
      questions:
      - Which users haven't opened a file yet, so it still shows as new to them?
      - As an org admin, can I check a file's new-state per user?
      instructions:
      - text: List users for whom file {Id} is marked new.
        slots:
          Id: path.Id
      - text: Show page {page} of the per-user new states for file {Id}.
        slots:
          page: query.page
          Id: path.Id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/files/{Id}/newstates'].post
  update:
    x-apievangelist-phrasing:
      intent: Mark a file as new for a user
      effect: write
      questions:
      - How do I flag a file as new again for a specific user?
      - Can an org admin make a file show as unread for someone?
      instructions:
      - text: Mark file {Id} as new for user {userId}.
        slots:
          Id: path.Id
          userId: requestBody.userId
      - text: Flag file {Id} unread again for {userId}.
        slots:
          Id: path.Id
          userId: requestBody.userId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/files'].get
  update:
    x-apievangelist-phrasing:
      intent: List files I can view
      effect: read
      questions:
      - What files do I have access to on the transfer server?
      - Can I list only new files uploaded since a certain date?
      instructions:
      - text: List the files I can view.
      - text: Show only new files added since {sinceDate}.
        slots:
          sinceDate: query.sinceDate
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/files/detailed'].get
  update:
    x-apievangelist-phrasing:
      intent: Find files by wildcard path and file mask
      effect: read
      questions:
      - How do I find every *.csv file under a folder path using wildcards?
      - Can a wildcard file search recurse into subfolders?
      instructions:
      - text: Find files matching {fileMask} under path {pathMask}.
        slots:
          fileMask: query.fileMask
          pathMask: query.pathMask
      - text: Search recursively under {pathMask} for files like {fileMask}, recursive {recursive}.
        slots:
          pathMask: query.pathMask
          fileMask: query.fileMask
          recursive: query.recursive
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/files/{Id}/copy'].post
  update:
    x-apievangelist-phrasing:
      intent: Copy a file to another folder
      effect: write
      questions:
      - How do I copy a file into a different folder while keeping the original?
      - Can I duplicate a file into a second folder by giving its folder ID?
      instructions:
      - text: Copy file {Id} into folder {destinationFolderId}.
        slots:
          Id: path.Id
          destinationFolderId: requestBody.destinationFolderId
      - text: Make a copy of {Id} in destination folder {destinationFolderId}.
        slots:
          Id: path.Id
          destinationFolderId: requestBody.destinationFolderId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/files/{Id}/move'].post
  update:
    x-apievangelist-phrasing:
      intent: Move a file to another folder
      effect: write
      questions:
      - How do I move a file out of one folder and into another?
      - Can I relocate a file without re-uploading it?
      instructions:
      - text: Move file {Id} to folder {destinationFolderId}.
        slots:
          Id: path.Id
          destinationFolderId: requestBody.destinationFolderId
      - text: Relocate {Id} into destination folder {destinationFolderId}.
        slots:
          Id: path.Id
          destinationFolderId: requestBody.destinationFolderId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/files/{Id}/attachments'].post
  update:
    x-apievangelist-phrasing:
      intent: Turn a stored file into a package attachment
      effect: write
      questions:
      - Can I attach a file that's already on the server to a package without uploading it again?
      - How do I create an attachment from an existing file?
      instructions:
      - text: Create a package attachment from file {Id}.
        slots:
          Id: path.Id
      - text: Use existing file {Id} as an attachment.
        slots:
          Id: path.Id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/files/{Id}/newstates/{userId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Mark a file as not new for a user
      effect: destructive
      questions:
      - How do I clear the new flag on a file for one particular user?
      - Can an admin mark a file as already seen on someone's behalf?
      instructions:
      - text: Unflag file {Id} so user {userId} sees it as already read.
        slots:
          Id: path.Id
          userId: path.userId
      - text: Clear the new flag on {Id} for {userId}.
        slots:
          Id: path.Id
          userId: path.userId
      method: generated
      generated: '2026-10-01'