Einladung erstellen

Namespace: microsoft.graph

Wichtig

Die APIs unter der /beta Version in Microsoft Graph können sich ändern. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt. Um festzustellen, ob eine API in v1.0 verfügbar ist, verwenden Sie die Version Selektor.

Erstellen Sie eine neue Einladung, oder setzen Sie den Status der Einlösung für einen Gastbenutzer zurück, der seine Einladung bereits eingelöst hat. Die Einladung fügt den externen Benutzer im Rahmen der B2B-Zusammenarbeit der organization hinzu. Die B2B-Zusammenarbeit wird sowohl in Microsoft Entra External ID in workforce als auch in externen Mandanten unterstützt.

Die folgenden Optionen stehen zum Erstellen einer Einladung zur Verfügung:

  1. Bei der Erstellung einer Einladung kann Microsoft Graph automatisch eine Einladungs-E-Mail direkt an den eingeladenen Benutzer senden, oder Ihre App kann die in der Antwort zurückgegebene inviteRedeemUrl verwenden, um Ihre eigene Einladung (über den Kommunikationsmechanismus Ihrer Wahl) an den eingeladenen Benutzer zu erstellen. Wenn Microsoft Graph automatisch eine Einladungs-E-Mail senden soll, können Sie den Inhalt und die Sprache der E-Mail mithilfe von invitedUserMessageInfo angeben.
  2. Wenn der Benutzer eingeladen wird, wird eine Benutzerentität (vom TypGuest user) erstellt, die zum Steuern des Zugriffs auf Ressourcen verwendet werden kann. Der eingeladene Benutzer muss den Einlösevorgang durchlaufen, um auf Ressourcen zuzugreifen, zu denen er eingeladen wurde.

Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.

Weltweiter Service US Government L4 US Government L5 (DOD) China, betrieben von 21Vianet

Berechtigungen

Wählen Sie die Berechtigungen aus, die für diese API als am wenigsten privilegiert markiert sind. Verwenden Sie eine höhere Berechtigung oder Berechtigungen nur, wenn Ihre App dies erfordert. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.

Berechtigungstyp Berechtigungen mit den geringsten Berechtigungen Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto) User.Invite.All Directory.ReadWrite.All, User.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt Nicht unterstützt
Application User.Invite.All Directory.ReadWrite.All, User.ReadWrite.All

Wichtig

In delegierten Szenarien mit Geschäfts-, Schul- oder Unikonten muss dem angemeldeten Benutzer eine unterstützte Microsoft Entra-Rolle oder eine benutzerdefinierte Rolle mit einer unterstützten Rollenberechtigung zugewiesen werden. Die folgenden Rollen mit den geringsten Berechtigungen werden für diesen Vorgang unterstützt:

  • So laden Sie Gäste ein:
    • Sowohl Nichtadministratoren als auch Gastbenutzer können Gäste einladen, wenn der Mandantenadministrator die Standardbenutzerberechtigungen nicht eingeschränkt hat.
    • Gasteinladender, Verzeichnisschreiber oder Benutzeradministrator.
  • So setzen Sie den EinlösungsStatus zurück: Helpdesk-Administrator oder Benutzeradministrator.
  • Anwendungsberechtigungen (nur App) funktionieren nicht, wenn B2B-Einladungen auf dem Mandanten deaktiviert sind.
  • Beim Zurücksetzen des Status der Einlösung für einen Gastbenutzer ist die Berechtigung User.ReadWrite.All die Berechtigung mit den geringsten Berechtigungen für den Vorgang.

HTTP-Anforderung

POST /invitations

Anforderungsheader

Kopfzeile Wert
Authorization Bearer {token}. Erforderlich. Erfahren Sie mehr über Authentifizierung und Autorisierung.
Content-Type application/json

Anforderungstext

Geben Sie im Anforderungstext eine JSON-Darstellung eines invitation-Objekts an.

In der folgenden Tabelle sind die Parameter aufgeführt, die beim Erstellen einer Einladung erforderlich sind.

