Przejdź do głównej zawartości

Jak dodać wydarzenie do kalendarza Microsoft za pomocą Graph API

Microsoft Graph API umożliwia integrację z usługami Microsoft 365, w tym z kalendarzem użytkownika. Można tworzyć, aktualizować, usuwać i pobierać wydarzenia w kalendarzu. W tym wpisie przedstawimy przykłady skryptów w PHP i Pythonie do dodania wydarzenia do kalendarza.

1. Przygotowanie aplikacji w Azure AD

Aby uzyskać dostęp do kalendarza, musisz najpierw zarejestrować aplikację w Azure Active Directory. Oto kroki:

  • Wejdź na Azure Portal i zarejestruj aplikację.
  • Uzyskaj identyfikator aplikacji (Client ID) i tajny klucz (Client Secret).
  • Skonfiguruj zakresy uprawnień: Calendars.ReadWrite.

2. PHP Skrypt do dodania wydarzenia do kalendarza Microsoft


 $clientId,
    'client_secret' => $clientSecret,
    'grant_type' => 'client_credentials',
    'scope' => 'https://graph.microsoft.com/.default',
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $tokenUrl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$token = json_decode($response)->access_token;
curl_close($ch);

// Dodanie wydarzenia
$calendarUrl = "https://graph.microsoft.com/v1.0/users/$userId/calendar/events";
$eventData = [
    'subject' => 'Spotkanie zespołu',
    'body' => [
        'contentType' => 'HTML',
        'content' => 'Omówienie projektu',
    ],
    'start' => [
        'dateTime' => '2025-05-09T09:00:00',
        'timeZone' => 'Europe/Warsaw',
    ],
    'end' => [
        'dateTime' => '2025-05-09T10:00:00',
        'timeZone' => 'Europe/Warsaw',
    ],
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $calendarUrl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer $token",
    "Content-Type: application/json",
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($eventData));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);

echo $response;
?>

3. Python Skrypt do dodania wydarzenia do kalendarza Microsoft


import requests

client_id = 'YOUR_CLIENT_ID'
client_secret = 'YOUR_CLIENT_SECRET'
tenant_id = 'YOUR_TENANT_ID'
user_id = 'USER_ID'

# Uzyskanie tokenu dostępu
token_url = f"https://login.microsoftonline.com/{tenant_id}/oauth2/v2.0/token"
data = {
    'client_id': client_id,
    'client_secret': client_secret,
    'grant_type': 'client_credentials',
    'scope': 'https://graph.microsoft.com/.default',
}
response = requests.post(token_url, data=data)
token = response.json().get('access_token')

# Dodanie wydarzenia
calendar_url = f"https://graph.microsoft.com/v1.0/users/{user_id}/calendar/events"
event_data = {
    "subject": "Spotkanie zespołu",
    "body": {
        "contentType": "HTML",
        "content": "Omówienie projektu",
    },
    "start": {
        "dateTime": "2025-05-09T09:00:00",
        "timeZone": "Europe/Warsaw",
    },
    "end": {
        "dateTime": "2025-05-09T10:00:00",
        "timeZone": "Europe/Warsaw",
    },
}

headers = {
    "Authorization": f"Bearer {token}",
    "Content-Type": "application/json",
}
response = requests.post(calendar_url, headers=headers, json=event_data)
print(response.json())

4. Podsumowanie

Powyższe skrypty umożliwiają automatyczne dodawanie wydarzeń do kalendarza Microsoft za pomocą Microsoft Graph API. Wystarczy uzupełnić dane autoryzacyjne i uruchomić skrypt w odpowiednim środowisku.

Komentarze

Popularne posty z tego bloga

🔒 Jak wdrożyć HTTPS w Apache za pomocą mkcert – prosta i bezpieczna konfiguracja SSL

Bezpieczeństwo połączenia HTTPS to dziś standard — nawet w sieciach lokalnych i aplikacjach testowych. W tym poradniku pokażę Ci, jak w prosty sposób wdrożyć SSL w Apache z pomocą narzędzia mkcert , które tworzy w pełni zaufane certyfikaty lokalne — bez potrzeby kontaktu z Let’s Encrypt czy urzędami certyfikacji. 🧩 Dlaczego warto używać mkcert? mkcert to lekkie narzędzie, które automatycznie generuje certyfikaty zaufane przez przeglądarkę — bez ostrzeżeń o „niebezpiecznym połączeniu”. ✅ działa w sieci lokalnej, ✅ nie wymaga dostępu do Internetu, ✅ certyfikaty są natychmiast zaufane po instalacji CA, ✅ idealne dla środowisk firmowych i intranetów. ⚙️ Krok 1: Instalacja Apache sudo apt update sudo apt install apache2 -y sudo systemctl enable apache2 sudo systemctl start apache2 Po instalacji otwórz w przeglądarce: http://10.0.0.123 Powinna się wyświetlić strona powitalna Apache. 🔧 Krok 2: Instalacja mkcert sudo apt install libnss3-tools wget...

Polityka wykonawcza skryptów w PowerShellu

Polityka wykonawcza (Execution Policy) w PowerShell – co to jest i jak ją zmienić? PowerShell to potężne narzędzie do automatyzacji i zarządzania systemem Windows. Jednak domyślne ustawienia bezpieczeństwa mogą uniemożliwić uruchamianie skryptów. W tym wpisie wyjaśniam, czym jest polityka wykonawcza (Execution Policy), jak ją sprawdzić i zmienić, aby móc swobodnie korzystać z PowerShell. Czym jest polityka wykonawcza (Execution Policy)? Polityka wykonawcza to mechanizm bezpieczeństwa w PowerShell, który kontroluje, jakie skrypty mogą być uruchamiane na systemie. Ma ona na celu zapobieganie przypadkowemu lub złośliwemu uruchomieniu niebezpiecznych skryptów. Dostępne polityki wykonawcze PowerShell oferuje kilka poziomów polityki wykonawczej: Restricted – domyślna polityka. Blokuje wszystkie skrypty PowerShell. Można uruchamiać tylko polecenia wprowadzane bezpośrednio w konsoli. AllSigned – pozwala na uruchamianie tylko skryptów pod...

Automatyczna instalacja Office przez GPO

Automatyczna instalacja Office przez GPO Wprowadzenie W środowisku firmowym, gdzie wiele komputerów pracuje w domenie, często pojawia się potrzeba automatycznej instalacji pakietu Office na stacjach roboczych. Jednym z najwygodniejszych sposobów realizacji tego zadania jest wykorzystanie polityk grupowych (GPO) oraz skryptów instalacyjnych. W tym artykule przeprowadzimy Cię krok po kroku przez cały proces. Problem z GPO - niepotrzebne ponowne uruchamianie instalacji Podczas konfiguracji polityki GPO do instalacji Office, może wystąpić problem, w którym skrypt uruchamia się za każdym razem podczas logowania . Dzieje się tak dlatego, że skrypt umieszczony w lokalizacji: Konfiguracja komputera -> Zasady -> Ustawienia systemu Windows -> Skrypty (Uruchamianie/Zamykanie) -> Uruchamianie ...będzie wykonywany przy każdym starcie systemu, co powoduje ponowną instalację Office. Jak rozwiązać problem? Trzy skuteczne metody 1. Warunkowe sprawdzenie instalacji Dodaj sprawd...