Insomnia mit der Dataverse-Web-API verwenden

Es gibt viele Client-API-Tools, mit denen Sie sich bei Microsoft Dataverse-Umgebungen zum Verfassen und Senden von Web-API-Anforderungen authentifizieren können. Diese Tools erleichtern das Erlernen, Testen und Durchführen von Ad-hoc-Abfragen mithilfe der Dataverse-Web-API.

Dieser Artikel verfolgt zwei Ziele:

  1. Demonstrieren Sie eine Strategie zur Authentifizierung und Verbindung mit Dataverse mithilfe des Insomnia-API-Clients mit einer von Microsoft bereitgestellten Microsoft Entra-Anwendungs-(Client)-ID, die für alle Dataverse-Umgebungen vorab genehmigt wurde. Das bedeutet, dass Sie keine Anwendung registrieren müssen, um zu beginnen, die Dataverse-Web-API zu verwenden.
  2. Machen Sie sich mit einigen grundlegenden Datenvorgängen vertraut, die Sie mit der Dataverse-Web-API im Kontext des Insomnia-API-Clients ausführen können. Auf diese Weise können Sie Insomnia nutzen, um weiter zu experimentieren und mehr über die Dataverse-Web-API zu erfahren.

Datenschutz

Anforderungen, die Sie mit Client-API-Tools senden, enthalten möglicherweise vertrauliche Informationen. Viele Entwicklungsfachkräfte möchten nicht, dass diese Informationen in einen Clouddienst hochgeladen werden.

Sie müssen für das lokale Insomnia-Scratch-Pad kein Konto erstellen und es speichert keine Informationen über die von Ihnen gesendeten Anforderungen. Die hier bereitgestellten Anweisungen beschreiben nur die Verwendung des lokalen Insomnia-Scratch-Pads. Wenn Sie möchten, können Sie ein Konto erstellen und alle Insomnia-Features nutzen. Wenn Sie eine Version wünschen, die keine Optionen zum Erstellen eines Kontos bietet und sich auf den Datenschutz konzentriert, finden Sie weitere Informationen unter Insomnia.

Hinweis

Als Alternative zu Insomnia oder andere API-Clients können Sie auch PowerShell mit Visual Studio Code zur Authentifizierung mit der Dataverse Web-API verwenden. Erste Schritte mit der Verwendung der Web-API mit PowerShell und Visual Studio Code. Diese Methode:

  • Verwendet die Azure AD-App-Registrierung, sodass Sie keine Anwendungs-(Client-)ID angeben müssen.
  • Versendet keinerlei Informationen über Ihre Anforderungen.

Die Anweisungen in diesem Artikel stellen die Erfahrungen dar, die Insomnia zum Zeitpunkt der Erstellung dieses Artikels bereitstellt. Die Benutzererfahrung wird sich wahrscheinlich im Laufe der Zeit ändern und dieser Artikel stellt möglicherweise nicht die aktuelle Erfahrung dar. Dieser Artikel wird nur aktualisiert, wenn Änderungen auftreten, welche die hier beschriebenen Schritte grundlegend ändern. Weitere Informationen finden Sie in der Insomnia-Dokumentation

Insomnia installieren

Die Schritte zur Installation von Insomnia finden Sie in der Insomnia-Dokumentation. Die Anweisungen sind für macOS, Windows und Linux unterschiedlich.

Für Windows ist das Installationsprogramm eine ausführbare Datei (EXE-Datei), die Sie herunterladen und ausführen. Nach Abschluss der Installation werden Ihnen möglicherweise verschiedene Optionen angeboten. Diese Optionen sollten den Anweisungen in diesem Artikel nicht im Weg stehen, sie können sich jedoch ändern. Zum Zeitpunkt der Erstellung dieses Artikels wurden folgende Optionen angeboten:

  • Wählen Sie für die Option zum Aktivieren von Features zum Synchronisieren von Daten mit der Cloud Weiterhin lokal im lokalen Tresor speichern.

  • Für die Option zum Erstellen eines Kontos wählen Sie Lokales Scratch-Pad verwenden. Erfahren Sie mehr über das Insomnia-Scratch-Pad

    Der Dialog „Willkommen bei Insomnia“ mit der Option „Lokales Scratch-Pad verwenden“.

