Mapp Marketing Cloud · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Mapp Engage public Contact API
9 actions
9 updates
phrasing
extends
openapi/mapp-contact-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 9
$.info
$.paths['/contact/anonymize'].get
$.paths['/contact/checkUpdateVersion'].get
$.paths['/contact/create'].post
$.paths['/contact/delete'].post
$.paths['/contact/export'].get
$.paths['/contact/get'].post
$.paths['/contact/update'].post
$.paths['/contact/updateMultichannelContact'].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 Contact API
version: 1.0.0
extends: openapi/mapp-contact-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: 8
- target: $.paths['/contact/anonymize'].get
update:
x-apievangelist-phrasing:
intent: Anonymize a contact's personal data (GDPR)
effect: destructive
questions:
- How do I handle a GDPR erasure request for a contact?
- Can I strip a contact's personal data while keeping the record?
instructions:
- text: Anonymize contact {contactId} and notify {notificationRecipient} when done.
slots:
contactId: query.contactId
notificationRecipient: query.notificationRecipient
- text: Erase the PII of contact {contactId} under GDPR.
slots:
contactId: query.contactId
method: generated
generated: '2026-09-26'
- target: $.paths['/contact/checkUpdateVersion'].get
update:
x-apievangelist-phrasing:
intent: Check whether a profile update was saved
effect: read
questions:
- Has a specific contact profile update made it into the Data Store yet?
- Can I confirm an update with a given timestamp version was saved?
instructions:
- text: Check whether update version {updateVersion} for contact {contactIdentifier} is saved.
slots:
updateVersion: query.updateVersion
contactIdentifier: query.contactIdentifier
- text: Confirm contact {contactIdentifier} has the update stamped {updateVersion}.
slots:
contactIdentifier: query.contactIdentifier
updateVersion: query.updateVersion
method: generated
generated: '2026-09-26'
- target: $.paths['/contact/create'].post
update:
x-apievangelist-phrasing:
intent: Create a contact
effect: write
questions:
- How do I add a new contact with a first and last name?
- Which identifiers can I use when creating a contact?
instructions:
- text: Create a contact for jane@example.com with first name Jane.
- text: Add a new contact with these attributes.
method: generated
generated: '2026-09-26'
- target: $.paths['/contact/delete'].post
update:
x-apievangelist-phrasing:
intent: Delete a contact by identifier
effect: destructive
questions:
- Can I delete a contact by passing its email or mobile identifier?
- What identifier types work for removing a contact?
instructions:
- text: Delete the contact with email test@test.com.
- text: Remove this contact using its mobile identifier.
method: generated
generated: '2026-09-26'
- target: $.paths['/contact/export'].get
update:
x-apievangelist-phrasing:
intent: Export a contact's data (GDPR)
effect: read
questions:
- How do I fulfil a GDPR data access request for a contact?
- Who gets the download link when a contact export finishes?
instructions:
- text: Export all data for contact {contactId} and send the link to {notificationRecipient}.
slots:
contactId: query.contactId
notificationRecipient: query.notificationRecipient
- text: Start a GDPR data export for contact {contactId}.
slots:
contactId: query.contactId
method: generated
generated: '2026-09-26'
- target: $.paths['/contact/get'].post
update:
x-apievangelist-phrasing:
intent: Get a contact by email or mobile identifier
effect: read
questions:
- Can I fetch a contact by sending its email or mobile as an identifier object?
- What does a contact record look like when I look it up by identifier type?
instructions:
- text: Get the contact whose EMAIL identifier is test@test.com.
- text: Fetch the contact for MOBILE identifier 48505606707.
method: generated
generated: '2026-09-26'
- target: $.paths['/contact/update'].post
update:
x-apievangelist-phrasing:
intent: Update a contact
effect: write
questions:
- Does updating a contact clear attributes I leave empty?
- How do I update a contact's attributes using a chosen identifier type?
instructions:
- text: Update the contact using identifier type {identifierType} with these attributes.
slots:
identifierType: query.identifierType
- text: Change the last name of the contact identified by {identifierType}.
slots:
identifierType: query.identifierType
method: generated
generated: '2026-09-26'
- target: $.paths['/contact/updateMultichannelContact'].post
update:
x-apievangelist-phrasing:
intent: Update a multichannel contact and its mobile alias
effect: write
questions:
- How do I update a contact that has both email and mobile channels?
- Can I set a contact's mobile alias correctly while updating profile data?
instructions:
- text: Update the multichannel contact matched by {identifierType}, keeping its mobile alias.
slots:
identifierType: query.identifierType
- text: Update the email-and-SMS contact by {identifierType} with these attributes.
slots:
identifierType: query.identifierType
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/mapp-contact-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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.