Hi Anand,
Viva engage does not provide a built-in function to export community members. However, I found it might be achieved using powershell scripts and API token. Though I tested it successfully on my end, please be noted it will have some risk to run the script. Here are details for your reference.
- Go to https://www.yammer.com/client_applications to create an App and generate the token.



- Enter the correct token in below script and run it.
PowerShell script to export Yammer groups, members and admins
Pre-requisite: Enable Private Content Mode so the export includes private groups you're not a member of
Remember to clean up token & revert Content Mode when complete
Set variables
$Token = "21XXXXXXXXX-0erMknXXXXXXX7ORqr0w" $Headers = @{
"Authorization" = "Bearer "+$Token
}Get a list of Yammer groups. Calls in pages as each search is limited to 50 results
$GroupCycle = 1
DO {
$GetMoreGroupsUri = "https://www.yammer.com/api/v1/groups.json?page=$GroupCycle"
write-host ($GetMoreGroupsUri)
$MoreYammerGroups = (Invoke-WebRequest -Uri $GetMoreGroupsUri -Method Get -Headers $Headers).content | ConvertFrom-Json
$YammerGroups += $MoreYammerGroups
$GroupCycle ++
$GroupCount = $YammerGroups.Count
}
While ($MoreYammerGroups.Count -gt 0) $YammerGroups | Export-Csv group-export.csv -NoTypeInformation
$YammerGroups | select type,id,full_name,privacy,created_atFor each group, list the members and the admins. Calls in pages as each search is limited to 50 results
$GroupAdmins = @()
$GroupMembers = @()
$GroupSummary = @()
$GroupCount = 0
foreach ($group in $YammerGroups) {
$GroupId = $group.id
[string]$GroupCreatedAt = $group.created_at
$GroupCycle = 1
DO {
if ($GroupCycle -eq 1) { $AdminCount = 0; $GroupCount = 0 }
$GetGroupMembersUri = "https://www.yammer.com/api/v1/groups/$GroupId/members.json?page=$GroupCycle"
write-host ("REST API CALL : $GetGroupMembersUri")
$MoreGroupMembers = ((Invoke-WebRequest -Uri $GetGroupMembersUri -Method Get -Headers $Headers).content | ConvertFrom-Json).users | select @{N='group_id';E={$group.id}},@{N='group_name';E={$group.full_name}}, @{N='group_privacy';E={$group.privacy}}, @{N='group_show_in_directory';E={$group.show_in_directory}}, @{N='group_created_at';E={$GroupCreatedAt}}, type, @{N='user_id';E={$_.id}}, full_name, email, state, is_group_admin
foreach ($member in $MoreGroupMembers) {
if ($member.is_group_admin -eq "True") {
$GroupAdmins += $member
$AdminCount ++
}
$GroupMembers += $member
$GroupCount ++
}
$GroupCycle ++
}
While ($MoreGroupMembers.count -gt 0)
$groupResult = @{
Group_Name = $group.full_name
ID = $group.id
State = $group.state
Privacy = $group.privacy
Show_In_Directory = $group.show_in_directory
Created = $group.created_at
Member_Count = $GroupCount
Admin_Count = $AdminCount
}
$groupObject = New-Object -TypeName PSObject -Property $groupResult
$groupSummary += $groupObject
#$groupSummary += $groupResult
write-output $groupObject
}Export the results to CSV files
$groupSummary | Select Group_Name, ID, State, Privacy, Show_In_Directory, Created, Member_Count, Admin_Count | export-csv group-summary.csv -NoTypeInformation
$groupAdmins | export-csv group-admin-export.csv -NoTypeInformation
$groupMembers | export-csv group-member-export.csv -NoTypeInformation
After that, you will get members of each community in 4 .csv files.

At last, if the information we provided give some direction for the issue, please vote at bottom of the answer, with your vote, other users who are facing same query can easily find this thread and check suggestion when they search on community. Your vote helps other user to resolve their queries.
Thank you for your cooperation and have a nice day!
Best Regards,
Sophia