Building, integrating, or customizing apps and workflows within Microsoft Teams using developer tools and APIs
Microsoft does not publicly document named video-filter registration as supported for organisation-catalogue apps; the only documented package contract is the devPreview manifest, which is limited to direct upload, so first test the affected user with VideoFiltersMode=AllFilters and one directly uploaded package before escalating client registration to Microsoft.
Explicit answers
- Can an arbitrary private app register a named tile?
There is no public Microsoft documentation confirming that the current New Teams desktop client enables named video-filter tiles for arbitrary private, organisation-catalogue, or sideloaded apps. The schema definesmeetingExtensionDefinition.videoFilters, including the required GUID, name, and thumbnail, but schema acceptance alone does not establish client-side enablement for a tenant or build.^1^ - Is it restricted or allowlisted?
The available documentation does not specify whether registration is restricted to Microsoft, Store publishers, approved publishers, or an allowlist. Therefore, a definitive platform-level yes or no for build26260.1717.5220.7049requires Microsoft support or the Teams engineering team. - Which manifest should be used?
For this feature, use exactly:
Keep the filter declaration under{ "$schema": "https://developer.microsoft.com/json-schemas/teams/vDevPreview/MicrosoftTeams.schema.json", "manifestVersion": "devPreview" }meetingExtensionDefinition, withid,name, and package-relativethumbnail, plusvideoFiltersConfigurationUrl. The filter ID must be a GUID; the name has a maximum length of 128 characters.^1^ Do not retry manifest 1.29: your validation result is consistent with these properties being available only in the preview schema. - Is additional configuration required?
No public documentation identifies an Entra registration or tenant entitlement that activates tile registration. Your RSC permissions are valid delegated permissions:CameraStream.Read.Userreads the user’s camera stream andOutgoingVideoStream.Write.Usermodifies the user’s outgoing video.^2^ They address frame access after activation, not documented gallery registration. - Is there a programme or timeline?
Developer Preview is the documented public programme; no publication timeline for this capability is stated. Preview features are for testing and exploration, may change, and should not be used in production.^3^
Two remaining discriminating tests
1. Check the affected user’s meeting policy
Have an administrator inspect the meeting policy assigned to this specific user and verify:
Teams admin center → Meetings → Meeting policies → assigned policy → Participants can use video effects → All video effects
The corresponding PowerShell value is:
Set-CsTeamsMeetingPolicy `
-Identity "<assigned-policy-name>" `
-VideoFiltersMode AllFilters
BlurandDefaultBackgrounds permits blur and Microsoft’s default backgrounds, which closely matches the reported gallery; seeing those effects does not prove that the user has AllFilters.^4^
After the policy has propagated, fully quit Teams, reopen it, and retest in a new meeting. This policy governs effect availability; it does not by itself prove that third-party tile registration is supported.
2. Run one clean direct-upload compatibility test
Developer-preview packages cannot be published to the Teams Store and are documented as installable only through direct upload.^5^ An organisation catalogue is supported for ordinary custom apps, but that general catalogue support does not override the developer-preview distribution restriction.^6^
- Remove both existing copies so catalogue and sideloaded installations cannot conflict.
- Change the filter name from
MyVyybe 2.1to a category-prefixed test value such asOthers_MyVyybe 2.1. - Increment the package version.
- Upload only the
devPreviewZIP through Apps → Manage your apps → Upload an app. - Restart Teams and test a fresh meeting.
The category prefix is a compatibility experiment, not a current schema requirement. An older Microsoft sample commit was explicitly titled “Filter names should start with a category”; its examples changed names to Others_half and Others_gray scale. Because this predates current New Teams, failure after this test should not trigger further speculative manifest changes.
If the tile still does not appear
Open a Microsoft 365 support case requesting confirmation of video-filter provider registration enablement, attaching:
- both ZIP packages and validation output;
- Teams version and preview ring;
- assigned
VideoFiltersMode; - Teams client logs from the failed meeting;
- tenant ID and UTC reproduction time supplied privately through the support case;
- confirmation that a single category-prefixed
devPreviewpackage was directly uploaded.
Ask Microsoft to confirm whether meetingExtensionDefinition.videoFilters is enabled for arbitrary third-party tenants on that client build, and whether the tenant/app/publisher must be feature-flagged or allowlisted.
References