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:
- 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.
- 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
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.
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.
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" }
Fügen Sie die JSON in die Basisumgebung ein.
Bearbeiten Sie den Eigenschaftswert
url
und ersetzen Sie ihn durch den Werthttps://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 aufdynamics.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:Nachdem Sie das Fenster jedoch geschlossen und erneut geöffnet haben, können Sie sehen, dass die Variablen jetzt bekannt und aufgelöst sind.
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.
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.
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.
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.
Kopieren Sie die folgende JSON:
{ "url": "https://yourdevorg.api.crm.dynamics.com" }
Fügen Sie die JSON in die erstelle Umgebung ein.
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 angegebenenurl
-Wert. Sie können bei Bedarf auch eine der fünf anderen Eigenschaften einbeziehen, aber derurl
-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.
Wählen Sie die Schaltfläche Neue HTTP-Anforderung aus oder verwenden Sie die Tastenkombination Strg + N.
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:Wählen Sie die
_.webapiurl
-Variable aus. Das Feld URL-VORSCHAU sollte den Wert unter Verwendung desurl
Eigenschaftswerts für Ihre ausgewählte Umgebung anzeigen.Verwenden Sie auf der Registerkarte Authentifizierung das Dropdownmenü, um OAuth 2.0 AUTHENTIFIZIERUNGSTYP auszuwählen.
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
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.
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
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
Bearbeiten Sie die URL, indem Sie
WhoAmI
nach der_.webapiurl
-Variablen anhängen. Die URL sollte wie folgt aussehen:GET _.webapiurl WhoAmI
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.
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.
Ändern Sie die URL, um
WhoAmI
nach der_.webapiurl
-Variablen zu entferne, und ersetzen Sie sie durchaccounts
, den Entitätssatznamen für die Kontoentitätstyp. Die URL sollte wie folgt aussehen:GET _.webapiurl accounts
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.
- Wählen Sie die Option Massenbearbeitung aus.
- 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.
Fügen Sie die Werte in das Feld ABFRAGEPARAMETER ein.
Ihr Abfrage sollte jetzt so aussehen:
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 derPrefer: 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 über das Abfragen von Daten
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.
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.
Wenn Sie mit der Maus über die Anforderung Konten abrufen fahren, wählen Sie das Dropdownmenü und dann Duplizieren aus.
Stellen Sie im Dialogfeld Anforderung duplizieren den Neuen Namen auf Konto erstellen ein.
Ändern Sie in der neuen Anforderung Konto erstellen die HTTP-Methode von
GET
aufPOST
. Die URL ist bereits auf die Verwendung desaccounts
-Entitätssatznamens eingestellt, sodass Sie hier nichts weiter ändern müssen. Die URL sollte wie folgt aussehen:POST _.webapiurl accounts
Auf der Registerkarte Parameter können Sie alle Parameter löschen, da sie nicht für den Erstellungsvorgang verwendet werden.
Verwenden Sie auf der Registerkarte Text das Dropdown-Menü, um JSON aus der Gruppe TEXT auszuwählen:
Kopieren Sie die folgende JSON:
{ "name": "An Example Account record (sample)", "revenue": 10000.0, "address1_city": "Redmond" }
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.
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.
Duplizieren Sie die Anforderung in Konten abrufen.
Nennen Sie sie Konto abrufen.
Bearbeiten Sie die URL, um den
accountid
-Wert in Klammern nach dem Namen des Entitätssatzes anzuhängen. Wenn dieaccountid
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)
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.Aktivieren Sie auf der Registerkarte Header das Kontrollkästchen neben dem
Prefer
-Header, um ihn zu deaktivieren, sodass keine Anmerkungen zurückgegeben werden.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.
Duplizieren Sie die Anforderung in Konto abrufen. Nennen Sie die neue Anforderung Konto löschen.
Ändern Sie die HTTP-Methode von
GET
inDELETE
.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)
Entfernen Sie auf der Registerkarte Parameter den
$select
-Parameter, da er für einen Löschvorgang bedeutungslos ist.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.
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" } }
Aktivieren Sie den
Prefer
-Header für die Anforderung Konto abrufen erneut, damit alle Anmerkungen zurückgegeben werden.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).