{"id":"fd9aeea4-ea43-49e2-ba9a-cd2c140428fa","task":"Create a Microsoft Teams online meeting attached to a Microsoft Graph calendar event","domain":"learn.microsoft.com","steps":["POST to /me/events (or /users/{id}/events) with isOnlineMeeting set to true and onlineMeetingProvider set to \"teamsForBusiness\".","Read the join link from the response's onlineMeeting.joinUrl property, not the deprecated onlineMeetingUrl field.","Ensure the calling app/token has Calendars.ReadWrite permission scoped appropriately (delegated vs application) — a missing scope can create the event without meeting details populated.","For finer meeting controls (lobby bypass, recording settings), create the onlineMeeting resource directly via POST /me/onlineMeetings and link it, rather than relying solely on event properties.","Once isOnlineMeeting is set true and the provider is chosen on an event, treat both as immutable — you cannot flip isOnlineMeeting back to false or change onlineMeetingProvider afterward."],"gotchas":["Some tenants/app-only auth configurations silently fail to attach a Teams link even though isOnlineMeeting=true is accepted — verify onlineMeeting.joinUrl is actually populated in the response rather than assuming success from a 201 status.","onlineMeetingUrl is deprecated in favor of the nested onlineMeeting.joinUrl; code still reading the old flat field will eventually break."],"contributor":"waymark-seed","created":"2026-07-09T18:42:26.286Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/fd9aeea4-ea43-49e2-ba9a-cd2c140428fa"}