Parameter Typ Beschreibung
invitedUserEmailAddress string Die E-Mail-Adresse des Benutzers, den Sie einladen.
inviteRedirectUrl string Die URL, zu der der Benutzer nach der Einlösung umgeleitet wird.

Antwort

Wenn die Methode erfolgreich verläuft, werden der Antwortcode 201 Created und ein invitation-Objekt im Antworttext zurückgegeben.

Beispiel

Beispiel 1: Gastbenutzer einladen

Anforderung

Das folgende Beispiel zeigt eine Anforderung zum Hinzufügen und Einladen eines Gastbenutzers.

POST https://graph.microsoft.com/beta/invitations
Content-type: application/json

{
  "invitedUserEmailAddress": "admin@fabrikam.com",
  "inviteRedirectUrl": "https://myapp.contoso.com"
}

Antwort

Das folgende Beispiel zeigt die Antwort.

Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.

HTTP/1.1 201 Created
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#invitations/$entity",
    "id": "9071bfde-35e0-47d2-a582-d244ab1b4af6",
    "inviteRedeemUrl": "https://login.microsoftonline.com/redeem?rd=https%3a%2f%2finvitations.microsoft.com%2fredeem%2f%3ften...6ver%3d2.0",
    "invitedUserDisplayName": null,
    "invitedUserType": "Guest",
    "invitedUserEmailAddress": "admin@fabrikam.com",
    "sendInvitationMessage": false,
    "resetRedemption": false,
    "inviteRedirectUrl": "https://myapp.contoso.com",
    "status": "PendingAcceptance",
    "invitedUserMessageInfo": {
        "messageLanguage": null,
        "customizedMessageBody": null,
        "ccRecipients": [
            {
                "emailAddress": {
                    "name": null,
                    "address": null
                }
            }
        ]
    },
    "invitedUser": {
        "id": "cbb896f9-8306-49d0-b56b-b8e39cd28825",
        "userPrincipalName": "admin_fabrikam.com#EXT#@doc.onmicrosoft.com"
    }
}

Beispiel 2: Zurücksetzen des Status der Einlösung eines Gastbenutzers

Anforderung

Das folgende Beispiel zeigt eine Anforderung zum Zurücksetzen des Status der Einlösung eines Gastbenutzers. Die Anforderung ändert die E-Mail-Adresse des Benutzers, behält aber die aktuelle Benutzer-ID bei. Bevor Sie die Anforderung ausführen, müssen Sie die neue E-Mail-Adresse der otherMails-Eigenschaft des vorhandenen Gastbenutzerobjekts hinzufügen.

POST https://graph.microsoft.com/beta/invitations
Content-type: application/json

{
    "invitedUserEmailAddress": "AdeleV@fabrikam.com",
    "inviteRedirectUrl": "https://myapp.contoso.com",
    "invitedUser": {
        "id": "264e6d50-eaec-461e-b187-873b1bcf855f"
    },
    "resetRedemption": true
}

Antwort

Das folgende Beispiel zeigt die Antwort.

Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.

HTTP/1.1 201 Created
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#invitations/$entity",
    "id": "46d72876-dba6-4a05-b9ec-118faf16c4b7",
    "inviteRedeemUrl": "https://login.microsoftonline.com/redeem?rd=https%3a%2f%2finvitations.microsoft.com%2fredeem%2f%3fte...3d2.0",
    "invitedUserDisplayName": null,
    "invitedUserType": "Guest",
    "invitedUserEmailAddress": "AdeleV@fabrikam.com",
    "sendInvitationMessage": false,
    "resetRedemption": true,
    "inviteRedirectUrl": "https://myapp.contoso.com",
    "status": "PendingAcceptance",
    "invitedUserMessageInfo": {
        "messageLanguage": null,
        "customizedMessageBody": null,
        "ccRecipients": [
            {
                "emailAddress": {
                    "name": null,
                    "address": null
                }
            }
        ]
    },
    "invitedUser": {
        "id": "264e6d50-eaec-461e-b187-873b1bcf855f",
        "userPrincipalName": "AdeleV_fabrikam.com#EXT#@doc.onmicrosoft.com"
    }
}