Die Basisumgebung konfigurieren

Verwenden Sie Insomnia-Umgebungen zum Speichern von Umgebungsvariablen. Umgebungsvariablen sind ein JSON-Objekt, das Schlüssel-Wert-Datenpaare enthält, auf die Sie für viele Zwecke verweisen können.

Die Basisumgebung wird jedem Arbeitsbereich zugewiesen und auf die darin enthaltenen Variablen kann im gesamten Arbeitsbereich zugegriffen werden.

  1. Nachdem Sie Insomnia geöffnet haben, wählen Sie das Zahnradsymbol neben der Basisumgebung aus, um das Dialogfeld Umgebungen verwalten zu öffnen. Verwenden Sie alternativ die Tastenkombination Strg + E.

  2. Kopieren Sie die folgende JSON:

    {
       "url": "https://yourorg.api.crm.dynamics.com",
       "version": "9.2",
       "webapiurl": "{{ _.url }}/api/data/v{{ _.version }}/",
       "redirecturl": "https://localhost",
       "authurl": "https://login.microsoftonline.com/common/oauth2/authorize?resource={{ _.url }}",
       "clientid": "51f81489-12ee-4a9e-aaae-a2591f45987d"
    }
    
  3. Fügen Sie die JSON in die Basisumgebung ein.

  4. Bearbeiten Sie den Eigenschaftswert url und ersetzen Sie ihn durch den Wert https://yourorg.api.crm.dynamics.com, der mit der URL für Ihre Dataverse-Umgebung übereinstimmt.

    Sie finden den Web-API-Endpunkt für Ihre Umgebung mithilfe der Anweisungen in Entwicklerressourcen anzeigen. Entfernen Sie /api/data/v9.2 aus der URL des Web-API-Endpunkts. Diese URL muss auf dynamics.com enden.

    Rechnen Sie damit, dass die Verweise auf die Variablen _.url und _.version möglicherweise nicht sofort aufgelöst werden, sodass Warnungen wie diese angezeigt werden:

    Nicht aufgelöste Umgebungsvariablen

    Nachdem Sie das Fenster jedoch geschlossen und erneut geöffnet haben, können Sie sehen, dass die Variablen jetzt bekannt und aufgelöst sind.

    Aufgelöste Umgebungsvariablen

Unterumgebungen erstellen (optional)

Wenn Sie immer nur eine Verbindung zu einer einzigen Dataverse Umgebung herstellen müssen, können Sie einfach die Basisumgebung verwenden. Wenn Sie eine Verbindung zu mehreren Umgebungen herstellen müssen, können Sie Unterumgebungen für jede Dataverse-Umgebung erstellen. Sie können beispielsweise eine Unterumgebung für Ihre Dataverse-Entwicklungs- und Test-Umgebungen erstellen.

  1. Wählen Sie, genau wie bei der Basisumgebung, das Zahnradsymbol neben der Basisumgebung aus, um das Dialogfeld Umgebungen verwalten zu öffnen. Verwenden Sie alternativ die Tastenkombination Strg + E.

  2. Wählen Sie das -Symbol aus, um eine neue Umgebung zu erstellen. Umgebungen können freigegeben oder privat sein. Wählen Sie private Umgebung aus.

  3. Machen Sie einen Doppelklick auf den Namen der von Ihnen erstellten Neuen Umgebung und benennen Sie sie nach Belieben um. Sie können ihr den Namen der Dataverse-Umgebung geben, mit der Sie eine Verbindung herstellen möchten, oder sie zum Beispiel Entwicklungsumgebung nennen.

  4. Kopieren Sie die folgende JSON:

    {
       "url": "https://yourdevorg.api.crm.dynamics.com"
    }
    
  5. Fügen Sie die JSON in die erstelle Umgebung ein.

  6. Bearbeiten Sie den url-Eigenschaftswert so, dass er den Web-API-Endpunkt für Ihre andere Umgebung darstellt, genau wie Sie es für die Basisumgebung getan haben.

    Hinweis

    Sie müssen lediglich die url-Eigenschaft in die Unterumgebung einbinden. Wenn die Unterumgebung ausgewählt ist, überschreibt dieser Wert den in der Basisumgebung angegebenen url-Wert. Sie können bei Bedarf auch eine der fünf anderen Eigenschaften einbeziehen, aber der url-Eigenschaftswert ist der einzige, der für jede Dataverse-Umgebung unterschiedlich ist.

