Optimizely · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Optimizely CMP Open API Documentation Work Requests API

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

What the actions change

x-apievangelist-phrasing

Targets 17 · first 16 shown; the file carries all of them

$.info
$.paths['/work-requests'].get
$.paths['/work-requests'].post
$.paths['/work-requests/{id}'].get
$.paths['/work-requests/{id}'].patch
$.paths['/work-requests/{id}/comments'].get
$.paths['/work-requests/{id}/comments'].post
$.paths['/work-requests/{work_request_id}/comments/{comment_id}'].get
$.paths['/work-requests/{id}/attachments'].post
$.paths['/work-requests/{work_request_id}/attachments/{attachment_id}'].delete
$.paths['/work-requests/{id}/creative-assets'].post
$.paths['/work-requests/{work_request_id}/creative-assets/{creative_asset_id}'].delete
$.paths['/work-requests/{id}/approved-assets'].get
$.paths['/work-requests/{id}/campaigns'].post
$.paths['/work-requests/{id}/tasks'].post
$.paths['/work-requests/{id}/related-resources'].get

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 Optimizely CMP Open API Documentation Work Requests API
  version: 1.0.0
extends: openapi/optimizely-work-requests-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: 16
- target: $.paths['/work-requests'].get
  update:
    x-apievangelist-phrasing:
      intent: List work requests
      effect: read
      questions:
      - Which marketing work requests are still open?
      - Can I filter work requests by template and by the date they were created?
      - What work requests has a particular teammate submitted?
      instructions:
      - text: List work requests with status {status}.
        slots:
          status: query.status
      - text: List work requests created between {from} and {to}.
        slots:
          from: query.created_at__from
          to: query.created_at__to
      - text: Show work requests created by {created_by}.
        slots:
          created_by: query.created_by
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests'].post
  update:
    x-apievangelist-phrasing:
      intent: Submit a work request
      effect: write
      questions:
      - How do I submit a new work request from one of our intake templates?
      - Can I assign people when I create a work request?
      instructions:
      - text: Create a work request from template {template_id} with form fields {form_fields}.
        slots:
          template_id: requestBody.template_id
          form_fields: requestBody.form_fields
      - text: Submit a new work request on template {template_id}, assigned to {assignees}, with fields {form_fields}.
        slots:
          template_id: requestBody.template_id
          assignees: requestBody.assignees
          form_fields: requestBody.form_fields
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests/{id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a work request
      effect: read
      questions:
      - How do I pull up the details of one work request?
      - What's the current status and priority of a specific work request?
      instructions:
      - text: Get work request {id}.
        slots:
          id: path.id
      - text: Show me the details of work request {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests/{id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update a work request's status, priority or assignees
      effect: write
      questions:
      - How do I change the status of a work request?
      - Can I reassign a work request or bump its priority?
      instructions:
      - text: Set the status of work request {id} to {status}.
        slots:
          id: path.id
          status: requestBody.status
      - text: Change priority of work request {id} to {priority}.
        slots:
          id: path.id
          priority: requestBody.priority
      - text: Reassign work request {id} to {assignees}.
        slots:
          id: path.id
          assignees: requestBody.assignees
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests/{id}/comments'].get
  update:
    x-apievangelist-phrasing:
      intent: List comments on a work request
      effect: read
      questions:
      - What has the team said in the comments on a work request?
      - Can I page through the comment thread of a work request?
      instructions:
      - text: List comments on work request {id}.
        slots:
          id: path.id
      - text: Show the next {page_size} comments on work request {id}.
        slots:
          page_size: query.page_size
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests/{id}/comments'].post
  update:
    x-apievangelist-phrasing:
      intent: Comment on a work request
      effect: write
      questions:
      - How do I post a comment on a work request and mention a colleague?
      - Can I reply to an existing comment on a work request?
      instructions:
      - text: Comment {value} on work request {id}.
        slots:
          value: requestBody.value
          id: path.id
      - text: Reply {value} to comment {parent_comment_id} on work request {id}.
        slots:
          value: requestBody.value
          parent_comment_id: requestBody.parent_comment_id
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests/{work_request_id}/comments/{comment_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a work request comment
      effect: read
      questions:
      - How do I fetch one particular comment from a work request?
      - Who wrote a specific comment on a work request?
      instructions:
      - text: Get comment {comment_id} on work request {work_request_id}.
        slots:
          comment_id: path.comment_id
          work_request_id: path.work_request_id
      - text: Show comment {comment_id} from work request {work_request_id}.
        slots:
          comment_id: path.comment_id
          work_request_id: path.work_request_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests/{id}/attachments'].post
  update:
    x-apievangelist-phrasing:
      intent: Attach a file to a work request
      effect: write
      questions:
      - How do I attach an uploaded file to a work request?
      - Do I need an upload session key before adding an attachment to a work request?
      instructions:
      - text: Attach uploaded file {key} named {name} to work request {id}.
        slots:
          key: requestBody.key
          name: requestBody.name
          id: path.id
      - text: Add attachment {name} from upload {key} to work request {id}.
        slots:
          name: requestBody.name
          key: requestBody.key
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests/{work_request_id}/attachments/{attachment_id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a work request attachment
      effect: destructive
      questions:
      - How do I remove an attachment from a work request?
      - Can I delete a file someone attached to a work request by mistake?
      instructions:
      - text: Delete attachment {attachment_id} from work request {work_request_id}.
        slots:
          attachment_id: path.attachment_id
          work_request_id: path.work_request_id
      - text: Remove the attached file {attachment_id} on work request {work_request_id}.
        slots:
          attachment_id: path.attachment_id
          work_request_id: path.work_request_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests/{id}/creative-assets'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a creative asset to a work request
      effect: write
      questions:
      - How do I add a creative asset, not just an attachment, to a work request?
      - Can I upload design files as creative assets on a work request?
      instructions:
      - text: Add creative asset {name} from upload {key} to work request {id}.
        slots:
          name: requestBody.name
          key: requestBody.key
          id: path.id
      - text: Create a creative asset on work request {id} using upload session {key}, named {name}.
        slots:
          id: path.id
          key: requestBody.key
          name: requestBody.name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests/{work_request_id}/creative-assets/{creative_asset_id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a work request creative asset
      effect: destructive
      questions:
      - How do I remove a creative asset from a work request?
      - Can I delete a design asset that was added to a work request?
      instructions:
      - text: Delete creative asset {creative_asset_id} from work request {work_request_id}.
        slots:
          creative_asset_id: path.creative_asset_id
          work_request_id: path.work_request_id
      - text: Remove creative asset {creative_asset_id} on work request {work_request_id}.
        slots:
          creative_asset_id: path.creative_asset_id
          work_request_id: path.work_request_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests/{id}/approved-assets'].get
  update:
    x-apievangelist-phrasing:
      intent: List approved assets of a work request
      effect: read
      questions:
      - Which assets on a work request have already been approved?
      - Can I see only the signed-off deliverables for a work request?
      instructions:
      - text: List approved assets for work request {id}.
        slots:
          id: path.id
      - text: Show the approved deliverables on work request {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests/{id}/campaigns'].post
  update:
    x-apievangelist-phrasing:
      intent: Turn a work request into a campaign
      effect: write
      questions:
      - How do I convert an approved work request into a campaign?
      - Can I set start and end dates when creating a campaign from a work request?
      instructions:
      - text: Create campaign {title} from work request {id}.
        slots:
          title: requestBody.title
          id: path.id
      - text: Create campaign {title} from work request {id} running {start_date} to {end_date}.
        slots:
          title: requestBody.title
          id: path.id
          start_date: requestBody.start_date
          end_date: requestBody.end_date
      - text: Spin work request {id} into a sub-campaign {title} under campaign {parent_campaign_id}.
        slots:
          id: path.id
          title: requestBody.title
          parent_campaign_id: requestBody.parent_campaign_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests/{id}/tasks'].post
  update:
    x-apievangelist-phrasing:
      intent: Turn a work request into a task
      effect: write
      questions:
      - How do I create a task from a work request?
      - Can a task created from a work request go into a specific campaign or workflow?
      instructions:
      - text: Create a task from work request {id}.
        slots:
          id: path.id
      - text: Create task {title} from work request {id} due {due_at}.
        slots:
          title: requestBody.title
          id: path.id
          due_at: requestBody.due_at
      - text: Make a task from work request {id} in campaign {campaign_id} using workflow {workflow_id}.
        slots:
          id: path.id
          campaign_id: requestBody.campaign_id
          workflow_id: requestBody.workflow_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests/{id}/related-resources'].get
  update:
    x-apievangelist-phrasing:
      intent: List resources related to a work request
      effect: read
      questions:
      - What campaigns or tasks were created from a work request?
      - Where can I see everything linked to a work request?
      instructions:
      - text: List related resources for work request {id}.
        slots:
          id: path.id
      - text: Show what is linked to work request {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/work-requests/{work_request_id}/form-fields/{form_field_identifier}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a work request form field
      effect: write
      questions:
      - How do I change the answer to one form field on a submitted work request?
      - Can I edit a single intake field on a work request without touching the rest?
      instructions:
      - text: Update form field {form_field_identifier} on work request {work_request_id}.
        slots:
          form_field_identifier: path.form_field_identifier
          work_request_id: path.work_request_id
      - text: Change the value of field {form_field_identifier} in work request {work_request_id}.
        slots:
          form_field_identifier: path.form_field_identifier
          work_request_id: path.work_request_id
      method: generated
      generated: '2026-09-26'