Mapp Marketing Cloud · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Mapp Engage public Membership API
17 actions
17 updates
phrasing
extends
openapi/mapp-membership-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Mapp Marketing Cloud's API. It is a proposal applied on top of the contract, not a document Mapp Marketing Cloud publishes.
What the actions change
x-apievangelist-phrasing
Targets 17 · first 16 shown; the file carries all of them
$.info
$.paths['/membership/create'].get
$.paths['/membership/delete'].delete
$.paths['/membership/findAllByEmail'].get
$.paths['/membership/findAll'].get
$.paths['/membership/getByEmail'].get
$.paths['/membership/get'].get
$.paths['/membership/getAttributesByEmail'].get
$.paths['/membership/getAttributes'].get
$.paths['/membership/replaceAttributes'].post
$.paths['/membership/subscribeByEmail'].post
$.paths['/membership/subscribe'].post
$.paths['/membership/unsubscribeByEmail'].post
$.paths['/membership/unsubscribeFromMessageByEmail'].post
$.paths['/membership/unsubscribe'].post
$.paths['/membership/unsubscribeFromMessage'].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 Mapp Engage public Membership API
version: 1.0.0
extends: openapi/mapp-membership-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['/membership/create'].get
update:
x-apievangelist-phrasing:
intent: Add a contact to a group silently
effect: write
questions:
- Can I put a contact into a group in Mapp Engage without sending them a subscription notification?
- What call creates a group membership for a user ID with no welcome email?
instructions:
- text: Create a membership for user {userId} in group {groupId} without notifying them.
slots:
userId: query.userId
groupId: query.groupId
- text: Quietly add contact {userId} as a member of group {groupId}.
slots:
userId: query.userId
groupId: query.groupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/delete'].delete
update:
x-apievangelist-phrasing:
intent: Remove a contact from a group silently
effect: destructive
questions:
- Is there a way to drop someone from a group without them getting an unsubscribe notice?
- Which call deletes a membership outright instead of running an unsubscribe?
instructions:
- text: Delete the membership of user {userId} in group {groupId} without notifying them.
slots:
userId: query.userId
groupId: query.groupId
- text: Silently remove contact {userId} from group {groupId}.
slots:
userId: query.userId
groupId: query.groupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/findAllByEmail'].get
update:
x-apievangelist-phrasing:
intent: List every group a contact belongs to by email
effect: read
questions:
- Which groups is a given email address a member of?
- Can I look up all memberships for a contact when I only know their email?
instructions:
- text: List all group memberships for {email}.
slots:
email: query.email
- text: Show every group that {email} is subscribed to.
slots:
email: query.email
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/findAll'].get
update:
x-apievangelist-phrasing:
intent: List every group a contact belongs to by user ID
effect: read
questions:
- What groups is user ID 12345 a member of?
- How do I get one membership record per group for a single user ID?
instructions:
- text: List all group memberships for user {userId}.
slots:
userId: query.userId
- text: Show every group that contact {userId} belongs to.
slots:
userId: query.userId
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/getByEmail'].get
update:
x-apievangelist-phrasing:
intent: Check a contact's membership in one group by email
effect: read
questions:
- Is this email address a member of a specific group, and what does the membership look like?
- Can I fetch the membership details for one email in one group?
instructions:
- text: Get the membership of {email} in group {groupId}.
slots:
email: query.email
groupId: query.groupId
- text: Check whether {email} belongs to group {groupId}.
slots:
email: query.email
groupId: query.groupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/get'].get
update:
x-apievangelist-phrasing:
intent: Check a contact's membership in one group by ID
effect: read
questions:
- What does the membership record look like for one user ID in one group?
- Is user 12345 currently a member of a particular group?
instructions:
- text: Fetch the group {groupId} membership record for user ID {userId}.
slots:
userId: query.userId
groupId: query.groupId
- text: Check whether contact {userId} is a member of group {groupId}.
slots:
userId: query.userId
groupId: query.groupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/getAttributesByEmail'].get
update:
x-apievangelist-phrasing:
intent: Read a contact's member attributes by email
effect: read
questions:
- What group-specific attribute values are stored for an email address in a group?
- Can I read someone's member attributes in a group using their email?
instructions:
- text: Get the member attributes for {email} in group {groupId}.
slots:
email: query.email
groupId: query.groupId
- text: Show the group-specific values stored for {email} in group {groupId}.
slots:
email: query.email
groupId: query.groupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/getAttributes'].get
update:
x-apievangelist-phrasing:
intent: Read a contact's member attributes by ID
effect: read
questions:
- Which member attribute values does a user ID have within a given group?
- How do I read the per-group attributes saved for one user ID?
instructions:
- text: Read user ID {userId}'s member attribute values within group {groupId}.
slots:
userId: query.userId
groupId: query.groupId
- text: Show group {groupId} attribute values for contact {userId}.
slots:
userId: query.userId
groupId: query.groupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/replaceAttributes'].post
update:
x-apievangelist-phrasing:
intent: Replace a member's group attributes
effect: write
questions:
- Can I overwrite the whole set of member attributes for a contact in a group?
- What call replaces, rather than merges, someone's group attribute values?
instructions:
- text: Replace all member attributes for user {userId} in group {groupId} with the values I give you.
slots:
userId: query.userId
groupId: query.groupId
- text: Overwrite contact {userId}'s attributes in group {groupId}.
slots:
userId: query.userId
groupId: query.groupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/subscribeByEmail'].post
update:
x-apievangelist-phrasing:
intent: Subscribe an existing contact to a group by email
effect: write
questions:
- Can I subscribe an existing contact to a group using just their email and an opt-in mode?
- Does the contact need to exist already before subscribing them by email?
instructions:
- text: Subscribe {email} to group {groupId} with mode {subscriptionMode}.
slots:
email: query.email
groupId: query.groupId
subscriptionMode: query.subscriptionMode
- text: Add {email} to group {groupId} using confirmed opt-in.
slots:
email: query.email
groupId: query.groupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/subscribe'].post
update:
x-apievangelist-phrasing:
intent: Subscribe a user to a group by ID
effect: write
questions:
- How do I self-subscribe a user ID to a group with double opt-in?
- Which subscription modes decide whether the user has to confirm joining a group?
instructions:
- text: Subscribe user {userId} to group {groupId} with mode {subscriptionMode}.
slots:
userId: query.userId
groupId: query.groupId
subscriptionMode: query.subscriptionMode
- text: Sign contact {userId} up for group {groupId} as a self subscription.
slots:
userId: query.userId
groupId: query.groupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/unsubscribeByEmail'].post
update:
x-apievangelist-phrasing:
intent: Unsubscribe a contact from a group by email
effect: destructive
questions:
- How can I unsubscribe an email address from a group and send them a confirmation?
- Does unsubscribing by email send the contact a confirmation message?
instructions:
- text: Unsubscribe {email} from group {groupId}.
slots:
email: query.email
groupId: query.groupId
- text: Remove {email} from group {groupId} and send the unsubscribe confirmation.
slots:
email: query.email
groupId: query.groupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/unsubscribeFromMessageByEmail'].post
update:
x-apievangelist-phrasing:
intent: Unsubscribe an email and credit it to a message
effect: destructive
questions:
- Can I record which email campaign caused an unsubscribe when removing someone by email?
- What happens if the unsubscription can't be tied to the message I pass?
instructions:
- text: Unsubscribe {email} from group {groupId} and attribute it to message {messageId}.
slots:
email: query.email
groupId: query.groupId
messageId: query.messageId
- text: Record that {email} left group {groupId} because of message {messageId}.
slots:
email: query.email
groupId: query.groupId
messageId: query.messageId
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/unsubscribe'].post
update:
x-apievangelist-phrasing:
intent: Unsubscribe a user from a group by ID
effect: destructive
questions:
- How do I unsubscribe a user ID from a group and notify the group manager?
- Which unsubscription modes control whether the contact gets a removal email?
instructions:
- text: Unsubscribe user {userId} from group {groupId} with mode {unsubscriptionMode}.
slots:
userId: query.userId
groupId: query.groupId
unsubscriptionMode: query.unsubscriptionMode
- text: Take contact {userId} out of group {groupId} and let the manager know.
slots:
userId: query.userId
groupId: query.groupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/unsubscribeFromMessage'].post
update:
x-apievangelist-phrasing:
intent: Unsubscribe a user ID and credit it to a message
effect: destructive
questions:
- Can I tie a user ID's unsubscribe to the specific message that triggered it?
- Is the unsubscribe reported as successful if it can't be linked to the message?
instructions:
- text: Unsubscribe user {userId} from group {groupId} because of message {messageId}.
slots:
userId: query.userId
groupId: query.groupId
messageId: query.messageId
- text: Attribute contact {userId}'s exit from group {groupId} to message {messageId}.
slots:
userId: query.userId
groupId: query.groupId
messageId: query.messageId
method: generated
generated: '2026-09-26'
- target: $.paths['/membership/updateAttributes'].post
update:
x-apievangelist-phrasing:
intent: Update or add a member's group attributes
effect: write
questions:
- Can I change some member attribute values for a contact and add new ones at the same time?
- What happens to a member attribute that doesn't exist yet when I update it?
instructions:
- text: Update member attributes for user {userId} in group {groupId}, creating any that are missing.
slots:
userId: query.userId
groupId: query.groupId
- text: Set car to BMW for contact {userId} in group {groupId}, leaving other attributes alone.
slots:
userId: query.userId
groupId: query.groupId
method: generated
generated: '2026-09-26'