Skip to content

vivaModuleFeatures

Viva Feature Catalog. Browse available Viva module features that admins can govern. The vivaModuleFeatures entity set lives under /exchange/v1.0/vivaModuleFeatures in the Organization category.

Fact Value
Path /exchange/v1.0/vivaModuleFeatures
Category Organization
Tier Tier 9, Hybrid and organization
Read role OrganizationConfig.Read.All (Community)
Write role none (read-only)
Backing cmdlets Get-VivaModuleFeature
Method Path Synopsis Role Plan
GET /exchange/v1.0/vivaModuleFeatures GET /vivaModuleFeatures?moduleId=<name> - list features available within a Viva module. Block 5 live-verify 2026-05-28: moduleId is REQUIRED at runtime even though Wiki SYNTAX marks it optional. OrganizationConfig.Read Community
GET /exchange/v1.0/vivaModuleFeatures/{key} Get a single Viva module feature by FeatureId (key) + ?moduleId=. Composite-key lookup; both are required. OrganizationConfig.Read Community

GET /vivaModuleFeatures?moduleId=<name> - list features available within a Viva module. Block 5 live-verify 2026-05-28: moduleId is REQUIRED at runtime even though Wiki SYNTAX marks it optional.

Backing cmdlet: Get-VivaModuleFeature. Role: OrganizationConfig.Read (Community).

Parameter In Type Required Description
moduleId query string REQUIRED: Viva module id (e.g. VivaInsights, VivaLearning).
all query bool (switch) Return all results instead of the EXO default of 1000. Maps -ResultSize Unlimited on Get-VivaModuleFeature; prevents silent truncation.

Stub auto-generated example for the vivaModuleFeatures collection. Backing cmdlet: Get-VivaModuleFeature. Live-verify with ?$top=3&$select=Id,Name and replace the synthetic body before promoting to Tier 1.

GET /exchange/v1.0/vivaModuleFeatures?$top=3&moduleId=VivaInsights HTTP/1.1
Authorization: Bearer {token}
HTTP/1.1 200 OK
{
"@odata.context": "http://localhost:5043/exchange/v1.0/$metadata#vivaModuleFeatures",
"value": []
}

Notes: Illustrative example derived from the cmdlet documentation, not a live capture: field names are real, values are placeholders.

Related: GET /exchange/v1.0/vivaModuleFeatures/{key}

GET /exchange/v1.0/vivaModuleFeatures/{key}

Section titled “GET /exchange/v1.0/vivaModuleFeatures/{key}”

Get a single Viva module feature by FeatureId (key) + ?moduleId=. Composite-key lookup; both are required.

Backing cmdlet: Get-VivaModuleFeature. Role: OrganizationConfig.Read (Community).

Parameter In Type Required Description
moduleId query string REQUIRED: Viva module id (composite key with FeatureId in URL).

Get a single Viva module feature: Get-VivaModuleFeature with -ModuleId <moduleId> -FeatureId {key} (both required).

GET /exchange/v1.0/vivaModuleFeatures/{key}?moduleId=VivaInsights HTTP/1.1
Authorization: Bearer {token}
HTTP/1.1 200 OK
{
"@odata.context": "http://localhost:5043/exchange/v1.0/$metadata#vivaModuleFeatures/$entity"
}

Notes: Illustrative example derived from the cmdlet documentation, not a live capture: field names are real, values are placeholders.

Related: GET /exchange/v1.0/vivaModuleFeatures