Anzeigen von gelöschten Benutzern für einen Kunden

Ruft eine Liste der gelöschten CustomerUser-Ressourcen für einen Kunden nach Kunden-ID ab. Sie können optional ein Seitenformat festlegen. Sie müssen einen Filter angeben.

Voraussetzungen

  • Anmeldeinformationen, wie unter Partner Center-Authentifizierung beschrieben. In diesem Szenario wird Authentifizierung nur mit App- und Benutzeranmeldeinformationen unterstützt.

  • Eine Kunden-ID (customer-tenant-id). Wenn Sie die KUNDEN-ID nicht kennen, können Sie sie im Partner Center nachschlagen, indem Sie den Arbeitsbereich "Kunden " und dann den Kunden aus der Kundenliste und dann "Konto" auswählen. Suchen Sie auf der Seite "Konto" des Kunden im Abschnitt "Kundenkontoinformationen" nach der Microsoft-ID. Die Microsoft-ID entspricht der Kunden-ID (customer-tenant-id).

Was geschieht, wenn Sie ein Benutzerkonto löschen?

Der Benutzerstatus wird beim Löschen eines Benutzerkontos auf "inaktiv" festgelegt. Sie Standard wird auf diese Weise 30 Tage lang wiederhergestellt, nach der das Benutzerkonto und die zugehörigen Daten gelöscht und wiederhergestellt werden können. Wenn Sie ein gelöschtes Benutzerkonto innerhalb des 30-Tage-Fensters wiederherstellen möchten, lesen Sie " Wiederherstellen eines gelöschten Benutzers für einen Kunden". Nachdem das Benutzerkonto gelöscht und als "inaktiv" gekennzeichnet wurde, wird das Benutzerkonto nicht mehr als Mitglied der Benutzersammlung zurückgegeben (z. B. mithilfe von Get a list of all user accounts for a customer). Um eine Liste gelöschter Benutzer abzurufen, die noch nicht gelöscht wurden, müssen Sie Benutzerkonten abfragen, die auf "inaktiv" festgelegt wurden.

C#

Um eine Liste der gelöschten Benutzer abzurufen, erstellen Sie eine Abfrage, die nach Kundenbenutzern filtert, deren Status auf "inaktiv" festgelegt ist. Erstellen Sie zunächst den Filter, indem Sie ein SimpleFieldFilter-Objekt mit den Parametern instanziieren, wie im folgenden Codeausschnitt gezeigt. Erstellen Sie dann die Abfrage mithilfe der BuildIndexedQuery-Methode. Wenn Sie keine ausgelagerten Ergebnisse wünschen, können Sie stattdessen die BuildSimpleQuery-Methode verwenden. Verwenden Sie als Nächstes die IAggregatePartner.Customers.ById-Methode mit der Kunden-ID, um den Kunden zu identifizieren. Rufen Sie schließlich die Query-Methode auf, um die Anforderung zu senden.

// IAggregatePartner partnerOperations;
// int customerUserPageSize;

// Create a filter for users whose status is inactive (i.e. deleted).
var filter = new SimpleFieldFilter("UserState", FieldFilterOperation.Equals, "Inactive");

// Build a paged query.
var simpleQueryWithFilter = QueryFactory.Instance.BuildIndexedQuery(customerUserPageSize, 0, filter);

// Send the request.
var customerUsers = partnerOperations.Customers.ById(selectedCustomerId).Users.Query(simpleQueryWithFilter);

Beispiel: Konsolentest-App. Project: Partner Center SDK Samples Class: GetCustomerInactiveUsers.cs

REST-Anforderung

Anforderungssyntax

Methode Anforderungs-URI
GET {baseURL}/v1/customers/{customer-id}/users?size={size}&filter={filter} HTTP/1.1

URI-Parameter

Verwenden Sie beim Erstellen der Anforderung die folgenden Pfad- und Abfrageparameter.

Name Type Erforderlich Beschreibung
Kunden-ID guid Ja Der Wert ist eine guid formatierte Kunden-ID, die den Kunden identifiziert.
Größe INT Nein Die Anzahl der jeweils angezeigten Ergebnisse. Dieser Parameter ist optional.
filter filter Ja Die Abfrage, die die Benutzersuche filtert. Um gelöschte Benutzer abzurufen, müssen Sie die folgende Zeichenfolge einbeziehen und codieren: {"Field":"UserState","Value":"Inactive","Operator":"equals"}.

Anforderungsheader

Weitere Informationen finden Sie unter Partner Center-REST-Header.

Anforderungstext

Keine.

Beispiel für eine Anfrage

GET https://api.partnercenter.microsoft.com/v1/customers/4d3cf487-70f4-4e1e-9ff1-b2bfce8d9f04/users?size=500&filter=%7B%22Field%22%3A%22UserState%22%2C%22Value%22%3A%22Inactive%22%2C%22Operator%22%3A%22equals%22%7D HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: c11feb95-55d2-45b6-9d1b-74b55d2221fb
MS-CorrelationId: 2b4ab588-f48c-4874-b479-a61895e107b2
X-Locale: en-US
Host: api.partnercenter.microsoft.com

REST-Antwort

Bei erfolgreicher Ausführung gibt die Methode eine Sammlung von CustomerUser-Ressourcen im Antworttext zurück.

Erfolgs- und Fehlercodes der Antwort

Jede Antwort enthält einen HTTP-Statuscode, der Aufschluss darüber gibt, ob der Vorgang erfolgreich war, sowie ggf. zusätzliche Debuginformationen. Verwende ein Tool für die Netzwerkablaufverfolgung, um diesen Code, den Fehlertyp und zusätzliche Parameter zu lesen. Die vollständige Liste finden Sie unter Partner Center-REST-Fehlercodes.

Beispielantwort

HTTP/1.1 200 OK
Content-Length: 802
Content-Type: application/json; charset=utf-8
MS-CorrelationId: 690b34ca-07c8-4f8a-ab13-f22a50594a43
MS-RequestId: 1187f9ad-02b4-4d96-b668-7cf3d289467b
MS-CV: 3TLmR9gz6EaCVCjR.0
MS-ServerId: 101112616
Date: Fri, 20 Jan 2017 19:13:14 GMT

{
    "totalCount": 1,
    "items": [{
            "usageLocation": "US",
            "id": "a45f1416-3300-4f65-9e8d-f123b397a4ea",
            "userPrincipalName": "e83763f7f2204ac384cfcd49f79f2749@dtdemocspcustomer005.onmicrosoft.com",
            "firstName": "Ferdinand",
            "lastName": "Filibuster",
            "displayName": "Ferdinand",
            "userDomainType": "none",
            "state": "inactive",
            "softDeletionTime": "2017-01-20T00:33:34Z",
            "links": {
                "self": {
                    "uri": "/customers/4d3cf487-70f4-4e1e-9ff1-b2bfce8d9f04/users/a45f1416-3300-4f65-9e8d-f123b397a4ea",
                    "method": "GET",
                    "headers": []
                }
            },
            "attributes": {
                "objectType": "CustomerUser"
            }
        }
    ],
    "links": {
        "self": {
            "uri": "/customers/4d3cf487-70f4-4e1e-9ff1-b2bfce8d9f04/users?size=500&filter=%7B%22Field%22%3A%22UserStatus%22%2C%22Value%22%3A%22Inactive%22%2C%22Operator%22%3A%22equals%22%7D",
            "method": "GET",
            "headers": []
        }
    },
    "attributes": {
        "objectType": "Collection"
    }
}