# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Mapp Engage public Message API version: 1.0.0 extends: openapi/mapp-message-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: 14 - target: $.paths['/message/find'].post update: x-apievangelist-phrasing: intent: Search sent and prepared messages effect: read questions: - Which messages went out to a group between two sendout dates? - Can I search for messages across all groups by sendout date range? instructions: - text: Find messages matching filter {messageFilter}. slots: messageFilter: query.messageFilter - text: Search for messages using {messageFilter} with a September sendout window. slots: messageFilter: query.messageFilter method: generated generated: '2026-09-26' - target: $.paths['/message/getHistorical'].get update: x-apievangelist-phrasing: intent: See a message exactly as a contact received it effect: read questions: - Can I view a message as it was sent to one contact, with personalization filled in? - What feature switch do I need to pull historical per-contact message copies? instructions: - text: Show message {messageId} as it was sent to contact {contactId}. slots: messageId: query.messageId contactId: query.contactId - text: Fetch the personalized historical copy of message {messageId} for {contactId}. slots: messageId: query.messageId contactId: query.contactId method: generated generated: '2026-09-26' - target: $.paths['/message/getStatisticsByExternalMessageId'].get update: x-apievangelist-phrasing: intent: Get sendout stats by external message ID effect: read questions: - How did a message perform if I only have my own external message ID for it? - Can I look up send statistics using the external ID from my system? instructions: - text: Get statistics for the message with external ID {externalMessageId}. slots: externalMessageId: query.externalMessageId - text: Show sendout results for external message {externalMessageId}. slots: externalMessageId: query.externalMessageId method: generated generated: '2026-09-26' - target: $.paths['/message/getStatistics'].get update: x-apievangelist-phrasing: intent: Get sendout stats for a message effect: read questions: - What are the send statistics for a message I already sent? - How do I pull the overall performance numbers for one Mapp Engage message ID? instructions: - text: Get statistics for message {messageId}. slots: messageId: query.messageId - text: Show how message {messageId} performed. slots: messageId: query.messageId method: generated generated: '2026-09-26' - target: $.paths['/message/getTimeDistributionByExternalMessageId'].post update: x-apievangelist-phrasing: intent: Get message time distribution via external-ID route effect: read questions: - Is there an external-ID variant of the time distribution report for a sent message? - Can the external-ID time distribution endpoint break results down daily? instructions: - text: Get the {interval} time distribution for message {messageId} from the external-ID endpoint. slots: interval: query.interval messageId: query.messageId - text: Use the external-ID time distribution call for message {messageId}, hourly. slots: messageId: query.messageId method: generated generated: '2026-09-26' - target: $.paths['/message/getTimeDistribution'].post update: x-apievangelist-phrasing: intent: Get a message's activity over time effect: read questions: - When did recipients engage with a sent message, broken down hour by hour? - What interval options are there for a message's time distribution? instructions: - text: Get the {interval} time distribution for message {messageId}. slots: interval: query.interval messageId: query.messageId - text: Show daily activity for sent message {messageId}. slots: messageId: query.messageId method: generated generated: '2026-09-26' - target: $.paths['/message/getUsedPersonalizations'].get update: x-apievangelist-phrasing: intent: List personalization fields a message uses effect: read questions: - Which user and group attributes does a prepared message reference in its placeholders? - Does the personalization list for a message include member attributes? instructions: - text: List the personalization attributes used in message {messageId}. slots: messageId: query.messageId - text: Show which placeholders prepared message {messageId} relies on. slots: messageId: query.messageId method: generated generated: '2026-09-26' - target: $.paths['/message/getManyUsedPersonalizations'].post update: x-apievangelist-phrasing: intent: List personalization fields for several messages effect: read questions: - Can I check the personalization attributes of several prepared messages in one call? - What attributes do a batch of message IDs reference between them? instructions: - text: List the personalization attributes used by messages 1800249553 and 1800202306. - text: Check placeholders across this batch of prepared message IDs. method: generated generated: '2026-09-26' - target: $.paths['/message/sendSingle'].post update: x-apievangelist-phrasing: intent: Send a prepared message to one recipient effect: write questions: - Can I send a prepared email to one specific user with custom parameters and attachments? - Does sending a single message add the recipient to the message's group? instructions: - text: Send prepared message {messageId} to user {recipientId}. slots: messageId: query.messageId recipientId: query.recipientId - text: Send message {messageId} to {recipientId} using TLS sender profile {senderProfileName}. slots: messageId: query.messageId recipientId: query.recipientId senderProfileName: query.senderProfileName method: generated generated: '2026-09-26' - target: $.paths['/message/sendTransactionalWithEventDetails'].post update: x-apievangelist-phrasing: intent: Send a transactional message with order details effect: write questions: - How do I send a purchase confirmation that loops over the items in an order? - Can I pass transaction details like line items into a transactional email? instructions: - text: Send transactional message {messageId} to {recipientId} with the order's event details. slots: messageId: query.messageId recipientId: query.recipientId - text: Send a purchase confirmation from message {messageId} for transaction {externalTransactionFormula} to {recipientId}. slots: messageId: query.messageId externalTransactionFormula: query.externalTransactionFormula recipientId: query.recipientId method: generated generated: '2026-09-26' - target: $.paths['/message/sendTransactional'].post update: x-apievangelist-phrasing: intent: Send a transactional message effect: write questions: - Can I trigger a transactional email from a prepared message for one user? - Will sending a transactional message resubscribe the user to the message's group? instructions: - text: Send prepared message {messageId} to {recipientId} as a transactional email. slots: messageId: query.messageId recipientId: query.recipientId - text: Send transactional message {messageId} to {recipientId} tagged with external ID {externalTransactionFormula} via profile {senderProfileName}. slots: messageId: query.messageId recipientId: query.recipientId externalTransactionFormula: query.externalTransactionFormula senderProfileName: query.senderProfileName method: generated generated: '2026-09-26' - target: $.paths['/message/validateList'].post update: x-apievangelist-phrasing: intent: Validate a list of messages effect: read questions: - Can I check a list of messages for archived attributes or broken content store items via validateList? - Which errors come back when the validateList call finds an invalid message? instructions: - text: Run validateList on messages 1800249570 and 1800202306. - text: Validate this list of message IDs with the validateList endpoint. method: generated generated: '2026-09-26' - target: $.paths['/message/validate'].get update: x-apievangelist-phrasing: intent: Validate one prepared message effect: read questions: - Is a single prepared message safe to send, or does it use archived attributes? - What does validating one message check before sendout? instructions: - text: Validate prepared message {messageId}. slots: messageId: query.messageId - text: Check message {messageId} for invalid content store items. slots: messageId: query.messageId method: generated generated: '2026-09-26' - target: $.paths['/message/validateMany'].post update: x-apievangelist-phrasing: intent: Validate many messages at once effect: read questions: - Is there a validateMany call to check a batch of messages in one request? - Can validateMany tell me which of several messages reference archived attributes? instructions: - text: Run validateMany against these message IDs. - text: Use validateMany to check messages 1800249570 and 1800202306. method: generated generated: '2026-09-26'