---
title: "Dedicated USSD"
method: POST
path: "/your-server.com/your-callback"
tags: ["USSD"]
---

# Dedicated USSD

`POST /your-server.com/your-callback`

<h3>Dedicated USSD</h3>

When users dial your dedicated shortcode (e.g., *123#), they interact directly with your USSD app.  

Dedicated USSD provides **full control of the menu, user flow, and branding** since the shortcode is not shared.  

<p class="alert-primary"><i class="las la-info-circle" style="font-size:24px"></i>
mNotify’s Dedicated USSD API allows developers to build custom menus and process user inputs in real-time using HTTP/S requests.</p>

<h3>HTTP Request</h3>

```http
POST https://your-server.com/callback-url

```
<h3>Expected Response Format</h3>

Respond with a JSON object including:

- **responseExitCode** ✅ HTTP response status code (200 = success)  
- **shouldClose** 🔚 Whether the session ends (`true`) or continues (`false`)  
- **ussdMenu** 📋 The text menu for the user (use \r\n for line breaks)  
- **responseMessage** ℹ️ Optional info or error message

## Request body

- object
  - `shortCode` string, required — The dedicated shortcode assigned
  - `msIsdn` string, required — End user's phone number
  - `text` string, required — User input during session
  - `sessId` string, required — Unique USSD session ID
  - `ussdGwId` string, required — Operator handling the session (MTN, Vodafone, AirtelTigo)
  - `language` string — Optional session language
  - `imsi` string — IMSI of the SIM card (if available)
  - `optional` string — Extra parameters from operator

## Response `200`

Success - Return USSD response

- object
  - `responseExitCode` integer
  - `shouldClose` boolean
  - `ussdMenu` string
  - `responseMessage` string

---

[API](https://skmtc.dev/mnotify/apis/bms-documentation.md) · [All operations](https://skmtc.dev/mnotify/apis/bms-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/mnotify/bms-documentation/revisions/c06855f2ed03/schema)
