The Complete Wiki to Discord Embedded App SDK Changes
A command rename is coming for Discord Activities.
getInstanceConnectedParticipants is now getActivityInstanceConnectedParticipants.
Here is how to migrate before the old name disappears. ⚠️
📝 Note: Discord says the old name will be removed in a future major version, but has not published a date.
What Changed
Discord’s developer change log says the Embedded App SDK command was renamed. The previous name will be removed in a future major version.
The command returns every participant connected to the current Activity instance. It needs no scopes.
| Item | Old | New |
|---|---|---|
| Command | getInstanceConnectedParticipants | getActivityInstanceConnectedParticipants |
| Event | ACTIVITY_INSTANCE_PARTICIPANTS_UPDATE | No change |
| Scopes | None required | None required |
Key fact: The change covers the command name. The participants update event is listed under its existing name.
In plain JavaScript, a removed command fails at runtime with an error, so test before upgrading.
Why the Docs Still Show the Old Name
At the time of writing, some Discord docs pages and community libraries still show the old command name. Discord’s multiplayer guide example calls the old command, while its response type already uses the new name.
⚠️ Heads up: Do not assume copied examples are current. Check the installed SDK typings for the exact command name.
How to Migrate
🔧 Quick Migration Flow
🔎 1. Search your code for the old command name
↓
🔄 2. Update @discord/embedded-app-sdk to the latest version
↓
✏️ 3. Replace each call with the new name
↓
🧪 4. Test in a live voice channel instance
↓
📌 5. Remove any fallback before the next major release
// Before
const people = await discordSdk.commands.getInstanceConnectedParticipants();
// After
const people = await discordSdk.commands.getActivityInstanceConnectedParticipants();Need to support older SDK versions during the transition? Use a temporary fallback.
const cmds = discordSdk.commands;
const people = typeof cmds.getActivityInstanceConnectedParticipants === "function"
? await cmds.getActivityInstanceConnectedParticipants()
: await cmds.getInstanceConnectedParticipants();- Updating types only. The response type already uses the new name, so the command call can still be outdated.
- Skipping real tests. Mocked SDKs hide rename problems.
💡 Tip: Wrap participant calls in one helper function, so a future rename needs only one edit.
Testing and Participant Updates
Participant data is most useful for presence, such as showing who is in the session. Pair the fetch with the update event so your list stays current.
- Fetch once on start. Load the current participants after the SDK is ready.
- Subscribe to updates. Refresh your list when ACTIVITY_INSTANCE_PARTICIPANTS_UPDATE fires.
- Unsubscribe on cleanup. Remove listeners when your component unmounts.
🔐 Reminder: Participant lists describe presence. Your backend should still own game state and authorization.
Release Planning Checklist
Treat the rename like any deprecation. Small steps now prevent a rushed fix later.
| Task | Owner | When |
|---|---|---|
| Search for old name | Developer | This week |
| Update SDK version | Developer | This sprint |
| Test in a live voice channel | QA | Before release |
| Remove fallback | Developer | Before next major |
Pin your SDK version in package.json so surprise major upgrades do not break production.
📝 Note: Watch Discord’s change log for the release that removes the old name.
For official details, read Discord’s change log, the Embedded App SDK reference and the multiplayer experience guide. Want to swap tips with Activity developers? Browse communities on discords.ai.
FAQ
What was renamed?
getInstanceConnectedParticipants is now getActivityInstanceConnectedParticipants in the Embedded App SDK.
When will the old name stop working?
Discord says it will be removed in a future major version, without giving a date.
Do I need new OAuth scopes?
No. The reference lists no required scopes for this command.
Does the update event change?
The reference still lists ACTIVITY_INSTANCE_PARTICIPANTS_UPDATE, so your subscriptions should keep working.
Why do some examples use the old name?
Docs and community libraries can lag behind SDK changes. Always verify against your installed version.
Should I keep a fallback?
Only while you support older SDK versions. Remove it before the next major release.
Will TypeScript catch the rename?
It can if your installed SDK typings no longer include the old name, so update and run a type check.
What does the command return?
Every participant connected to the current Activity instance.
Where is the official announcement?
See Discord’s developer change log.
Where is the command reference?
Read the Embedded App SDK reference.

Comments
Sign in to join the conversation
Sign inNo comments yet
Be the first to share your thoughts!