Building, integrating, or customizing apps and workflows within Microsoft Teams using developer tools and APIs
There is no documented API or supported admin operation to rename an existing personal bot chat; keep the current bot ID, treat the stale title as a Teams service issue, and open a Microsoft support case if it must be corrected tenant-wide.
Answers to the three questions
1. Is the name stored on the existing chat?
The observed behavior is consistent with persisted server-side conversation or participant metadata:
- The catalog definition and installed-app projection already return the new name.
- Sign-out temporarily shows the new name, but synchronization restores the old one.
- Your outgoing activities do not supply
from.name.
However, Microsoft’s public documentation does not explicitly state that a personal bot chat captures name.short when first created, so that storage mechanism should not be treated as a documented contract.
Graph exposes a 1:1 chat as a distinct chat resource and provides an operation to retrieve the chat associated with a particular user installation ^1^. Unlike a group chat, a oneOnOne chat has a fixed roster ^2^.
2. Does uninstall/reinstall create a new conversation ID?
Do not rely on it doing so. The documentation confirms that uninstalling a personal app disables bot messaging—messages sent by either side receive 403—but it does not promise deletion of the chat or creation of a new conversation on reinstall ^3^.
Teams chat history is cloud-backed and normally returns after reinstalling the client, further distinguishing installation state from stored chat state ^4^. Consequently, uninstall/reinstall may reconnect the app to the existing 1:1 thread and preserve its old title.
You can determine the actual behavior in a test account without assuming it:
- Before uninstalling, obtain the personal installation ID.
- Retrieve and record its associated chat ID:
GET /v1.0/users/{user-id}/teamwork/installedApps/{installation-id}/chat
Authorization: Bearer {token}
- Uninstall and reinstall the app.
- Obtain the new installation ID and call the same endpoint.
- Compare the returned
chat.idvalues.
The least-privileged delegated permission for reading this relationship is TeamsAppInstallation.ReadForUser; the application permission is TeamsAppInstallation.ReadForUser.All ^1^.
This test establishes what happened for that account, but it does not turn conversation replacement on reinstall into a supported guarantee.
3. Can the existing title be refreshed centrally?
No documented operation is available:
-
PATCH /chats/{chat-id}can updatetopiconly whenchatTypeisgroup; it cannot rename aoneOnOnechat ^5^. - Reposting the app package updates an organization-catalog app definition, but the update API does not document rewriting metadata on existing personal chats ^6^.
- Installation/conversation events let the bot react to installation and membership changes; they do not expose a command for changing a personal chat title ^3^.
Since the old value returns after synchronization, clearing the desktop cache is unlikely to provide a durable tenant-wide correction. It may rebuild local state, but it cannot edit server-side chat metadata.
Do not change botId merely to force the rename
Changing bots.botId creates a new bot identity and conversation chain, with permanent loss of the existing interaction history in the new thread. Microsoft’s validation guidance explicitly warns against changing the bot ID during an app update ^7^.
That is appropriate only for an intentional identity migration where a new thread and loss of continuity are accepted—not as a repair for stale branding.
Escalation data
Open a Microsoft 365 support request and include:
- Tenant ID and affected user IDs through the secure support channel.
- Teams app catalog ID, manifest app ID, and unchanged
botId. - Old and new manifest versions and
name.shortvalues. - The associated
chat.idfrom the Graph operation above. - Timestamps showing when the new name appears and when it reverts.
- Reproduction in Teams web and desktop.
- Graph responses showing the current app definition and installed-app display name.
This gives support enough information to distinguish a service-side conversation-metadata defect from a client cache issue without repeating the causes already ruled out.
References