May 17 2023 03:43 AM
I am trying to find a script which can fetch details of MS teams created in last 10 mins. I need the output to be created in 10 mins or less than 10 mins. Please advise if this is possible to achieve.
May 17 2023 05:52 AM
Yes, it is possible to achieve this using the Microsoft Graph API and a scripting language like Python. The Microsoft Graph API allows you to interact with Microsoft Teams and retrieve various details, including information about recently created teams.
Here's an example script using the Python programming language and the Microsoft Graph API to fetch details of MS Teams created in the last 10 minutes:
```python
import requests
import datetime
import time
# Microsoft Graph API endpoint for teams
teams_endpoint = "https://graph.microsoft.com/v1.0/groups?$filter=resourceProvisioningOptions/Any(x:x eq 'Team')&$select=id,displayName,createdDateTime"
# Calculate the start time 10 minutes ago
start_time = datetime.datetime.now() - datetime.timedelta(minutes=10)
# Convert start time to ISO 8601 format
start_time_iso = start_time.strftime("%Y-%m-%dT%H:%M:%S")
# Request headers
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
# Send the request to the Microsoft Graph API
response = requests.get(teams_endpoint, headers=headers)
# Check the response status code
if response.status_code == 200:
# Parse the response JSON
data = response.json()
# Filter teams created within the last 10 minutes
recent_teams = [team for team in data["value"] if team["createdDateTime"] >= start_time_iso]
# Print the details of the recent teams
for team in recent_teams:
team_name = team["displayName"]
team_id = team["id"]
created_time = team["createdDateTime"]
print(f"Team Name: {team_name}")
print(f"Team ID: {team_id}")
print(f"Created Time: {created_time}")
print("--------")
else:
print(f"Error: {response.status_code} - {response.text}")
```
In the script above, you need to replace `"YOUR_ACCESS_TOKEN"` with an actual access token that is authorized to access the Microsoft Graph API. You can refer to the Microsoft Graph API documentation to learn more about authentication and obtaining an access token.
Please note that this script assumes you have the necessary permissions to access Microsoft Teams data via the Microsoft Graph API and that you have registered your application with the required permissions. Additionally, you may need to install the `requests` library using `pip install requests` if you don't have it already.
Keep in mind that the script's execution time may vary depending on the network latency and the number of teams created within the specified timeframe.
If I have answered your question, please mark your post as Solved If you like my response, please give it a Like Appreciate your Kudos! Proud to contribute! 🙂 |
May 18 2023 05:21 AM
May 19 2023 04:47 AM
Hi @Anju_Singh ,
Here's an example script that demonstrates how you can achieve this:
# Install and import the Microsoft Teams PowerShell module
Install-Module -Name PowerShellGet -Force -AllowClobber -SkipPublisherCheck
Install-Module -Name MicrosoftTeams -Force -AllowClobber -SkipPublisherCheck
# Import the module
Import-Module MicrosoftTeams
# Connect to Microsoft Teams using your credentials
Connect-MicrosoftTeams
# Retrieve all Teams
$allTeams = Get-Team
# Get the current time
$currentTime = Get-Date
# Define the time range (e.g., 10 minutes)
$timeRange = New-TimeSpan -Minutes 10
# Filter Teams created within the last 10 minutes
$newTeams = $allTeams | Where-Object { ($currentTime - $_.WhenCreated) -lt $timeRange }
# Display details of the new Teams
$newTeams | Format-Table DisplayName, WhenCreated, GroupId
In this script, we first install the required PowerShell module (MicrosoftTeams) if it's not already installed. Then we import the module and connect to Microsoft Teams using your credentials. After that, we retrieve all the Teams in your environment.
We then get the current time using Get-Date and define the desired time range using New-TimeSpan. In this example, we set the time range to 10 minutes.
Next, we filter the Teams based on their creation time using the Where-Object cmdlet. The Teams whose creation time falls within the defined time range are stored in the $newTeams variable.
Finally, we display the details of the newly created Teams by formatting and outputting the DisplayName, WhenCreated, and GroupId properties.
Please note that the script assumes you have the necessary permissions to access the Teams information in your environment. Additionally, make sure you have the required PowerShell module (MicrosoftTeams) installed before running the script.
If I have answered your question, please mark your post as Solved If you like my response, please give it a Like Appreciate your Kudos! Proud to contribute! 🙂 |