MMetadata /docs
Docs/Tools/create_microsoft_promotion_extension

create_microsoft_promotion_extension

Add a time-bound promotional offer (sale, discount, promo code) that shows under a Microsoft Ads (Bing) ad — flag a holiday occasion, pick the discount style (% off or $ off), o…

Writes extensions

Creates or changes something in the account. Put it behind whatever review your agent uses.

What it does

Add a time-bound promotional offer (sale, discount, promo code) that shows under a Microsoft Ads (Bing) ad — flag a holiday occasion, pick the discount style (% off or $ off), optionally attach a promo code or "on orders over $X" qualifier, and set the start/end window. Standard for Black Friday, Cyber Monday, seasonal sales, flash discounts, holiday campaigns.

                ALSO KNOWN AS: promotion, promo, discount, sale, offer, coupon, promo code, voucher, deal, holiday sale, seasonal offer

                KEYWORDS: promotion, promo, promo code, coupon, sale, discount, offer, deal, black friday, cyber monday, holiday, christmas, summer sale, percent off, dollar off, $ off, voucher, microsoft ads, bing, extension

                WHEN TO USE:
                - "Set up a Black Friday 20% off Microsoft Ads promotion for our Pro plan"
                - "Add a Bing holiday promo extension with code SUMMER2026"
                - "Register a Microsoft Ads sale: $50 off orders over $200"

                WHEN NOT TO USE:
                - Permanent pricing tiers (not a limited-time discount) → use create_microsoft_price_extension
                - Plain "Free Shipping" badge → use create_microsoft_callout_extension
                - Same promotion for Google Ads → use create_google_promotion_extension

                INPUTS (required):
                - occasion: holiday/event tag (NONE if no specific occasion). Available: NONE, BACK_TO_SCHOOL, BLACK_FRIDAY, BOXING_DAY, CARNIVAL, CHINESE_NEW_YEAR, CHRISTMAS, CYBER_MONDAY, DIWALI, EASTER, EID_AL_ADHA, EID_AL_FITR, END_OF_SEASON, EPIPHANY, FALL_SALE, FATHERS_DAY, HALLOWEEN, HANUKKAH, HOLI, INDEPENDENCE_DAY, LABOR_DAY, MOTHERS_DAY, NATIONAL_DAY, NAVRATRI, NEW_YEARS, PARENTS_DAY, PASSOVER, RAMADAN, ROSH_HASHANAH, SINGLES_DAY, SONGKRAN, SPRING_SALE, ST_NICHOLAS_DAY, SUMMER_SALE, VALENTINES_DAY, WINTER_SALE, WOMENS_DAY, YEAR_END_GIFT.
                - url: landing page for the promotion.
                - item: what's on sale (1-20 chars). E.g. "Pro subscription".
                - category_type: discount style.
                    * MONETARY        → "$X off". Provide category_amount.
                    * UP_TO_MONETARY  → "Up to $X off". Provide category_amount.
                    * PERCENT         → "X% off". Provide category_percent (≤100).
                    * UP_TO_PERCENT   → "Up to X% off". Provide category_percent (≤100).
                - details_type: optional qualifier.
                    * NONE            → no qualifier.
                    * ON_ORDERS_OVER  → "on orders over $X". Provide details_amount.
                    * PROMO_CODE      → "with code XXXX". Provide details_promo_code (≤15 chars).
                - start_date / end_date: ISO-8601 in pattern "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'" (e.g. 2026-11-25T00:00:00.000Z). Both must be today or in the future.

                INPUTS (optional, see category_type / details_type above):
                - category_amount, category_percent, details_promo_code, details_amount.

                EXAMPLE — Black Friday 20% off Pro with promo code:
                create_microsoft_promotion_extension(
                    occasion="BLACK_FRIDAY",
                    url="https://example.com/sale",
                    item="Pro subscription",
                    category_type="PERCENT",   category_percent=20,
                    details_type="PROMO_CODE", details_promo_code="BF2026",
                    start_date="2026-11-25T00:00:00.000Z",
                    end_date="2026-11-30T23:59:59.000Z",
                )

Arguments

ArgumentTypeNotes
occasion string required
one of: NONE, BACK_TO_SCHOOL, BLACK_FRIDAY, BOXING_DAY, CARNIVAL, CHINESE_NEW_YEAR, CHRISTMAS, CYBER_MONDAY, DIWALI, EASTER, EID_AL_ADHA, EID_AL_FITR
url string required
item string required
category_type string required
one of: MONETARY, UP_TO_MONETARY, PERCENT, UP_TO_PERCENT
category_amount number USD amount; supply when category_type is MONETARY or UP_TO_MONETARY.
category_percent number Percent (≤100); supply when category_type is PERCENT or UP_TO_PERCENT.
details_type string required
one of: NONE, ON_ORDERS_OVER, PROMO_CODE
details_promo_code string Promo code; supply when details_type is PROMO_CODE.
details_amount number Threshold USD amount; supply when details_type is ON_ORDERS_OVER.
start_date string required ISO-8601 "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'". Future or present.
end_date string required ISO-8601 "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'". Future or present.

Request

curl
curl -s -X POST https://mcp-server.metadata.io/mcp \
  -H "Authorization: $METADATA_PAT" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "MCP-Protocol-Version: 2025-11-25" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"create_microsoft_promotion_extension","arguments":{"occasion":"NONE","url":"<url>","item":"<item>","category_type":"MONETARY","details_type":"NONE","start_date":"<start_date>","end_date":"<end_date>"}}}'

Response

No recorded response. This tool writes to the account, so it is never executed to build these docs. The request above is still the exact shape to send. Nothing on this page is invented.

Other extensions tools:

All 160 tools · machine-readable index