Do not mix the identifiers. miniapp_id is a signed business id generated by MPChat; shortName is a per-bot link name; entryUrl is the page users open. They play different roles.
Overview
An MPChat MiniApp is a web app opened inside MPChat. The current phase focuses on opening the MiniApp, exposing signed init data, and letting your backend verify user identity. It does not implement the full WebApp JavaScript API.
Core identifiers
Name | Source | Purpose |
miniapp_id | Generated by MPChat when you create the MiniApp (looks like | Business id; appears in the signed |
shortName | The short link name you set at creation. | Combines with the bot username to form a direct link. Unique under one bot. |
entryUrl | The H5 entry URL you set at creation. | The page users open; used as |
botUsername | The bot username. | First path segment of a direct link. |
Direct link rules
https://mp.net/{botUsername}/{shortName}
Do not include
@in the path.shortNameis unique under the same bot; different bots may reuse the same name.Passing only
botUsernameresolves the bot but selects no default MiniApp — includeshortName.A launch parameter is delivered in signed
initData.start_param; the frontend readsinitDataUnsafe.startParamfor routing.
How creation and opening connect
Create the MiniApp (for example via BotFather
/newapp); recordminiapp_id,shortName,entryUrl.Open via a sendMessage
web_appbutton or a direct link.When opened, MPChat generates a signed launch context; the backend confirms which MiniApp the request belongs to using the signed
miniapp_id.
Related
miniapp_id is not a frontend-defined page id and is not the same as shortName. Always trust the signed value in raw initData, never an unsigned one from the frontend.
