Nylas · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Nylas Messages API
10 actions
10 updates
phrasing
extends
openapi/nylas-messages-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Nylas's API. It is a proposal applied on top of the contract, not a document Nylas publishes.
What the actions change
x-apievangelist-phrasing
Targets 10
$.info
$.paths['/v3/grants/{grant_id}/messages'].get
$.paths['/v3/grants/{grant_id}/messages/{message_id}'].get
$.paths['/v3/grants/{grant_id}/messages/{message_id}'].put
$.paths['/v3/grants/{grant_id}/messages/{message_id}'].delete
$.paths['/v3/grants/{grant_id}/messages/clean'].put
$.paths['/v3/grants/{grant_id}/messages/send'].post
$.paths['/v3/grants/{grant_id}/messages/schedules'].get
$.paths['/v3/grants/{grant_id}/messages/schedules/{scheduleId}'].get
$.paths['/v3/grants/{grant_id}/messages/schedules/{scheduleId}'].delete
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 Nylas Messages API
version: 1.0.0
extends: openapi/nylas-messages-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: 9
- target: $.paths['/v3/grants/{grant_id}/messages'].get
update:
x-apievangelist-phrasing:
intent: List or search a user's email messages
effect: read
questions:
- How do I list the emails in a connected user's mailbox?
- Can I filter a user's messages to only unread ones that have attachments?
- Is there a way to find messages received from a specific sender after a certain date?
instructions:
- text: List the latest {limit} messages in mailbox {grant_id}.
slots:
limit: query.limit
grant_id: path.grant_id
- text: Find messages in {grant_id} from {from} with the subject {subject}.
slots:
grant_id: path.grant_id
from: query.from
subject: query.subject
- text: Show unread messages in mailbox {grant_id} received after {received_after}.
slots:
grant_id: path.grant_id
received_after: query.received_after
method: generated
generated: '2026-09-26'
- target: $.paths['/v3/grants/{grant_id}/messages/{message_id}'].get
update:
x-apievangelist-phrasing:
intent: Retrieve a single email message
effect: read
questions:
- How can I fetch the full contents of one email by its message ID?
- Can I get just the headers or selected fields of a single message?
instructions:
- text: Open message {message_id} in mailbox {grant_id}.
slots:
message_id: path.message_id
grant_id: path.grant_id
- text: Fetch message {message_id} for grant {grant_id} including its {fields}.
slots:
message_id: path.message_id
grant_id: path.grant_id
fields: query.fields
method: generated
generated: '2026-09-26'
- target: $.paths['/v3/grants/{grant_id}/messages/{message_id}'].put
update:
x-apievangelist-phrasing:
intent: Mark, star or move an email message
effect: write
questions:
- How do I mark an email as read or unread through the API?
- Can I star a message or move it to another folder?
- What happens to the existing metadata when I update a message's attributes?
instructions:
- text: Mark message {message_id} in {grant_id} as unread.
slots:
message_id: path.message_id
grant_id: path.grant_id
- text: Star message {message_id} for grant {grant_id}.
slots:
message_id: path.message_id
grant_id: path.grant_id
- text: Move email {message_id} in mailbox {grant_id} into folder {folders}.
slots:
message_id: path.message_id
grant_id: path.grant_id
folders: requestBody.folders
method: generated
generated: '2026-09-26'
- target: $.paths['/v3/grants/{grant_id}/messages/{message_id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete an email message
effect: destructive
questions:
- Does deleting an email send it to Trash or remove it permanently?
- How do I permanently delete an email instead of trashing it?
instructions:
- text: Delete message {message_id} from mailbox {grant_id}.
slots:
message_id: path.message_id
grant_id: path.grant_id
- text: Hard delete email {message_id} for grant {grant_id} so it skips the Trash.
slots:
message_id: path.message_id
grant_id: path.grant_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v3/grants/{grant_id}/messages/clean'].put
update:
x-apievangelist-phrasing:
intent: Clean up email bodies into plain content
effect: write
questions:
- Can I strip signatures, links and images out of email bodies to get clean text?
- Is there a way to convert an email's HTML into Markdown?
- Which extra content is always removed when cleaning messages?
instructions:
- text: Clean messages {message_id} in mailbox {grant_id} and return them as Markdown.
slots:
message_id: requestBody.message_id
grant_id: path.grant_id
- text: Clean email {message_id} for {grant_id}, removing links and images.
slots:
message_id: requestBody.message_id
grant_id: path.grant_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v3/grants/{grant_id}/messages/send'].post
update:
x-apievangelist-phrasing:
intent: Send or schedule an email from a user's mailbox
effect: write
questions:
- How do I send an email on behalf of a connected user?
- Can I schedule an email to go out at a later time?
- Is it possible to send a reply to an existing message with open and link tracking?
instructions:
- text: Send an email from {grant_id} to {to} with subject {subject}.
slots:
grant_id: path.grant_id
to: requestBody.to
subject: requestBody.subject
- text: Schedule a message from mailbox {grant_id} to {to} to be sent at {send_at}.
slots:
grant_id: path.grant_id
to: requestBody.to
send_at: requestBody.send_at
- text: Reply to message {reply_to_message_id} from {grant_id}, addressed to {to}.
slots:
reply_to_message_id: requestBody.reply_to_message_id
grant_id: path.grant_id
to: requestBody.to
method: generated
generated: '2026-09-26'
- target: $.paths['/v3/grants/{grant_id}/messages/schedules'].get
update:
x-apievangelist-phrasing:
intent: List a user's scheduled emails
effect: read
questions:
- Which emails does this user have scheduled to send later?
- Can I see scheduled messages that have already gone out as well as pending ones?
instructions:
- text: List all scheduled messages for mailbox {grant_id}.
slots:
grant_id: path.grant_id
- text: Show me every send schedule on grant {grant_id}.
slots:
grant_id: path.grant_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v3/grants/{grant_id}/messages/schedules/{scheduleId}'].get
update:
x-apievangelist-phrasing:
intent: Check the status of one scheduled email
effect: read
questions:
- How can I check whether a specific scheduled email has been sent yet?
- Can I look up a single scheduled message by its schedule ID?
instructions:
- text: Get scheduled message {scheduleId} for mailbox {grant_id}.
slots:
scheduleId: path.scheduleId
grant_id: path.grant_id
- text: Check the send status of schedule {scheduleId} on grant {grant_id}.
slots:
scheduleId: path.scheduleId
grant_id: path.grant_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v3/grants/{grant_id}/messages/schedules/{scheduleId}'].delete
update:
x-apievangelist-phrasing:
intent: Cancel a scheduled email before it sends
effect: destructive
questions:
- How do I stop a scheduled email from going out?
- How close to the send time can I still cancel a scheduled message?
instructions:
- text: Cancel scheduled message {scheduleId} in mailbox {grant_id}.
slots:
scheduleId: path.scheduleId
grant_id: path.grant_id
- text: Unschedule send {scheduleId} for grant {grant_id} so it never goes out.
slots:
scheduleId: path.scheduleId
grant_id: path.grant_id
method: generated
generated: '2026-09-26'
Work with this as data
Every overlay here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/nylas-messages-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.