Generated by API Evangelist
Written by API Evangelist tooling for MoEngage's API. It is a proposal applied on top of the contract, not a document MoEngage publishes.
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for MoEngage Subscription Categories Subscription Preferences…
version: 1.0.0
extends: openapi/moengage-subscription-preferences-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: 3
- target: $.paths['/category-subscription/user-preferences'].get
update:
x-apievangelist-phrasing:
intent: Get a user's category subscriptions
effect: read
questions:
- How do I show a user their current email category preferences on my landing page?
- Which subscription categories has this user opted into?
instructions:
- text: Get subscription preferences for encrypted user {user_id} from campaign {cid}.
slots:
user_id: query.user_id
cid: query.cid
- text: Show which categories user {user_id} is subscribed to, via campaign link {cid}.
slots:
user_id: query.user_id
cid: query.cid
method: generated
generated: '2026-10-01'
- target: $.paths['/category-subscription/user-preferences'].put
update:
x-apievangelist-phrasing:
intent: Save one user's category subscriptions
effect: write
questions:
- How do I save the categories a user picked after clicking through from an email?
- Can a user unsubscribe from all categories from the preferences page?
instructions:
- text: Set categories {categories} for user {user_id} from campaign {cid}, unsubscribe_all {unsubscribe_all}.
slots:
categories: requestBody.categories
user_id: query.user_id
cid: query.cid
unsubscribe_all: requestBody.unsubscribe_all
- text: Unsubscribe user {user_id} from everything via campaign link {cid}, categories {categories}, unsubscribe_all {unsubscribe_all}.
slots:
user_id: query.user_id
cid: query.cid
categories: requestBody.categories
unsubscribe_all: requestBody.unsubscribe_all
method: generated
generated: '2026-10-01'
- target: $.paths['/category-subscription/user-preferences'].post
update:
x-apievangelist-phrasing:
intent: Bulk update users' category subscriptions
effect: write
questions:
- How do I sync subscription preferences for a large number of users at once?
- Can I bulk update category preferences for a particular channel?
instructions:
- text: 'Bulk update {channel} subscription preferences: {user_preferences}.'
slots:
channel: requestBody.channel
user_preferences: requestBody.user_preferences
- text: Import these category preferences for many users on {channel}.
slots:
channel: requestBody.channel
method: generated
generated: '2026-10-01'
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.