Этот API создает изолированное собрание, которое не связано ни с каким событием в календаре пользователя; Поэтому собрания, созданные с помощью этого API, не отображаются в календаре пользователя.
Этот API не создает динамическое событие Teams.
Чтобы получить расшифровку собраний на более позднем этапе, используйте API создания событий с поддержкой календаря.
Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
Тип разрешения
Разрешения с наименьшими привилегиями
Более высокие привилегированные разрешения
Делегированные (рабочая или учебная учетная запись)
OnlineMeetings.ReadWrite
Недоступно.
Делегированные (личная учетная запись Майкрософт)
Не поддерживается.
Не поддерживается.
Для приложений
Не поддерживается.
Не поддерживается.
Чтобы использовать разрешение приложения для этого API, администраторы клиента должны создать политику доступа к приложению и предоставить ее пользователю для авторизации приложения, настроенного в политике, для создания собраний в Интернете от имени этого пользователя (с пользовательским идентификатором, указанным в пути запроса).
HTTP-запрос
Для создания собрания по сети с делегированным разрешением (/me) и разрешением приложения (/users/{userId}):
POST /me/onlineMeetings
POST /users/{userId}/onlineMeetings
Если запрос содержит Accept-Language HTTP-заголовок, то content из joinInformation будет указан на языке и языкового стандарта, указанного в заголовке Accept-Language. Содержимое по умолчанию — на английском языке.
Текст запроса
В тексте запроса должно быть представление объекта onlineMeeting в формате JSON.
Предостережение
Назначение presenter роли или coorganizer пользователям, которые не зарегистрированы в Идентификаторе Microsoft Entra, в настоящее время не поддерживается.
Отклик
В случае успешного выполнения этот метод возвращает код отклика 201 Created и объект onlineMeeting в тексте отклика.
Примеры
Пример 1. Создание собрания по сети с помощью маркера пользователя
В приведенном ниже примере показано, как создать собрание по сети с помощью маркера пользователя.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new OnlineMeeting
{
StartDateTime = DateTimeOffset.Parse("2019-07-12T14:30:34.2444915-07:00"),
EndDateTime = DateTimeOffset.Parse("2019-07-12T15:00:34.2464912-07:00"),
Subject = "User Token Meeting",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Me.OnlineMeetings.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
"time"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewOnlineMeeting()
startDateTime , err := time.Parse(time.RFC3339, "2019-07-12T14:30:34.2444915-07:00")
requestBody.SetStartDateTime(&startDateTime)
endDateTime , err := time.Parse(time.RFC3339, "2019-07-12T15:00:34.2464912-07:00")
requestBody.SetEndDateTime(&endDateTime)
subject := "User Token Meeting"
requestBody.SetSubject(&subject)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
onlineMeetings, err := graphClient.Me().OnlineMeetings().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
OnlineMeeting onlineMeeting = new OnlineMeeting();
OffsetDateTime startDateTime = OffsetDateTime.parse("2019-07-12T14:30:34.2444915-07:00");
onlineMeeting.setStartDateTime(startDateTime);
OffsetDateTime endDateTime = OffsetDateTime.parse("2019-07-12T15:00:34.2464912-07:00");
onlineMeeting.setEndDateTime(endDateTime);
onlineMeeting.setSubject("User Token Meeting");
OnlineMeeting result = graphClient.me().onlineMeetings().post(onlineMeeting);
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.online_meeting import OnlineMeeting
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = OnlineMeeting(
start_date_time = "2019-07-12T14:30:34.2444915-07:00",
end_date_time = "2019-07-12T15:00:34.2464912-07:00",
subject = "User Token Meeting",
)
result = await graph_client.me.online_meetings.post(request_body)
Пример 2. Создание собрания по сети, для чего требуется секретный код
В следующем примере показано, как добавить секретный код к собранию. Секретный код используется при присоединении к собранию с идентификатором joinMeetingId. Дополнительные сведения см. в разделе joinMeetingIdSettings.
Запрос
Ниже приведен пример запроса.
Заметка: Секретный код создается автоматически, а настраиваемый секретный код не поддерживается.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new OnlineMeeting
{
StartDateTime = DateTimeOffset.Parse("2019-07-12T14:30:34.2444915-07:00"),
EndDateTime = DateTimeOffset.Parse("2019-07-12T15:00:34.2464912-07:00"),
Subject = "User meeting",
JoinMeetingIdSettings = new JoinMeetingIdSettings
{
IsPasscodeRequired = true,
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Me.OnlineMeetings.PostAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
OnlineMeeting onlineMeeting = new OnlineMeeting();
OffsetDateTime startDateTime = OffsetDateTime.parse("2019-07-12T14:30:34.2444915-07:00");
onlineMeeting.setStartDateTime(startDateTime);
OffsetDateTime endDateTime = OffsetDateTime.parse("2019-07-12T15:00:34.2464912-07:00");
onlineMeeting.setEndDateTime(endDateTime);
onlineMeeting.setSubject("User meeting");
JoinMeetingIdSettings joinMeetingIdSettings = new JoinMeetingIdSettings();
joinMeetingIdSettings.setIsPasscodeRequired(true);
onlineMeeting.setJoinMeetingIdSettings(joinMeetingIdSettings);
OnlineMeeting result = graphClient.me().onlineMeetings().post(onlineMeeting);
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.online_meeting import OnlineMeeting
from msgraph.generated.models.join_meeting_id_settings import JoinMeetingIdSettings
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = OnlineMeeting(
start_date_time = "2019-07-12T14:30:34.2444915-07:00",
end_date_time = "2019-07-12T15:00:34.2464912-07:00",
subject = "User meeting",
join_meeting_id_settings = JoinMeetingIdSettings(
is_passcode_required = True,
),
)
result = await graph_client.me.online_meetings.post(request_body)
Пример 3. Создание собрания по сети, для которых не требуется секретный код
Если параметр isPasscodeRequired имеет значение false или если joinMeetingIdSettings не указан в запросе, созданное онлайн-собрание не будет иметь секретный код.
POST https://graph.microsoft.com/v1.0/me/onlineMeetings
Content-Type: application/json
{
"startDateTime":"2019-07-12T14:30:34.2444915-07:00",
"endDateTime":"2019-07-12T15:00:34.2464912-07:00",
"subject":"User meeting in Microsoft Teams channel.",
"joinMeetingIdSettings": {
"isPasscodeRequired": false
}
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new OnlineMeeting
{
StartDateTime = DateTimeOffset.Parse("2019-07-12T14:30:34.2444915-07:00"),
EndDateTime = DateTimeOffset.Parse("2019-07-12T15:00:34.2464912-07:00"),
Subject = "User meeting in Microsoft Teams channel.",
JoinMeetingIdSettings = new JoinMeetingIdSettings
{
IsPasscodeRequired = false,
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Me.OnlineMeetings.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
"time"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewOnlineMeeting()
startDateTime , err := time.Parse(time.RFC3339, "2019-07-12T14:30:34.2444915-07:00")
requestBody.SetStartDateTime(&startDateTime)
endDateTime , err := time.Parse(time.RFC3339, "2019-07-12T15:00:34.2464912-07:00")
requestBody.SetEndDateTime(&endDateTime)
subject := "User meeting in Microsoft Teams channel."
requestBody.SetSubject(&subject)
joinMeetingIdSettings := graphmodels.NewJoinMeetingIdSettings()
isPasscodeRequired := false
joinMeetingIdSettings.SetIsPasscodeRequired(&isPasscodeRequired)
requestBody.SetJoinMeetingIdSettings(joinMeetingIdSettings)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
onlineMeetings, err := graphClient.Me().OnlineMeetings().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
OnlineMeeting onlineMeeting = new OnlineMeeting();
OffsetDateTime startDateTime = OffsetDateTime.parse("2019-07-12T14:30:34.2444915-07:00");
onlineMeeting.setStartDateTime(startDateTime);
OffsetDateTime endDateTime = OffsetDateTime.parse("2019-07-12T15:00:34.2464912-07:00");
onlineMeeting.setEndDateTime(endDateTime);
onlineMeeting.setSubject("User meeting in Microsoft Teams channel.");
JoinMeetingIdSettings joinMeetingIdSettings = new JoinMeetingIdSettings();
joinMeetingIdSettings.setIsPasscodeRequired(false);
onlineMeeting.setJoinMeetingIdSettings(joinMeetingIdSettings);
OnlineMeeting result = graphClient.me().onlineMeetings().post(onlineMeeting);
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\OnlineMeeting;
use Microsoft\Graph\Generated\Models\JoinMeetingIdSettings;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new OnlineMeeting();
$requestBody->setStartDateTime(new \DateTime('2019-07-12T14:30:34.2444915-07:00'));
$requestBody->setEndDateTime(new \DateTime('2019-07-12T15:00:34.2464912-07:00'));
$requestBody->setSubject('User meeting in Microsoft Teams channel.');
$joinMeetingIdSettings = new JoinMeetingIdSettings();
$joinMeetingIdSettings->setIsPasscodeRequired(false);
$requestBody->setJoinMeetingIdSettings($joinMeetingIdSettings);
$result = $graphServiceClient->me()->onlineMeetings()->post($requestBody)->wait();
Import-Module Microsoft.Graph.CloudCommunications
$params = @{
startDateTime = [System.DateTime]::Parse("2019-07-12T14:30:34.2444915-07:00")
endDateTime = [System.DateTime]::Parse("2019-07-12T15:00:34.2464912-07:00")
subject = "User meeting in Microsoft Teams channel."
joinMeetingIdSettings = @{
isPasscodeRequired = $false
}
}
# A UPN can also be used as -UserId.
New-MgUserOnlineMeeting -UserId $userId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.online_meeting import OnlineMeeting
from msgraph.generated.models.join_meeting_id_settings import JoinMeetingIdSettings
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = OnlineMeeting(
start_date_time = "2019-07-12T14:30:34.2444915-07:00",
end_date_time = "2019-07-12T15:00:34.2464912-07:00",
subject = "User meeting in Microsoft Teams channel.",
join_meeting_id_settings = JoinMeetingIdSettings(
is_passcode_required = False,
),
)
result = await graph_client.me.online_meetings.post(request_body)
POST https://graph.microsoft.com/v1.0/me/onlineMeetings
Content-Type: application/json
{
"startDateTime":"2019-07-12T14:30:34.2444915-07:00",
"endDateTime":"2019-07-12T15:00:34.2464912-07:00",
"subject":"User meeting in Microsoft Teams channel."
}
Отклик
Ниже приведен пример отклика.
Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.