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.
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
# 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'