Anforderungen konfigurieren

Nachdem Sie Ihre Basisumgebung und alle Unterumgebungen konfiguriert haben, können Sie eine Anforderung konfigurieren.

  1. Wählen Sie die Schaltfläche Neue HTTP-Anforderung aus oder verwenden Sie die Tastenkombination Strg + N.

  2. Geben Sie nach der HTTP-Methode, die standardmäßig GET lautet, _. ein und warten Sie einen Moment. Insomnia zeigt eine Liste der verfügbaren Variablen zur Auswahl:

    Umgebungsvariablen für url

  3. Wählen Sie die _.webapiurl-Variable aus. Das Feld URL-VORSCHAU sollte den Wert unter Verwendung des url Eigenschaftswerts für Ihre ausgewählte Umgebung anzeigen.

  4. Verwenden Sie auf der Registerkarte Authentifizierung das Dropdownmenü, um OAuth 2.0 AUTHENTIFIZIERUNGSTYP auszuwählen.

    Wählen Sie den Authentifizierungstyp OAuth 2.0 aus

  5. Bearbeiten Sie die Authentifizierungskonfiguration wie in der folgenden Tabelle gezeigt und verwenden Sie dafür die von Ihnen erstellten Umgebungsvariablen:

    Feld Wert
    GEWÄHRUNGSTYP Implizit
    AUTHORIZIERUNGS-URL _.authurl
    CLIENT-ID _.clientid
    UMLEITUNGS-URL _.redirecturl
  6. Wählen Sie Senden aus.

    Es sollte sich ein Dialog öffnen, in dem Sie die Anmeldeinformationen für die Umgebung eingeben können.

    Nachdem Sie Ihre Anmeldeinformationen eingegeben haben, sollten Sie im Bereich Vorschau Ergebnisse sehen, die etwa so aussehen:

    {
    "@odata.context": "https://yourorg.api.crm.dynamics.com/api/data/v9.2/$metadata",
    "value": [
       {
          "name": "aadusers",
          "kind": "EntitySet",
          "url": "aadusers"
       },
       {
          "name": "accounts",
          "kind": "EntitySet",
          "url": "accounts"
       },
       {
          "name": "aciviewmappers",
          "kind": "EntitySet",
          "url": "aciviewmappers"
       },
       {
          "name": "actioncards",
          "kind": "EntitySet",
          "url": "actioncards"
       },
       ...
    

    Dieses Ergebnis ist das Web-API-Dienstdokument. Sie können das Dienstdokument anzeigen, indem Sie eine GET-Anforderung an den Stamm der Web-API-Dienst-URL senden. Es listet die Entitätssatznamen für alle Tabellen in Ihrer Dataverse-Umgebung auf. Wenn Sie das Dienstdokument sehen, haben Sie sich erfolgreich bei Ihrer Dataverse-Umgebung authentifiziert.

    Tipp

    Dies ist eine Möglichkeit, um den Entitätssatznamen für eine Tabelle, mit der Sie arbeiten, einfach zu finden oder zu überprüfen.

Das CSDL-$metadata-Dokument anzeigen

Das $metadata-Dokument der Common Schema Definition Language (CSDL) ist der Hort der Wahrheit für alles, was mit der Web-API zu tun hat. Sie werden häufig darauf verweisen wollen.

  1. Bearbeiten Sie die URL, indem Sie $metadata?annotations=true nach der _.webapiurl-Variablen anhängen. Die URL sollte wie folgt aussehen:

    GET _.webapiurl $metadata?annotations=true

  2. Wählen Sie Senden aus.

Im Bereich Vorschau sollten Sie eine Meldung sehen, die besagt: „Antwort über 5 MB aus Leistungsgründen ausgeblendet“. Ihnen sollten außerdem die Optionen In Datei speichern und Trotzdem anzeigen zur Verfügung stehen. Die Datei ist groß, aber Sie sollten sie problemlos in der Vorschau anzeigen können.

Definitionen von Typen finden

Das CSDL-$metadata-Dokument ist groß. Die Insomnia-Vorschau bietet unten ein Tool zum Filtern von Antworten. Sie können XPath-Abfragen verwenden, um die Antwort zu filtern, um das zu finden, was Sie brauchen. Die folgende Tabelle enthält einige Beispiele:

Sunden XPath-Abfrage
Alle Entitätstypen //*[local-name() = 'EntityType']
Der Konto-EntityType //*[local-name() = 'EntityType'][@Name = 'account']
Alle Funktionen //*[local-name() = 'Function']
Die WhoAmI-Funktion //*[local-name() = 'Function'][@Name = 'WhoAmI']
Alle Aktionen //*[local-name() = 'Action']
Die CreateMultiple-Aktion //*[local-name() = 'Action'][@Name = 'CreateMultiple']
Alle komplexe Typen //*[local-name() = 'ComplexType']
Der komplexe WhoAmIResponse-Typ //*[local-name() = 'ComplexType'][@Name = 'WhoAmIResponse']
Alle Enumerationstypen //*[local-name() = 'EnumType']
Der AccessRights-Enumerationstyp //*[local-name() = 'EnumType'][@Name = 'AccessRights']

Erfahren Sie mehr über die im CSDL-$metadata-Dokument definierten Typen

Eine WhoAmI-Anforderung senden

Nachdem Sie nun authentifiziert sind, ändern Sie Ihre Anforderungen, um die WhoAmI-Funktion aufrufen. Weil WhoAmI eine Funktion ist, verwenden Sie eine GET-Methode. Diese Funktion hat keine Parameter und ist daher einfach zu verwenden. Weitere Informationen zur Verwendung von Web-API-Funktionen

  1. Bearbeiten Sie die URL, indem Sie WhoAmI nach der _.webapiurl-Variablen anhängen. Die URL sollte wie folgt aussehen:

    GET _.webapiurl WhoAmI

  2. Legen Sie Anforderungsheader fest.

    Wie unter HTTP-Header beschrieben, sollte jede Web-API-Anforderung einen bestimmten Satz von Anforderungsheadern haben und Sie müssen möglicherweise die Headerwerte für unterschiedliche Verhaltensweisen ändern.

    Wählen Sie in der Registerkarte Header die Schaltfläche Hinzufügen aus, um die folgenden allgemeinen Header einzugeben:

    Header Wert
    Accept application/json
    OData-MaxVersion 4.0
    OData-Version 4.0
    If-None-Match null
    Prefer odata.include-annotations="*"

    Diese Header ändern nicht das Verhalten der WhoAmI-Funktion, aber es ist eine gute Idee, sie gleich am Anfang hinzuzufügen.

  3. Wählen Sie Senden aus.

    Im Bereich Vorschau sollten Sie Daten sehen, die zum komplexen WhoAmIResponse-Typ passen.

    {
       "@odata.context": "https://yourorg.api.crm.dynamics.com/api/data/v9.2/$metadata#Microsoft.Dynamics.CRM.WhoAmIResponse",
       "BusinessUnitId": "77164db8-dbc7-ee11-907a-00224803d046",
       "UserId": "e6b56e50-a3d5-ee11-9078-000d3a59a579",
       "OrganizationId": "100462a3-76cb-ee11-9075-00224806e300"
    }
    

Daten abrufen

Um Insomnia zum Abrufen von Datensätzen zu verwenden, müssen Sie den Entitätssatznamen für die Ressource festlegen.

  1. Ändern Sie die URL, um WhoAmI nach der _.webapiurl-Variablen zu entferne, und ersetzen Sie sie durch accounts, den Entitätssatznamen für die Kontoentitätstyp. Die URL sollte wie folgt aussehen:

    GET _.webapiurl accounts

  2. Legen Sie auf der Registerkarte Parameter die Parameter für Ihre Abfrage fest.

    Sie können Parameter individuell hinzufügen, indem Sie die Schaltfläche Hinzufügen auswählen. Sie können aber auch die Option Massenbearbeitung auswählen, die für Sie möglicherweise einfacher ist.

    1. Wählen Sie die Option Massenbearbeitung aus.
    2. Kopieren Sie die folgenden Parameter:
    $top: 3
    $select: name,revenue,address1_city
    $expand: primarycontactid($select=fullname)
    $filter: address1_city eq 'Redmond'
    

    Diese Abfrage gibt ausgewählte Spalten aus den drei wichtigsten Firmendatensätzen in der Stadt Redmond zurück und enthält Informationen zu allen zugehörigen Kontakten, die als Hauptkontakt für die Konten angegeben sind.

    1. Fügen Sie die Werte in das Feld ABFRAGEPARAMETER ein.

      Ihr Abfrage sollte jetzt so aussehen:

      Eine Abfrage, die Firmendatensätze abruft

  3. Wählen Sie Senden aus.

    Sie sollten im Bereich Vorschau Ergebnisse sehen, die ungefähr so aussehen:

    {
    "@odata.context": "https://yourorg.api.crm.dynamics.com/api/data/v9.2/$metadata#accounts(name,revenue,address1_city,primarycontactid(fullname))",
    "@Microsoft.Dynamics.CRM.totalrecordcount": -1,
    "@Microsoft.Dynamics.CRM.totalrecordcountlimitexceeded": false,
    "@Microsoft.Dynamics.CRM.globalmetadataversion": "2341840",
    "value": [
       {
          "@odata.etag": "W/\"2343103\"",
          "name": "City Power & Light (sample)",
          "revenue@OData.Community.Display.V1.FormattedValue": "$100,000.00",
          "revenue": 100000.0,
          "address1_city": "Redmond",
          "accountid": "01eaf28f-81e1-ee11-904d-000d3a3517c4",
          "_transactioncurrencyid_value@OData.Community.Display.V1.FormattedValue": "US Dollar",
          "_transactioncurrencyid_value@Microsoft.Dynamics.CRM.associatednavigationproperty": "transactioncurrencyid",
          "_transactioncurrencyid_value@Microsoft.Dynamics.CRM.lookuplogicalname": "transactioncurrency",
          "_transactioncurrencyid_value": "57f82f38-09c8-ee11-907a-00224803d046",
          "address1_composite": "Redmond",
          "primarycontactid": {
          "fullname": "Scott Konersmann (sample)",
          "contactid": "15eaf28f-81e1-ee11-904d-000d3a3517c4"
          }
       },
       {
          "@odata.etag": "W/\"2343104\"",
          "name": "Contoso Pharmaceuticals (sample)",
          "revenue@OData.Community.Display.V1.FormattedValue": "$60,000.00",
          "revenue": 60000.0,
          "address1_city": "Redmond",
          "accountid": "03eaf28f-81e1-ee11-904d-000d3a3517c4",
          "_transactioncurrencyid_value@OData.Community.Display.V1.FormattedValue": "US Dollar",
          "_transactioncurrencyid_value@Microsoft.Dynamics.CRM.associatednavigationproperty": "transactioncurrencyid",
          "_transactioncurrencyid_value@Microsoft.Dynamics.CRM.lookuplogicalname": "transactioncurrency",
          "_transactioncurrencyid_value": "57f82f38-09c8-ee11-907a-00224803d046",
          "address1_composite": "Redmond",
          "primarycontactid": {
          "fullname": "Robert Lyon (sample)",
          "contactid": "17eaf28f-81e1-ee11-904d-000d3a3517c4"
          }
       },
       {
          "@odata.etag": "W/\"2343106\"",
          "name": "A. Datum Corporation (sample)",
          "revenue@OData.Community.Display.V1.FormattedValue": "$10,000.00",
          "revenue": 10000.0,
          "address1_city": "Redmond",
          "accountid": "07eaf28f-81e1-ee11-904d-000d3a3517c4",
          "_transactioncurrencyid_value@OData.Community.Display.V1.FormattedValue": "US Dollar",
          "_transactioncurrencyid_value@Microsoft.Dynamics.CRM.associatednavigationproperty": "transactioncurrencyid",
          "_transactioncurrencyid_value@Microsoft.Dynamics.CRM.lookuplogicalname": "transactioncurrency",
          "_transactioncurrencyid_value": "57f82f38-09c8-ee11-907a-00224803d046",
          "address1_composite": "Redmond",
          "primarycontactid": {
          "fullname": "Rene Valdes (sample)",
          "contactid": "1beaf28f-81e1-ee11-904d-000d3a3517c4"
          }
       }
    ]
    }
    

    Hinweis

    Diese Ergebnisse umfassen viele Anmerkungswerte z. B. @OData.Community.Display.V1.FormattedValue, weil der Prefer: odata.include-annotations="*"-Anforderungsheader in Eine WhoAmI-Anorderung senden so eingestellt ist, dass alle Anmerkungen zurückgegeben werden. Erfahren Sie, wie Sie spezifische Anmerkungen anfordern

Erfahren Sie mehr darüber, wie Sie Daten abfragen

Datensatz erstellen

Mit Insomnia können Sie mehrere Anforderungen festlegen, die Sie wiederverwenden können. Die einfache Möglichkeit, eine neue Anforderung zu erstellen, die alle vorhandenen Konfigurationen beibehält, besteht darin, eine vorhandene Anforderung zu duplizieren. In diesem Schritt duplizieren wir die im Abschnitt Daten abrufen festgelegte Anforderung und erstellen eine neue Anforderung zum Erstellen eines Datensatzes.

  1. Die Anforderung, die Sie in Daten abrufen erstellt haben, hat den Standardnamen Neue Anforderung, sofern Sie ihn nicht geändert haben. Benennen Sie die Anforderung in Konten abrufen um.

  2. Wenn Sie mit der Maus über die Anforderung Konten abrufen fahren, wählen Sie das Dropdownmenü und dann Duplizieren aus.

    Eine Anforderung in Insomnia duplizieren

  3. Stellen Sie im Dialogfeld Anforderung duplizieren den Neuen Namen auf Konto erstellen ein.

  4. Ändern Sie in der neuen Anforderung Konto erstellen die HTTP-Methode von GET auf POST. Die URL ist bereits auf die Verwendung des accounts-Entitätssatznamens eingestellt, sodass Sie hier nichts weiter ändern müssen. Die URL sollte wie folgt aussehen:

    POST _.webapiurl accounts

  5. Auf der Registerkarte Parameter können Sie alle Parameter löschen, da sie nicht für den Erstellungsvorgang verwendet werden.

  6. Verwenden Sie auf der Registerkarte Text das Dropdown-Menü, um JSON aus der Gruppe TEXT auszuwählen:

    Auswahl des JSON-Texttyps

  7. Kopieren Sie die folgende JSON:

    {
       "name": "An Example Account record (sample)",
       "revenue": 10000.0,
       "address1_city": "Redmond"
    }
    
  8. Fügen Sie die JSON in das Feld Text ein.

    Hinweis

    Bevor Sie auf Senden gehen, um den Datensatz zu erstellen, sehen Sie sich die Daten in den Registerkarten Auth und Header. Da Sie diese Anforderung durch Duplizieren der Anforderung Konten abrufen erstellt haben, werden alle zuvor konfigurierten Informationen wiederverwendet.

  9. Gehen Sie auf Senden, um den Datensatz zu erstellen.

    Sie sollten sehen, dass der Dienst 204 Kein Inhalt zurückgegeben hat, sodass im Bereich Vorschau kein Inhalt zu sehen ist.

    Die URL zum erstellten Datensatz ist in der Liste Header sichtbar. Suchen Sie nach dem odata-entityid-Antwortheader aus. Der Wert sollte ungefähr so aussehen:

    https://yourorg.api.crm.dynamics.com/api/data/v9.2/accounts(5b4ced1c-88e1-ee11-904c-6045bd05e9d4)
    

    Diese URL enthält den Primärschlüsselfeldwert für den erstellten Datensatz, in diesem Fall den accountid-Eigenschaftswert.

Weitere Informationen zur Erstellung von Datensätzen

Einen Datensatz abrufen

Nachdem Sie nun einen Firmendatensatz erstellt haben und den Wert des Primärschlüsselfelds kennen, können Sie ihn mithilfe dieses Werts abrufen. Beginnen Sie, die Anforderung Konten abrufen zu duplizieren.

  1. Duplizieren Sie die Anforderung in Konten abrufen.

  2. Nennen Sie sie Konto abrufen.

  3. Bearbeiten Sie die URL, um den accountid-Wert in Klammern nach dem Namen des Entitätssatzes anzuhängen. Wenn die accountid des Kontos, das Sie in Einen Datensatz erstellen erstellt haben, 5b4ced1c-88e1-ee11-904c-6045bd05e9d4 war, bearbeiten Sie die URL wie folgt:

    GET _.webapiurl accounts(5b4ced1c-88e1-ee11-904c-6045bd05e9d4)

  4. Entfernen Sie auf der Registerkarte Parameter die Parameter $top, $expand und $filter, sodass nur die $select-Parameter übrig bleiben, um die Anzahl der zurückgegebenen Spalten zu begrenzen.

  5. Aktivieren Sie auf der Registerkarte Header das Kontrollkästchen neben dem Prefer-Header, um ihn zu deaktivieren, sodass keine Anmerkungen zurückgegeben werden.

  6. Wählen Sie Senden aus.

    Die Antwort sollte 200 OK zurückgeben und der Bereich Vorschau sollte Daten wie die folgenden enthalten:

    {
       "@odata.context": "https://yourorg.api.crm.dynamics.com/api/data/v9.2/$metadata#accounts(name,revenue,address1_city)/$entity",
       "@odata.etag": "W/\"2343128\"",
       "name": "An Example Account record (sample)",
       "revenue": 10000.0000000000,
       "address1_city": "Redmond",
       "accountid": "5b4ced1c-88e1-ee11-904c-6045bd05e9d4",
       "_transactioncurrencyid_value": "57f82f38-09c8-ee11-907a-00224803d046",
       "address1_composite": "Redmond"
    }
    

Erfahren Sie mehr über das Abrufen von Datensätzen

Datensatz löschen

Nachdem Sie mithilfe des Primärschlüsselwerts einen Datensatz erstellt und abgerufen haben, können Sie ihn jetzt löschen.

  1. Duplizieren Sie die Anforderung in Konto abrufen. Nennen Sie die neue Anforderung Konto löschen.

  2. Ändern Sie die HTTP-Methode von GET in DELETE.

    Die URL sollte immer noch die Daten mit der accountid des Datensatzes enthalten, den Sie zuvor erstellt und abgerufen haben:

    DELETE _.webapiurl accounts(5b4ced1c-88e1-ee11-904c-6045bd05e9d4)

  3. Entfernen Sie auf der Registerkarte Parameter den $select-Parameter, da er für einen Löschvorgang bedeutungslos ist.

  4. Wählen Sie Senden aus.

    Sie sollten sehen, dass der Dienst 204 Kein Inhalt zurückgegeben hat, sodass im Bereich Vorschau kein Inhalt zu sehen ist.

  5. Versuchen Sie jetzt, die Anforderung Konto abrufen zu senden. Es wird 404 Nicht gefunden zurückgegeben und der Bereich Vorschau zeigt den folgenden Fehler an:

    {
       "error": {
          "code": "0x80040217",
          "message": "Entity 'account' With Id = 5b4ced1c-88e1-ee11-904c-6045bd05e9d4 Does Not Exist"
       }
    }
    
  6. Aktivieren Sie den Prefer-Header für die Anforderung Konto abrufen erneut, damit alle Anmerkungen zurückgegeben werden.

  7. Senden Sie die Anforderung erneut. Sie können nun sehen, dass viele Anmerkungen mit der Antwort 404 Not Found zurückgegeben werden:

    {
       "error": {
          "code": "0x80040217",
          "message": "Entity 'account' With Id = 5b4ced1c-88e1-ee11-904c-6045bd05e9d4 Does Not Exist",
          "@Microsoft.PowerApps.CDS.ErrorDetails.ApiExceptionSourceKey": "Plugin/Microsoft.Crm.Common.ObjectModel.AccountService",
          "@Microsoft.PowerApps.CDS.ErrorDetails.ApiStepKey": "81cbbb1b-ea3e-db11-86a7-000a3a5473e8",
          "@Microsoft.PowerApps.CDS.ErrorDetails.ApiDepthKey": "1",
          "@Microsoft.PowerApps.CDS.ErrorDetails.ApiActivityIdKey": "ef7da2d8-c3bc-40f3-b67f-9d2981341086",
          "@Microsoft.PowerApps.CDS.ErrorDetails.ApiPluginSolutionNameKey": "System",
          "@Microsoft.PowerApps.CDS.ErrorDetails.ApiStepSolutionNameKey": "System",
          "@Microsoft.PowerApps.CDS.ErrorDetails.ApiExceptionCategory": "ClientError",
          "@Microsoft.PowerApps.CDS.ErrorDetails.ApiExceptionMessageName": "ObjectDoesNotExist",
          "@Microsoft.PowerApps.CDS.ErrorDetails.ApiExceptionHttpStatusCode": "404",
          "@Microsoft.PowerApps.CDS.HelpLink": "http://go.microsoft.com/fwlink/?LinkID=398563&error=Microsoft.Crm.CrmException%3a80040217&client=platform",
          "@Microsoft.PowerApps.CDS.InnerError.Message": "Entity 'account' With Id = 5b4ced1c-88e1-ee11-904c-6045bd05e9d4 Does Not Exist"
       }
    }
    

    Diese Details sind in diesem Zusammenhang nicht hilfreich, da das Problem offensichtlich ist. Diese Details könnten aber in anderen Szenarien hilfreich sein. Erfahren Sie mehr über das Einfügen weiterer Details in Fehler

Erfahren Sie mehr über das Löschen von Datensätzen

Nächste Schritte,

Erfahren Sie mehr darüber, was Sie mit der Dataverse-Web-API tun können:

Hinweis

Können Sie uns Ihre Präferenzen für die Dokumentationssprache mitteilen? Nehmen Sie an einer kurzen Umfrage teil. (Beachten Sie, dass diese Umfrage auf Englisch ist.)

Die Umfrage dauert etwa sieben Minuten. Es werden keine personenbezogenen Daten erhoben. (Datenschutzbestimmungen).