Mailosaur · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Mailosaur Messages API

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

What the actions change

x-apievangelist-phrasing

Targets 10

$.info
$.paths['/api/messages'].get
$.paths['/api/messages'].post
$.paths['/api/messages'].delete
$.paths['/api/messages/search'].post
$.paths['/api/messages/{messageId}'].get
$.paths['/api/messages/{messageId}'].delete
$.paths['/api/messages/{messageId}/forward'].post
$.paths['/api/messages/{messageId}/reply'].post
$.paths['/api/messages/{messageId}/screenshots'].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 Mailosaur Messages API
  version: 1.0.0
extends: openapi/mailosaur-messages-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: 9
- target: $.paths['/api/messages'].get
  update:
    x-apievangelist-phrasing:
      intent: List messages in an inbox
      effect: read
      questions:
      - Which emails arrived in my test inbox in the last hour?
      - Can I page through up to 1000 messages at a time, newest first?
      - How do I see messages I sent rather than received in a server?
      instructions:
      - text: List the latest messages in inbox {server}.
        slots:
          server: query.server
      - text: Show messages received in server {server} after {receivedAfter}.
        slots:
          server: query.server
          receivedAfter: query.receivedAfter
      - text: List {itemsPerPage} messages from inbox {server}, page {page}.
        slots:
          itemsPerPage: query.itemsPerPage
          server: query.server
          page: query.page
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/messages'].post
  update:
    x-apievangelist-phrasing:
      intent: Create and send a test email
      effect: write
      questions:
      - How do I send an email from my test inbox to trigger a workflow in my product?
      - Can I compose a new message with an HTML body and attachments?
      - Does the recipient of a newly created email have to be verified?
      instructions:
      - text: Create and send an email from server {server} to {to} with subject {subject}.
        slots:
          server: query.server
          to: requestBody.to
          subject: requestBody.subject
      - text: Draft a new plain-text message in inbox {server} saying {text}.
        slots:
          server: query.server
          text: requestBody.text
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/messages'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete every message in an inbox
      effect: destructive
      questions:
      - How do I clear out all emails from a test inbox before a test run?
      - Can I wipe every message in a server without deleting the server itself?
      instructions:
      - text: Delete all messages in inbox {server}.
        slots:
          server: query.server
      - text: Empty server {server} of every email and SMS.
        slots:
          server: query.server
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/messages/search'].post
  update:
    x-apievangelist-phrasing:
      intent: Search for or wait on matching messages
      effect: read
      questions:
      - How do I find the email sent to a specific address in my test inbox?
      - Can my test wait for a matching message to arrive instead of polling?
      - Is it possible to match messages on subject OR body text rather than both?
      instructions:
      - text: Search inbox {server} for messages sent to {sentTo}.
        slots:
          server: query.server
          sentTo: requestBody.sentTo
      - text: Find emails in server {server} whose subject contains {subject}.
        slots:
          server: query.server
          subject: requestBody.subject
      - text: Wait up to {timeout} ms for a message from {sentFrom} to land in inbox {server}.
        slots:
          timeout: query.timeout
          sentFrom: requestBody.sentFrom
          server: query.server
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/messages/{messageId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a message's full content
      effect: read
      questions:
      - How do I read the full body, links and attachments of one captured email?
      - Can I pull the complete detail of an SMS once I have its ID from a search?
      instructions:
      - text: Get the full details of message {messageId}.
        slots:
          messageId: path.messageId
      - text: Open email {messageId} and show me its full contents.
        slots:
          messageId: path.messageId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/messages/{messageId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a single message
      effect: destructive
      questions:
      - How do I delete just one email from my inbox?
      - Are a message's attachments removed too when I delete it?
      instructions:
      - text: Delete message {messageId}.
        slots:
          messageId: path.messageId
      - text: Permanently remove email {messageId} and its attachments.
        slots:
          messageId: path.messageId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/messages/{messageId}/forward'].post
  update:
    x-apievangelist-phrasing:
      intent: Forward a message to a verified address
      effect: write
      questions:
      - Can I simulate a user forwarding one of my emails to someone else?
      - What addresses am I allowed to forward a captured message to?
      instructions:
      - text: Forward message {messageId} to {to}.
        slots:
          messageId: path.messageId
          to: requestBody.to
      - text: Forward email {messageId} to {to} with the note {text}.
        slots:
          messageId: path.messageId
          to: requestBody.to
          text: requestBody.text
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/messages/{messageId}/reply'].post
  update:
    x-apievangelist-phrasing:
      intent: Reply to a message
      effect: write
      questions:
      - How do I simulate a user replying to an email or SMS my app sent?
      - Can a reply include extra HTML content or attachments?
      instructions:
      - text: Reply to message {messageId}.
        slots:
          messageId: path.messageId
      - text: Send a reply to {messageId} that says {text}.
        slots:
          messageId: path.messageId
          text: requestBody.text
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/messages/{messageId}/screenshots'].post
  update:
    x-apievangelist-phrasing:
      intent: Generate email client preview screenshots
      effect: write
      questions:
      - How does my email look when rendered in different email clients?
      - Can I request rendering screenshots of a message for a chosen set of clients?
      instructions:
      - text: Generate email client previews for message {messageId}.
        slots:
          messageId: path.messageId
      - text: Render email {messageId} in {previews} and capture screenshots.
        slots:
          messageId: path.messageId
          previews: requestBody.previews
      method: generated
      generated: '2026-10-01'